1import type * as SVC from "@distilled.cloud/aws/emr";
2import type * as Effect from "effect/Effect";
3import * as Binding from "../../Binding.ts";
4import type { Cluster } from "./Cluster.ts";
5
6/**
7 * Runtime binding for `elasticmapreduce:GetPersistentAppUIPresignedURL` — mints a presigned URL for a persistent application UI of the bound cluster (works after the cluster terminates).
8 * ### Application UIs
9 * **Example:** Link to the Spark History Server
10 * ```typescript
11 * const getAppUIUrl = yield* AWS.EMR.GetPersistentAppUIPresignedURL(cluster);
12 *
13 * const { PresignedURL } = yield* getAppUIUrl({
14 * PersistentAppUIId: appUIId,
15 * PersistentAppUIType: "SHS",
16 * });
17 * ```
18 *
19 * @binding
20 */
21export interface GetPersistentAppUIPresignedURL extends Binding.Service<
22 GetPersistentAppUIPresignedURL,
23 "AWS.EMR.GetPersistentAppUIPresignedURL",
24 <C extends Cluster>(
25 cluster: C,
26 ) => Effect.Effect<
27 (
28 request: SVC.GetPersistentAppUIPresignedURLInput,
29 ) => Effect.Effect<
30 SVC.GetPersistentAppUIPresignedURLOutput,
31 SVC.GetPersistentAppUIPresignedURLError
32 >
33 >
34> {}
35export const GetPersistentAppUIPresignedURL =
36 Binding.Service<GetPersistentAppUIPresignedURL>(
37 "AWS.EMR.GetPersistentAppUIPresignedURL",
38 );