import type { WalletAddressType as ApiWalletAddressType } from '@dynamic-labs/sdk-api-core';
import type { Chain } from '../../chain';
import type { HardwareWalletVendor } from '../hardwareWallet/hardwareWallet.types';
declare global {
    interface WalletAccountMap {
    }
}
export type WalletAddressType = `${ApiWalletAddressType}`;
export type WalletAddressWithType = {
    address: string;
    /** Network this address is encoded for (e.g. 'mainnet' | 'testnet'). Present when a wallet exposes an address per network. */
    network?: string;
    publicKey?: string;
    type: WalletAddressType;
};
export type BaseWalletAccount<TChain extends Chain = Chain> = {
    address: string;
    addressesWithTypes?: WalletAddressWithType[];
    chain: TChain;
    hardwareWalletVendor?: HardwareWalletVendor;
    id: string;
    lastSelectedAt: Date | null;
    verifiedCredentialId: string | null;
    walletProviderKey: string;
};
export type WalletAccount = WalletAccountMap[keyof WalletAccountMap] extends never ? BaseWalletAccount<Chain> : WalletAccountMap[keyof WalletAccountMap];
//# sourceMappingURL=walletAccount.types.d.ts.map