async def iter_list_application_assignments_for_principal(
self,
instance_arn: "capo_sso_admin.types.instance_arn.InstanceArn",
principal_id: "capo_sso_admin.types.principal_id.PrincipalId",
principal_type: "capo_sso_admin.types.principal_type.PrincipalType",
*,
config_overrides: Optional[AsyncSSOAdminClientConfig] = None,
filter: Optional[
"capo_sso_admin.types.list_application_assignments_filter.ListApplicationAssignmentsFilter"
] = None,
next_token: Optional["capo_sso_admin.types.token.Token"] = None,
max_results: Optional["capo_sso_admin.types.max_results.MaxResults"] = None,
) -> "AsyncIterator[capo_sso_admin.types.application_assignment_for_principal.ApplicationAssignmentForPrincipal]":
_token = next_token
while True:
_response = await self.list_application_assignments_for_principal(
instance_arn,
principal_id,
principal_type,
config_overrides=config_overrides,
filter=filter,
next_token=_token,
max_results=max_results,
)
_page = _resolve_path(_response, ("application_assignments",))
for _item in _page or []:
yield _item
_token = _resolve_path(_response, ("next_token",))
if not _token:
break