import 'source-map-support/register';
import { BlockChainExplorer } from './blockchainexplorer';
import { V8 } from './blockchainexplorers/v8';
import { IWallet, TxProposal, Wallet } from './model';
import { Storage } from './storage';
export interface IWalletService {
    lock: any;
    storage: Storage;
    blockchainExplorer: any;
    blockchainExplorerOpts: any;
    messageBroker: any;
    fiatRateService: any;
    notifyTicker: number;
    userAgent: string;
    walletId: string;
    copayerId: string;
    appName: string;
    appVersion: string;
    parsedClientVersion: {
        agent: number;
        major: number;
        minor: number;
    };
    clientVersion: string;
    copayerIsSupportStaff: boolean;
}
export declare class WalletService {
    lock: any;
    storage: Storage;
    blockchainExplorer: V8;
    blockchainExplorerOpts: any;
    messageBroker: any;
    fiatRateService: any;
    notifyTicker: number;
    userAgent: string;
    walletId: string;
    copayerId: string;
    appName: string;
    appVersion: string;
    parsedClientVersion: {
        agent: string;
        major: number;
        minor: number;
    };
    clientVersion: string;
    copayerIsSupportStaff: boolean;
    request: any;
    constructor();
    static getServiceVersion(): any;
    static initialize(opts: any, cb: any): void;
    static handleIncomingNotifications(notification: any, cb: any): any;
    static shutDown(cb: any): any;
    static getInstance(opts: any): WalletService;
    static getInstanceWithAuth(opts: any, cb: any): any;
    _runLocked(cb: any, task: any, waitTime?: number): void;
    logi(...args: any[]): any;
    logw(...args: any[]): any;
    logd(...args: any[]): any;
    login(opts: any, cb: any): void;
    logout(opts: any, cb: any): void;
    createWallet(opts: any, cb: any): any;
    getWallet(opts: any, cb: any): void;
    getWalletFromIdentifier(opts: any, cb: any): any;
    getStatus(opts: any, cb: any): void;
    _verifySignature(text: any, signature: any, pubkey: any): any;
    _verifyRequestPubKey(requestPubKey: any, signature: any, xPubKey: any): any;
    _getSigningKey(text: any, signature: any, pubKeys: any): any;
    _notify(type: any, data: any, opts: any, cb?: (err?: any, data?: any) => void): void;
    _notifyTxProposalAction(type: any, txp: any, extraArgs: any, cb?: (err?: any, data?: any) => void): void;
    _addCopayerToWallet(wallet: any, opts: any, cb: any): void;
    _addKeyToCopayer(wallet: any, copayer: any, opts: any, cb: any): void;
    addAccess(opts: any, cb: any): void;
    _setClientVersion(version: any): void;
    _setAppVersion(userAgent: any): void;
    _parseClientVersion(): {
        agent: string;
        major: number;
        minor: number;
    };
    _clientSupportsPayProRefund(): boolean;
    static _getCopayerHash(name: any, xPubKey: any, requestPubKey: any): string;
    joinWallet(opts: any, cb: any): any;
    savePreferences(opts: any, cb: any): any;
    getPreferences(opts: any, cb: any): void;
    _canCreateAddress(ignoreMaxGap: any, cb: any): any;
    _store(wallet: any, address: any, cb: any, checkSync?: boolean): void;
    createAddress(opts: any, cb: any): void;
    getMainAddresses(opts: any, cb: any): void;
    findInfoByAddress(address: any, cb: any): void;
    verifyMessageSignature(opts: any, cb: any): void;
    _getBlockchainExplorer(coin: any, network: any): ReturnType<typeof BlockChainExplorer>;
    _getUtxosForCurrentWallet(opts: any, cb: any): void;
    getUtxos(opts: any, cb: any): any;
    _totalizeUtxos(utxos: any): {
        totalAmount: number;
        lockedAmount: number;
        totalConfirmedAmount: number;
        lockedConfirmedAmount: number;
        availableAmount: any;
        availableConfirmedAmount: any;
    };
    getCoinsForTx(opts: any, cb: any): any;
    getBalance(opts: any, cb: any): any;
    getSendMaxInfo(opts: any, cb: any): void;
    _sampleFeeLevels(coin: any, network: any, points: any, cb: any): any;
    getFeeLevels(opts: any, cb: any): any;
    _checkTx(txp: any): any;
    _selectTxInputs(txp: any, utxosToExclude: any, cb: any): any;
    _canCreateTx(cb: any): void;
    _validateOutputs(opts: any, wallet: any, cb: any): any;
    _validateAndSanitizeTxOpts(wallet: any, opts: any, cb: any): void;
    _getFeePerKb(wallet: any, opts: any, cb: any): any;
    _getTransactionCount(wallet: any, address: any, cb: any): any;
    estimateGas(opts: any): Promise<unknown>;
    createTx(opts: any, cb: any): void;
    publishTx(opts: any, cb: any): void;
    getTx(opts: any, cb: any): void;
    editTxNote(opts: any, cb: any): void;
    getTxNote(opts: any, cb: any): void;
    getTxNotes(opts: any, cb: any): void;
    removeWallet(opts: any, cb: any): void;
    getRemainingDeleteLockTime(txp: any): number;
    removePendingTx(opts: any, cb: any): void;
    _broadcastRawTx(coin: any, network: any, raw: any, cb: any): any;
    broadcastRawTx(opts: any, cb: any): any;
    _checkTxInBlockchain(txp: any, cb: any): any;
    signTx(opts: any, cb: any): void;
    _processBroadcast(txp: any, opts: any, cb: any): void;
    broadcastTx(opts: any, cb: any): void;
    rejectTx(opts: any, cb: any): void;
    getPendingTxs(opts: any, cb: any): any;
    getTxs(opts: any, cb: any): void;
    getNotifications(opts: any, cb: any): void;
    _normalizeTxHistory(walletId: any, txs: any[], dustThreshold: any, bcHeight: any, cb: any): any;
    _getBlockchainHeight(coin: any, network: any, cb: any): void;
    updateWalletV8Keys(wallet: any): void;
    registerWalletV8(wallet: Wallet, cb: any): any;
    checkWalletSync(bc: any, wallet: any, simpleRun: any, cb: any): any;
    syncWallet(wallet: any, cb: any, skipCheck?: any, count?: any): any;
    static _getResultTx(wallet: any, indexedAddresses: any, tx: any, opts: any): {
        txid: any;
        action: any;
        amount: any;
        fees: any;
        time: any;
        addressTo: any;
        confirmations: any;
        foreignCrafted: any;
        outputs: any;
        feePerKb: any;
        inputs: any;
    };
    static _addProposalInfo(tx: any, indexedProposals: {
        [txid: string]: TxProposal;
    }, opts: any): void;
    static _addNotesInfo(tx: any, indexedNotes: any): void;
    tagLowFeeTxs(wallet: IWallet, txs: any[], cb: any): any;
    getExchangerTxs(chain: any, network: any, txs: any, cb: any): any;
    checkSwapTxs(wallet: any, txs: any[], cb: any): any;
    getTxHistoryV8(bc: any, wallet: any, opts: any, skip: any, limit: any, cb: any): void;
    getTxHistory(opts: any, cb: any): any;
    scan(opts: any, cb: any): void;
    _runScan(wallet: Wallet, step: any, opts: any, cb: any): void;
    startScan(opts: any, cb: any): void;
    getFiatRate(opts: any, cb: any): void;
    getHistoricalRates(opts: any, cb: any): void;
    pushNotificationsSubscribe(opts: any, cb: any): void;
    pushNotificationsUnsubscribe(opts: any, cb: any): void;
    txConfirmationSubscribe(opts: any, cb: any): void;
    txConfirmationUnsubscribe(opts: any, cb: any): void;
    simplexGetQuote(req: any): Promise<any>;
    simplexPaymentRequest(req: any): Promise<any>;
    simplexGetEvents(req: any): Promise<any>;
}
//# sourceMappingURL=server.d.ts.map