UNPKG

aws-secrets-manager-cache

Version:

A package to help you out when wanting to cache items from AWS Secrets Manager.

30 lines (29 loc) 913 B
import { SecretsManager } from 'aws-sdk'; export declare class CachedSecret { readonly value: string; readonly ttl: number; readonly expiresAt: number; constructor(value: string, ttl: number); hasExpired(): boolean; } export declare type SecretsManagerCacheOptions = Partial<SecretsManagerCacheConfig>; interface SecretsManagerCacheConfig { /** * How many milliseconds to cache each secret for. * @default 300000 */ ttl: number; /** AWS SDK SecretsManager instance */ secretsManager: SecretsManager; } export declare class SecretsManagerCache { config: SecretsManagerCacheConfig; private cache; constructor(options?: SecretsManagerCacheOptions); /** * Fetches a secret from SecretsManager and caches it as long as the given * `ttl`. */ getSecret(secretName: string, isJSON?: boolean): Promise<string | undefined>; } export {};