import type * as s3control from "@distilled.cloud/aws/s3-control"; import type * as Effect from "effect/Effect"; import * as Binding from "../../Binding.ts"; import type { MultiRegionAccessPoint } from "./MultiRegionAccessPoint.ts"; /** * Runtime binding for `s3:SubmitMultiRegionAccessPointRoutes`. * * Shifts traffic between the bound {@link MultiRegionAccessPoint}'s regions * by dialing each region's `TrafficDialPercentage` (0 = passive, 100 = * active) — the act half of an automated failover controller, e.g. a * health-check Lambda that dials a degraded region to 0. Requests are * routed to the `us-west-2` MRAP control plane. Provide the implementation * with `Effect.provide(AWS.S3Control.SubmitMultiRegionAccessPointRoutesHttp)`. * ### Controlling Multi-Region Failover * **Example:** Fail Traffic Away from a Region * ```typescript * // init — bind the operation to the Multi-Region Access Point * const submitRoutes = * yield* AWS.S3Control.SubmitMultiRegionAccessPointRoutes(mrap); * * // runtime * yield* submitRoutes({ * RouteUpdates: [ * { Region: "us-west-2", TrafficDialPercentage: 0 }, * { Region: "eu-west-1", TrafficDialPercentage: 100 }, * ], * }); * ``` * * @binding */ export interface SubmitMultiRegionAccessPointRoutes extends Binding.Service Effect.Effect<(request: Omit) => Effect.Effect>> { } export declare const SubmitMultiRegionAccessPointRoutes: SubmitMultiRegionAccessPointRoutes; //# sourceMappingURL=SubmitMultiRegionAccessPointRoutes.d.ts.map