import type * as scheduler from "@distilled.cloud/aws/scheduler"; import type * as Effect from "effect/Effect"; import * as Binding from "../../Binding.ts"; import type { ScheduleGroup } from "./ScheduleGroup.ts"; export interface ListSchedulesRequest extends Omit { } /** * Runtime binding for `scheduler:ListSchedules`. * * Pairs with {@link CreateSchedule} for the dynamic-scheduling pattern: a * deployed Lambda enumerates the schedules it minted at runtime (sweep * pending reminders, count outstanding one-shots). Listing is always scoped * to the bound `ScheduleGroup` — or the `default` group when none is given. * Note: IAM evaluates `scheduler:ListSchedules` against the account-wide * `schedule/*​/*` pattern (not the group), so the binding grants on that * pattern while the request's `GroupName` filter keeps results group-scoped. * ### Listing Schedules At Runtime * **Example:** Sweep Pending Reminders * ```typescript * const listSchedules = yield* AWS.Scheduler.ListSchedules(); * * // runtime: enumerate this app's runtime-minted reminders * const page = yield* listSchedules({ NamePrefix: "reminder-" }); * for (const schedule of page.Schedules) { * console.log(schedule.Name, schedule.State); * } * ``` * * **Example:** Scope Listing To A Schedule Group * ```typescript * const listSchedules = yield* AWS.Scheduler.ListSchedules(group); * ``` * * @binding */ export interface ListSchedules extends Binding.Service Effect.Effect<(request?: ListSchedulesRequest) => Effect.Effect>> { } export declare const ListSchedules: ListSchedules; //# sourceMappingURL=ListSchedules.d.ts.map