@provablehq/sdk 0.10.0-rc → 0.10.1

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.
Files changed (117) hide show
  1. package/dist/dynamic/browser.d.ts +8 -0
  2. package/dist/dynamic/browser.js +8 -0
  3. package/dist/dynamic/node.d.ts +8 -0
  4. package/dist/dynamic/node.js +8 -0
  5. package/dist/mainnet/account.d.ts +61 -6
  6. package/dist/mainnet/browser.d.ts +41 -8
  7. package/dist/mainnet/browser.js +3758 -571
  8. package/dist/mainnet/browser.js.map +1 -1
  9. package/dist/mainnet/constants.d.ts +6 -0
  10. package/dist/mainnet/external-signing.d.ts +76 -0
  11. package/dist/mainnet/integrations/sealance/merkle-tree.d.ts +192 -0
  12. package/dist/mainnet/keys/keystore/error.d.ts +24 -0
  13. package/dist/mainnet/keys/keystore/file.d.ts +177 -0
  14. package/dist/mainnet/keys/keystore/interface.d.ts +161 -0
  15. package/dist/mainnet/keys/provider/interface.d.ts +170 -0
  16. package/dist/mainnet/{function-key-provider.d.ts → keys/provider/memory.d.ts} +27 -167
  17. package/dist/mainnet/{offline-key-provider.d.ts → keys/provider/offline.d.ts} +21 -4
  18. package/dist/mainnet/keys/verifier/interface.d.ts +70 -0
  19. package/dist/mainnet/keys/verifier/memory.d.ts +37 -0
  20. package/dist/mainnet/models/cryptoBoxPubkey.d.ts +4 -0
  21. package/dist/mainnet/models/encryptedProvingRequest.d.ts +4 -0
  22. package/dist/mainnet/models/external-signing.d.ts +123 -0
  23. package/dist/mainnet/models/functionInput.d.ts +7 -0
  24. package/dist/mainnet/models/input/inputJSON.d.ts +1 -0
  25. package/dist/mainnet/models/input/inputObject.d.ts +1 -0
  26. package/dist/mainnet/models/keyPair.d.ts +4 -0
  27. package/dist/mainnet/models/output/outputJSON.d.ts +1 -0
  28. package/dist/mainnet/models/output/outputObject.d.ts +1 -0
  29. package/dist/mainnet/models/provingResponse.d.ts +48 -2
  30. package/dist/mainnet/models/record-provider/encryptedRecord.d.ts +58 -0
  31. package/dist/mainnet/models/record-provider/ownedRecord.d.ts +60 -0
  32. package/dist/mainnet/models/record-provider/recordSearchParams.d.ts +19 -0
  33. package/dist/mainnet/models/record-scanner/encryptedRecordsResult.d.ts +7 -0
  34. package/dist/mainnet/models/record-scanner/encryptedRegistrationRequest.d.ts +8 -0
  35. package/dist/mainnet/models/record-scanner/error.d.ts +47 -0
  36. package/dist/mainnet/models/record-scanner/ownedFilter.d.ts +22 -0
  37. package/dist/mainnet/models/record-scanner/ownedRecordsResponseFilter.d.ts +42 -0
  38. package/dist/mainnet/models/record-scanner/ownedRecordsResult.d.ts +13 -0
  39. package/dist/mainnet/models/record-scanner/recordsFilter.d.ts +35 -0
  40. package/dist/mainnet/models/record-scanner/recordsResponseFilter.d.ts +42 -0
  41. package/dist/mainnet/models/record-scanner/registrationRequest.d.ts +13 -0
  42. package/dist/mainnet/models/record-scanner/registrationResponse.d.ts +13 -0
  43. package/dist/mainnet/models/record-scanner/registrationResult.d.ts +9 -0
  44. package/dist/mainnet/models/record-scanner/revokeResult.d.ts +17 -0
  45. package/dist/mainnet/models/record-scanner/serialNumbersResult.d.ts +15 -0
  46. package/dist/mainnet/models/record-scanner/statusResponse.d.ts +13 -0
  47. package/dist/mainnet/models/record-scanner/statusResult.d.ts +13 -0
  48. package/dist/mainnet/models/record-scanner/tagsResult.d.ts +12 -0
  49. package/dist/mainnet/network-client.d.ts +129 -46
  50. package/dist/mainnet/node-polyfill.js +2 -49
  51. package/dist/mainnet/node-polyfill.js.map +1 -1
  52. package/dist/mainnet/node.d.ts +1 -0
  53. package/dist/mainnet/node.js +376 -4
  54. package/dist/mainnet/node.js.map +1 -1
  55. package/dist/mainnet/program-manager.d.ts +556 -58
  56. package/dist/mainnet/record-provider.d.ts +113 -75
  57. package/dist/mainnet/record-scanner.d.ts +368 -0
  58. package/dist/mainnet/security.d.ts +62 -0
  59. package/dist/mainnet/utils.d.ts +1 -0
  60. package/dist/mainnet/wasm.d.ts +1 -1
  61. package/dist/testnet/account.d.ts +61 -6
  62. package/dist/testnet/browser.d.ts +41 -8
  63. package/dist/testnet/browser.js +3758 -571
  64. package/dist/testnet/browser.js.map +1 -1
  65. package/dist/testnet/constants.d.ts +6 -0
  66. package/dist/testnet/external-signing.d.ts +76 -0
  67. package/dist/testnet/integrations/sealance/merkle-tree.d.ts +192 -0
  68. package/dist/testnet/keys/keystore/error.d.ts +24 -0
  69. package/dist/testnet/keys/keystore/file.d.ts +177 -0
  70. package/dist/testnet/keys/keystore/interface.d.ts +161 -0
  71. package/dist/testnet/keys/provider/interface.d.ts +170 -0
  72. package/dist/testnet/{function-key-provider.d.ts → keys/provider/memory.d.ts} +27 -167
  73. package/dist/testnet/{offline-key-provider.d.ts → keys/provider/offline.d.ts} +21 -4
  74. package/dist/testnet/keys/verifier/interface.d.ts +70 -0
  75. package/dist/testnet/keys/verifier/memory.d.ts +37 -0
  76. package/dist/testnet/models/cryptoBoxPubkey.d.ts +4 -0
  77. package/dist/testnet/models/encryptedProvingRequest.d.ts +4 -0
  78. package/dist/testnet/models/external-signing.d.ts +123 -0
  79. package/dist/testnet/models/functionInput.d.ts +7 -0
  80. package/dist/testnet/models/input/inputJSON.d.ts +1 -0
  81. package/dist/testnet/models/input/inputObject.d.ts +1 -0
  82. package/dist/testnet/models/keyPair.d.ts +4 -0
  83. package/dist/testnet/models/output/outputJSON.d.ts +1 -0
  84. package/dist/testnet/models/output/outputObject.d.ts +1 -0
  85. package/dist/testnet/models/provingResponse.d.ts +48 -2
  86. package/dist/testnet/models/record-provider/encryptedRecord.d.ts +58 -0
  87. package/dist/testnet/models/record-provider/ownedRecord.d.ts +60 -0
  88. package/dist/testnet/models/record-provider/recordSearchParams.d.ts +19 -0
  89. package/dist/testnet/models/record-scanner/encryptedRecordsResult.d.ts +7 -0
  90. package/dist/testnet/models/record-scanner/encryptedRegistrationRequest.d.ts +8 -0
  91. package/dist/testnet/models/record-scanner/error.d.ts +47 -0
  92. package/dist/testnet/models/record-scanner/ownedFilter.d.ts +22 -0
  93. package/dist/testnet/models/record-scanner/ownedRecordsResponseFilter.d.ts +42 -0
  94. package/dist/testnet/models/record-scanner/ownedRecordsResult.d.ts +13 -0
  95. package/dist/testnet/models/record-scanner/recordsFilter.d.ts +35 -0
  96. package/dist/testnet/models/record-scanner/recordsResponseFilter.d.ts +42 -0
  97. package/dist/testnet/models/record-scanner/registrationRequest.d.ts +13 -0
  98. package/dist/testnet/models/record-scanner/registrationResponse.d.ts +13 -0
  99. package/dist/testnet/models/record-scanner/registrationResult.d.ts +9 -0
  100. package/dist/testnet/models/record-scanner/revokeResult.d.ts +17 -0
  101. package/dist/testnet/models/record-scanner/serialNumbersResult.d.ts +15 -0
  102. package/dist/testnet/models/record-scanner/statusResponse.d.ts +13 -0
  103. package/dist/testnet/models/record-scanner/statusResult.d.ts +13 -0
  104. package/dist/testnet/models/record-scanner/tagsResult.d.ts +12 -0
  105. package/dist/testnet/network-client.d.ts +129 -46
  106. package/dist/testnet/node-polyfill.js +2 -49
  107. package/dist/testnet/node-polyfill.js.map +1 -1
  108. package/dist/testnet/node.d.ts +1 -0
  109. package/dist/testnet/node.js +376 -4
  110. package/dist/testnet/node.js.map +1 -1
  111. package/dist/testnet/program-manager.d.ts +556 -58
  112. package/dist/testnet/record-provider.d.ts +113 -75
  113. package/dist/testnet/record-scanner.d.ts +368 -0
  114. package/dist/testnet/security.d.ts +62 -0
  115. package/dist/testnet/utils.d.ts +1 -0
  116. package/dist/testnet/wasm.d.ts +1 -1
  117. package/package.json +11 -6
