@noble/curves 1.9.1 → 1.9.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +238 -227
- package/_shortw_utils.d.ts +8 -5
- package/_shortw_utils.d.ts.map +1 -1
- package/_shortw_utils.js +3 -8
- package/_shortw_utils.js.map +1 -1
- package/abstract/bls.d.ts +123 -62
- package/abstract/bls.d.ts.map +1 -1
- package/abstract/bls.js +219 -163
- package/abstract/bls.js.map +1 -1
- package/abstract/curve.d.ts +142 -21
- package/abstract/curve.d.ts.map +1 -1
- package/abstract/curve.js +224 -143
- package/abstract/curve.js.map +1 -1
- package/abstract/edwards.d.ts +190 -49
- package/abstract/edwards.d.ts.map +1 -1
- package/abstract/edwards.js +322 -136
- package/abstract/edwards.js.map +1 -1
- package/abstract/fft.d.ts +12 -10
- package/abstract/fft.d.ts.map +1 -1
- package/abstract/fft.js +12 -13
- package/abstract/fft.js.map +1 -1
- package/abstract/hash-to-curve.d.ts +31 -13
- package/abstract/hash-to-curve.d.ts.map +1 -1
- package/abstract/hash-to-curve.js +34 -19
- package/abstract/hash-to-curve.js.map +1 -1
- package/abstract/modular.d.ts +31 -13
- package/abstract/modular.d.ts.map +1 -1
- package/abstract/modular.js +125 -52
- package/abstract/modular.js.map +1 -1
- package/abstract/montgomery.d.ts +18 -5
- package/abstract/montgomery.d.ts.map +1 -1
- package/abstract/montgomery.js +23 -6
- package/abstract/montgomery.js.map +1 -1
- package/abstract/poseidon.d.ts +5 -13
- package/abstract/poseidon.d.ts.map +1 -1
- package/abstract/poseidon.js +12 -7
- package/abstract/poseidon.js.map +1 -1
- package/abstract/tower.d.ts +23 -49
- package/abstract/tower.d.ts.map +1 -1
- package/abstract/tower.js +9 -3
- package/abstract/tower.js.map +1 -1
- package/abstract/utils.d.ts +1 -115
- package/abstract/utils.d.ts.map +1 -1
- package/abstract/utils.js +17 -371
- package/abstract/utils.js.map +1 -1
- package/abstract/weierstrass.d.ts +206 -124
- package/abstract/weierstrass.d.ts.map +1 -1
- package/abstract/weierstrass.js +747 -604
- package/abstract/weierstrass.js.map +1 -1
- package/bls12-381.d.ts +2 -0
- package/bls12-381.d.ts.map +1 -1
- package/bls12-381.js +504 -466
- package/bls12-381.js.map +1 -1
- package/bn254.d.ts +2 -0
- package/bn254.d.ts.map +1 -1
- package/bn254.js +44 -32
- package/bn254.js.map +1 -1
- package/ed25519.d.ts +55 -66
- package/ed25519.d.ts.map +1 -1
- package/ed25519.js +172 -186
- package/ed25519.js.map +1 -1
- package/ed448.d.ts +60 -57
- package/ed448.d.ts.map +1 -1
- package/ed448.js +172 -166
- package/ed448.js.map +1 -1
- package/esm/_shortw_utils.d.ts +8 -5
- package/esm/_shortw_utils.d.ts.map +1 -1
- package/esm/_shortw_utils.js +3 -8
- package/esm/_shortw_utils.js.map +1 -1
- package/esm/abstract/bls.d.ts +123 -62
- package/esm/abstract/bls.d.ts.map +1 -1
- package/esm/abstract/bls.js +220 -164
- package/esm/abstract/bls.js.map +1 -1
- package/esm/abstract/curve.d.ts +142 -21
- package/esm/abstract/curve.d.ts.map +1 -1
- package/esm/abstract/curve.js +219 -143
- package/esm/abstract/curve.js.map +1 -1
- package/esm/abstract/edwards.d.ts +190 -49
- package/esm/abstract/edwards.d.ts.map +1 -1
- package/esm/abstract/edwards.js +320 -138
- package/esm/abstract/edwards.js.map +1 -1
- package/esm/abstract/fft.d.ts +12 -10
- package/esm/abstract/fft.d.ts.map +1 -1
- package/esm/abstract/fft.js +10 -11
- package/esm/abstract/fft.js.map +1 -1
- package/esm/abstract/hash-to-curve.d.ts +31 -13
- package/esm/abstract/hash-to-curve.d.ts.map +1 -1
- package/esm/abstract/hash-to-curve.js +33 -19
- package/esm/abstract/hash-to-curve.js.map +1 -1
- package/esm/abstract/modular.d.ts +31 -13
- package/esm/abstract/modular.d.ts.map +1 -1
- package/esm/abstract/modular.js +124 -51
- package/esm/abstract/modular.js.map +1 -1
- package/esm/abstract/montgomery.d.ts +18 -5
- package/esm/abstract/montgomery.d.ts.map +1 -1
- package/esm/abstract/montgomery.js +23 -6
- package/esm/abstract/montgomery.js.map +1 -1
- package/esm/abstract/poseidon.d.ts +5 -13
- package/esm/abstract/poseidon.d.ts.map +1 -1
- package/esm/abstract/poseidon.js +12 -7
- package/esm/abstract/poseidon.js.map +1 -1
- package/esm/abstract/tower.d.ts +23 -49
- package/esm/abstract/tower.d.ts.map +1 -1
- package/esm/abstract/tower.js +9 -3
- package/esm/abstract/tower.js.map +1 -1
- package/esm/abstract/utils.d.ts +1 -115
- package/esm/abstract/utils.d.ts.map +1 -1
- package/esm/abstract/utils.js +3 -344
- package/esm/abstract/utils.js.map +1 -1
- package/esm/abstract/weierstrass.d.ts +206 -124
- package/esm/abstract/weierstrass.d.ts.map +1 -1
- package/esm/abstract/weierstrass.js +743 -605
- package/esm/abstract/weierstrass.js.map +1 -1
- package/esm/bls12-381.d.ts +2 -0
- package/esm/bls12-381.d.ts.map +1 -1
- package/esm/bls12-381.js +503 -465
- package/esm/bls12-381.js.map +1 -1
- package/esm/bn254.d.ts +2 -0
- package/esm/bn254.d.ts.map +1 -1
- package/esm/bn254.js +41 -29
- package/esm/bn254.js.map +1 -1
- package/esm/ed25519.d.ts +55 -66
- package/esm/ed25519.d.ts.map +1 -1
- package/esm/ed25519.js +170 -183
- package/esm/ed25519.js.map +1 -1
- package/esm/ed448.d.ts +60 -57
- package/esm/ed448.d.ts.map +1 -1
- package/esm/ed448.js +169 -162
- package/esm/ed448.js.map +1 -1
- package/esm/index.js +7 -9
- package/esm/index.js.map +1 -1
- package/esm/jubjub.d.ts +3 -3
- package/esm/jubjub.d.ts.map +1 -1
- package/esm/jubjub.js +3 -3
- package/esm/jubjub.js.map +1 -1
- package/esm/misc.d.ts +3 -5
- package/esm/misc.d.ts.map +1 -1
- package/esm/misc.js +31 -29
- package/esm/misc.js.map +1 -1
- package/esm/nist.d.ts +7 -22
- package/esm/nist.d.ts.map +1 -1
- package/esm/nist.js +106 -101
- package/esm/nist.js.map +1 -1
- package/esm/p256.d.ts +7 -3
- package/esm/p256.d.ts.map +1 -1
- package/esm/p256.js +4 -0
- package/esm/p256.js.map +1 -1
- package/esm/p384.d.ts +7 -4
- package/esm/p384.d.ts.map +1 -1
- package/esm/p384.js +4 -1
- package/esm/p384.js.map +1 -1
- package/esm/p521.d.ts +7 -3
- package/esm/p521.d.ts.map +1 -1
- package/esm/p521.js +4 -0
- package/esm/p521.js.map +1 -1
- package/esm/secp256k1.d.ts +38 -21
- package/esm/secp256k1.d.ts.map +1 -1
- package/esm/secp256k1.js +112 -104
- package/esm/secp256k1.js.map +1 -1
- package/esm/utils.d.ts +96 -0
- package/esm/utils.d.ts.map +1 -0
- package/esm/utils.js +279 -0
- package/esm/utils.js.map +1 -0
- package/index.js +7 -9
- package/index.js.map +1 -1
- package/jubjub.d.ts +3 -3
- package/jubjub.d.ts.map +1 -1
- package/jubjub.js +3 -3
- package/jubjub.js.map +1 -1
- package/misc.d.ts +3 -5
- package/misc.d.ts.map +1 -1
- package/misc.js +35 -33
- package/misc.js.map +1 -1
- package/nist.d.ts +7 -22
- package/nist.d.ts.map +1 -1
- package/nist.js +106 -101
- package/nist.js.map +1 -1
- package/p256.d.ts +7 -3
- package/p256.d.ts.map +1 -1
- package/p256.js +4 -0
- package/p256.js.map +1 -1
- package/p384.d.ts +7 -4
- package/p384.d.ts.map +1 -1
- package/p384.js +4 -1
- package/p384.js.map +1 -1
- package/p521.d.ts +7 -3
- package/p521.d.ts.map +1 -1
- package/p521.js +4 -0
- package/p521.js.map +1 -1
- package/package.json +17 -6
- package/secp256k1.d.ts +38 -21
- package/secp256k1.d.ts.map +1 -1
- package/secp256k1.js +112 -104
- package/secp256k1.js.map +1 -1
- package/src/_shortw_utils.ts +6 -15
- package/src/abstract/bls.ts +428 -251
- package/src/abstract/curve.ts +307 -149
- package/src/abstract/edwards.ts +555 -203
- package/src/abstract/fft.ts +30 -19
- package/src/abstract/hash-to-curve.ts +75 -34
- package/src/abstract/modular.ts +131 -59
- package/src/abstract/montgomery.ts +44 -15
- package/src/abstract/poseidon.ts +22 -18
- package/src/abstract/tower.ts +40 -71
- package/src/abstract/utils.ts +3 -378
- package/src/abstract/weierstrass.ts +1086 -746
- package/src/bls12-381.ts +549 -490
- package/src/bn254.ts +47 -35
- package/src/ed25519.ts +214 -216
- package/src/ed448.ts +251 -220
- package/src/index.ts +7 -9
- package/src/jubjub.ts +3 -3
- package/src/misc.ts +41 -40
- package/src/nist.ts +161 -126
- package/src/p256.ts +7 -3
- package/src/p384.ts +7 -5
- package/src/p521.ts +7 -3
- package/src/secp256k1.ts +145 -115
- package/src/utils.ts +328 -0
- package/utils.d.ts +96 -0
- package/utils.d.ts.map +1 -0
- package/utils.js +313 -0
- package/utils.js.map +1 -0
package/abstract/curve.d.ts
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Methods for elliptic curve multiplication by scalars.
|
|
3
|
-
* Contains wNAF, pippenger
|
|
3
|
+
* Contains wNAF, pippenger.
|
|
4
4
|
* @module
|
|
5
5
|
*/
|
|
6
6
|
/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */
|
|
7
|
+
import { type Hex } from '../utils.ts';
|
|
7
8
|
import { type IField } from './modular.ts';
|
|
8
9
|
export type AffinePoint<T> = {
|
|
9
10
|
x: T;
|
|
@@ -19,12 +20,78 @@ export interface Group<T extends Group<T>> {
|
|
|
19
20
|
subtract(other: T): T;
|
|
20
21
|
equals(other: T): boolean;
|
|
21
22
|
multiply(scalar: bigint): T;
|
|
23
|
+
toAffine?(invertedZ?: any): AffinePoint<any>;
|
|
24
|
+
}
|
|
25
|
+
/** Base interface for all elliptic curve Points. */
|
|
26
|
+
export interface CurvePoint<F, P extends CurvePoint<F, P>> extends Group<P> {
|
|
27
|
+
/** Affine x coordinate. Different from projective / extended X coordinate. */
|
|
28
|
+
x: F;
|
|
29
|
+
/** Affine y coordinate. Different from projective / extended Y coordinate. */
|
|
30
|
+
y: F;
|
|
31
|
+
Z?: F;
|
|
32
|
+
assertValidity(): void;
|
|
33
|
+
clearCofactor(): P;
|
|
34
|
+
is0(): boolean;
|
|
35
|
+
isTorsionFree(): boolean;
|
|
36
|
+
isSmallOrder(): boolean;
|
|
37
|
+
multiplyUnsafe(scalar: bigint): P;
|
|
38
|
+
/**
|
|
39
|
+
* Massively speeds up `p.multiply(n)` by using precompute tables (caching). See {@link wNAF}.
|
|
40
|
+
* @param isLazy calculate cache now. Default (true) ensures it's deferred to first `multiply()`
|
|
41
|
+
*/
|
|
42
|
+
precompute(windowSize?: number, isLazy?: boolean): P;
|
|
43
|
+
/** Converts point to 2D xy affine coordinates */
|
|
44
|
+
toAffine(invertedZ?: F): AffinePoint<F>;
|
|
45
|
+
toBytes(): Uint8Array;
|
|
46
|
+
toHex(): string;
|
|
47
|
+
}
|
|
48
|
+
/** Base interface for all elliptic curve Point constructors. */
|
|
49
|
+
export interface CurvePointCons<F, P extends CurvePoint<F, P>> extends GroupConstructor<P> {
|
|
50
|
+
BASE: P;
|
|
51
|
+
ZERO: P;
|
|
52
|
+
/** Field for basic curve math */
|
|
53
|
+
Fp: IField<F>;
|
|
54
|
+
/** Scalar field, for scalars in multiply and others */
|
|
55
|
+
Fn: IField<bigint>;
|
|
56
|
+
/** Creates point from x, y. Does NOT validate if the point is valid. Use `.assertValidity()`. */
|
|
57
|
+
fromAffine(p: AffinePoint<F>): P;
|
|
58
|
+
fromBytes(bytes: Uint8Array): P;
|
|
59
|
+
fromHex(hex: Hex): P;
|
|
60
|
+
}
|
|
61
|
+
export type GetPointConsF<PC> = PC extends CurvePointCons<infer F, any> ? F : never;
|
|
62
|
+
export type GetPointConsPoint<PC> = PC extends CurvePointCons<any, infer P> ? P : never;
|
|
63
|
+
export interface CurveInfo {
|
|
64
|
+
type: 'weierstrass' | 'edwards' | 'montgomery';
|
|
65
|
+
publicKeyHasPrefix?: boolean;
|
|
66
|
+
lengths: {
|
|
67
|
+
secret: number;
|
|
68
|
+
public: number;
|
|
69
|
+
publicUncompressed?: number;
|
|
70
|
+
signature: number;
|
|
71
|
+
seed: number;
|
|
72
|
+
};
|
|
22
73
|
}
|
|
23
74
|
export type GroupConstructor<T> = {
|
|
24
75
|
BASE: T;
|
|
25
76
|
ZERO: T;
|
|
26
77
|
};
|
|
78
|
+
/** @deprecated */
|
|
79
|
+
export type ExtendedGroupConstructor<T> = GroupConstructor<T> & {
|
|
80
|
+
Fp: IField<any>;
|
|
81
|
+
Fn: IField<bigint>;
|
|
82
|
+
fromAffine(ap: AffinePoint<any>): T;
|
|
83
|
+
};
|
|
27
84
|
export type Mapper<T> = (i: T[]) => T[];
|
|
85
|
+
export declare function negateCt<T extends {
|
|
86
|
+
negate: () => T;
|
|
87
|
+
}>(condition: boolean, item: T): T;
|
|
88
|
+
/**
|
|
89
|
+
* Takes a bunch of Projective Points but executes only one
|
|
90
|
+
* inversion on all of them. Inversion is very slow operation,
|
|
91
|
+
* so this improves performance massively.
|
|
92
|
+
* Optimization: converts a list of projective points to a list of identical points with Z=1.
|
|
93
|
+
*/
|
|
94
|
+
export declare function normalizeZ<PC extends CurvePointCons<any, any>, F = GetPointConsF<PC>, P extends CurvePoint<F, P> = GetPointConsPoint<PC>>(c: CurvePointCons<F, P>, points: P[]): P[];
|
|
28
95
|
/** Internal wNAF opts for specific W and scalarBits */
|
|
29
96
|
export type WOpts = {
|
|
30
97
|
windows: number;
|
|
@@ -33,26 +100,12 @@ export type WOpts = {
|
|
|
33
100
|
maxNumber: number;
|
|
34
101
|
shiftBy: bigint;
|
|
35
102
|
};
|
|
36
|
-
export type IWNAF<T extends Group<T>> = {
|
|
37
|
-
constTimeNegate: <T extends Group<T>>(condition: boolean, item: T) => T;
|
|
38
|
-
hasPrecomputes(elm: T): boolean;
|
|
39
|
-
unsafeLadder(elm: T, n: bigint, p?: T): T;
|
|
40
|
-
precomputeWindow(elm: T, W: number): Group<T>[];
|
|
41
|
-
getPrecomputes(W: number, P: T, transform: Mapper<T>): T[];
|
|
42
|
-
wNAF(W: number, precomputes: T[], n: bigint): {
|
|
43
|
-
p: T;
|
|
44
|
-
f: T;
|
|
45
|
-
};
|
|
46
|
-
wNAFUnsafe(W: number, precomputes: T[], n: bigint, acc?: T): T;
|
|
47
|
-
wNAFCached(P: T, n: bigint, transform: Mapper<T>): {
|
|
48
|
-
p: T;
|
|
49
|
-
f: T;
|
|
50
|
-
};
|
|
51
|
-
wNAFCachedUnsafe(P: T, n: bigint, transform: Mapper<T>, prev?: T): T;
|
|
52
|
-
setWindowSize(P: T, W: number): void;
|
|
53
|
-
};
|
|
54
103
|
/**
|
|
55
104
|
* Elliptic curve multiplication of Point by scalar. Fragile.
|
|
105
|
+
* Table generation takes **30MB of ram and 10ms on high-end CPU**,
|
|
106
|
+
* but may take much longer on slow devices. Actual generation will happen on
|
|
107
|
+
* first call of `multiply()`. By default, `BASE` point is precomputed.
|
|
108
|
+
*
|
|
56
109
|
* Scalars should always be less than curve order: this should be checked inside of a curve itself.
|
|
57
110
|
* Creates precomputation tables for fast multiplication:
|
|
58
111
|
* - private scalar is split by fixed size windows of W bits
|
|
@@ -65,7 +118,56 @@ export type IWNAF<T extends Group<T>> = {
|
|
|
65
118
|
* @todo Research returning 2d JS array of windows, instead of a single window.
|
|
66
119
|
* This would allow windows to be in different memory locations
|
|
67
120
|
*/
|
|
68
|
-
export declare
|
|
121
|
+
export declare class wNAF<F, P extends CurvePoint<F, P>> {
|
|
122
|
+
private readonly BASE;
|
|
123
|
+
private readonly ZERO;
|
|
124
|
+
private readonly Fn;
|
|
125
|
+
readonly bits: number;
|
|
126
|
+
constructor(Point: CurvePointCons<F, P>, bits: number);
|
|
127
|
+
_unsafeLadder(elm: P, n: bigint, p?: P): P;
|
|
128
|
+
/**
|
|
129
|
+
* Creates a wNAF precomputation window. Used for caching.
|
|
130
|
+
* Default window size is set by `utils.precompute()` and is equal to 8.
|
|
131
|
+
* Number of precomputed points depends on the curve size:
|
|
132
|
+
* 2^(𝑊−1) * (Math.ceil(𝑛 / 𝑊) + 1), where:
|
|
133
|
+
* - 𝑊 is the window size
|
|
134
|
+
* - 𝑛 is the bitlength of the curve order.
|
|
135
|
+
* For a 256-bit curve and window size 8, the number of precomputed points is 128 * 33 = 4224.
|
|
136
|
+
* @param point Point instance
|
|
137
|
+
* @param W window size
|
|
138
|
+
* @returns precomputed point tables flattened to a single array
|
|
139
|
+
*/
|
|
140
|
+
private precomputeWindow;
|
|
141
|
+
/**
|
|
142
|
+
* Implements ec multiplication using precomputed tables and w-ary non-adjacent form.
|
|
143
|
+
* More compact implementation:
|
|
144
|
+
* https://github.com/paulmillr/noble-secp256k1/blob/47cb1669b6e506ad66b35fe7d76132ae97465da2/index.ts#L502-L541
|
|
145
|
+
* @returns real and fake (for const-time) points
|
|
146
|
+
*/
|
|
147
|
+
private wNAF;
|
|
148
|
+
/**
|
|
149
|
+
* Implements ec unsafe (non const-time) multiplication using precomputed tables and w-ary non-adjacent form.
|
|
150
|
+
* @param acc accumulator point to add result of multiplication
|
|
151
|
+
* @returns point
|
|
152
|
+
*/
|
|
153
|
+
private wNAFUnsafe;
|
|
154
|
+
private getPrecomputes;
|
|
155
|
+
cached(point: P, scalar: bigint, transform?: Mapper<P>): {
|
|
156
|
+
p: P;
|
|
157
|
+
f: P;
|
|
158
|
+
};
|
|
159
|
+
unsafe(point: P, scalar: bigint, transform?: Mapper<P>, prev?: P): P;
|
|
160
|
+
createCache(P: P, W: number): void;
|
|
161
|
+
hasCache(elm: P): boolean;
|
|
162
|
+
}
|
|
163
|
+
/**
|
|
164
|
+
* Endomorphism-specific multiplication for Koblitz curves.
|
|
165
|
+
* Cost: 128 dbl, 0-256 adds.
|
|
166
|
+
*/
|
|
167
|
+
export declare function mulEndoUnsafe<T extends Group<T>>(Point: GroupConstructor<T>, point: T, k1: bigint, k2: bigint): {
|
|
168
|
+
p1: T;
|
|
169
|
+
p2: T;
|
|
170
|
+
};
|
|
69
171
|
/**
|
|
70
172
|
* Pippenger algorithm for multi-scalar multiplication (MSM, Pa + Qb + Rc + ...).
|
|
71
173
|
* 30x faster vs naive addition on L=4096, 10x faster than precomputes.
|
|
@@ -74,7 +176,7 @@ export declare function wNAF<T extends Group<T>>(c: GroupConstructor<T>, bits: n
|
|
|
74
176
|
* @param c Curve Point constructor
|
|
75
177
|
* @param fieldN field over CURVE.N - important that it's not over CURVE.P
|
|
76
178
|
* @param points array of L curve points
|
|
77
|
-
* @param scalars array of L scalars (aka
|
|
179
|
+
* @param scalars array of L scalars (aka secret keys / bigints)
|
|
78
180
|
*/
|
|
79
181
|
export declare function pippenger<T extends Group<T>>(c: GroupConstructor<T>, fieldN: IField<bigint>, points: T[], scalars: bigint[]): T;
|
|
80
182
|
/**
|
|
@@ -100,10 +202,29 @@ export type BasicCurve<T> = {
|
|
|
100
202
|
Gy: T;
|
|
101
203
|
allowInfinityPoint?: boolean;
|
|
102
204
|
};
|
|
205
|
+
/** @deprecated */
|
|
103
206
|
export declare function validateBasic<FP, T>(curve: BasicCurve<FP> & T): Readonly<{
|
|
104
207
|
readonly nBitLength: number;
|
|
105
208
|
readonly nByteLength: number;
|
|
106
209
|
} & BasicCurve<FP> & T & {
|
|
107
210
|
p: bigint;
|
|
108
211
|
}>;
|
|
212
|
+
export type ValidCurveParams<T> = {
|
|
213
|
+
a: T;
|
|
214
|
+
p: bigint;
|
|
215
|
+
n: bigint;
|
|
216
|
+
h: bigint;
|
|
217
|
+
Gx: T;
|
|
218
|
+
Gy: T;
|
|
219
|
+
} & ({
|
|
220
|
+
b: T;
|
|
221
|
+
} | {
|
|
222
|
+
d: T;
|
|
223
|
+
});
|
|
224
|
+
export type FpFn<T> = {
|
|
225
|
+
Fp: IField<T>;
|
|
226
|
+
Fn: IField<bigint>;
|
|
227
|
+
};
|
|
228
|
+
/** Validates CURVE opts and creates fields */
|
|
229
|
+
export declare function _createCurveFields<T>(type: 'weierstrass' | 'edwards', CURVE: ValidCurveParams<T>, curveOpts?: Partial<FpFn<T>>): FpFn<T>;
|
|
109
230
|
//# sourceMappingURL=curve.d.ts.map
|
package/abstract/curve.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"curve.d.ts","sourceRoot":"","sources":["../src/abstract/curve.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,sEAAsE;AACtE,OAAO,EAAE,KAAK,MAAM,
|
|
1
|
+
{"version":3,"file":"curve.d.ts","sourceRoot":"","sources":["../src/abstract/curve.ts"],"names":[],"mappings":"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"}
|