import { ethers } from 'ethers';
import { EthereumWallet } from './interface';
export default class extends ethers.Signer implements EthereumWallet {
    provider: ethers.providers.StaticJsonRpcProvider;
    private _sendDataToPairingOverlay;
    constructor(config: {
        providerUrl: string;
        chainId: number;
        sendDataToPairingOverlay: (topic: string, args: any[]) => void;
    });
    getAddress(): Promise<string>;
    signMessage(message: string | ethers.Bytes): Promise<string>;
    signTransaction(): Promise<string>;
    sendTransaction(transaction: ethers.providers.TransactionRequest): Promise<ethers.providers.TransactionResponse>;
    sendTransactionOutHash(transaction: ethers.providers.TransactionRequest): Promise<string>;
    sendCustomRequest(method: string, params: any[]): Promise<any>;
    connect(): ethers.Signer;
    isAvailable(): Promise<boolean>;
    isConnected(): Promise<any>;
    connectWallet({ overlayId }: {
        overlayId: string;
    }): Promise<void>;
    disconnectWallet(): Promise<void>;
    getMeta(): Promise<{
        name: any;
        description: any;
        icon: any;
    }>;
    getLastUsage(): Promise<any>;
    private _checkNetwork;
    private _getWalletChainId;
    private _showQR;
}