@@ -0,0 +1,8 @@
1
+ interface Networks {
2
+ "testnet": typeof import("../testnet/browser"),
3
+ "mainnet": typeof import("../mainnet/browser"),
4
+ }
5
+
6
+ export { Networks };
7
+
8
+ export declare function loadNetwork<Key extends keyof Networks>(name: Key): Promise<Networks[Key]>;
@@ -0,0 +1,8 @@
1
+ const networks = {
2
+ "testnet": () => import("../testnet/browser.js"),
3
+ "mainnet": () => import("../mainnet/browser.js"),
4
+ };
5
+
6
+ export function loadNetwork(name) {
7
+ return networks[name]();
8
+ }
@@ -0,0 +1,8 @@
1
+ interface Networks {
2
+ "testnet": typeof import("../testnet/node"),
3
+ "mainnet": typeof import("../mainnet/node"),
4
+ }
5
+
6
+ export { Networks };
7
+
8
+ export declare function loadNetwork<Key extends keyof Networks>(name: Key): Promise<Networks[Key]>;
@@ -0,0 +1,8 @@
1
+ const networks = {
2
+ "testnet": () => import("../testnet/node.js"),
3
+ "mainnet": () => import("../mainnet/node.js"),
4
+ };
5
+
6
+ export function loadNetwork(name) {
7
+ return networks[name]();
8
+ }
@@ -1,6 +1,6 @@
1
1
  import { Address, ComputeKey, Field, Group, PrivateKey, Signature, ViewKey, PrivateKeyCiphertext, RecordCiphertext, RecordPlaintext } from "./wasm.js";
