wative-core 2.5.1 → 2.5.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/CHANGELOG.md +61 -55
- package/README.md +27 -3
- package/dist/artifacts/evm/index.cjs +1 -1
- package/dist/artifacts/evm/index.d.cts +2 -2
- package/dist/artifacts/evm/index.d.ts +2 -2
- package/dist/artifacts/evm/index.js +1 -1
- package/dist/artifacts/svm/index.cjs +1 -1
- package/dist/artifacts/svm/index.d.cts +3 -3
- package/dist/artifacts/svm/index.d.ts +3 -3
- package/dist/artifacts/svm/index.js +1 -1
- package/dist/{container-provider-CBBJbpUn.d.ts → container-provider-D5bLhd__.d.ts} +4 -2
- package/dist/{container-provider-COvXmCLM.d.cts → container-provider-DObyv4EW.d.cts} +4 -2
- package/dist/{evm-V5Fn53uW.d.cts → evm-CJqPjHHu.d.cts} +1 -1
- package/dist/{evm-Dk4ceFz0.d.ts → evm-Yd0NCJAL.d.ts} +1 -1
- package/dist/{file-sink-BjbtAHUL.d.cts → file-sink-D8l-OwW9.d.cts} +2 -2
- package/dist/{file-sink-Bf9mpegF.d.ts → file-sink-GrtMBpmU.d.ts} +2 -2
- package/dist/index.cjs +1 -1
- package/dist/index.d.cts +67 -7
- package/dist/index.d.ts +67 -7
- package/dist/index.js +1 -1
- package/dist/index.node.cjs +1 -1
- package/dist/index.node.d.cts +6 -6
- package/dist/index.node.d.ts +6 -6
- package/dist/index.node.js +1 -1
- package/dist/node/index.cjs +1 -1
- package/dist/node/index.d.cts +3 -3
- package/dist/node/index.d.ts +3 -3
- package/dist/node/index.js +1 -1
- package/dist/{svm-CjNIJZ4l.d.cts → svm-DgxTJqrR.d.ts} +3 -2
- package/dist/{svm-D8zsWS64.d.ts → svm-qBfrN98x.d.cts} +3 -2
- package/dist/{workspace-DqUdScht.d.cts → workspace-CZO-ANYP.d.cts} +265 -16
- package/dist/{workspace-DqUdScht.d.ts → workspace-CZO-ANYP.d.ts} +265 -16
- package/examples/14-esm-runtime.test.mjs +0 -3
- package/examples/17-locked-state.test.cjs +1 -0
- package/package.json +1 -1
|
@@ -27,16 +27,42 @@ interface AssetBalance {
|
|
|
27
27
|
readonly decimals: number;
|
|
28
28
|
readonly displayStatus: boolean;
|
|
29
29
|
readonly fetchedAt: number;
|
|
30
|
+
|
|
31
|
+
readonly readError?: string;
|
|
30
32
|
}
|
|
31
33
|
interface AssetCollection extends ReadonlyArray<Asset> {
|
|
32
34
|
byId(id: AssetId): Asset | null;
|
|
33
35
|
}
|
|
34
36
|
|
|
37
|
+
interface NetworkRoutes {
|
|
38
|
+
|
|
39
|
+
staked?: {
|
|
40
|
+
endpoints: readonly string[];
|
|
41
|
+
};
|
|
42
|
+
|
|
43
|
+
jito?: {
|
|
44
|
+
blockEngineUrl: string;
|
|
45
|
+
tipAccount?: string;
|
|
46
|
+
};
|
|
47
|
+
|
|
48
|
+
mev?: {
|
|
49
|
+
relayUrl: string;
|
|
50
|
+
};
|
|
51
|
+
}
|
|
35
52
|
interface NetworkInit {
|
|
36
53
|
slug: Slug;
|
|
37
54
|
name: string;
|
|
38
55
|
chainId: ChainId;
|
|
56
|
+
|
|
39
57
|
rpcUrl: string;
|
|
58
|
+
|
|
59
|
+
endpoints?: readonly string[];
|
|
60
|
+
|
|
61
|
+
readEndpoints?: readonly string[];
|
|
62
|
+
|
|
63
|
+
writeEndpoints?: readonly string[];
|
|
64
|
+
|
|
65
|
+
routes?: NetworkRoutes;
|
|
40
66
|
nativeCurrency: {
|
|
41
67
|
name: string;
|
|
42
68
|
symbol: string;
|
|
@@ -51,6 +77,10 @@ declare class Network {
|
|
|
51
77
|
readonly name: string;
|
|
52
78
|
readonly chainId: ChainId;
|
|
53
79
|
readonly rpcUrl: string;
|
|
80
|
+
readonly endpoints?: readonly string[];
|
|
81
|
+
readonly readEndpoints?: readonly string[];
|
|
82
|
+
readonly writeEndpoints?: readonly string[];
|
|
83
|
+
readonly routes?: NetworkRoutes;
|
|
54
84
|
readonly nativeCurrency: {
|
|
55
85
|
name: string;
|
|
56
86
|
symbol: string;
|
|
@@ -60,6 +90,8 @@ declare class Network {
|
|
|
60
90
|
readonly color?: string;
|
|
61
91
|
readonly vm: VmToken;
|
|
62
92
|
|
|
93
|
+
endpointsFor(kind?: "read" | "write" | "default"): readonly string[];
|
|
94
|
+
|
|
63
95
|
get symbol(): string;
|
|
64
96
|
|
|
65
97
|
readonly assets: readonly Asset[];
|
|
@@ -181,7 +213,113 @@ declare abstract class Provider {
|
|
|
181
213
|
abstract close(): Promise<void>;
|
|
182
214
|
}
|
|
183
215
|
|
|
184
|
-
|
|
216
|
+
interface RawTx {
|
|
217
|
+
readonly vm: VmToken;
|
|
218
|
+
|
|
219
|
+
readonly serialized: string;
|
|
220
|
+
|
|
221
|
+
readonly encoding: "hex" | "base64";
|
|
222
|
+
}
|
|
223
|
+
|
|
224
|
+
interface DecodedTx {
|
|
225
|
+
readonly vm: VmToken;
|
|
226
|
+
readonly to?: string | null;
|
|
227
|
+
readonly value?: bigint;
|
|
228
|
+
readonly data?: string;
|
|
229
|
+
readonly chainId?: number;
|
|
230
|
+
readonly evmType?: number;
|
|
231
|
+
readonly nonce?: number;
|
|
232
|
+
readonly gasLimit?: bigint;
|
|
233
|
+
readonly gasPrice?: bigint;
|
|
234
|
+
readonly maxFeePerGas?: bigint;
|
|
235
|
+
readonly maxPriorityFeePerGas?: bigint;
|
|
236
|
+
|
|
237
|
+
readonly from?: string | null;
|
|
238
|
+
readonly svmVersion?: "legacy" | 0;
|
|
239
|
+
readonly feePayer?: string;
|
|
240
|
+
readonly recentBlockhash?: string;
|
|
241
|
+
readonly instructionCount?: number;
|
|
242
|
+
readonly hasAddressLookupTables?: boolean;
|
|
243
|
+
|
|
244
|
+
readonly requiredSigners?: readonly string[];
|
|
245
|
+
|
|
246
|
+
readonly programIds?: readonly string[];
|
|
247
|
+
readonly signatureCount?: number;
|
|
248
|
+
readonly signed?: boolean;
|
|
249
|
+
}
|
|
250
|
+
|
|
251
|
+
declare function isRawTx(x: unknown): x is RawTx;
|
|
252
|
+
|
|
253
|
+
declare function deserializeEvmTx(serialized: string): {
|
|
254
|
+
raw: RawTx;
|
|
255
|
+
decoded: DecodedTx;
|
|
256
|
+
};
|
|
257
|
+
|
|
258
|
+
declare function deserializeSvmTx(serialized: string): {
|
|
259
|
+
raw: RawTx;
|
|
260
|
+
decoded: DecodedTx;
|
|
261
|
+
};
|
|
262
|
+
|
|
263
|
+
declare function deserializeTx(vm: VmToken, serialized: string): {
|
|
264
|
+
raw: RawTx;
|
|
265
|
+
decoded: DecodedTx;
|
|
266
|
+
};
|
|
267
|
+
|
|
268
|
+
type NormalizedTx<P> = {
|
|
269
|
+
kind: "params";
|
|
270
|
+
params: P;
|
|
271
|
+
} | {
|
|
272
|
+
kind: "raw";
|
|
273
|
+
raw: RawTx;
|
|
274
|
+
decoded: DecodedTx;
|
|
275
|
+
};
|
|
276
|
+
|
|
277
|
+
declare function normalizeTxInput<P extends object>(vm: VmToken, input: P | RawTx | string): NormalizedTx<P>;
|
|
278
|
+
|
|
279
|
+
type DestinationCode = "EVM_ZERO_ADDRESS" | "EVM_BURN_ADDRESS" | "EVM_PRECOMPILE" | "EVM_TOKEN_SELF_CONTRACT" | "EVM_ERC20_TO_CONTRACT" | "EVM_NATIVE_TO_CONTRACT" | "EVM_DELEGATED_EOA_7702" | "SVM_SOL_TO_OFFCURVE" | "SVM_INCINERATOR" | "SVM_SOL_TO_MINT" | "SVM_SOL_TO_PROGRAM_OR_SYSVAR" | "SVM_SOL_TO_TOKEN_ACCOUNT" | "SVM_SPL_TO_PROGRAM_OWNED" | "SVM_FROZEN_TOKEN_ACCOUNT" | "SVM_NON_TRANSFERABLE" | "RPC_CHECK_UNAVAILABLE" | "SCREENED";
|
|
280
|
+
|
|
281
|
+
type DestinationSeverity = "refuse" | "confirm" | "warn";
|
|
282
|
+
|
|
283
|
+
interface DestinationWarning {
|
|
284
|
+
readonly code: DestinationCode;
|
|
285
|
+
readonly chain: "evm" | "svm";
|
|
286
|
+
readonly address: string;
|
|
287
|
+
readonly asset: "native" | "token";
|
|
288
|
+
readonly detail: string;
|
|
289
|
+
}
|
|
290
|
+
|
|
291
|
+
interface DestinationReport {
|
|
292
|
+
readonly action: "allow" | "warn" | "confirm" | "refuse";
|
|
293
|
+
readonly code?: DestinationCode;
|
|
294
|
+
readonly severity?: DestinationSeverity;
|
|
295
|
+
readonly chain: "evm" | "svm";
|
|
296
|
+
readonly address: string;
|
|
297
|
+
readonly asset: "native" | "token";
|
|
298
|
+
readonly warnings: readonly DestinationWarning[];
|
|
299
|
+
readonly rpcChecked: boolean;
|
|
300
|
+
}
|
|
301
|
+
|
|
302
|
+
interface DestinationScreenResult {
|
|
303
|
+
readonly severity: "refuse" | "warn";
|
|
304
|
+
readonly detail: string;
|
|
305
|
+
}
|
|
306
|
+
|
|
307
|
+
type DestinationScreener = (input: {
|
|
308
|
+
readonly chain: "evm" | "svm";
|
|
309
|
+
readonly address: string;
|
|
310
|
+
readonly asset: "native" | "token";
|
|
311
|
+
}) => DestinationScreenResult | null | Promise<DestinationScreenResult | null>;
|
|
312
|
+
|
|
313
|
+
interface DestinationGuardOptions {
|
|
314
|
+
readonly forceUnsafeTransfer?: boolean;
|
|
315
|
+
readonly acknowledgeRiskyDestination?: boolean;
|
|
316
|
+
readonly onWarning?: (warning: DestinationWarning) => void;
|
|
317
|
+
readonly screen?: DestinationScreener;
|
|
318
|
+
}
|
|
319
|
+
|
|
320
|
+
type WativeErrorCode = "WORKSPACE_LOCKED" | "ACCOUNT_LOCKED" | "RECORD_LOCKED" | "BAD_PASSWORD" | "WEAK_PASSWORD" | "RECORD_NOT_FOUND" | "PROVIDER_IO" | "PERMISSION_DENIED" | "DISK_FULL" | "PARAMETER_ERROR"
|
|
321
|
+
|
|
322
|
+
| "IRREGULAR_DESTINATION" | "DECRYPT_FAILED" | "ENCRYPT_FAILED" | "ALGORITHM_IRREVERSIBLE" | "INVALID_MNEMONIC" | "INVALID_PRIVATE_KEY" | "UNSUPPORTED_NETWORK" | "TX_BUILD_FAILED" | "TX_SIGN_FAILED" | "TX_SUBMIT_FAILED" | "TX_TIMEOUT" | "TX_DROPPED" | "TX_ABORTED" | "RPC_UNREACHABLE"
|
|
185
323
|
|
|
186
324
|
| "RPC_REJECTED" | "STORAGE_NOT_DURABLE" | "UNSUPPORTED_OP";
|
|
187
325
|
interface WativeErrorOpts {
|
|
@@ -201,17 +339,24 @@ declare const EvmTxType: {
|
|
|
201
339
|
readonly Legacy: 0;
|
|
202
340
|
readonly AccessList: 1;
|
|
203
341
|
readonly Eip1559: 2;
|
|
342
|
+
readonly Blob: 3;
|
|
343
|
+
readonly SetCode: 4;
|
|
204
344
|
};
|
|
205
345
|
type EvmTxType = typeof EvmTxType[keyof typeof EvmTxType];
|
|
206
346
|
interface EvmTxBuildParams {
|
|
207
|
-
|
|
347
|
+
|
|
348
|
+
to: string | null;
|
|
208
349
|
value?: bigint;
|
|
350
|
+
|
|
209
351
|
data?: string;
|
|
352
|
+
input?: string;
|
|
210
353
|
nonce?: number;
|
|
211
354
|
gasLimit?: bigint;
|
|
212
355
|
gasPrice?: bigint;
|
|
213
356
|
maxFeePerGas?: bigint;
|
|
214
357
|
maxPriorityFeePerGas?: bigint;
|
|
358
|
+
|
|
359
|
+
maxFeePerGasCeiling?: bigint;
|
|
215
360
|
type?: EvmTxType;
|
|
216
361
|
chainId?: ChainId;
|
|
217
362
|
rpcUrl?: string;
|
|
@@ -220,6 +365,11 @@ interface EvmTxBuildParams {
|
|
|
220
365
|
storageKeys: ReadonlyArray<string>;
|
|
221
366
|
}>;
|
|
222
367
|
}
|
|
368
|
+
|
|
369
|
+
interface SvmAddressLookupTable {
|
|
370
|
+
readonly address: string;
|
|
371
|
+
readonly addresses: readonly string[];
|
|
372
|
+
}
|
|
223
373
|
interface SvmTxBuildParams {
|
|
224
374
|
recipient: string;
|
|
225
375
|
amount: bigint;
|
|
@@ -231,7 +381,10 @@ interface SvmTxBuildParams {
|
|
|
231
381
|
feePayer?: string;
|
|
232
382
|
rpcUrl?: string;
|
|
233
383
|
instructions?: ReadonlyArray<unknown>;
|
|
234
|
-
|
|
384
|
+
|
|
385
|
+
addressLookupTables?: ReadonlyArray<SvmAddressLookupTable>;
|
|
386
|
+
|
|
387
|
+
version?: "legacy" | 0;
|
|
235
388
|
memo?: string;
|
|
236
389
|
}
|
|
237
390
|
|
|
@@ -264,7 +417,7 @@ interface Transaction {
|
|
|
264
417
|
readonly vm: VmToken;
|
|
265
418
|
readonly status: TransactionStatus;
|
|
266
419
|
sign(): Promise<this> | this;
|
|
267
|
-
send(): TransactionTracker;
|
|
420
|
+
send(opts?: SendOptions): TransactionTracker;
|
|
268
421
|
simulate(): Promise<SimulationResult>;
|
|
269
422
|
}
|
|
270
423
|
interface SimulationResult {
|
|
@@ -276,6 +429,29 @@ interface SimulationResult {
|
|
|
276
429
|
readonly computeUnitsConsumed?: number;
|
|
277
430
|
readonly raw: unknown;
|
|
278
431
|
}
|
|
432
|
+
|
|
433
|
+
type Commitment = "processed" | "confirmed" | "finalized";
|
|
434
|
+
|
|
435
|
+
type SendRoute = "default" | "staked" | "jito" | "mev";
|
|
436
|
+
|
|
437
|
+
interface SendOptions {
|
|
438
|
+
|
|
439
|
+
readonly skipPreflight?: boolean;
|
|
440
|
+
|
|
441
|
+
readonly preflightCommitment?: Commitment;
|
|
442
|
+
|
|
443
|
+
readonly maxRetries?: number;
|
|
444
|
+
|
|
445
|
+
readonly minContextSlot?: number;
|
|
446
|
+
|
|
447
|
+
readonly commitment?: Commitment;
|
|
448
|
+
|
|
449
|
+
readonly confirmations?: number;
|
|
450
|
+
|
|
451
|
+
readonly timeout?: number;
|
|
452
|
+
|
|
453
|
+
readonly route?: SendRoute;
|
|
454
|
+
}
|
|
279
455
|
interface TransactionStateChange {
|
|
280
456
|
readonly previous: TransactionStatus;
|
|
281
457
|
readonly next: TransactionStatus;
|
|
@@ -317,7 +493,7 @@ declare class EvmTransaction implements Transaction {
|
|
|
317
493
|
#private;
|
|
318
494
|
readonly vm: "evm";
|
|
319
495
|
from: EvmAddress;
|
|
320
|
-
to: string;
|
|
496
|
+
to: string | null;
|
|
321
497
|
value: bigint;
|
|
322
498
|
data: string;
|
|
323
499
|
chainId: ChainId;
|
|
@@ -339,15 +515,17 @@ declare class EvmTransaction implements Transaction {
|
|
|
339
515
|
_address?: Address;
|
|
340
516
|
constructor(init: {
|
|
341
517
|
from: EvmAddress;
|
|
342
|
-
to: string;
|
|
518
|
+
to: string | null;
|
|
343
519
|
value: bigint;
|
|
344
520
|
chainId: ChainId;
|
|
345
521
|
data?: string;
|
|
522
|
+
input?: string;
|
|
346
523
|
type?: EvmTxType;
|
|
347
524
|
nonce?: number;
|
|
348
525
|
gasPrice?: bigint;
|
|
349
526
|
maxFeePerGas?: bigint;
|
|
350
527
|
maxPriorityFeePerGas?: bigint;
|
|
528
|
+
maxFeePerGasCeiling?: bigint;
|
|
351
529
|
gasLimit?: bigint;
|
|
352
530
|
rpcUrl?: string;
|
|
353
531
|
accessList?: ReadonlyArray<{
|
|
@@ -356,13 +534,14 @@ declare class EvmTransaction implements Transaction {
|
|
|
356
534
|
}>;
|
|
357
535
|
address?: Address;
|
|
358
536
|
});
|
|
359
|
-
constructor(from: EvmAddress, to: string, value: bigint, data: string | undefined, opts: {
|
|
537
|
+
constructor(from: EvmAddress, to: string | null, value: bigint, data: string | undefined, opts: {
|
|
360
538
|
chainId: ChainId;
|
|
361
539
|
type?: EvmTxType;
|
|
362
540
|
nonce?: number;
|
|
363
541
|
gasPrice?: bigint;
|
|
364
542
|
maxFeePerGas?: bigint;
|
|
365
543
|
maxPriorityFeePerGas?: bigint;
|
|
544
|
+
maxFeePerGasCeiling?: bigint;
|
|
366
545
|
gasLimit?: bigint;
|
|
367
546
|
rpcUrl?: string;
|
|
368
547
|
accessList?: ReadonlyArray<{
|
|
@@ -373,7 +552,7 @@ declare class EvmTransaction implements Transaction {
|
|
|
373
552
|
});
|
|
374
553
|
get status(): TransactionStatus;
|
|
375
554
|
sign(): Promise<this>;
|
|
376
|
-
send(): TransactionTracker;
|
|
555
|
+
send(opts?: SendOptions): TransactionTracker;
|
|
377
556
|
|
|
378
557
|
simulate(): Promise<SimulationResult>;
|
|
379
558
|
|
|
@@ -385,7 +564,8 @@ declare class EvmTransaction implements Transaction {
|
|
|
385
564
|
|
|
386
565
|
interface EvmRawTx {
|
|
387
566
|
from: string;
|
|
388
|
-
|
|
567
|
+
|
|
568
|
+
to: string | null;
|
|
389
569
|
value: bigint;
|
|
390
570
|
data: string;
|
|
391
571
|
type: EvmTxType;
|
|
@@ -418,7 +598,8 @@ declare class SvmTransaction implements Transaction {
|
|
|
418
598
|
get rpcUrl(): string | undefined;
|
|
419
599
|
set rpcUrl(next: string | undefined);
|
|
420
600
|
instructions?: ReadonlyArray<unknown>;
|
|
421
|
-
addressLookupTables?: ReadonlyArray<
|
|
601
|
+
addressLookupTables?: ReadonlyArray<SvmAddressLookupTable>;
|
|
602
|
+
version?: "legacy" | 0;
|
|
422
603
|
memo?: string;
|
|
423
604
|
|
|
424
605
|
_address?: Address;
|
|
@@ -434,7 +615,8 @@ declare class SvmTransaction implements Transaction {
|
|
|
434
615
|
feePayer?: string;
|
|
435
616
|
rpcUrl?: string;
|
|
436
617
|
instructions?: ReadonlyArray<unknown>;
|
|
437
|
-
addressLookupTables?: ReadonlyArray<
|
|
618
|
+
addressLookupTables?: ReadonlyArray<SvmAddressLookupTable>;
|
|
619
|
+
version?: "legacy" | 0;
|
|
438
620
|
memo?: string;
|
|
439
621
|
address?: Address;
|
|
440
622
|
});
|
|
@@ -447,13 +629,14 @@ declare class SvmTransaction implements Transaction {
|
|
|
447
629
|
feePayer?: string;
|
|
448
630
|
rpcUrl?: string;
|
|
449
631
|
instructions?: ReadonlyArray<unknown>;
|
|
450
|
-
addressLookupTables?: ReadonlyArray<
|
|
632
|
+
addressLookupTables?: ReadonlyArray<SvmAddressLookupTable>;
|
|
633
|
+
version?: "legacy" | 0;
|
|
451
634
|
memo?: string;
|
|
452
635
|
address?: Address;
|
|
453
636
|
});
|
|
454
637
|
get status(): TransactionStatus;
|
|
455
638
|
sign(): Promise<this>;
|
|
456
|
-
send(): TransactionTracker;
|
|
639
|
+
send(opts?: SendOptions): TransactionTracker;
|
|
457
640
|
simulate(): Promise<SimulationResult>;
|
|
458
641
|
get hash(): string | null;
|
|
459
642
|
|
|
@@ -468,6 +651,41 @@ interface AddressInit {
|
|
|
468
651
|
assets?: Asset[];
|
|
469
652
|
wallet: Wallet;
|
|
470
653
|
}
|
|
654
|
+
|
|
655
|
+
interface SignInParams {
|
|
656
|
+
domain?: string;
|
|
657
|
+
address?: string;
|
|
658
|
+
statement?: string;
|
|
659
|
+
uri?: string;
|
|
660
|
+
version?: string;
|
|
661
|
+
chainId?: string | number;
|
|
662
|
+
nonce?: string;
|
|
663
|
+
issuedAt?: string;
|
|
664
|
+
expirationTime?: string;
|
|
665
|
+
notBefore?: string;
|
|
666
|
+
requestId?: string;
|
|
667
|
+
resources?: readonly string[];
|
|
668
|
+
|
|
669
|
+
scheme?: string;
|
|
670
|
+
|
|
671
|
+
expectedDomain?: string;
|
|
672
|
+
}
|
|
673
|
+
|
|
674
|
+
interface SignInResult {
|
|
675
|
+
readonly message: string;
|
|
676
|
+
readonly signature: string;
|
|
677
|
+
}
|
|
678
|
+
|
|
679
|
+
interface SignRawOptions {
|
|
680
|
+
|
|
681
|
+
confirm?: (decoded: DecodedTx) => boolean | Promise<boolean>;
|
|
682
|
+
|
|
683
|
+
acknowledgeBlindSign?: boolean;
|
|
684
|
+
|
|
685
|
+
allow7702Delegation?: boolean;
|
|
686
|
+
|
|
687
|
+
allowBlobTx?: boolean;
|
|
688
|
+
}
|
|
471
689
|
declare class Address {
|
|
472
690
|
#private;
|
|
473
691
|
readonly publicKey: EvmAddress | SvmAddress | SuiAddress;
|
|
@@ -489,22 +707,46 @@ declare class Address {
|
|
|
489
707
|
messageHash: string;
|
|
490
708
|
};
|
|
491
709
|
|
|
710
|
+
signDigest(digest: Uint8Array | string): {
|
|
711
|
+
r: string;
|
|
712
|
+
s: string;
|
|
713
|
+
recovery: 0 | 1;
|
|
714
|
+
signature: string;
|
|
715
|
+
};
|
|
716
|
+
|
|
717
|
+
signBytes(message: Uint8Array | string): {
|
|
718
|
+
signature: string;
|
|
719
|
+
signatureHex: string;
|
|
720
|
+
};
|
|
721
|
+
|
|
492
722
|
signTypedData(typedData: unknown, chainId: number | bigint): {
|
|
493
723
|
signature: string;
|
|
494
724
|
domainSeparator: string;
|
|
495
725
|
structHash: string;
|
|
496
726
|
};
|
|
497
727
|
signMessage(message: string): string;
|
|
728
|
+
|
|
729
|
+
signIn(params?: SignInParams): SignInResult;
|
|
498
730
|
buildTransaction(params: EvmTxBuildParams): EvmTransaction;
|
|
499
731
|
buildTransaction(params: SvmTxBuildParams): SvmTransaction;
|
|
500
732
|
|
|
501
|
-
buildTransferPayload(req: TransferRequest): TransferPayload;
|
|
733
|
+
buildTransferPayload(req: TransferRequest, opts?: DestinationGuardOptions): TransferPayload;
|
|
734
|
+
|
|
735
|
+
checkDestination(req: TransferRequest, opts?: DestinationGuardOptions): Promise<DestinationReport>;
|
|
502
736
|
|
|
503
737
|
signTransaction<T extends Transaction>(transaction: T): T;
|
|
504
738
|
|
|
505
|
-
|
|
739
|
+
signAll<T extends Transaction>(transactions: readonly T[]): Promise<readonly T[]>;
|
|
740
|
+
|
|
741
|
+
signRawTransaction(input: RawTx | string, opts?: SignRawOptions): Promise<RawTx>;
|
|
742
|
+
|
|
743
|
+
sendTransaction(transaction: Transaction, opts?: SendOptions): TransactionTracker;
|
|
506
744
|
|
|
507
745
|
simulateTransaction(transaction: Transaction): Promise<SimulationResult>;
|
|
746
|
+
|
|
747
|
+
estimate(input: RawTx | string, opts?: {
|
|
748
|
+
rpcUrl?: string;
|
|
749
|
+
}): Promise<SimulationResult>;
|
|
508
750
|
refreshBalances(displayedOnly?: boolean): Settling<readonly AssetBalance[]>;
|
|
509
751
|
refreshBalances(network: NetworkLike, displayedOnly?: boolean): Settling<readonly AssetBalance[]>;
|
|
510
752
|
refreshBalances(assetId: AssetId): Settling<AssetBalance>;
|
|
@@ -768,6 +1010,8 @@ declare class Workspace {
|
|
|
768
1010
|
get accounts(): AccountCollection;
|
|
769
1011
|
get networks(): NetworkCollection;
|
|
770
1012
|
|
|
1013
|
+
_noteRpcUrl(url: string): void;
|
|
1014
|
+
|
|
771
1015
|
_registerLiveAccount(account: Account): void;
|
|
772
1016
|
|
|
773
1017
|
_releaseAccount(account: Account): void;
|
|
@@ -809,6 +1053,11 @@ declare class Workspace {
|
|
|
809
1053
|
id: number;
|
|
810
1054
|
symbol: string;
|
|
811
1055
|
} | null;
|
|
1056
|
+
|
|
1057
|
+
_trackedAssetsForSlug(slug: string): ReadonlyArray<{
|
|
1058
|
+
symbol: string;
|
|
1059
|
+
contractAddress: string | null;
|
|
1060
|
+
}>;
|
|
812
1061
|
}
|
|
813
1062
|
|
|
814
|
-
export { type
|
|
1063
|
+
export { type SinkConfig as $, Account as A, type LogSink as B, type ChainId as C, type DecodedTx as D, type EvmAddress as E, Logger as F, type LoggerConfig as G, type NetworkCollection as H, type NetworkInit as I, type NetworkLike as J, type NetworkRoutes as K, type LogLevel as L, type NormalizedTx as M, Network as N, type OpenOptions as O, Provider as P, Record$1 as Q, type RawTx as R, type RecordInit as S, type RecordType as T, type SendOptions as U, type SendRoute as V, type Settling as W, type SignInParams as X, type SignInResult as Y, type SignRawOptions as Z, type SimulationResult as _, type AccountCollection as a, type Slug as a0, type SvmAddress as a1, type SvmAddressLookupTable as a2, SvmSigner as a3, SvmTransaction as a4, type SvmTxBuildParams as a5, type Transaction as a6, type TransactionReceipt as a7, type TransactionStateChange as a8, type TransactionStatus as a9, type TransactionTracker as aa, type TransferPayload as ab, type TransferRequest as ac, type VmToken as ad, Wallet as ae, type WalletCollection as af, WativeError as ag, type WativeErrorCode as ah, type WativeErrorOpts as ai, Workspace as aj, type WorkspaceConfig as ak, deserializeEvmTx as al, deserializeSvmTx as am, deserializeTx as an, isRawTx as ao, newMnemonic as ap, normalizeTxInput as aq, type SuiAddress as ar, type AccountOrgType as b, Address as c, Asset as d, type AssetBalance as e, type AssetCollection as f, type AssetId as g, type AssetInitObject as h, type AssetRef as i, type ChainVM as j, type Commitment as k, ConsoleSink as l, type ContainerState as m, type DestinationCode as n, type DestinationGuardOptions as o, type DestinationReport as p, type DestinationScreenResult as q, type DestinationScreener as r, type DestinationSeverity as s, type DestinationWarning as t, type EvmRawTx as u, EvmSigner as v, EvmTransaction as w, type EvmTxBuildParams as x, EvmTxType as y, type LogRecord as z };
|
|
@@ -3,9 +3,6 @@ import { mkdtemp } from "node:fs/promises";
|
|
|
3
3
|
import { tmpdir } from "node:os";
|
|
4
4
|
import path from "node:path";
|
|
5
5
|
import test from "node:test";
|
|
6
|
-
import { fileURLToPath } from "node:url";
|
|
7
|
-
|
|
8
|
-
const here = path.dirname(fileURLToPath(import.meta.url));
|
|
9
6
|
|
|
10
7
|
async function importDist() {
|
|
11
8
|
return import("wative-core");
|
|
@@ -56,6 +56,7 @@ test("a locked account refuses every operation that needs key material", async (
|
|
|
56
56
|
await refuses("ACCOUNT_LOCKED", "dumpPrivateKey", () => wallet.dumpPrivateKey("evm"));
|
|
57
57
|
await refuses("ACCOUNT_LOCKED", "signMessage", () => address.signMessage("hello"));
|
|
58
58
|
await refuses("ACCOUNT_LOCKED", "signTypedData", () => address.signTypedData(TYPED_DATA));
|
|
59
|
+
await refuses("ACCOUNT_LOCKED", "signDigest", () => address.signDigest("0x" + "ab".repeat(32)));
|
|
59
60
|
await refuses("ACCOUNT_LOCKED", "deriveWallets", () => account.deriveWallets(1));
|
|
60
61
|
|
|
61
62
|
await ws.unlock("wsp-pwd").catch(() => {});
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "wative-core",
|
|
3
|
-
"version": "2.5.
|
|
3
|
+
"version": "2.5.3",
|
|
4
4
|
"description": "Hyperscale crypto wallet management library — multi-workspace, multi-chain, originally designed for on-chain market makers",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.node.cjs",
|