import { Relay } from "./relay";
export declare class Client {
    protected kind: number;
    protected relay: Relay;
    protected signerPubkey?: string;
    private subId?;
    protected privkey?: Uint8Array;
    private pending;
    constructor({ relayUrl, kind, signerPubkey, privkey, }: {
        relayUrl: string;
        kind: number;
        signerPubkey?: string;
        privkey?: Uint8Array;
    });
    [Symbol.dispose](): void;
    getRelay(): Relay;
    getPublicKey(): Promise<string>;
    send({ method, params, timeout, }: {
        method: string;
        params: any;
        timeout?: number;
    }): Promise<string>;
    private onReplyEvent;
    protected subscribe(): void;
    protected unsubscribe(): void;
}