2
2
  interface AccountParam {
3
- privateKey?: string;
3
+ privateKey?: string | PrivateKey;
4
4
  seed?: Uint8Array;
5
5
  }
6
6
  /**
@@ -13,6 +13,9 @@ interface AccountParam {
13
13
  * credits and other records to. This class should only be used in environments where the safety of the underlying key
14
14
  * material can be assured.
15
15
  *
16
+ * When an Account is no longer needed, call {@link destroy} to securely zeroize and free all sensitive key material
17
+ * from WASM memory. Alternatively, use `[Symbol.dispose]()` with the `using` declaration in ES2024+ environments.
18
+ *
16
19
  * @example
17
20
  * import { Account } from "@provablehq/sdk/testnet.js";
18
21
  *
@@ -32,12 +35,16 @@ interface AccountParam {
32
35
  *
33
36
  * // Verify a signature
34
37
  * assert(myRandomAccount.verify(hello_world, signature));
38
+ *
39
+ * // Securely destroy the account when done
40
+ * myRandomAccount.destroy();
35
41
  */
36
42
  export declare class Account {
37
43
  _privateKey: PrivateKey;
38
44
  _viewKey: ViewKey;
39
45
  _computeKey: ComputeKey;
40
46
  _address: Address;
47
+ private _destroyed;
41
48
  constructor(params?: AccountParam);
42
49
  /**
43
50
  * Attempts to create an account from a private key ciphertext
@@ -52,12 +59,31 @@ export declare class Account {
52
59
  * const account = Account.fromCiphertext(process.env.ciphertext, process.env.password);
53
60
  */
54
61
  static fromCiphertext(ciphertext: PrivateKeyCiphertext | string, password: string): Account;
62
+ /**
63
+ * Validates whether the given input is a valid Aleo address.
64
+ * @param {string | Uint8Array} address The address to validate, either as a string or bytes
65
+ * @returns {boolean} True if the address is valid, false otherwise
66
+ *
67
+ * @example
68
+ * import { Account } from "@provablehq/sdk/testnet.js";
69
+ *
70
+ * const isValid = Account.isValidAddress("aleo1rhgdu77hgyqd3xjj8ucu3jj9r2krwz6mnzyd80gncr5fxcwlh5rsvzp9px");
71
+ * console.log(isValid); // true
72
+ *
73
+ * const isInvalid = Account.isValidAddress("invalid_address");
74
+ * console.log(isInvalid); // false
75
+ */
76
+ static isValidAddress(address: string | Uint8Array): boolean;
55
77
  /**
56
78
  * Creates a PrivateKey from the provided parameters.
57
- * @param {AccountParam} params The parameters containing either a private key string or a seed
79
+ * @param {AccountParam} params The parameters containing either a private key string, PrivateKey object, or a seed
58
80
  * @returns {PrivateKey} A PrivateKey instance derived from the provided parameters
59
81
  */
60
82
  private privateKeyFromParams;
83
+ /**
84
+ * Throws an error if this account has been destroyed.
85
+ */
86
+ private assertNotDestroyed;
61
87
  /**
62
88
  * Returns the PrivateKey associated with the account.
63
89
  * @returns {PrivateKey} The private key of the account
@@ -103,7 +129,8 @@ export declare class Account {
103
129
  */
104
130
  address(): Address;
105
131
  /**
106
- * Deep clones the Account.
132
+ * Deep clones the Account via byte serialization of the private key,
133
+ * avoiding creation of immutable JS string representations of the private key.
107
134
  * @returns {Account} A new Account instance with the same private key
108
135
  *
109
136
  * @example
@@ -144,7 +171,7 @@ export declare class Account {
144
171
  * import { AleoNetworkClient, Account } from "@provablehq/sdk/testnet.js";
145
172
  *
146
173
  * // Create a connection to the Aleo network and an account
147
- * const networkClient = new AleoNetworkClient("https://api.explorer.provable.com/v1");
174
+ * const networkClient = new AleoNetworkClient("https://api.provable.com/v2");
148
175
  * const account = Account.fromCiphertext(process.env.ciphertext!, process.env.password!);
149
176
  *
150
177
  * // Get the record ciphertexts from a transaction.
@@ -171,7 +198,7 @@ export declare class Account {
171
198
  * import { AleoNetworkClient, Account } from "@provablehq/sdk/testnet.js";
172
199
  *
173
200
  * // Create a connection to the Aleo network and an account
174
- * const networkClient = new AleoNetworkClient("https://api.explorer.provable.com/v1");
201
+ * const networkClient = new AleoNetworkClient("https://api.provable.com/v2");
175
202
  * const account = Account.fromCiphertext(process.env.ciphertext!, process.env.password!);
176
203
  *
177
204
  * // Get the record ciphertexts from a transaction.
@@ -227,7 +254,7 @@ export declare class Account {
227
254
  * import { AleoNetworkClient, Account } from "@provablehq/sdk/testnet.js";
228
255
  *
229
256
  * // Create a connection to the Aleo network and an account
230
- * const networkClient = new AleoNetworkClient("https://api.explorer.provable.com/v1");
257
+ * const networkClient = new AleoNetworkClient("https://api.provable.com/v2");
231
258
  * const account = Account.fromCiphertext(process.env.ciphertext!, process.env.password!);
232
259
  *
233
260
  * // Get the record ciphertexts from a transaction and check ownership of them.
@@ -288,5 +315,33 @@ export declare class Account {
288
315
  * assert(account.verify(message, signature));
289
316
  */
290
317
  verify(message: Uint8Array, signature: Signature): boolean;
318
+ /**
319
+ * Securely destroys the account by zeroizing and freeing all sensitive key material
320
+ * from WASM memory. After calling this method, the account object should not be used.
321
+ *
322
+ * This triggers the Rust-level zeroizing Drop implementation which overwrites private key,
323
+ * view key, and compute key bytes with zeros in WASM linear memory before deallocation.
324
+ *
325
+ * Note: If destroy() is never called, the FinalizationRegistry (set up by wasm-bindgen)
326
+ * will eventually trigger cleanup via GC, but the timing is non-deterministic. For security-
327
+ * sensitive applications, always call destroy() explicitly when the account is no longer needed.
328
+ *
329
+ * @example
330
+ * const account = new Account();
331
+ * // ... use account ...
332
+ * account.destroy(); // Securely cleans up key material
333
+ */
334
+ destroy(): void;
335
+ /**
336
+ * Implements the Disposable interface for use with `using` declarations (ES2024+).
337
+ * Calls {@link destroy} to securely clean up key material.
338
+ *
339
+ * @example
340
+ * {
341
+ * using account = new Account();
342
+ * // ... use account ...
343
+ * } // account is automatically destroyed here
344
+ */
345
+ [Symbol.dispose](): void;
291
346
  }
