import { Provider, TransactionRequest } from "@ethersproject/abstract-provider"; import { ExternallyOwnedAccount, Signer } from "@ethersproject/abstract-signer"; import { Bytes, BytesLike, SignatureLike } from "@ethersproject/bytes"; import { Mnemonic } from "@ethersproject/hdnode"; import { SigningKey } from "@ethersproject/signing-key"; import { ProgressCallback } from "@ethersproject/json-wallets"; import { Wordlist } from "@ethersproject/wordlists"; export declare class Wallet extends Signer implements ExternallyOwnedAccount { readonly address: string; readonly provider: Provider; readonly _signingKey: () => SigningKey; readonly _mnemonic: () => Mnemonic; constructor(privateKey: BytesLike | ExternallyOwnedAccount | SigningKey, provider?: Provider); readonly mnemonic: Mnemonic; readonly privateKey: string; readonly publicKey: string; getAddress(): Promise; connect(provider: Provider): Wallet; signTransaction(transaction: TransactionRequest): Promise; signMessage(message: Bytes | string): Promise; encrypt(password: Bytes | string, options?: any, progressCallback?: ProgressCallback): Promise; /** * Static methods to create Wallet instances. */ static createRandom(options?: any): Wallet; static fromEncryptedJson(json: string, password: Bytes | string, progressCallback?: ProgressCallback): Promise; static fromMnemonic(mnemonic: string, path?: string, wordlist?: Wordlist): Wallet; } export declare function verifyMessage(message: Bytes | string, signature: SignatureLike): string;