Skip to content

Commit

Permalink
Fix publicKey type on ECPairInterface
Browse files Browse the repository at this point in the history
  • Loading branch information
junderw committed May 16, 2019
1 parent ea4fd58 commit 1c75c02
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 7 deletions.
11 changes: 6 additions & 5 deletions ts_src/ecpair.ts
Original file line number Diff line number Diff line change
Expand Up @@ -22,8 +22,8 @@ interface ECPairOptions {
export interface ECPairInterface {
compressed: boolean;
network: Network;
publicKey: Buffer;
privateKey?: Buffer;
publicKey?: Buffer;
toWIF(): string;
sign(hash: Buffer): Buffer;
verify(hash: Buffer, signature: Buffer): boolean;
Expand Down Expand Up @@ -51,8 +51,9 @@ class ECPair implements ECPairInterface {
return this.__D;
}

get publicKey(): Buffer | undefined {
if (!this.__Q) this.__Q = ecc.pointFromScalar(this.__D, this.compressed);
get publicKey(): Buffer {
if (!this.__Q)
this.__Q = ecc.pointFromScalar(this.__D, this.compressed) as Buffer;
return this.__Q;
}

Expand All @@ -77,13 +78,13 @@ function fromPrivateKey(buffer: Buffer, options?: ECPairOptions): ECPair {
throw new TypeError('Private key not in range [1, n)');
typeforce(isOptions, options);

return new ECPair(buffer, undefined, options as ECPairOptions);
return new ECPair(buffer, undefined, options);
}

function fromPublicKey(buffer: Buffer, options?: ECPairOptions): ECPair {
typeforce(ecc.isPoint, buffer);
typeforce(isOptions, options);
return new ECPair(undefined, buffer, options as ECPairOptions);
return new ECPair(undefined, buffer, options);
}

function fromWIF(wifString: string, network?: Network | Network[]): ECPair {
Expand Down
4 changes: 2 additions & 2 deletions types/ecpair.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@ interface ECPairOptions {
export interface ECPairInterface {
compressed: boolean;
network: Network;
publicKey: Buffer;
privateKey?: Buffer;
publicKey?: Buffer;
toWIF(): string;
sign(hash: Buffer): Buffer;
verify(hash: Buffer, signature: Buffer): boolean;
Expand All @@ -22,7 +22,7 @@ declare class ECPair implements ECPairInterface {
network: Network;
constructor(__D?: Buffer | undefined, __Q?: Buffer | undefined, options?: ECPairOptions);
readonly privateKey: Buffer | undefined;
readonly publicKey: Buffer | undefined;
readonly publicKey: Buffer;
toWIF(): string;
sign(hash: Buffer): Buffer;
verify(hash: Buffer, signature: Buffer): boolean;
Expand Down

0 comments on commit 1c75c02

Please sign in to comment.