def iter_list_principals(
self,
resource_owner: "capo_ram.types.resource_owner.ResourceOwner",
*,
config_overrides: Optional[RAMClientConfig] = None,
resource_arn: Optional["capo_ram.types.string.String"] = None,
principals: Optional[
"capo_ram.types.principal_arn_or_id_list.PrincipalArnOrIdList"
] = None,
resource_type: Optional["capo_ram.types.string.String"] = None,
resource_share_arns: Optional[
"capo_ram.types.resource_share_arn_list.ResourceShareArnList"
] = None,
next_token: Optional["capo_ram.types.string.String"] = None,
max_results: Optional["capo_ram.types.max_results.MaxResults"] = None,
) -> "Iterator[capo_ram.types.list_principals_response.ListPrincipalsResponse]":
_token = next_token
while True:
_response = self.list_principals(
resource_owner,
config_overrides=config_overrides,
resource_arn=resource_arn,
principals=principals,
resource_type=resource_type,
resource_share_arns=resource_share_arns,
next_token=_token,
max_results=max_results,
)
yield _response
_token = _resolve_path(_response, ("next_token",))
if not _token:
break