import { ISDKConfig, IWidget, BTCSignTxSDKInput, IPurchaseERC20Params } from '../interfaces';
export declare function windowLoadHandler(): void;
export default class WidgetManager {
    private _widgetConfig;
    private _clearProviderSession;
    private widgetPromise?;
    private widgetInstance?;
    private _widgetUrl;
    private _onLoginCallback;
    private _onLogoutCallback;
    private _onActiveWalletChangedCallback?;
    private _onErrorCallback;
    constructor(_widgetConfig: ISDKConfig, _clearProviderSession: () => void);
    getWidget(): Promise<IWidget>;
    setDefaultEmail(email: string): void;
    setOnLoginCallback(callback: (walletAddress: string, email?: string, reputation?: string) => void): void;
    setOnLogoutCallback(callback: () => void): void;
    setOnActiveWalletChangedCallback(callback: (walletAddress: string) => void): void;
    setOnErrorCallback(callback: (error: Error) => void): void;
    showPortis(): Promise<void>;
    getCampaignInfo(campaignId: string): Promise<{
        error: string;
        result: any;
    }>;
    claimVoucher(voucherId: string): Promise<{
        error: string;
        result: any;
    }>;
    logout(): Promise<{
        error: string;
        result: boolean;
    }>;
    getExtendedPublicKey(path?: string, coin?: string): Promise<{
        error: string;
        result: string;
    }>;
    importWallet(mnemonicOrPrivateKey: string): Promise<void>;
    isLoggedIn(): Promise<{
        error: string;
        result: boolean;
    }>;
    signBitcoinTransaction(params: BTCSignTxSDKInput): Promise<{
        error: string;
        result: {
            serializedTx: string;
            txid: string;
        };
    }>;
    showBitcoinWallet(path?: string): Promise<void>;
    purchaseERC20(params: IPurchaseERC20Params): Promise<void>;
    private static _checkIfWidgetAlreadyInitialized;
    private _initWidget;
    private _setHeight;
    private static _getWindowSize;
    private _onLogin;
    private _onLogout;
    private _onActiveWalletChanged;
    private hasOnActiveWalletChanged;
    private _onError;
}
