import { Chain } from '@sequelfinance/types';
import { DerivationPathArray } from '@sequelfinance/types';

export declare const getDerivationPathFor: ({ chain, index, type }: Params) => number[];

declare const LEDGER_SUPPORTED_CHAINS: readonly [Chain.Avalanche, Chain.Binance, Chain.Bitcoin, Chain.BitcoinCash, Chain.Cosmos, Chain.Doge, Chain.Ethereum, Chain.Litecoin, Chain.THORChain];

declare type LedgerConfig = {
    covalentApiKey?: string;
    ethplorerApiKey?: string;
    utxoApiKey?: string;
};

export declare const ledgerWallet: {
    connectMethodName: "connectLedger";
    connect: ({ addChain, config: { covalentApiKey, ethplorerApiKey, utxoApiKey }, }: {
        addChain: any;
        config: LedgerConfig;
    }) => (chain: (typeof LEDGER_SUPPORTED_CHAINS)[number], derivationPath?: DerivationPathArray) => Promise<true | undefined>;
    isDetected: () => boolean;
};

declare type Params = {
    index: number;
    chain: Chain;
    type?: 'legacy' | 'ledgerLive' | 'nativeSegwitMiddleAccount' | 'segwit';
};

export { }
