import type * as ivsrealtime from "@distilled.cloud/aws/ivs-realtime"; import type * as Effect from "effect/Effect"; import * as Binding from "../../Binding.ts"; import type { Stage } from "./Stage.ts"; /** The `stageArn` is injected by the binding from the bound stage. */ export interface ListParticipantsRequest extends Omit { } /** * List all participants in a session of the bound stage, optionally * filtered by user id, publish state, connection state, or recording state. * * ### Inspecting Participants * **Example:** List a session's participants * ```typescript * // init * const listParticipants = yield* IVSRealtime.ListParticipants(stage); * * // runtime * const { participants } = yield* listParticipants({ * sessionId: "st-a1b2c3d4e5f6", * filterByPublished: true, * }); * ``` * * @binding */ export interface ListParticipants extends Binding.Service Effect.Effect<(request: ListParticipantsRequest) => Effect.Effect>> { } export declare const ListParticipants: ListParticipants; //# sourceMappingURL=ListParticipants.d.ts.map