import { Signer } from "ethers";
import { TypedDataSigner } from "@ethersproject/abstract-signer";
import { Provider, TransactionRequest } from "@ethersproject/providers";
import { Deferrable } from "@ethersproject/properties";
import { Bytes } from "@ethersproject/bytes";
import { ethers } from "ethers";
import { IWebAuthnRegistrationResponse } from "./types/WebAuthnTypes";
export declare class BananaPasskeyEoaSigner extends Signer implements TypedDataSigner {
    #private;
    readonly provider: Provider;
    init(username: string): Promise<void>;
    constructor(provider: Provider, publicKey?: IWebAuthnRegistrationResponse);
    connect(): Signer;
    getChainId(): Promise<number>;
    getAddress(): Promise<string>;
    signTransaction(transaction: Deferrable<TransactionRequest>): Promise<string>;
    signMessage(message: Bytes | string): Promise<string>;
    _signTypedData(domain: ethers.TypedDataDomain, types: Record<string, ethers.TypedDataField[]>, value: Record<string, any>): Promise<string>;
}