292
347
  export {};
@@ -2,38 +2,71 @@ import "./polyfill/shared.js";
2
2
  import { Account } from "./account.js";
3
3
  import { AleoNetworkClient, ProgramImports } from "./network-client.js";
4
4
  import { BlockJSON, Header, Metadata } from "./models/blockJSON.js";
5
+ import { CachedKeyPair, FunctionKeyPair } from "./models/keyPair.js";
5
6
  import { ConfirmedTransactionJSON } from "./models/confirmed_transaction.js";
7
+ import { CryptoBoxPubKey } from "./models/cryptoBoxPubkey.js";
6
8
  import { DeploymentJSON, VerifyingKeys } from "./models/deployment/deploymentJSON.js";
7
9
  import { DeploymentObject } from "./models/deployment/deploymentObject.js";
10
+ import { EncryptedProvingRequest } from "./models/encryptedProvingRequest.js";
11
+ import { EncryptedRecord } from "./models/record-provider/encryptedRecord.js";
8
12
  import { ExecutionJSON, FeeExecutionJSON } from "./models/execution/executionJSON.js";
9
13
  import { ExecutionObject, FeeExecutionObject } from "./models/execution/executionObject.js";
10
14
  import { FinalizeJSON } from "./models/finalizeJSON.js";
15
+ import { FunctionInput } from "./models/functionInput";
11
16
  import { FunctionObject } from "./models/functionObject.js";
