import { Signer, providers, Bytes, utils as ethersUtils } from "ethers";
declare class ExtendedSigner extends Signer {
    provider?: providers.Provider;
    walletURI: string;
    address: string;
    isMobile: boolean;
    mobileSDK: boolean;
    chainId: number;
    socketUUID: string;
    openedWindow: Window | null;
    constructor(address: string, walletURI: string, isMobile: boolean, chainId: number, socketUUID: string, provider?: providers.Provider);
    connect(provider: providers.Provider): ExtendedSigner;
    getAddress(): Promise<string>;
    private signedMessageCB;
    private signedMessageRejectCB;
    signMessage(message: Bytes | string, isMobileSDK?: boolean, hashMessage?: boolean): Promise<string>;
    private signedPersonalMessageCB;
    private signedPersonalMessageRejectCB;
    signPersonalMessage(message: Bytes | string, isMobileSDK?: boolean): Promise<string>;
    private signedTransactionCB;
    private signedTransactionRejectCB;
    signTransaction(transaction: ethersUtils.Deferrable<providers.TransactionRequest>, overviewMessage?: string, mobileSDK?: boolean): Promise<string>;
    sendTransaction(transaction: ethersUtils.Deferrable<providers.TransactionRequest>, overviewMessage?: string, mobileSDK?: boolean): Promise<providers.TransactionResponse>;
    handleTransactionResponse(data: any): Promise<void>;
    handleMessageResponse(data: any): Promise<void>;
}
export default ExtendedSigner;
