import { AbstractWallet } from "./abstract"; import type { SecretsManagerClientConfig } from "@aws-sdk/client-secrets-manager"; import type { Signer } from "ethers"; export type AwsSecretsManagerWalletOptions = { secretId: string; secretKeyName: string; awsConfig?: SecretsManagerClientConfig; }; /** * Connect to a wallet with a private key stored in [AWS Secrets Manager](https://aws.amazon.com/secrets-manager/). * * @example * To instantiate a wallet with AWS Secrets Manager, you need to gather the necessary secret ID and secret name from AWS. * * ```typescript * import { AwsSecretsManagerWallet } from "@thirdweb-dev/wallets/evm/wallets/aws-secrets-manager"; * * const wallet = new AwsSecretsManagerWallet({ * secretId: "{{secret-id}}", // ID of the secret value * secretKeyName: "{{secret-key-name}}", // Name of the secret value * awsConfig: { * region: "us-east-1", // Region where your secret is stored * credentials: { * accessKeyId: process.env.AWS_ACCESS_KEY_ID, // Add environment variables to store your AWS credentials * secretAccessKey: process.env.AWS_SECRET_ACCESS_KEY, // Add environment variables to store your AWS credentials * }, * }, * }); * ``` * * @wallet */ export declare class AwsSecretsManagerWallet extends AbstractWallet { private _signer?; private _options; /** * Create an instance of `AwsSecretsManagerWallet` * @param options - The `options` object includes the following properties: * * ### `secretId` * The ID of the secret value. * * ### `secretKeyName` * The name of the secret value. * * ### `awsConfig` * The object of type `SecretsManagerClientConfig` from `@aws-sdk/client-secrets-manager` package. */ constructor(options: AwsSecretsManagerWalletOptions); /** * Get [ethers signer](https://docs.ethers.io/v5/api/signer/) of the connected wallet */ getSigner(): Promise; } //# sourceMappingURL=aws-secrets-manager.d.ts.map