import type * as lf from "@distilled.cloud/aws/lakeformation"; import type * as Effect from "effect/Effect"; import * as Binding from "../../Binding.ts"; /** * Request for {@link GetTemporaryDataLocationCredentials}. */ export interface GetTemporaryDataLocationCredentialsRequest extends lf.GetTemporaryDataLocationCredentialsRequest { } /** * Runtime binding for `lakeformation:GetDataAccess` (data-location scope). * * Vends temporary S3 credentials for registered data locations the caller * holds `DATA_LOCATION_ACCESS` on. The returned credentials' * `SecretAccessKey` and `SessionToken` are `Redacted`. Provide the * implementation with * `Effect.provide(AWS.LakeFormation.GetTemporaryDataLocationCredentialsHttp)`. * ### Vending Data Access Credentials * **Example:** Vend Location-Scoped S3 Credentials * ```typescript * // init — account-level binding takes no resource * const getLocationCredentials = * yield* AWS.LakeFormation.GetTemporaryDataLocationCredentials(); * * // runtime * const { Credentials } = yield* getLocationCredentials({ * DataLocations: [location.resourceArn], * CredentialsScope: "READ", * }); * ``` * * @binding */ export interface GetTemporaryDataLocationCredentials extends Binding.Service Effect.Effect<(request: GetTemporaryDataLocationCredentialsRequest) => Effect.Effect>> { } export declare const GetTemporaryDataLocationCredentials: GetTemporaryDataLocationCredentials; //# sourceMappingURL=GetTemporaryDataLocationCredentials.d.ts.map