1import * as ivsrealtime from "@distilled.cloud/aws/ivs-realtime";
2import * as Layer from "effect/Layer";
3import {
4 COMPOSITION_ARN_WILDCARD,
5 ENCODER_CONFIGURATION_ARN_WILDCARD,
6 makeIvsRealtimeStageHttpBinding,
7 STORAGE_CONFIGURATION_ARN_WILDCARD,
8} from "./BindingHttp.ts";
9import { StartComposition } from "./StartComposition.ts";
10
11export const StartCompositionHttp = Layer.effect(
12 StartComposition,
13 makeIvsRealtimeStageHttpBinding({
14 tag: "AWS.IVSRealtime.StartComposition",
15 operation: ivsrealtime.startComposition,
16 actions: ["ivs:StartComposition"],
17 // The created composition and any referenced encoder/storage
18 // configurations are runtime data.
19 extraResources: [
20 COMPOSITION_ARN_WILDCARD,
21 ENCODER_CONFIGURATION_ARN_WILDCARD,
22 STORAGE_CONFIGURATION_ARN_WILDCARD,
23 ],
24 }),
25);