Classes

c
AwsKmsProvider(options?: AwsKmsProviderOptions)

AWS Secrets Manager provider.

c
AzureKeyVaultProvider(options?: AzureKeyVaultProviderOptions)

Azure Key Vault provider.

c
EnvProvider(
env: Readonly<Record<string, string | undefined>>,
options?: { prefix?: string | undefined; }
)

Environment-variable secret provider.

c
GcpSecretManagerProvider(options?: GcpSecretManagerProviderOptions)

GCP Secret Manager provider.

c
HashiCorpVaultProvider(options?: HashiCorpVaultProviderOptions)

HashiCorp Vault (KV v2) provider.

c
ReadOnlySecretProviderError(provider: string)

Thrown when a secret is written through a provider that cannot store.

  • name: string

    Discriminant for consumers that cannot use instanceof across realms.

  • provider: string

    The provider that refused the write (e.g. 'EnvProvider').

c
SecretsService(
provider: SecretProvider,
options?: SecretsServiceOptions
)

Secret manager backed by a pluggable provider with a read-through cache.

Functions

Interfaces

I
AwsKmsProviderOptions

Options for AwsKmsProvider.

I
AzureKeyVaultProviderOptions

Options for AzureKeyVaultProvider.

I
GcpSecretManagerProviderOptions
I
HashiCorpVaultProviderOptions
I
IAwsSecretsClient

Structural shape of an AWS Secrets Manager facade. The plugin never hard-depends on @aws-sdk/client-secrets-manager; inject this shape, or the provider lazily loads the SDK and adapts it to this facade.

I
IAzureSecretsClient

Structural shape of an Azure Key Vault facade (injected or SDK-adapted).

I
IGcpSecretsClient

Structural shape of a GCP Secret Manager facade (injected or SDK-adapted).

I
ISecretManager

Secret manager backed by a provider (AWS KMS, GCP Secret Manager, Azure Key Vault, HashiCorp Vault, or environment variables in development).

I
SecretsPluginOptions

Options for the SecretsPlugin factory.

I
SecretsProviderOptions

Provider-specific options. Fields are consumed only by the matching provider; unrelated fields are ignored.

I
SecretsServiceOptions

Options for SecretsService.

  • cacheTtlSeconds: number

    Read-cache TTL in seconds. 0 disables caching. Default 300.

  • clock: () => number

    Monotonic clock in milliseconds (e.g. runtime.hrtime). Defaults to a monotonic performance.now-free stub returning 0, which — combined with a non-zero TTL — still caches within a request but never mixes wall-clock.

Type Aliases

T
IVaultHttp = (
url: string,
init?: RequestInit
) => Promise<Response>

A fetch-shaped function used by SecretsProviderOptions.http so the HashiCorp Vault provider stays runtime-agnostic and testable.