import { WalletLinkProvider } from "./provider/WalletLinkProvider";
/** WalletLink Constructor Options */
export interface WalletLinkOptions {
    /** Application name */
    appName: string;
    /** @optional Application logo image URL; favicon is used if unspecified */
    appLogoUrl?: string | null;
    /** @optional Use dark theme */
    darkMode?: boolean;
    /** @optional WalletLink server URL; for most, leave it unspecified */
    walletLinkUrl?: string;
    /** @optional Callback function to be called when disconnected */
    onDisconnected?: any | null;
}
export declare class WalletLink {
    /**
     * WalletLink version
     */
    static VERSION: any;
    private _appName;
    private _appLogoUrl;
    private _relay;
    /**
     * Constructor
     * @param options WalletLink options object
     */
    constructor(options: Readonly<WalletLinkOptions>);
    /**
     * Create a Web3 Provider object
     * @param jsonRpcUrl Ethereum JSON RPC URL
     * @param chainId Ethereum Chain ID (Default: 1)
     * @returns A Web3 Provider
     */
    makeWeb3Provider(jsonRpcUrl: string, chainId?: number): WalletLinkProvider;
    /**
     * Set application information
     * @param appName Application name
     * @param appLogoUrl Application logo image URL
     */
    setAppInfo(appName: string | undefined, appLogoUrl: string | null | undefined): void;
    /**
     * Disconnect. After disconnecting, this will reload the web page to ensure
     * all potential stale state is cleared.
     */
    disconnect(): void;
}
