import { Seed } from '../../entities/Secret/implementations/Seed';
import { SerializedWallet } from '../../Wallet';
import { SeedableWallet, SerializedSeedableWallet } from '../../abstract/SeedableWallet';
import { Encrypted } from '../../entities/WalletEncryption/Encrypted';
import { Encrypt } from '../../entities/WalletEncryption/WalletEncryption';
import { Client } from '@hey-api/client-fetch';
import { TtlCache } from '../../../InternalUtils/TtlCache';
import { GlobalMarketsResponse } from '../../../Client';
export declare class SeedWallet extends SeedableWallet {
    constructor(client: Client, markets: TtlCache<GlobalMarketsResponse>, secret: Seed | Encrypted, askForPassword?: (attempts: number, reject: () => void) => Promise<string>);
    protected serializeInternal(): Promise<SerializedWallet>;
    getSeed(): Promise<Seed>;
    static new(client: Client, markets: TtlCache<GlobalMarketsResponse>, seed: string | Uint8Array, warnAboutUnencrypted: boolean, encrypt?: Encrypt): Promise<SeedWallet>;
    static import(client: Client, markets: TtlCache<GlobalMarketsResponse>, exported: SerializedSeedableWallet, askForPassword: (attempts: number, reject: () => void) => Promise<string>): Promise<SeedWallet>;
}
