@starknetfoundation/krusty-kms-wasm 0.4.5 → 0.5.0
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/krusty_kms_wasm.d.ts +290 -45
- package/krusty_kms_wasm.js +746 -82
- package/krusty_kms_wasm_bg.wasm +0 -0
- package/package.json +1 -1
package/krusty_kms_wasm.d.ts
CHANGED
|
@@ -257,18 +257,31 @@ export class WasmFundProofResult {
|
|
|
257
257
|
}
|
|
258
258
|
|
|
259
259
|
/**
|
|
260
|
-
* Keypair for Tongo operations.
|
|
260
|
+
* Keypair for Tongo / Starknet operations.
|
|
261
|
+
*
|
|
262
|
+
* # Security / threat model
|
|
263
|
+
*
|
|
264
|
+
* This type intentionally exposes `private_key` as a plain hex string for
|
|
265
|
+
* JS interop (signing, export, wallet recovery). That string lives in the
|
|
266
|
+
* JS heap and **cannot** be reliably wiped. Prefer companion public-only
|
|
267
|
+
* APIs (`derivePublicKey`, etc.) when private material is not required.
|
|
268
|
+
* Never `console.log` this value; `Debug` redacts the private key.
|
|
261
269
|
*/
|
|
262
270
|
export class WasmKeypair {
|
|
263
271
|
free(): void;
|
|
264
272
|
[Symbol.dispose](): void;
|
|
265
273
|
constructor(private_key: string, public_key_x: string, public_key_y: string);
|
|
266
274
|
/**
|
|
267
|
-
* Get the full public key as
|
|
275
|
+
* Get the full public key as fixed-width `0x` + 128 hex digits (x||y).
|
|
276
|
+
*
|
|
277
|
+
* Compatible with `deserializePublicKey`.
|
|
268
278
|
*/
|
|
269
279
|
publicKeyHex(): string;
|
|
270
280
|
/**
|
|
271
|
-
* Private key as hex string (0x-prefixed)
|
|
281
|
+
* Private key as hex string (0x-prefixed). Treat as secret.
|
|
282
|
+
*
|
|
283
|
+
* Omitted from default `Serialize` (use the wasm-bindgen getter for the
|
|
284
|
+
* intentional secret-returning API).
|
|
272
285
|
*/
|
|
273
286
|
private_key: string;
|
|
274
287
|
/**
|
|
@@ -286,13 +299,22 @@ export class WasmKeypair {
|
|
|
286
299
|
*
|
|
287
300
|
* Used for NIP-04/NIP-44 encrypted messaging.
|
|
288
301
|
* Public key is x-only (32 bytes, BIP-340 format).
|
|
302
|
+
*
|
|
303
|
+
* # Security / threat model
|
|
304
|
+
*
|
|
305
|
+
* `private_key` is a plain hex string in the JS heap and cannot be reliably
|
|
306
|
+
* wiped. Prefer [`WasmNostrPublicKey`] / `deriveNostrPublicKey` when private
|
|
307
|
+
* material is not required. `Debug` redacts the private key.
|
|
289
308
|
*/
|
|
290
309
|
export class WasmNostrKeypair {
|
|
291
310
|
free(): void;
|
|
292
311
|
[Symbol.dispose](): void;
|
|
293
312
|
constructor(private_key: string, public_key: string);
|
|
294
313
|
/**
|
|
295
|
-
* Private key as hex string (64 hex chars, no 0x prefix)
|
|
314
|
+
* Private key as hex string (64 hex chars, no 0x prefix). Treat as secret.
|
|
315
|
+
*
|
|
316
|
+
* Omitted from default `Serialize` (use the wasm-bindgen getter for the
|
|
317
|
+
* intentional secret-returning API).
|
|
296
318
|
*/
|
|
297
319
|
private_key: string;
|
|
298
320
|
/**
|
|
@@ -301,6 +323,19 @@ export class WasmNostrKeypair {
|
|
|
301
323
|
public_key: string;
|
|
302
324
|
}
|
|
303
325
|
|
|
326
|
+
/**
|
|
327
|
+
* Public-only Nostr key (x-only, BIP-340). No private key material.
|
|
328
|
+
*/
|
|
329
|
+
export class WasmNostrPublicKey {
|
|
330
|
+
free(): void;
|
|
331
|
+
[Symbol.dispose](): void;
|
|
332
|
+
constructor(public_key: string);
|
|
333
|
+
/**
|
|
334
|
+
* Public key as x-only hex string (64 hex chars, no 0x prefix)
|
|
335
|
+
*/
|
|
336
|
+
public_key: string;
|
|
337
|
+
}
|
|
338
|
+
|
|
304
339
|
/**
|
|
305
340
|
* Nostr BIP-340 Schnorr signature result.
|
|
306
341
|
*/
|
|
@@ -329,6 +364,33 @@ export class WasmPoint {
|
|
|
329
364
|
y: string;
|
|
330
365
|
}
|
|
331
366
|
|
|
367
|
+
/**
|
|
368
|
+
* Public-only Stark / Tongo key material (no private key).
|
|
369
|
+
*
|
|
370
|
+
* Prefer this over [`WasmKeypair`] when only the public key is needed
|
|
371
|
+
* (address derivation, display, API lookups). Both affine coordinates are
|
|
372
|
+
* populated; for x-only Stark keys use [`WasmStarkXOnlyPublicKey`].
|
|
373
|
+
*/
|
|
374
|
+
export class WasmPublicKey {
|
|
375
|
+
free(): void;
|
|
376
|
+
[Symbol.dispose](): void;
|
|
377
|
+
constructor(public_key_x: string, public_key_y: string);
|
|
378
|
+
/**
|
|
379
|
+
* Get the full public key as fixed-width `0x` + 128 hex digits (x||y).
|
|
380
|
+
*
|
|
381
|
+
* Compatible with `deserializePublicKey`.
|
|
382
|
+
*/
|
|
383
|
+
publicKeyHex(): string;
|
|
384
|
+
/**
|
|
385
|
+
* Public key X coordinate as hex string
|
|
386
|
+
*/
|
|
387
|
+
public_key_x: string;
|
|
388
|
+
/**
|
|
389
|
+
* Public key Y coordinate as hex string
|
|
390
|
+
*/
|
|
391
|
+
public_key_y: string;
|
|
392
|
+
}
|
|
393
|
+
|
|
332
394
|
/**
|
|
333
395
|
* Parameters for generating a ragequit proof.
|
|
334
396
|
*/
|
|
@@ -486,6 +548,54 @@ export class WasmStarkSignature {
|
|
|
486
548
|
s: string;
|
|
487
549
|
}
|
|
488
550
|
|
|
551
|
+
/**
|
|
552
|
+
* Stark x-only keypair (private key + x-coordinate public key).
|
|
553
|
+
*
|
|
554
|
+
* Used by Argent-legacy derivation where `stark_public_key` does not produce Y.
|
|
555
|
+
*
|
|
556
|
+
* # Security / threat model
|
|
557
|
+
*
|
|
558
|
+
* `private_key` is a plain hex string in the JS heap and cannot be reliably
|
|
559
|
+
* wiped. Prefer [`WasmStarkXOnlyPublicKey`] when private material is not
|
|
560
|
+
* required. `Debug` redacts the private key; default `Serialize` omits it.
|
|
561
|
+
*/
|
|
562
|
+
export class WasmStarkXOnlyKeypair {
|
|
563
|
+
free(): void;
|
|
564
|
+
[Symbol.dispose](): void;
|
|
565
|
+
constructor(private_key: string, public_key_x: string);
|
|
566
|
+
/**
|
|
567
|
+
* Return the x-only public key as fixed-width `0x` + 64 hex digits.
|
|
568
|
+
*/
|
|
569
|
+
publicKeyHex(): string;
|
|
570
|
+
/**
|
|
571
|
+
* Private key as hex string (0x-prefixed). Treat as secret.
|
|
572
|
+
*/
|
|
573
|
+
private_key: string;
|
|
574
|
+
/**
|
|
575
|
+
* Public key X coordinate as hex string
|
|
576
|
+
*/
|
|
577
|
+
public_key_x: string;
|
|
578
|
+
}
|
|
579
|
+
|
|
580
|
+
/**
|
|
581
|
+
* Stark public key as an x-only felt (no Y coordinate).
|
|
582
|
+
*
|
|
583
|
+
* Matches `stark_public_key` / account address derivation inputs.
|
|
584
|
+
*/
|
|
585
|
+
export class WasmStarkXOnlyPublicKey {
|
|
586
|
+
free(): void;
|
|
587
|
+
[Symbol.dispose](): void;
|
|
588
|
+
constructor(public_key_x: string);
|
|
589
|
+
/**
|
|
590
|
+
* Return the x-only public key as fixed-width `0x` + 64 hex digits.
|
|
591
|
+
*/
|
|
592
|
+
publicKeyHex(): string;
|
|
593
|
+
/**
|
|
594
|
+
* Public key X coordinate as hex string
|
|
595
|
+
*/
|
|
596
|
+
public_key_x: string;
|
|
597
|
+
}
|
|
598
|
+
|
|
489
599
|
/**
|
|
490
600
|
* Parameters for generating a transfer proof.
|
|
491
601
|
*/
|
|
@@ -917,12 +1027,29 @@ export function deriveArgentAccountAddress(public_key: string, class_hash?: stri
|
|
|
917
1027
|
* This is needed to recover keys for accounts created with old Argent-X.
|
|
918
1028
|
* Braavos and new Argent use direct `m/44'/9004'/0'/0/{index}` derivation instead.
|
|
919
1029
|
*
|
|
1030
|
+
* Returns an x-only Stark keypair ([`WasmStarkXOnlyKeypair`]) because
|
|
1031
|
+
* `stark_public_key` does not produce an affine Y coordinate.
|
|
1032
|
+
*
|
|
1033
|
+
* # Security / threat model
|
|
1034
|
+
*
|
|
1035
|
+
* Returns the private key as a hex string in the JS heap. Prefer
|
|
1036
|
+
* [`derive_argent_legacy_public_key`] when only the public key is needed.
|
|
1037
|
+
*
|
|
920
1038
|
* # Arguments
|
|
921
1039
|
* * `mnemonic` - 12 or 24 word BIP-39 mnemonic
|
|
922
1040
|
* * `address_index` - HD wallet address index (default: 0)
|
|
923
1041
|
* * `account_index` - HD wallet account index (default: 0)
|
|
924
1042
|
*/
|
|
925
|
-
export function deriveArgentLegacyKeypair(mnemonic: string, address_index: number, account_index: number):
|
|
1043
|
+
export function deriveArgentLegacyKeypair(mnemonic: string, address_index: number, account_index: number): WasmStarkXOnlyKeypair;
|
|
1044
|
+
|
|
1045
|
+
/**
|
|
1046
|
+
* Derive the Argent-legacy Stark public key only (x-coordinate).
|
|
1047
|
+
*
|
|
1048
|
+
* Prefer this over [`derive_argent_legacy_keypair`] when private key material
|
|
1049
|
+
* is not needed. Returns [`WasmStarkXOnlyPublicKey`] because
|
|
1050
|
+
* `stark_public_key` is x-only (not a full affine point).
|
|
1051
|
+
*/
|
|
1052
|
+
export function deriveArgentLegacyPublicKey(mnemonic: string, address_index: number, account_index: number): WasmStarkXOnlyPublicKey;
|
|
926
1053
|
|
|
927
1054
|
/**
|
|
928
1055
|
* Derive a Braavos account contract address from a public key.
|
|
@@ -940,9 +1067,9 @@ export function deriveArgentLegacyKeypair(mnemonic: string, address_index: numbe
|
|
|
940
1067
|
export function deriveBraavosAccountAddress(public_key: string, class_hash?: string | null): string;
|
|
941
1068
|
|
|
942
1069
|
/**
|
|
943
|
-
* Derive
|
|
1070
|
+
* Derive discovery keypairs for a mnemonic without computing addresses (public-only).
|
|
944
1071
|
*
|
|
945
|
-
* Returns one
|
|
1072
|
+
* Returns one entry per derivation scheme per index:
|
|
946
1073
|
* - **Direct**: `m/44'/9004'/0'/0/{index}` — shared by Braavos, new Argent, OpenZeppelin
|
|
947
1074
|
* - **ArgentLegacy**: double derivation via ETH key — used by legacy Argent wallets
|
|
948
1075
|
*
|
|
@@ -950,11 +1077,15 @@ export function deriveBraavosAccountAddress(public_key: string, class_hash?: str
|
|
|
950
1077
|
* Use these public keys to query external APIs (e.g., Argent's smart account
|
|
951
1078
|
* discovery endpoint) for accounts whose addresses can't be derived locally.
|
|
952
1079
|
*
|
|
1080
|
+
* # Security
|
|
1081
|
+
*
|
|
1082
|
+
* Private keys are **not** included. Use
|
|
1083
|
+
* [`derive_discovery_keypairs_with_secrets`] when key material is required.
|
|
1084
|
+
*
|
|
953
1085
|
* # Returns
|
|
954
1086
|
* JSON string: array of objects with fields:
|
|
955
1087
|
* - `derivationType`: "Direct" | "ArgentLegacy"
|
|
956
1088
|
* - `publicKey`: hex string
|
|
957
|
-
* - `privateKey`: hex string (handle with care!)
|
|
958
1089
|
* - `derivationIndex`: number
|
|
959
1090
|
* - `derivationPath`: string
|
|
960
1091
|
*
|
|
@@ -971,8 +1102,24 @@ export function deriveBraavosAccountAddress(public_key: string, class_hash?: str
|
|
|
971
1102
|
*/
|
|
972
1103
|
export function deriveDiscoveryKeypairs(mnemonic: string, max_index?: number | null): string;
|
|
973
1104
|
|
|
1105
|
+
/**
|
|
1106
|
+
* Like [`derive_discovery_keypairs`], but includes `privateKey` on each entry.
|
|
1107
|
+
*
|
|
1108
|
+
* # Security
|
|
1109
|
+
*
|
|
1110
|
+
* **Opt-in secret API.** Treat the returned JSON as secret material.
|
|
1111
|
+
*/
|
|
1112
|
+
export function deriveDiscoveryKeypairsWithSecrets(mnemonic: string, max_index?: number | null): string;
|
|
1113
|
+
|
|
974
1114
|
/**
|
|
975
1115
|
* Derive a keypair from mnemonic (for external use).
|
|
1116
|
+
*
|
|
1117
|
+
* # Security / threat model
|
|
1118
|
+
*
|
|
1119
|
+
* Returns the private key as a hex string in the JS heap. Prefer
|
|
1120
|
+
* [`derive_public_key`] when only the public key is needed. Never log the
|
|
1121
|
+
* returned [`WasmKeypair`]; its `Debug` form redacts the private key, but
|
|
1122
|
+
* JS property access still exposes it.
|
|
976
1123
|
*/
|
|
977
1124
|
export function deriveKeypair(mnemonic: string, address_index: number, account_index: number, passphrase?: string | null): WasmKeypair;
|
|
978
1125
|
|
|
@@ -984,6 +1131,11 @@ export function deriveKeypair(mnemonic: string, address_index: number, account_i
|
|
|
984
1131
|
*
|
|
985
1132
|
* Derivation path: m/44'/1237'/{account_index}'/0/{address_index}
|
|
986
1133
|
*
|
|
1134
|
+
* # Security / threat model
|
|
1135
|
+
*
|
|
1136
|
+
* Returns the private key as a hex string in the JS heap. Prefer
|
|
1137
|
+
* [`derive_nostr_public_key`] when only the public key is needed.
|
|
1138
|
+
*
|
|
987
1139
|
* # Arguments
|
|
988
1140
|
* * `mnemonic` - 12 or 24 word BIP-39 mnemonic
|
|
989
1141
|
* * `address_index` - HD wallet address index (default: 0)
|
|
@@ -995,6 +1147,13 @@ export function deriveKeypair(mnemonic: string, address_index: number, account_i
|
|
|
995
1147
|
*/
|
|
996
1148
|
export function deriveNostrKeypair(mnemonic: string, address_index: number, account_index: number, passphrase?: string | null): WasmNostrKeypair;
|
|
997
1149
|
|
|
1150
|
+
/**
|
|
1151
|
+
* Derive the Nostr x-only public key only from a mnemonic (coin type 1237).
|
|
1152
|
+
*
|
|
1153
|
+
* Prefer this over [`derive_nostr_keypair`] when private key material is not needed.
|
|
1154
|
+
*/
|
|
1155
|
+
export function deriveNostrPublicKey(mnemonic: string, address_index: number, account_index: number, passphrase?: string | null): WasmNostrPublicKey;
|
|
1156
|
+
|
|
998
1157
|
/**
|
|
999
1158
|
* Derive an OpenZeppelin account contract address from a public key.
|
|
1000
1159
|
*
|
|
@@ -1004,19 +1163,31 @@ export function deriveNostrKeypair(mnemonic: string, address_index: number, acco
|
|
|
1004
1163
|
* # Arguments
|
|
1005
1164
|
* * `public_key_x` - The x-coordinate of the Stark public key (hex string)
|
|
1006
1165
|
* * `class_hash` - The OpenZeppelin account class hash (hex string)
|
|
1007
|
-
* * `salt` - Optional salt for address derivation (hex string
|
|
1166
|
+
* * `salt` - Optional salt for address derivation (hex string; defaults to the public key)
|
|
1008
1167
|
*
|
|
1009
1168
|
* # Returns
|
|
1010
1169
|
* The derived account contract address as hex string
|
|
1011
1170
|
*/
|
|
1012
1171
|
export function deriveOzAccountAddress(public_key_x: string, class_hash: string, salt?: string | null): string;
|
|
1013
1172
|
|
|
1173
|
+
/**
|
|
1174
|
+
* Derive the public key only from a mnemonic (Tongo coin type).
|
|
1175
|
+
*
|
|
1176
|
+
* Prefer this over [`derive_keypair`] when private key material is not needed.
|
|
1177
|
+
*/
|
|
1178
|
+
export function derivePublicKey(mnemonic: string, address_index: number, account_index: number, passphrase?: string | null): WasmPublicKey;
|
|
1179
|
+
|
|
1014
1180
|
/**
|
|
1015
1181
|
* Derive a Starknet account keypair from mnemonic (coin type 9004).
|
|
1016
1182
|
*
|
|
1017
1183
|
* This is used for signing Starknet transactions and deriving the
|
|
1018
1184
|
* OpenZeppelin account contract address.
|
|
1019
1185
|
*
|
|
1186
|
+
* # Security / threat model
|
|
1187
|
+
*
|
|
1188
|
+
* Returns the private key as a hex string in the JS heap. Prefer
|
|
1189
|
+
* [`derive_starknet_public_key`] when only the public key is needed.
|
|
1190
|
+
*
|
|
1020
1191
|
* # Arguments
|
|
1021
1192
|
* * `mnemonic` - 12 or 24 word BIP-39 mnemonic
|
|
1022
1193
|
* * `address_index` - HD wallet address index (default: 0)
|
|
@@ -1028,6 +1199,14 @@ export function deriveOzAccountAddress(public_key_x: string, class_hash: string,
|
|
|
1028
1199
|
*/
|
|
1029
1200
|
export function deriveStarknetKeypair(mnemonic: string, address_index: number, account_index: number, passphrase?: string | null): WasmKeypair;
|
|
1030
1201
|
|
|
1202
|
+
/**
|
|
1203
|
+
* Derive the Starknet public key only from a mnemonic (coin type 9004).
|
|
1204
|
+
*
|
|
1205
|
+
* Prefer this over [`derive_starknet_keypair`] when private key material is
|
|
1206
|
+
* not needed (e.g. address derivation).
|
|
1207
|
+
*/
|
|
1208
|
+
export function deriveStarknetPublicKey(mnemonic: string, address_index: number, account_index: number, passphrase?: string | null): WasmPublicKey;
|
|
1209
|
+
|
|
1031
1210
|
/**
|
|
1032
1211
|
* Derive the STRK20 viewing key from a Stark private key.
|
|
1033
1212
|
*
|
|
@@ -1054,17 +1233,31 @@ export function deriveStrk20ViewingKey(private_key: string): string;
|
|
|
1054
1233
|
export function deserializePublicKey(hex: string): WasmPoint;
|
|
1055
1234
|
|
|
1056
1235
|
/**
|
|
1057
|
-
* Perform full account discovery in a single call.
|
|
1236
|
+
* Perform full account discovery in a single call (public-only).
|
|
1058
1237
|
*
|
|
1059
1238
|
* Returns a JSON object with two fields:
|
|
1060
|
-
* - `keypairs`: array of DerivedKeypair objects (for API-based smart account lookup)
|
|
1061
|
-
* - `candidates`: array of CandidateAccount objects (for local address derivation)
|
|
1239
|
+
* - `keypairs`: array of public-only DerivedKeypair objects (for API-based smart account lookup)
|
|
1240
|
+
* - `candidates`: array of public-only CandidateAccount objects (for local address derivation)
|
|
1062
1241
|
*
|
|
1063
1242
|
* This combines `deriveDiscoveryKeypairs` and `generateAccountCandidates` into
|
|
1064
1243
|
* a single WASM call, eliminating one JS→WASM round-trip.
|
|
1244
|
+
*
|
|
1245
|
+
* # Security
|
|
1246
|
+
*
|
|
1247
|
+
* Private keys are **not** included. Use
|
|
1248
|
+
* [`discover_accounts_from_mnemonic_with_secrets`] when key material is required.
|
|
1065
1249
|
*/
|
|
1066
1250
|
export function discoverAccountsFromMnemonic(mnemonic: string, max_index?: number | null): string;
|
|
1067
1251
|
|
|
1252
|
+
/**
|
|
1253
|
+
* Like [`discover_accounts_from_mnemonic`], but includes private keys.
|
|
1254
|
+
*
|
|
1255
|
+
* # Security
|
|
1256
|
+
*
|
|
1257
|
+
* **Opt-in secret API.** Treat the returned JSON as secret material.
|
|
1258
|
+
*/
|
|
1259
|
+
export function discoverAccountsFromMnemonicWithSecrets(mnemonic: string, max_index?: number | null): string;
|
|
1260
|
+
|
|
1068
1261
|
/**
|
|
1069
1262
|
* Encode a value as a Felt hex string.
|
|
1070
1263
|
*
|
|
@@ -1120,7 +1313,7 @@ export function encryptWithKey(plaintext: string, key_hex: string): WasmEncrypte
|
|
|
1120
1313
|
*
|
|
1121
1314
|
* Returns a JSON object where keys are derivation indices and values are
|
|
1122
1315
|
* objects mapping wallet type to address. Useful for quick discovery without
|
|
1123
|
-
* needing the full candidate details.
|
|
1316
|
+
* needing the full candidate details. Never includes private keys.
|
|
1124
1317
|
*
|
|
1125
1318
|
* # Returns
|
|
1126
1319
|
* JSON string: `{ "0": { "Braavos": "0x...", "Argent": "0x...", ... }, "1": { ... } }`
|
|
@@ -1128,7 +1321,7 @@ export function encryptWithKey(plaintext: string, key_hex: string): WasmEncrypte
|
|
|
1128
1321
|
export function generateAccountAddresses(mnemonic: string, max_index?: number | null): string;
|
|
1129
1322
|
|
|
1130
1323
|
/**
|
|
1131
|
-
* Generate all candidate account addresses for a mnemonic.
|
|
1324
|
+
* Generate all candidate account addresses for a mnemonic (public-only).
|
|
1132
1325
|
*
|
|
1133
1326
|
* Returns a JSON array of candidate accounts across all known wallet types
|
|
1134
1327
|
* (Braavos, Argent, Argent Legacy, Argent Cairo 0, OpenZeppelin).
|
|
@@ -1138,6 +1331,11 @@ export function generateAccountAddresses(mnemonic: string, max_index?: number |
|
|
|
1138
1331
|
* ones are actually deployed, check each address via an RPC provider
|
|
1139
1332
|
* (e.g., `provider.getClassHashAt(address)` in starknet.js).
|
|
1140
1333
|
*
|
|
1334
|
+
* # Security
|
|
1335
|
+
*
|
|
1336
|
+
* Private keys are **not** included (default `CandidateAccount` Serialize).
|
|
1337
|
+
* Use [`generate_account_candidates_with_secrets`] when key material is required.
|
|
1338
|
+
*
|
|
1141
1339
|
* # Arguments
|
|
1142
1340
|
* * `mnemonic` - BIP-39 mnemonic phrase (12 or 24 words)
|
|
1143
1341
|
* * `max_index` - Maximum derivation index to scan (default: 5).
|
|
@@ -1149,7 +1347,6 @@ export function generateAccountAddresses(mnemonic: string, max_index?: number |
|
|
|
1149
1347
|
* - `classHash`: hex string
|
|
1150
1348
|
* - `address`: hex string
|
|
1151
1349
|
* - `publicKey`: hex string
|
|
1152
|
-
* - `privateKey`: hex string (handle with care!)
|
|
1153
1350
|
* - `derivationIndex`: number
|
|
1154
1351
|
* - `derivationPath`: string (e.g., "m/44'/9004'/0'/0/0")
|
|
1155
1352
|
* - `classVersion`: string (e.g., "v0.4.0", "braavos-base")
|
|
@@ -1167,6 +1364,17 @@ export function generateAccountAddresses(mnemonic: string, max_index?: number |
|
|
|
1167
1364
|
*/
|
|
1168
1365
|
export function generateAccountCandidates(mnemonic: string, max_index?: number | null): string;
|
|
1169
1366
|
|
|
1367
|
+
/**
|
|
1368
|
+
* Like [`generate_account_candidates`], but includes `privateKey` on each candidate.
|
|
1369
|
+
*
|
|
1370
|
+
* # Security
|
|
1371
|
+
*
|
|
1372
|
+
* **Opt-in secret API.** The returned JSON contains private keys. Do not log,
|
|
1373
|
+
* cache in localStorage, or pass through untrusted JavaScript. Prefer the
|
|
1374
|
+
* default public-only API for discovery scans.
|
|
1375
|
+
*/
|
|
1376
|
+
export function generateAccountCandidatesWithSecrets(mnemonic: string, max_index?: number | null): string;
|
|
1377
|
+
|
|
1170
1378
|
/**
|
|
1171
1379
|
* Generate a fund (deposit) proof.
|
|
1172
1380
|
*/
|
|
@@ -1174,6 +1382,13 @@ export function generateFundProof(account: WasmAccount, params: WasmFundParams):
|
|
|
1174
1382
|
|
|
1175
1383
|
/**
|
|
1176
1384
|
* Generate a new random mnemonic phrase.
|
|
1385
|
+
*
|
|
1386
|
+
* # Security / threat model
|
|
1387
|
+
*
|
|
1388
|
+
* The mnemonic is returned as a plain JavaScript string and cannot be
|
|
1389
|
+
* reliably wiped from the JS heap. Treat it as high-value secret material:
|
|
1390
|
+
* never log it, never persist it unencrypted, and prefer keeping it only in
|
|
1391
|
+
* secure storage after generation.
|
|
1177
1392
|
*/
|
|
1178
1393
|
export function generateMnemonic(word_count?: number | null): string;
|
|
1179
1394
|
|
|
@@ -1756,17 +1971,28 @@ export interface InitOutput {
|
|
|
1756
1971
|
readonly __wbg_wasmdecryptedpoint_free: (a: number, b: number) => void;
|
|
1757
1972
|
readonly __wbg_wasmkeypair_free: (a: number, b: number) => void;
|
|
1758
1973
|
readonly __wbg_wasmnostrkeypair_free: (a: number, b: number) => void;
|
|
1974
|
+
readonly __wbg_wasmnostrpublickey_free: (a: number, b: number) => void;
|
|
1759
1975
|
readonly __wbg_wasmnostrsignature_free: (a: number, b: number) => void;
|
|
1760
1976
|
readonly __wbg_wasmpoint_free: (a: number, b: number) => void;
|
|
1977
|
+
readonly __wbg_wasmpublickey_free: (a: number, b: number) => void;
|
|
1761
1978
|
readonly __wbg_wasmstarksignature_free: (a: number, b: number) => void;
|
|
1979
|
+
readonly __wbg_wasmstarkxonlykeypair_free: (a: number, b: number) => void;
|
|
1980
|
+
readonly __wbg_wasmstarkxonlypublickey_free: (a: number, b: number) => void;
|
|
1762
1981
|
readonly wasmaccountstate_new: (a: number, b: number, c: number, d: number, e: bigint) => [number, number, number];
|
|
1763
1982
|
readonly wasmaccountstate_totalBalance: (a: number) => [number, number, number, number];
|
|
1764
1983
|
readonly wasmciphertext_new: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number) => number;
|
|
1765
1984
|
readonly wasmdecryptedpoint_new: (a: number, b: number, c: number, d: number, e: number) => number;
|
|
1766
|
-
readonly wasmkeypair_new: (a: number, b: number, c: number, d: number, e: number, f: number) => number;
|
|
1767
|
-
readonly wasmkeypair_publicKeyHex: (a: number) => [number, number];
|
|
1985
|
+
readonly wasmkeypair_new: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number];
|
|
1986
|
+
readonly wasmkeypair_publicKeyHex: (a: number) => [number, number, number, number];
|
|
1768
1987
|
readonly wasmnostrkeypair_new: (a: number, b: number, c: number, d: number) => number;
|
|
1988
|
+
readonly wasmnostrpublickey_new: (a: number, b: number) => number;
|
|
1769
1989
|
readonly wasmpoint_new: (a: number, b: number, c: number, d: number) => [number, number, number];
|
|
1990
|
+
readonly wasmpublickey_new: (a: number, b: number, c: number, d: number) => [number, number, number];
|
|
1991
|
+
readonly wasmpublickey_publicKeyHex: (a: number) => [number, number, number, number];
|
|
1992
|
+
readonly wasmstarkxonlykeypair_new: (a: number, b: number, c: number, d: number) => [number, number, number];
|
|
1993
|
+
readonly wasmstarkxonlykeypair_publicKeyHex: (a: number) => [number, number, number, number];
|
|
1994
|
+
readonly wasmstarkxonlypublickey_new: (a: number, b: number) => [number, number, number];
|
|
1995
|
+
readonly wasmstarkxonlypublickey_publicKeyHex: (a: number) => [number, number, number, number];
|
|
1770
1996
|
readonly __wbg_get_wasmciphertext_l_y: (a: number) => [number, number];
|
|
1771
1997
|
readonly __wbg_get_wasmciphertext_r_x: (a: number) => [number, number];
|
|
1772
1998
|
readonly __wbg_get_wasmkeypair_private_key: (a: number) => [number, number];
|
|
@@ -1774,35 +2000,51 @@ export interface InitOutput {
|
|
|
1774
2000
|
readonly __wbg_get_wasmkeypair_public_key_y: (a: number) => [number, number];
|
|
1775
2001
|
readonly __wbg_get_wasmnostrkeypair_private_key: (a: number) => [number, number];
|
|
1776
2002
|
readonly __wbg_get_wasmnostrkeypair_public_key: (a: number) => [number, number];
|
|
2003
|
+
readonly __wbg_get_wasmnostrpublickey_public_key: (a: number) => [number, number];
|
|
1777
2004
|
readonly __wbg_get_wasmnostrsignature_publicKey: (a: number) => [number, number];
|
|
1778
2005
|
readonly __wbg_get_wasmnostrsignature_signature: (a: number) => [number, number];
|
|
1779
2006
|
readonly __wbg_get_wasmpoint_x: (a: number) => [number, number];
|
|
1780
2007
|
readonly __wbg_get_wasmpoint_y: (a: number) => [number, number];
|
|
2008
|
+
readonly __wbg_get_wasmpublickey_public_key_x: (a: number) => [number, number];
|
|
2009
|
+
readonly __wbg_get_wasmpublickey_public_key_y: (a: number) => [number, number];
|
|
1781
2010
|
readonly __wbg_get_wasmstarksignature_publicKey: (a: number) => [number, number];
|
|
1782
2011
|
readonly __wbg_get_wasmstarksignature_r: (a: number) => [number, number];
|
|
1783
2012
|
readonly __wbg_get_wasmstarksignature_s: (a: number) => [number, number];
|
|
2013
|
+
readonly __wbg_get_wasmstarkxonlykeypair_private_key: (a: number) => [number, number];
|
|
2014
|
+
readonly __wbg_get_wasmstarkxonlykeypair_public_key_x: (a: number) => [number, number];
|
|
2015
|
+
readonly __wbg_get_wasmstarkxonlypublickey_public_key_x: (a: number) => [number, number];
|
|
1784
2016
|
readonly __wbg_set_wasmciphertext_r_x: (a: number, b: number, c: number) => void;
|
|
1785
2017
|
readonly __wbg_set_wasmkeypair_private_key: (a: number, b: number, c: number) => void;
|
|
1786
2018
|
readonly __wbg_set_wasmkeypair_public_key_x: (a: number, b: number, c: number) => void;
|
|
1787
2019
|
readonly __wbg_set_wasmkeypair_public_key_y: (a: number, b: number, c: number) => void;
|
|
1788
2020
|
readonly __wbg_set_wasmnostrkeypair_private_key: (a: number, b: number, c: number) => void;
|
|
1789
2021
|
readonly __wbg_set_wasmnostrkeypair_public_key: (a: number, b: number, c: number) => void;
|
|
2022
|
+
readonly __wbg_set_wasmnostrpublickey_public_key: (a: number, b: number, c: number) => void;
|
|
1790
2023
|
readonly __wbg_set_wasmnostrsignature_publicKey: (a: number, b: number, c: number) => void;
|
|
1791
2024
|
readonly __wbg_set_wasmnostrsignature_signature: (a: number, b: number, c: number) => void;
|
|
1792
2025
|
readonly __wbg_set_wasmpoint_x: (a: number, b: number, c: number) => void;
|
|
1793
2026
|
readonly __wbg_set_wasmpoint_y: (a: number, b: number, c: number) => void;
|
|
2027
|
+
readonly __wbg_set_wasmpublickey_public_key_x: (a: number, b: number, c: number) => void;
|
|
2028
|
+
readonly __wbg_set_wasmpublickey_public_key_y: (a: number, b: number, c: number) => void;
|
|
1794
2029
|
readonly __wbg_set_wasmstarksignature_publicKey: (a: number, b: number, c: number) => void;
|
|
1795
2030
|
readonly __wbg_set_wasmstarksignature_r: (a: number, b: number, c: number) => void;
|
|
1796
2031
|
readonly __wbg_set_wasmstarksignature_s: (a: number, b: number, c: number) => void;
|
|
2032
|
+
readonly __wbg_set_wasmstarkxonlykeypair_private_key: (a: number, b: number, c: number) => void;
|
|
2033
|
+
readonly __wbg_set_wasmstarkxonlykeypair_public_key_x: (a: number, b: number, c: number) => void;
|
|
2034
|
+
readonly __wbg_set_wasmstarkxonlypublickey_public_key_x: (a: number, b: number, c: number) => void;
|
|
1797
2035
|
readonly __wbg_wasmaccount_free: (a: number, b: number) => void;
|
|
1798
2036
|
readonly calculateContractAddress: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number) => [number, number, number, number];
|
|
1799
2037
|
readonly deriveArgentAccountAddress: (a: number, b: number, c: number, d: number) => [number, number, number, number];
|
|
1800
2038
|
readonly deriveArgentLegacyKeypair: (a: number, b: number, c: number, d: number) => [number, number, number];
|
|
2039
|
+
readonly deriveArgentLegacyPublicKey: (a: number, b: number, c: number, d: number) => [number, number, number];
|
|
1801
2040
|
readonly deriveBraavosAccountAddress: (a: number, b: number, c: number, d: number) => [number, number, number, number];
|
|
1802
2041
|
readonly deriveKeypair: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number];
|
|
1803
2042
|
readonly deriveNostrKeypair: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number];
|
|
2043
|
+
readonly deriveNostrPublicKey: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number];
|
|
1804
2044
|
readonly deriveOzAccountAddress: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number, number];
|
|
2045
|
+
readonly derivePublicKey: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number];
|
|
1805
2046
|
readonly deriveStarknetKeypair: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number];
|
|
2047
|
+
readonly deriveStarknetPublicKey: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number];
|
|
1806
2048
|
readonly generateMnemonic: (a: number) => [number, number, number, number];
|
|
1807
2049
|
readonly getAccountClassHashes: () => [number, number];
|
|
1808
2050
|
readonly getNostrCoinType: () => number;
|
|
@@ -1819,18 +2061,18 @@ export interface InitOutput {
|
|
|
1819
2061
|
readonly wasmaccount_ownerPublicKeyHex: (a: number) => [number, number, number, number];
|
|
1820
2062
|
readonly wasmaccount_totalBalance: (a: number) => [number, number, number, number];
|
|
1821
2063
|
readonly wasmaccount_updateState: (a: number, b: number) => [number, number];
|
|
1822
|
-
readonly
|
|
1823
|
-
readonly
|
|
1824
|
-
readonly
|
|
1825
|
-
readonly
|
|
1826
|
-
readonly
|
|
1827
|
-
readonly
|
|
1828
|
-
readonly
|
|
1829
|
-
readonly
|
|
1830
|
-
readonly
|
|
1831
|
-
readonly
|
|
1832
|
-
readonly
|
|
1833
|
-
readonly
|
|
2064
|
+
readonly deriveDiscoveryKeypairs: (a: number, b: number, c: number) => [number, number, number, number];
|
|
2065
|
+
readonly deriveDiscoveryKeypairsWithSecrets: (a: number, b: number, c: number) => [number, number, number, number];
|
|
2066
|
+
readonly discoverAccountsFromMnemonic: (a: number, b: number, c: number) => [number, number, number, number];
|
|
2067
|
+
readonly discoverAccountsFromMnemonicWithSecrets: (a: number, b: number, c: number) => [number, number, number, number];
|
|
2068
|
+
readonly generateAccountAddresses: (a: number, b: number, c: number) => [number, number, number, number];
|
|
2069
|
+
readonly generateAccountCandidates: (a: number, b: number, c: number) => [number, number, number, number];
|
|
2070
|
+
readonly generateAccountCandidatesWithSecrets: (a: number, b: number, c: number) => [number, number, number, number];
|
|
2071
|
+
readonly nostrPublicKey: (a: number, b: number) => [number, number, number, number];
|
|
2072
|
+
readonly signNostrEventId: (a: number, b: number, c: number, d: number) => [number, number, number];
|
|
2073
|
+
readonly signNostrMessage: (a: number, b: number, c: number, d: number) => [number, number, number];
|
|
2074
|
+
readonly signStarkHash: (a: number, b: number, c: number, d: number) => [number, number, number];
|
|
2075
|
+
readonly starkPublicKey: (a: number, b: number) => [number, number, number, number];
|
|
1834
2076
|
readonly __wbg_get_wasmencryptedkey_encryptedKey: (a: number) => [number, number];
|
|
1835
2077
|
readonly __wbg_get_wasmencryptedkey_nonce: (a: number) => [number, number];
|
|
1836
2078
|
readonly __wbg_get_wasmencryptedkey_salt: (a: number) => [number, number];
|
|
@@ -1854,22 +2096,18 @@ export interface InitOutput {
|
|
|
1854
2096
|
readonly __wbg_get_wasmencryptedpayload_nonce: (a: number) => [number, number];
|
|
1855
2097
|
readonly __wbg_set_wasmencryptedpayload_ciphertext: (a: number, b: number, c: number) => void;
|
|
1856
2098
|
readonly __wbg_set_wasmencryptedpayload_nonce: (a: number, b: number, c: number) => void;
|
|
1857
|
-
readonly
|
|
1858
|
-
readonly
|
|
1859
|
-
readonly
|
|
1860
|
-
readonly
|
|
1861
|
-
readonly
|
|
1862
|
-
readonly
|
|
1863
|
-
readonly
|
|
1864
|
-
readonly
|
|
1865
|
-
readonly
|
|
1866
|
-
readonly
|
|
1867
|
-
readonly
|
|
1868
|
-
readonly
|
|
1869
|
-
readonly computeDeployAccountTransactionHashV3: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number, j: number, k: number, l: number, m: number, n: number, o: any, p: number, q: number, r: number, s: number) => [number, number, number, number];
|
|
1870
|
-
readonly computeInvokeTransactionHashV1: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number, j: number) => [number, number, number, number];
|
|
1871
|
-
readonly computeInvokeTransactionHashV3: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number, j: number, k: any, l: number, m: number, n: number, o: number, p: number, q: number, r: number, s: number) => [number, number, number, number];
|
|
1872
|
-
readonly computeTypedDataMessageHash: (a: number, b: number, c: number, d: number) => [number, number, number, number];
|
|
2099
|
+
readonly deserializePublicKey: (a: number, b: number) => [number, number, number];
|
|
2100
|
+
readonly getBuildInfo: () => any;
|
|
2101
|
+
readonly getGenerator: () => number;
|
|
2102
|
+
readonly getVersion: () => [number, number];
|
|
2103
|
+
readonly pointAdd: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number) => [number, number, number];
|
|
2104
|
+
readonly poseidonHash: (a: number, b: number, c: number, d: number) => [number, number, number, number];
|
|
2105
|
+
readonly poseidonHashMany: (a: number, b: number) => [number, number, number, number];
|
|
2106
|
+
readonly randomFelt: () => [number, number];
|
|
2107
|
+
readonly scalarMul: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number];
|
|
2108
|
+
readonly scalarMulGenerator: (a: number, b: number) => [number, number, number];
|
|
2109
|
+
readonly serializePublicKey: (a: number, b: number, c: number, d: number) => [number, number, number, number];
|
|
2110
|
+
readonly init: () => void;
|
|
1873
2111
|
readonly compileCalls: (a: number, b: number) => [number, number, number, number];
|
|
1874
2112
|
readonly decodeShortString: (a: number, b: number) => [number, number, number, number];
|
|
1875
2113
|
readonly deriveStrk20ViewingKey: (a: number, b: number) => [number, number, number, number];
|
|
@@ -1879,6 +2117,13 @@ export interface InitOutput {
|
|
|
1879
2117
|
readonly pedersenHash: (a: number, b: number, c: number, d: number) => [number, number, number, number];
|
|
1880
2118
|
readonly pedersenHashMany: (a: number, b: number) => [number, number, number, number];
|
|
1881
2119
|
readonly starknetKeccak: (a: number, b: number, c: number, d: number) => [number, number, number, number];
|
|
2120
|
+
readonly computeDeclareTransactionHashV2: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number, j: number, k: number, l: number) => [number, number, number, number];
|
|
2121
|
+
readonly computeDeclareTransactionHashV3: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number, j: number, k: number, l: number, m: any, n: number, o: number, p: number, q: number, r: number, s: number) => [number, number, number, number];
|
|
2122
|
+
readonly computeDeployAccountTransactionHashV1: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number, j: number, k: number, l: number, m: number, n: number) => [number, number, number, number];
|
|
2123
|
+
readonly computeDeployAccountTransactionHashV3: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number, j: number, k: number, l: number, m: number, n: number, o: any, p: number, q: number, r: number, s: number) => [number, number, number, number];
|
|
2124
|
+
readonly computeInvokeTransactionHashV1: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number, j: number) => [number, number, number, number];
|
|
2125
|
+
readonly computeInvokeTransactionHashV3: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number, j: number, k: any, l: number, m: number, n: number, o: number, p: number, q: number, r: number, s: number) => [number, number, number, number];
|
|
2126
|
+
readonly computeTypedDataMessageHash: (a: number, b: number, c: number, d: number) => [number, number, number, number];
|
|
1882
2127
|
readonly __wbindgen_malloc: (a: number, b: number) => number;
|
|
1883
2128
|
readonly __wbindgen_realloc: (a: number, b: number, c: number, d: number) => number;
|
|
1884
2129
|
readonly __wbindgen_free: (a: number, b: number, c: number) => void;
|