UNPKG

@webda/aws

Version:

Webda AWS Services implementation

81 lines (80 loc) 2.23 kB
import { SecretsManager } from "@aws-sdk/client-secrets-manager"; import { ConfigurationProvider, Service, ServiceParameters } from "@webda/core"; declare const AWSSecretsManagerParameters_base: { new (...args: any[]): { endpoint?: string; credentials?: { accessKeyId: string; secretAccessKey: string; sessionToken?: string; }; region?: string; type: string; url?: string; openapi?: import("@webda/core/lib/router").OpenAPIWebdaDefinition; }; } & typeof ServiceParameters; export declare class AWSSecretsManagerParameters extends AWSSecretsManagerParameters_base { } /** * @WebdaModda */ export default class AWSSecretsManager<T extends AWSSecretsManagerParameters = AWSSecretsManagerParameters> extends Service<T> implements ConfigurationProvider { _client: SecretsManager; /** * @inheritdoc */ loadParameters(params: any): AWSSecretsManagerParameters; /** * @inheritdoc */ computeParameters(): void; /** * @inheritdoc */ canTriggerConfiguration(_id: string, _callback: () => void): boolean; /** * @inheritdoc */ getConfiguration(id: string): Promise<Map<string, any>>; /** * Create a new secret on AWS SecretsManager * * @param id * @param values * @param params */ create(id: string, values?: any, params?: any): Promise<void>; /** * Delete a secret * * @param SecretId to delete * @param RecoveryWindowInDays * @param ForceDeleteWithoutRecovery */ delete(SecretId: string, RecoveryWindowInDays?: number, ForceDeleteWithoutRecovery?: boolean): Promise<void>; /** * Store data in a AWS secret * * @param SecretId * @param value */ put(SecretId: string, value: any): Promise<void>; /** * Return SecretValue * * @param SecretId * @returns JSON.parse of SecretString */ get(SecretId: string): Promise<any>; /** * @inheritdoc */ getARNPolicy(accountId: any): { Sid: string; Effect: string; Action: string[]; Resource: string[]; }; } export { AWSSecretsManager };