import type { SecretProviderType } from '../domain/secret-provider-type.js'; /** * Facade for loading secrets from cloud providers. * * Supports loading from a single map file or from an * environment-based mapping that routes each environment name * to its own map file (or `null` to skip). * * @example * ```typescript * // One-liner — resolve + inject into process.env: * await Envilder.load('envilder.json'); * * // Resolve without injecting: * const secrets = await Envilder.resolveFile('envilder.json'); * * // Fluent builder with provider override: * const secrets = await Envilder.fromMapFile('envilder.json') * .withProvider(SecretProviderType.Azure) * .withVaultUrl('https://my-vault.vault.azure.net') * .inject(); * ``` */ export declare class Envilder { private readonly filePath; private options; private constructor(); /** * Returns a fluent builder bound to the given map file. * * Chain `.withProvider()`, `.withVaultUrl()`, or `.withProfile()` * before calling `.resolve()` or `.inject()`. */ static fromMapFile(filePath: string): Envilder; /** * Resolves secrets and injects them into `process.env`. * * Can be called in two ways: * - `load(filePath)` — load from a single map file * - `load(env, envMapping)` — look up env in the mapping */ static load(filePathOrEnv: string, envMapping?: Record): Promise>; /** * Resolves secrets without injecting into `process.env`. * * Can be called in two ways: * - `resolveFile(filePath)` — resolve from a single map file * - `resolveFile(env, envMapping)` — look up env in the mapping */ static resolveFile(filePathOrEnv: string, envMapping?: Record): Promise>; /** Override the secret provider (AWS or Azure). */ withProvider(provider: SecretProviderType): Envilder; /** Override the Azure Key Vault URL. */ withVaultUrl(vaultUrl: string): Envilder; /** Override the AWS named profile. */ withProfile(profile: string): Envilder; /** Resolve secrets and return them as a Map. */ resolve(): Promise>; /** Resolve secrets, inject into `process.env`, and return them. */ inject(): Promise>; private parseFile; private buildOptions; } //# sourceMappingURL=envilder.d.ts.map