Hello Arijit,
pvlib does not yet have any kind of spatial data model that could be used to represent arbitrary physical shading scene layouts. Perhaps it will someday.
pvlib does have some shading functionality for simplified/idealized cases, principally the pvlib.shading module as you have already found and pvlib.bifacial.infinite_sheds. The infinite sheds model returns in-plane irradiance considering the effects of row-row shading and row-ground shading, but you would have to back-calculate to find the irradiance lost to these effects. It cannot model shading from external sources like trees and buildings.
Also, there are currently no models implemented for estimating the power reduction resulting from (nonuniform) shading.
Kevin