import type { WalletChain } from "../../config/types.wallet.js";
import { type WalletProviderAdapter, type WalletProviderAddressMap, type WalletProviderBalanceResult, type WalletProviderCreateWalletResult, type WalletProviderHealth, type WalletProviderPrepareTxRequest, type WalletProviderPrepareTxResult, type WalletProviderSendTxRequest, type WalletProviderSendTxResult } from "../wallet-provider-adapter.js";
export type AlchemyAdapterCredentials = {
    apiKey: string;
    serverSignerAccessKey: string;
    serverSignerAccountId?: string;
    walletApiBaseUrl?: string;
    signerApiBaseUrl?: string;
    rpcUrl?: string;
    defaultSolanaAddress?: string;
};
export type AlchemyAdapterOptions = {
    chains: WalletChain[];
    credentials: AlchemyAdapterCredentials;
};
export declare class AlchemyAdapter implements WalletProviderAdapter {
    readonly id: "alchemy";
    readonly displayName = "Alchemy Wallet";
    readonly capabilities: WalletProviderAdapter["capabilities"];
    private readonly credentials;
    constructor(options: AlchemyAdapterOptions);
    supportsChain(chain: WalletChain): boolean;
    health(): Promise<WalletProviderHealth>;
    createWallet(): Promise<WalletProviderCreateWalletResult>;
    getAddresses(): Promise<WalletProviderAddressMap>;
    getBalance(chain: WalletChain): Promise<WalletProviderBalanceResult>;
    prepareTx(_request: WalletProviderPrepareTxRequest): Promise<WalletProviderPrepareTxResult>;
    sendTx(_request: WalletProviderSendTxRequest): Promise<WalletProviderSendTxResult>;
}
