import { Currency } from "./Currency";
import { TokenType } from "./TokenType";
import { Nft } from "./Nft";
export declare class Account {
    readonly currency: Currency;
    readonly accountName: string;
    readonly address: string;
    readonly index: number;
    readonly tokenType?: TokenType | undefined;
    readonly ensName?: string | undefined;
    readonly derivationMode?: string | undefined;
    readonly nft?: Nft[] | undefined;
    readonly parentAccount?: Account | undefined;
    constructor(currency: Currency, accountName: string, address: string, index: number, tokenType?: TokenType | undefined, ensName?: string | undefined, derivationMode?: string | undefined, nft?: Nft[] | undefined, parentAccount?: Account | undefined);
    static readonly ADA_1: Account;
    static readonly ADA_2: Account;
    static readonly ALGO_1: Account;
    static readonly ALGO_2: Account;
    static readonly ALGO_USDT_1: Account;
    static readonly ALGO_USDT_2: Account;
    static readonly APTOS_1: Account;
    static readonly APTOS_2: Account;
    static readonly ATOM_1: Account;
    static readonly ATOM_2: Account;
    static readonly BCH_1: Account;
    static readonly BCH_2: Account;
    static readonly BSC_1: Account;
    static readonly BSC_BUSD_1: Account;
    static readonly BSC_BUSD_2: Account;
    static readonly BSC_POL: Account;
    static readonly BSC_SHIBA: Account;
    static readonly BTC_LEGACY_1: Account;
    static readonly BTC_LEGACY_2: Account;
    static readonly BTC_NATIVE_SEGWIT_1: Account;
    static readonly BTC_NATIVE_SEGWIT_2: Account;
    static readonly BTC_SEGWIT_1: Account;
    static readonly BTC_SEGWIT_2: Account;
    static readonly BTC_TAPROOT_1: Account;
    static readonly BTC_TAPROOT_2: Account;
    static readonly CELO_1: Account;
    static readonly DOGE_1: Account;
    static readonly DOGE_2: Account;
    static readonly DOT_1: Account;
    static readonly DOT_2: Account;
    static readonly DOT_3: Account;
    static readonly ETH_1: Account;
    static readonly ETH_2: Account;
    static readonly ETH_2_WITH_ENS: Account;
    static readonly ETH_2_LOWER_CASE: Account;
    static readonly ETH_3: Account;
    static readonly SANCTIONED_ETH: Account;
    static readonly HEDERA_1: Account;
    static readonly INJ_1: Account;
    static readonly KASPA_1: Account;
    static readonly KASPA_2: Account;
    static readonly LTC_1: Account;
    static readonly MULTIVERS_X_1: Account;
    static readonly MULTIVERS_X_2: Account;
    static readonly NEAR_1: Account;
    static readonly NEAR_2: Account;
    static readonly OSMO_1: Account;
    static readonly OSMO_2: Account;
    static readonly POL_1: Account;
    static readonly POL_2: Account;
    static readonly POL_DAI_1: Account;
    static readonly POL_UNI: Account;
    static readonly SOL_1: Account;
    static readonly SOL_2: Account;
    static readonly SOL_3: Account;
    static readonly SOL_4: Account;
    static readonly tBTC_1: Account;
    static readonly tBTC_2: Account;
    static readonly tETH_1: Account;
    static readonly tETH_2: Account;
    static readonly TRX_1: Account;
    static readonly TRX_2: Account;
    static readonly TRX_3: Account;
    static readonly TRX_USDT: Account;
    static readonly XLM_1: Account;
    static readonly XLM_2: Account;
    static readonly XLM_USCD: Account;
    static readonly XRP_1: Account;
    static readonly XRP_2: Account;
    static readonly XRP_3: Account;
    static readonly XTZ_1: Account;
    static readonly XTZ_2: Account;
    static readonly sep_ETH_1: Account;
    static readonly sep_ETH_2: Account;
    static readonly SUI_1: Account;
    static readonly SUI_2: Account;
    static readonly EMPTY: Account;
}
export declare class TokenAccount extends Account {
    constructor(currency: Currency, accountName: string, address: string, index: number, tokenType: TokenType, parentAccount: Account, ensName?: string, derivationMode?: string, nft?: Nft[]);
    static readonly ETH_LIDO: TokenAccount;
    static readonly ETH_USDC_1: TokenAccount;
    static readonly ETH_USDT_1: TokenAccount;
    static readonly ETH_USDT_2: TokenAccount;
    static readonly SOL_GIGA_1: TokenAccount;
    static readonly SOL_GIGA_2: TokenAccount;
    static readonly SOL_GIGA_3: TokenAccount;
    static readonly SOL_WIF_1: TokenAccount;
    static readonly SOL_WIF_2: TokenAccount;
    static readonly TRX_BTT: TokenAccount;
    static readonly SUI_USDC_1: TokenAccount;
    static readonly SUI_USDC_2: TokenAccount;
}
export type AccountType = Account | TokenAccount;
export declare const getParentAccountName: (account: AccountType) => string;
export declare const getAccountAddress: (account: AccountType) => string;
//# sourceMappingURL=Account.d.ts.map