import { HDNode } from './hdnode'; import { SigningKey } from './signing-key'; import { BigNumber } from '../utils/bignumber'; import { Wordlist } from '../wordlists/wordlist'; import { Signer as AbstractSigner } from './abstract-signer'; import { Provider } from '../providers/abstract-provider'; import { ProgressCallback } from './secret-storage'; import { Arrayish } from '../utils/bytes'; import { BlockTag, TransactionRequest, TransactionResponse } from '../providers/abstract-provider'; export declare class Wallet extends AbstractSigner { readonly provider: Provider; private readonly signingKey; constructor(privateKey: SigningKey | HDNode | Arrayish, provider?: Provider); readonly address: string; readonly mnemonic: string; readonly path: string; readonly privateKey: string; /** * Create a new instance of this Wallet connected to provider. */ connect(provider: Provider): Wallet; getAddress(): Promise; sign(transaction: TransactionRequest): Promise; signMessage(message: Arrayish | string): Promise; getBalance(blockTag?: BlockTag): Promise; getTransactionCount(blockTag?: BlockTag): Promise; sendTransaction(transaction: TransactionRequest): Promise; encrypt(password: Arrayish | string, options?: any, progressCallback?: ProgressCallback): Promise; /** * Static methods to create Wallet instances. */ static createRandom(options?: any): Wallet; static fromEncryptedJson(json: string, password: Arrayish, progressCallback: ProgressCallback): Promise; static fromMnemonic(mnemonic: string, path?: string, wordlist?: Wordlist): Wallet; }