import { SecretsConfig, SecretsDefinitionBrand } from "./types.mjs"; //#region src/configure/services/secrets/index.d.ts type SecretsVaultInput = Record; type SecretsVaultInputNullish = Record; type SecretsInput = Record; type SecretsInputNullish = Record; type SecretsOptions = { readonly ignoreNullishValues: boolean; }; type DefinedSecrets = { readonly vaults: T; readonly options: SecretsOptions; get, S extends Extract>(vault: V, secret: S): Promise; getAll, S extends Extract>(vault: V, secrets: readonly S[]): Promise<(string | undefined)[]>; } & SecretsDefinitionBrand; /** * Define secrets configuration for the Tailor SDK. * Each key is a vault name, and its value is a record of secret name to secret value. * @param config - Secrets configuration mapping vault names to their secrets * @returns Defined secrets with typed runtime access methods */ export declare function defineSecretManager(config: T): DefinedSecrets; /** * Define secrets configuration for the Tailor SDK with ignoreNullishValues option. * When `ignoreNullishValues` is true, secrets with nullish values are skipped during deploy * instead of causing an error. This is useful for CI environments where not all * secret values are available. * @param config - Secrets configuration mapping vault names to their secrets * @param options - Options for secret management behavior * @param options.ignoreNullishValues - When true, secrets with nullish values are skipped during deploy * @returns Defined secrets with typed runtime access methods */ export declare function defineSecretManager(config: T, options: { ignoreNullishValues: true; }): DefinedSecrets; //#endregion export type { SecretsConfig };