12
17
  import { ImportedVerifyingKeys, ImportedPrograms } from "./models/imports.js";
13
18
  import { InputJSON } from "./models/input/inputJSON.js";
14
19
  import { InputObject } from "./models/input/inputObject.js";
15
20
  import { OutputJSON } from "./models/output/outputJSON.js";
16
21
  import { OutputObject } from "./models/output/outputObject.js";
22
+ import { OwnedFilter } from "./models/record-scanner/ownedFilter.js";
23
+ import { OwnedRecord } from "./models/record-provider/ownedRecord.js";
17
24
  import { OwnerJSON } from "./models/owner/ownerJSON.js";
18
25
  import { PlaintextArray } from "./models/plaintext/array.js";
19
26
  import { PlaintextLiteral } from "./models/plaintext/literal.js";
20
27
  import { PlaintextObject } from "./models/plaintext/plaintext.js";
21
28
  import { PlaintextStruct } from "./models/plaintext/struct.js";
22
29
  import { ProvingRequestJSON } from "./models/provingRequest.js";
23
- import { ProvingResponse } from "./models/provingResponse.js";
30
+ import { ProvingResponse, BroadcastResponse, BroadcastResult, ProvingResult, ProvingFailure, ProvingSuccess, ProveApiErrorBody, ProvingRequestError, isProvingResponse, isProveApiErrorBody } from "./models/provingResponse.js";
24
31
  import { RatificationJSON } from "./models/ratification.js";
