import { OfflineAminoSigner, StdSignDoc, AminoSignResponse, StdSignature, AccountData } from '@cosmjs/amino';
import { OfflineDirectSigner, DirectSignResponse } from '@cosmjs/proto-signing';
import { Key, WalletOptions } from './types';
import { Wallet } from './wallet';
import { UniversalProviderOpts, ConnectParams, UniversalProvider } from '@walletconnect/universal-provider';
import { SignDoc } from 'cosmjs-types/cosmos/tx/v1beta1/tx';
export declare class WCWallet extends Wallet<InstanceType<typeof UniversalProvider>, UniversalProviderOpts> {
    private pairingURI?;
    constructor(options: WalletOptions);
    init(metadata: UniversalProviderOpts): Promise<import('@walletconnect/universal-provider').default | undefined>;
    removeListeners(): void;
    addListeners(): void;
    /**
     * This method connect the client with wallet connect server and retrieve
     * the topic (uri), to start a wc connection.
     */
    generateURI(connectParams: ConnectParams): Promise<import("@walletconnect/types").SessionTypes.Struct | undefined>;
    enable(): Promise<void>;
    disable(): Promise<void>;
    getAccount(chainId: string): Promise<Key>;
    getAccounts(chainIds: string[]): Promise<Key[]>;
    getSignerAccounts(): Promise<AccountData[]>;
    getOfflineSigner(chainId: string): Promise<OfflineAminoSigner & OfflineDirectSigner>;
    getOfflineSignerOnlyAmino(chainId: string): Promise<OfflineAminoSigner>;
    getOfflineSignerAuto(chainId: string): Promise<OfflineAminoSigner | OfflineDirectSigner>;
    signAmino(chainId: string, signer: string, signDoc: StdSignDoc): Promise<AminoSignResponse>;
    signDirect(chainId: string, signer: string, signDoc: SignDoc): Promise<DirectSignResponse>;
    signArbitrary(chainId: string, signer: string, data: string | Uint8Array): Promise<StdSignature>;
    verifyArbitrary(): Promise<boolean>;
    suggestTokens(): Promise<void>;
    suggestChains(): Promise<void>;
    get wcEventNames(): ("session_ping" | "session_event" | "session_update" | "session_delete" | "session_proposal" | "session_extend" | "session_expire" | "session_request" | "session_request_sent" | "proposal_expire" | "keystorechange" | "display_uri" | "chainChanged" | "accountsChanged")[];
    get deeplinks(): {
        ios: string;
        android: string;
    } | undefined;
    get pairingDeeplinks(): {
        ios: string;
        android: string;
    } | undefined;
}
