def iter_describe_budgets(
self,
account_id: "capo_budgets.types.account_id.AccountId",
*,
config_overrides: Optional[BudgetsClientConfig] = None,
max_results: Optional[
"capo_budgets.types.max_results_describe_budgets.MaxResultsDescribeBudgets"
] = None,
next_token: Optional["capo_budgets.types.generic_string.GenericString"] = None,
show_filter_expression: Optional[
"capo_budgets.types.nullable_boolean.NullableBoolean"
] = None,
) -> "Iterator[capo_budgets.types.budget.Budget]":
_token = next_token
while True:
_response = self.describe_budgets(
account_id,
config_overrides=config_overrides,
max_results=max_results,
next_token=_token,
show_filter_expression=show_filter_expression,
)
_page = _resolve_path(_response, ("budgets",))
for _item in _page or []:
yield _item
_token = _resolve_path(_response, ("next_token",))
if not _token:
break