32
+ import { EncryptedRegistrationRequest } from "./models/record-scanner/encryptedRegistrationRequest.js";
33
+ import { EncryptedRecordsResult, EncryptedRecordsSuccess } from "./models/record-scanner/encryptedRecordsResult.js";
34
+ import { DecryptionNotEnabledError, RecordNotFoundError, RecordScannerErrorBody, RecordScannerFailure, RecordScannerRequestError, UUIDError, ViewKeyNotStoredError } from "./models/record-scanner/error.js";
35
+ import { OwnedRecordsResult, OwnedRecordsSuccess } from "./models/record-scanner/ownedRecordsResult.js";
36
+ import { OwnedRecordsResponseFilter } from "./models/record-scanner/ownedRecordsResponseFilter.js";
37
+ import { RegisterResult, RegisterSuccess } from "./models/record-scanner/registrationResult.js";
38
+ import { RegistrationRequest } from "./models/record-scanner/registrationRequest.js";
39
+ import { RegistrationResponse } from "./models/record-scanner/registrationResponse.js";
40
+ import { RevokeResult, RevokeSuccess, RevokeResponse } from "./models/record-scanner/revokeResult.js";
41
+ import { RecordsFilter } from "./models/record-scanner/recordsFilter.js";
42
+ import { RecordsResponseFilter } from "./models/record-scanner/recordsResponseFilter.js";
43
+ import { SerialNumbersResult, SerialNumbersSuccess } from "./models/record-scanner/serialNumbersResult.js";
44
+ import { StatusResponse } from "./models/record-scanner/statusResponse.js";
45
+ import { StatusResult, StatusSuccess } from "./models/record-scanner/statusResult.js";
46
+ import { TagsResult, TagsSuccess } from "./models/record-scanner/tagsResult.js";
47
+ import { RecordSearchParams } from "./models/record-provider/recordSearchParams.js";
25
48
  import { SolutionsJSON, SolutionJSON, PartialSolutionJSON } from "./models/solution.js";
26
49
  import { TransactionJSON } from "./models/transaction/transactionJSON.js";
27
50
  import { TransactionObject } from "./models/transaction/transactionObject.js";
28
51
  import { TransitionJSON } from "./models/transition/transitionJSON.js";
29
52
  import { TransitionObject } from "./models/transition/transitionObject.js";
30
- import { AleoKeyProvider, AleoKeyProviderParams, AleoKeyProviderInitParams, CachedKeyPair, FunctionKeyPair, FunctionKeyProvider, KeySearchParams } from "./function-key-provider.js";
31
- import { OfflineKeyProvider, OfflineSearchParams } from "./offline-key-provider.js";
32
- import { BlockHeightSearch, NetworkRecordProvider, RecordProvider, RecordSearchParams } from "./record-provider.js";
53
+ import { FunctionKeyProvider, KeySearchParams } from "./keys/provider/interface.js";
54
+ import { AleoKeyProvider, AleoKeyProviderParams, AleoKeyProviderInitParams } from "./keys/provider/memory.js";
55
+ import { KeyFingerprint, KeyMetadata, KeyVerificationError, KeyVerifier, sha256Hex } from "./keys/verifier/interface.js";
56
+ import { MemKeyVerifier } from "./keys/verifier/memory.js";
57
+ import { BaseFunctionKeyLocator, InvalidLocatorError, InvalidLocatorReason, KeyLocator, KeyStore, KeyType, ProvingKeyLocator, TranslationKeyLocator, VerifyingKeyLocator, provingKeyLocator, verifyingKeyLocator, translationKeyLocator } from "./keys/keystore/interface.js";
58
+ import { OfflineKeyProvider, OfflineSearchParams } from "./keys/provider/offline.js";
59
+ import { BlockHeightSearch, NetworkRecordProvider, RecordProvider } from "./record-provider.js";
60
+ import { RecordScanner, RecordScannerJWTData, RecordScannerOptions } from "./record-scanner.js";
61
+ import { SealanceMerkleTree } from "./integrations/sealance/merkle-tree.js";
33
62
  declare function initializeWasm(): Promise<void>;
