ethers.js/packages/json-wallets/lib/keystore.d.ts

34 lines
1.4 KiB
TypeScript
Raw Permalink Normal View History

2019-05-14 18:48:48 -04:00
import { ExternallyOwnedAccount } from "@ethersproject/abstract-signer";
import { Bytes, BytesLike } from "@ethersproject/bytes";
2020-01-18 21:48:12 -05:00
import { Mnemonic } from "@ethersproject/hdnode";
2019-05-14 18:48:48 -04:00
import { Description } from "@ethersproject/properties";
2020-04-25 03:54:54 -04:00
export interface _KeystoreAccount {
2020-01-07 19:58:04 -05:00
address: string;
privateKey: string;
2020-01-18 21:48:12 -05:00
mnemonic?: Mnemonic;
2020-01-07 19:58:04 -05:00
_isKeystoreAccount: boolean;
}
export declare class KeystoreAccount extends Description<_KeystoreAccount> implements ExternallyOwnedAccount {
2019-05-14 18:48:48 -04:00
readonly address: string;
readonly privateKey: string;
2020-01-18 21:48:12 -05:00
readonly mnemonic?: Mnemonic;
2019-06-11 17:57:04 -04:00
readonly _isKeystoreAccount: boolean;
isKeystoreAccount(value: any): value is KeystoreAccount;
2019-05-14 18:48:48 -04:00
}
export declare type ProgressCallback = (percent: number) => void;
export declare type EncryptOptions = {
iv?: BytesLike;
entropy?: BytesLike;
client?: string;
salt?: BytesLike;
uuid?: string;
scrypt?: {
N?: number;
r?: number;
p?: number;
};
};
2020-02-27 19:58:05 +00:00
export declare function decryptSync(json: string, password: Bytes | string): KeystoreAccount;
2019-05-14 18:48:48 -04:00
export declare function decrypt(json: string, password: Bytes | string, progressCallback?: ProgressCallback): Promise<KeystoreAccount>;
export declare function encrypt(account: ExternallyOwnedAccount, password: Bytes | string, options?: EncryptOptions, progressCallback?: ProgressCallback): Promise<string>;