import type * as datazone from "@distilled.cloud/aws/datazone"; import type * as Effect from "effect/Effect"; import * as Binding from "../../Binding.ts"; import type { Environment } from "./Environment.ts"; /** * Runtime binding for `datazone:GetEnvironmentCredentials`. * * Fetches the short-lived AWS credentials of the bound environment's provisioned user role. The `secretAccessKey` and `sessionToken` are `Redacted` — unwrap with `Redacted.value` only at the point of use. The domain and environment ids are injected from the binding. * Provide the implementation with * `Effect.provide(AWS.DataZone.GetEnvironmentCredentialsHttp)`. * ### Environment Credentials * **Example:** Assume the Environment's Role * ```typescript * // init — bind the operation to the environment * const getEnvironmentCredentials = yield* AWS.DataZone.GetEnvironmentCredentials(environment); * * // runtime * const creds = yield* getEnvironmentCredentials(); * const secret = Redacted.value(creds.secretAccessKey!); * ``` * * @binding */ export interface GetEnvironmentCredentials extends Binding.Service Effect.Effect<() => Effect.Effect>> { } export declare const GetEnvironmentCredentials: GetEnvironmentCredentials; //# sourceMappingURL=GetEnvironmentCredentials.d.ts.map