import { BlockTag, Provider, TransactionRequest, TransactionResponse } from "@ethersproject/abstract-provider"; import { BigNumber, BigNumberish } from "@ethersproject/bignumber"; import { Bytes, BytesLike } from "@ethersproject/bytes"; import { Deferrable } from "@ethersproject/properties"; export interface TypedDataDomain { name?: string; version?: string; chainId?: BigNumberish; verifyingContract?: string; salt?: BytesLike; } export interface TypedDataField { name: string; type: string; } export interface ExternallyOwnedAccount { readonly address: string; readonly privateKey: string; } export interface TypedDataSigner { _signTypedData(domain: TypedDataDomain, types: Record>, value: Record): Promise; } export declare abstract class Signer { readonly provider?: Provider; abstract getAddress(): Promise; abstract signMessage(message: Bytes | string): Promise; abstract signTransaction(transaction: Deferrable): Promise; abstract connect(provider: Provider): Signer; readonly _isSigner: boolean; constructor(); getBalance(blockTag?: BlockTag): Promise; getTransactionCount(blockTag?: BlockTag): Promise; estimateGas(transaction: Deferrable): Promise; call(transaction: Deferrable, blockTag?: BlockTag): Promise; sendTransaction(transaction: Deferrable): Promise; getChainId(): Promise; getGasPrice(): Promise; resolveName(name: string): Promise; checkTransaction(transaction: Deferrable): Deferrable; populateTransaction(transaction: Deferrable): Promise; _checkProvider(operation?: string): void; static isSigner(value: any): value is Signer; } export declare class VoidSigner extends Signer implements TypedDataSigner { readonly address: string; constructor(address: string, provider?: Provider); getAddress(): Promise; _fail(message: string, operation: string): Promise; signMessage(message: Bytes | string): Promise; signTransaction(transaction: Deferrable): Promise; _signTypedData(domain: TypedDataDomain, types: Record>, value: Record): Promise; connect(provider: Provider): VoidSigner; } //# sourceMappingURL=index.d.ts.map