2018-09-24 16:07:14 -04:00
|
|
|
import { BigNumber } from './utils/bignumber';
|
|
|
|
import { HDNode } from './utils/hdnode';
|
|
|
|
import { SigningKey } from './utils/signing-key';
|
|
|
|
import { Wordlist } from './utils/wordlist';
|
2018-07-30 18:59:52 -04:00
|
|
|
import { Signer as AbstractSigner } from './abstract-signer';
|
2018-09-24 16:07:14 -04:00
|
|
|
import { Provider } from './providers/abstract-provider';
|
|
|
|
import { ProgressCallback } from './utils/secret-storage';
|
|
|
|
import { Arrayish } from './utils/bytes';
|
|
|
|
import { BlockTag, TransactionRequest, TransactionResponse } from './providers/abstract-provider';
|
2018-07-30 18:59:52 -04:00
|
|
|
export declare class Wallet extends AbstractSigner {
|
|
|
|
readonly provider: Provider;
|
2018-07-23 19:21:42 -04:00
|
|
|
private readonly signingKey;
|
2018-07-30 18:59:52 -04:00
|
|
|
constructor(privateKey: SigningKey | HDNode | Arrayish, provider?: Provider);
|
2018-07-23 19:21:42 -04:00
|
|
|
readonly address: string;
|
|
|
|
readonly mnemonic: string;
|
|
|
|
readonly path: string;
|
|
|
|
readonly privateKey: string;
|
|
|
|
/**
|
|
|
|
* Create a new instance of this Wallet connected to provider.
|
|
|
|
*/
|
2018-07-30 18:59:52 -04:00
|
|
|
connect(provider: Provider): Wallet;
|
2018-07-23 19:21:42 -04:00
|
|
|
getAddress(): Promise<string>;
|
|
|
|
sign(transaction: TransactionRequest): Promise<string>;
|
|
|
|
signMessage(message: Arrayish | string): Promise<string>;
|
|
|
|
getBalance(blockTag?: BlockTag): Promise<BigNumber>;
|
|
|
|
getTransactionCount(blockTag?: BlockTag): Promise<number>;
|
|
|
|
sendTransaction(transaction: TransactionRequest): Promise<TransactionResponse>;
|
2018-08-04 19:40:06 -04:00
|
|
|
encrypt(password: Arrayish | string, options?: any, progressCallback?: ProgressCallback): Promise<string>;
|
2018-07-23 19:21:42 -04:00
|
|
|
/**
|
|
|
|
* Static methods to create Wallet instances.
|
|
|
|
*/
|
|
|
|
static createRandom(options?: any): Wallet;
|
2018-10-07 01:13:10 -04:00
|
|
|
static fromEncryptedJson(json: string, password: Arrayish, progressCallback?: ProgressCallback): Promise<Wallet>;
|
2018-07-23 19:21:42 -04:00
|
|
|
static fromMnemonic(mnemonic: string, path?: string, wordlist?: Wordlist): Wallet;
|
|
|
|
}
|