That depends on the application, the permissions model used and the workload(s) it access. Generally speaking, Graph API permissions within the application permissions model are directory-wide, unrestricted. Some workloads however do offer additional controls that can restrict such access, i.e. Application access policies for Exchange or the recently announced RBAC for applications: https://techcommunity.microsoft.com/t5/exchange-team-blog/announcing-public-preview-of-role-based-access-control-for/ba-p/3688228
Teams has the Resource-scoped consent model, whereas on the SharePoint side, the Sites.Selected method can do the same: https://devblogs.microsoft.com/microsoft365dev/controlling-app-access-on-specific-sharepoint-site-collections/
If the application is using the delegate permissions model instead, the effective permissions it gets are restricted to that of the user/service principal under which it runs.