34
- export { ProgramManager, ProvingRequestOptions, ExecuteOptions, FeeAuthorizationOptions, AuthorizationOptions } from "./program-manager.js";
63
+ export { ProgramManager, ProvingRequestOptions, ExecuteOptions, FeeAuthorizationOptions, AuthorizationOptions, VerificationOptions, BatchVerificationOptions, inputsToFields, verifyProof, verifyBatchProof } from "./program-manager.js";
35
64
  export { logAndThrow } from "./utils.js";
36
- export { Address, Authorization, Boolean, BHP256, BHP512, BHP768, BHP1024, Ciphertext, ComputeKey, Execution as FunctionExecution, ExecutionRequest, ExecutionResponse, EncryptionToolkit, Field, GraphKey, Group, I8, I16, I32, I64, I128, OfflineQuery, Pedersen64, Pedersen128, Plaintext, Poseidon2, Poseidon4, Poseidon8, PrivateKey, PrivateKeyCiphertext, Program, ProgramManager as ProgramManagerBase, ProvingKey, ProvingRequest, RecordCiphertext, RecordPlaintext, Signature, Scalar, Transaction, Transition, U8, U16, U32, U64, U128, VerifyingKey, ViewKey, initThreadPool, verifyFunctionExecution, } from "./wasm.js";
65
+ export { Address, Authorization, Boolean, BHP256, BHP512, BHP768, BHP1024, Ciphertext, ComputeKey, DynamicRecord, Execution as FunctionExecution, ExecutionRequest, ExecutionResponse, EncryptionToolkit, Field, GraphKey, Group, I8, I16, I32, I64, I128, OfflineQuery, Pedersen64, Pedersen128, Plaintext, Poseidon2, Poseidon4, Poseidon8, PrivateKey, PrivateKeyCiphertext, Program, ProgramManager as ProgramManagerBase, Proof, ProvingKey, ProvingRequest, RecordCiphertext, RecordPlaintext, Signature, Scalar, stringToField, Transaction, Transition, U8, U16, U32, U64, U128, Value, VerifyingKey, ViewKey, initThreadPool, getOrInitConsensusVersionTestHeights, snarkVerify, snarkVerifyBatch, verifyFunctionExecution, } from "./wasm.js";
37
66
  export { initializeWasm };
