async def iter_list_benefits(
self,
catalog: "capo_partnercentral_benefits.types.catalog_name.CatalogName",
*,
config_overrides: Optional[AsyncPartnerCentralBenefitsClientConfig] = None,
programs: Optional[
"capo_partnercentral_benefits.types.programs.Programs"
] = None,
fulfillment_types: Optional[
"capo_partnercentral_benefits.types.fulfillment_types.FulfillmentTypes"
] = None,
status: Optional[
"capo_partnercentral_benefits.types.benefit_statuses.BenefitStatuses"
] = None,
max_results: Optional[int] = None,
next_token: Optional[str] = None,
) -> "AsyncIterator[capo_partnercentral_benefits.types.benefit_summary.BenefitSummary]":
_token = next_token
while True:
_response = await self.list_benefits(
catalog,
config_overrides=config_overrides,
programs=programs,
fulfillment_types=fulfillment_types,
status=status,
max_results=max_results,
next_token=_token,
)
_page = _resolve_path(_response, ("benefit_summaries",))
for _item in _page or []:
yield _item
_token = _resolve_path(_response, ("next_token",))
if not _token:
break