1import type * as servicequotas from "@distilled.cloud/aws/service-quotas";
2import type * as Effect from "effect/Effect";
3import * as Binding from "../../Binding.ts";
4
5/**
6 * Runtime binding for `servicequotas:StartQuotaUtilizationReport` — kick off
7 * an asynchronous account-wide quota utilization report from inside a
8 * Function. Poll the result with
9 * {@link GetQuotaUtilizationReport | GetQuotaUtilizationReport}.
10 *
11 * ### Utilization Reports
12 * **Example:** Start a utilization report
13 * ```typescript
14 * // init
15 * const startQuotaUtilizationReport =
16 * yield* AWS.ServiceQuotas.StartQuotaUtilizationReport();
17 *
18 * // runtime
19 * const { ReportId } = yield* startQuotaUtilizationReport();
20 * ```
21 *
22 * @binding
23 */
24export interface StartQuotaUtilizationReport extends Binding.Service<
25 StartQuotaUtilizationReport,
26 "AWS.ServiceQuotas.StartQuotaUtilizationReport",
27 () => Effect.Effect<
28 (
29 request?: servicequotas.StartQuotaUtilizationReportRequest,
30 ) => Effect.Effect<
31 servicequotas.StartQuotaUtilizationReportResponse,
32 servicequotas.StartQuotaUtilizationReportError
33 >
34 >
35> {}
36export const StartQuotaUtilizationReport =
37 Binding.Service<StartQuotaUtilizationReport>(
38 "AWS.ServiceQuotas.StartQuotaUtilizationReport",
39 );