import { Bytes, Signer, providers, TypedDataDomain, TypedDataField, ethers } from "ethers";
import { Deferrable } from "ethers/lib/utils";
import { HttpRpcClient } from "./lib/http-rpc-client";
export declare class ZkWrappedSigner extends Signer {
    private signer;
    protected httpRpcClient: HttpRpcClient;
    constructor(signer: ethers.Signer, httpRpcClient: HttpRpcClient);
    getAddress(): Promise<string>;
    signMessage(message: Bytes | string): Promise<string>;
    signTransaction(transaction: providers.TransactionRequest): Promise<string>;
    connect(provider: providers.Provider): Signer;
    _signTypedData(domain: TypedDataDomain, types: Record<string, Array<TypedDataField>>, value: Record<string, any>): Promise<string>;
    sendTransaction(transaction: Deferrable<providers.TransactionRequest>): Promise<providers.TransactionResponse>;
    sendZkSyncTransaction(_transaction: ethers.utils.Deferrable<ethers.providers.TransactionRequest>): Promise<ethers.providers.TransactionResponse>;
    serialize(transaction: ethers.providers.TransactionRequest, signature?: string): string;
}
//# sourceMappingURL=zk-wrapped-signer.d.ts.map