1import type * as mediapackagev2 from "@distilled.cloud/aws/mediapackagev2";
2import type * as Effect from "effect/Effect";
3import * as Binding from "../../Binding.ts";
4import type { OriginEndpoint } from "./OriginEndpoint.ts";
5
6/**
7 * Runtime binding for `mediapackagev2:ResetOriginEndpointState`.
8 *
9 * Resets the packaging state of the bound {@link OriginEndpoint} — clearing
10 * its manifests and cached segments so playback restarts clean after the
11 * channel's content was reset or replaced. The endpoint's group, channel,
12 * and name are injected from the binding. Provide the implementation with
13 * `Effect.provide(AWS.MediaPackageV2.ResetOriginEndpointStateHttp)`.
14 * ### Resetting Ingest State
15 * **Example:** Reset an Endpoint After Resetting Its Channel
16 * ```typescript
17 * // init — bind the operation to the endpoint
18 * const resetEndpoint =
19 * yield* AWS.MediaPackageV2.ResetOriginEndpointState(endpoint);
20 *
21 * // runtime
22 * const { ResetAt } = yield* resetEndpoint();
23 * ```
24 *
25 * @binding
26 */
27export interface ResetOriginEndpointState extends Binding.Service<
28 ResetOriginEndpointState,
29 "AWS.MediaPackageV2.ResetOriginEndpointState",
30 (
31 endpoint: OriginEndpoint,
32 ) => Effect.Effect<
33 () => Effect.Effect<
34 mediapackagev2.ResetOriginEndpointStateResponse,
35 mediapackagev2.ResetOriginEndpointStateError
36 >
37 >
38> {}
39export const ResetOriginEndpointState =
40 Binding.Service<ResetOriginEndpointState>(
41 "AWS.MediaPackageV2.ResetOriginEndpointState",
42 );