import { SecretsManager, SecretsManagerClientConfig } from '@aws-sdk/client-secrets-manager'; export declare class SecretsServiceClient { readonly secretsManager: SecretsManager; constructor(options?: SecretsManagerClientConfig); /** * Get a secret string by name * @param secretName - Secret name */ getSecretString(secretName: string): Promise; /** * Get a secret json object by name * @param secretName - Secret name */ getSecretJson(secretName: string): Promise; /** * Create a secret string * @param secretName - Secret name * @param value - String value * @param description - Description */ createSecretString(secretName: string, value: string, description?: string): Promise; /** * Create a secret json object * @param secretName - Secret name * @param value - JSON object value * @param description - Description */ createSecretJson(secretName: string, value: object, description?: string): Promise; /** * Update a secret string by name * @param secretName - Secret name * @param value - String value * @param description - Description */ updateSecretString(secretName: string, value: string, description?: string): Promise; /** * Update a secret json object by name. It merges with the current value if * exists. * @param secretName - Secret name * @param value - String value * @param description - Description */ updateSecretJson(secretName: string, value: object, description?: string): Promise; } export declare function getSecretName(): string; /** * Load secretes from AWS SecretsManager and update the environment variables * * https://us-east-1.console.aws.amazon.com/secretsmanager/home?region=us-east-1#/secret?name=collab-land-api * */ export declare function loadSecrets(): Promise>; /** * Secret config */ export type SecretConfig = { /** * Secret name */ secretName?: string; /** * AWS region for the secret manager */ region?: string; /** * An optional local json file to provide secrets */ localSecretsFile?: string; }; /** * Load secrets from AWS SecretsManager/local file and update the environment * variables * @param configs - Secret configs * @returns */ export declare function loadAWSSecrets(...configs: SecretConfig[]): Promise>; /** * Update secrets * * https://us-east-1.console.aws.amazon.com/secretsmanager/home?region=us-east-1#/secret?name=collab-land-api * * @param data - JSON object for secrets * @param secretName - Secret name * @param region - AWS region */ export declare function updateSecret(data: object, secretName?: string, region?: string): Promise; export declare function createSecret(data: object, secretName?: string, region?: string, description?: string): Promise; /** * Load the secret value and save it to the file * @param secretName - Secret name * @param region - AWS region * @param file - File path to save the secrets */ export declare function loadSecretsToFile(secretName?: string, region?: string, file?: string): Promise;