38
- export { Key, CREDITS_PROGRAM_KEYS, KEY_STORE, PRIVATE_TRANSFER, PRIVATE_TO_PUBLIC_TRANSFER, PRIVATE_TRANSFER_TYPES, PUBLIC_TRANSFER, PUBLIC_TRANSFER_AS_SIGNER, PUBLIC_TO_PRIVATE_TRANSFER, VALID_TRANSFER_TYPES, } from "./constants.js";
39
- export { Account, AleoKeyProvider, AleoKeyProviderParams, AleoKeyProviderInitParams, AleoNetworkClient, BlockJSON, BlockHeightSearch, CachedKeyPair, ConfirmedTransactionJSON, DeploymentJSON, DeploymentObject, ExecutionJSON, ExecutionObject, FeeExecutionJSON, FeeExecutionObject, FinalizeJSON, FunctionObject, FunctionKeyPair, FunctionKeyProvider, Header, ImportedPrograms, ImportedVerifyingKeys, InputJSON, InputObject, KeySearchParams, Metadata, NetworkRecordProvider, OfflineKeyProvider, OfflineSearchParams, OutputJSON, OutputObject, OwnerJSON, PartialSolutionJSON, PlaintextArray, PlaintextLiteral, PlaintextObject, PlaintextStruct, ProgramImports, ProvingRequestJSON, ProvingResponse, RatificationJSON, RecordProvider, RecordSearchParams, SolutionJSON, SolutionsJSON, TransactionJSON, TransactionObject, TransitionJSON, TransitionObject, VerifyingKeys, };
67
+ export { Key, CREDITS_PROGRAM_KEYS, KEY_STORE, PRIVATE_TRANSFER, PRIVATE_TO_PUBLIC_TRANSFER, PRIVATE_TRANSFER_TYPES, PUBLIC_TRANSFER, PUBLIC_TRANSFER_AS_SIGNER, PUBLIC_TO_PRIVATE_TRANSFER, RECORD_DOMAIN, VALID_TRANSFER_TYPES, } from "./constants.js";
68
+ export { Account, AleoKeyProvider, AleoKeyProviderParams, AleoKeyProviderInitParams, AleoNetworkClient, BlockJSON, BlockHeightSearch, BroadcastResponse, BroadcastResult, CachedKeyPair, ConfirmedTransactionJSON, CryptoBoxPubKey, DecryptionNotEnabledError, DeploymentJSON, DeploymentObject, EncryptedProvingRequest, EncryptedRecord, EncryptedRegistrationRequest, EncryptedRecordsResult, EncryptedRecordsSuccess, ExecutionJSON, ExecutionObject, FeeExecutionJSON, FeeExecutionObject, FinalizeJSON, FunctionInput, FunctionObject, FunctionKeyPair, FunctionKeyProvider, Header, isProvingResponse, isProveApiErrorBody, ImportedPrograms, ImportedVerifyingKeys, InputJSON, InputObject, InvalidLocatorError, InvalidLocatorReason, BaseFunctionKeyLocator, KeyFingerprint, KeyLocator, KeyMetadata, KeySearchParams, KeyStore, KeyType, KeyVerificationError, ProvingKeyLocator, provingKeyLocator, TranslationKeyLocator, translationKeyLocator, VerifyingKeyLocator, verifyingKeyLocator, KeyVerifier, MemKeyVerifier, Metadata, NetworkRecordProvider, OfflineKeyProvider, OfflineSearchParams, OutputJSON, OutputObject, OwnedFilter, OwnedRecord, OwnedRecordsResult, OwnedRecordsResponseFilter, OwnedRecordsSuccess, OwnerJSON, PartialSolutionJSON, PlaintextArray, PlaintextLiteral, PlaintextObject, PlaintextStruct, ProgramImports, ProveApiErrorBody, ProvingFailure, ProvingRequestError, ProvingRequestJSON, ProvingResult, ProvingSuccess, ProvingResponse, RatificationJSON, RecordsFilter, RecordsResponseFilter, RecordProvider, RecordScanner, RecordScannerErrorBody, RecordScannerFailure, RecordScannerJWTData, RecordScannerOptions, RecordNotFoundError, RecordScannerRequestError, ViewKeyNotStoredError, RecordSearchParams, RegisterResult, RegisterSuccess, RegistrationRequest, RegistrationResponse, RevokeResult, RevokeSuccess, RevokeResponse, SealanceMerkleTree, SerialNumbersResult, SerialNumbersSuccess, sha256Hex, SolutionJSON, SolutionsJSON, StatusResponse, StatusResult, StatusSuccess, TagsResult, TagsSuccess, TransactionJSON, TransactionObject, TransitionJSON, TransitionObject, UUIDError, VerifyingKeys, };
69
+ export { KeyVerificationError as ChecksumMismatchError, KeyVerifier as FunctionKeyVerifier, } from "./keys/verifier/interface.js";
70
+ export { encryptAuthorization, encryptProvingRequest, encryptViewKey, encryptRegistrationRequest, zeroizeBytes } from "./security.js";
71
+ export { toField, toGroup, toViewKey, toSignature, toAddress, isViewKeyStrategy, isInputIdStrategy, isRecordViewKeyStrategy, buildExecutionRequestFromExternallySignedData, computeExternalSigningInputs, } from "./external-signing.js";
72
+ export type { FieldLike, GroupLike, ViewKeyLike, SignatureLike, AddressLike, InputID, ExecutionRequestParams, RecordViewKeyStrategy, ViewKeyStrategy, InputIdStrategy, InputStrategy, ExternalSigningInput, ExternalSigningOptions, RequestSignInput, OutputFormat, FieldOutput, } from "./external-signing.js";