pshenmic-dpp 2.0.0-dev.2 → 2.0.0-dev.21

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 (207) hide show
  1. package/dist/binaries/bindingsTypes.d.ts +507 -37
  2. package/dist/binaries/bindingsTypes.js +4 -3
  3. package/dist/binaries/native/aarch64-apple-darwin/pshenmic_dpp.node +0 -0
  4. package/dist/binaries/native/x86_64-apple-darwin/pshenmic_dpp.node +0 -0
  5. package/dist/binaries/native/x86_64-unknown-linux-gnu/pshenmic_dpp.node +0 -0
  6. package/dist/binaries/native/x86_64-unknown-linux-musl/pshenmic_dpp.node +0 -0
  7. package/dist/binaries/node.cjs +50 -0
  8. package/dist/binaries/node.d.cts +2 -0
  9. package/dist/binaries/pshenmic_dpp.android.node/arm64-v8a/libpshenmic_dpp.so +0 -0
  10. package/dist/binaries/pshenmic_dpp.apple.node/Info.plist +29 -0
  11. package/dist/binaries/pshenmic_dpp.apple.node/ios-arm64-simulator/libpshenmic_dpp.framework/Info.plist +24 -0
  12. package/dist/binaries/pshenmic_dpp.apple.node/ios-arm64-simulator/libpshenmic_dpp.framework/libpshenmic_dpp +0 -0
  13. package/dist/binaries/pshenmic_dpp.apple.node/react-native-node-api-module +0 -0
  14. package/dist/binaries/pshenmic_dpp.d.ts +42 -1
  15. package/dist/binaries/pshenmic_dpp.js +1 -1
  16. package/dist/binaries/wasm/wasmBytes.cjs +3 -0
  17. package/dist/binaries/wasm/wasmBytes.d.cts +1 -0
  18. package/dist/binaries/wasm.d.ts +42 -1
  19. package/dist/binaries/wasm.js +2 -44
  20. package/dist/binaries/wasmCreation.cjs +46 -0
  21. package/dist/binaries/wasmCreation.d.cts +2 -0
  22. package/dist/src/dpp/dpp.d.ts +28 -2
  23. package/dist/src/dpp/dpp.js +28 -2
  24. package/dist/src/dpp/structs/AddressTransitions/AddressCreditWithdrawalTransition.d.ts +1 -1
  25. package/dist/src/dpp/structs/AddressTransitions/AddressCreditWithdrawalTransition.js +2 -2
  26. package/dist/src/dpp/structs/AddressTransitions/AddressFundingFromAssetLockTransition.d.ts +1 -1
  27. package/dist/src/dpp/structs/AddressTransitions/AddressFundingFromAssetLockTransition.js +3 -3
  28. package/dist/src/dpp/structs/AddressTransitions/AddressFundsTransferTransition.d.ts +1 -1
  29. package/dist/src/dpp/structs/AddressTransitions/AddressFundsTransferTransition.js +3 -3
  30. package/dist/src/dpp/structs/AddressTransitions/IdentityCreateFromAddressesTransition.d.ts +1 -1
  31. package/dist/src/dpp/structs/AddressTransitions/IdentityCreateFromAddressesTransition.js +2 -2
  32. package/dist/src/dpp/structs/AddressTransitions/IdentityCreditTransferToAddressesTransition.js +1 -1
  33. package/dist/src/dpp/structs/AddressTransitions/IdentityTopUpFromAddressesTransition.d.ts +1 -1
  34. package/dist/src/dpp/structs/AddressTransitions/IdentityTopUpFromAddressesTransition.js +2 -2
  35. package/dist/src/dpp/structs/AddressTransitions/entities/InputAddress.d.ts +4 -3
  36. package/dist/src/dpp/structs/AddressTransitions/entities/InputAddress.js +5 -4
  37. package/dist/src/dpp/structs/AddressTransitions/entities/OutputAddress.d.ts +4 -3
  38. package/dist/src/dpp/structs/AddressTransitions/entities/OutputAddress.js +5 -4
  39. package/dist/src/dpp/structs/AddressTransitions/entities/OutputAddressNullableCredits.d.ts +4 -3
  40. package/dist/src/dpp/structs/AddressTransitions/entities/OutputAddressNullableCredits.js +5 -4
  41. package/dist/src/dpp/structs/AssetLockProof/AssetLockProof.js +1 -1
  42. package/dist/src/dpp/structs/AssetLockProof/ChainAssetLockProof.js +2 -2
  43. package/dist/src/dpp/structs/AssetLockProof/InstantAssetLockProof.js +1 -1
  44. package/dist/src/dpp/structs/AssetLockProof/OutPoint.js +1 -1
  45. package/dist/src/dpp/structs/AssetLockProof/Transaction.js +1 -1
  46. package/dist/src/dpp/structs/AssetLockProof/TxIn.js +1 -1
  47. package/dist/src/dpp/structs/AssetLockProof/TxOut.js +1 -1
  48. package/dist/src/dpp/structs/AssetLockProof/Witness.js +1 -1
  49. package/dist/src/dpp/structs/Batch/BatchTransition.js +1 -1
  50. package/dist/src/dpp/structs/Batch/BatchedTransition.js +1 -1
  51. package/dist/src/dpp/structs/Batch/DocumentBaseTransition.js +1 -1
  52. package/dist/src/dpp/structs/Batch/DocumentTransition.d.ts +1 -0
  53. package/dist/src/dpp/structs/Batch/DocumentTransition.js +4 -1
  54. package/dist/src/dpp/structs/Batch/DocumentTransitions/DocumentCreateTransition.d.ts +1 -1
  55. package/dist/src/dpp/structs/Batch/DocumentTransitions/DocumentCreateTransition.js +2 -2
  56. package/dist/src/dpp/structs/Batch/DocumentTransitions/DocumentDeleteTransition.js +1 -1
  57. package/dist/src/dpp/structs/Batch/DocumentTransitions/DocumentPurchaseTransition.js +1 -1
  58. package/dist/src/dpp/structs/Batch/DocumentTransitions/DocumentReplaceTransition.d.ts +1 -1
  59. package/dist/src/dpp/structs/Batch/DocumentTransitions/DocumentReplaceTransition.js +2 -2
  60. package/dist/src/dpp/structs/Batch/DocumentTransitions/DocumentTransferTransition.js +1 -1
  61. package/dist/src/dpp/structs/Batch/DocumentTransitions/DocumentUpdatePriceTransition.js +1 -1
  62. package/dist/src/dpp/structs/Batch/PrefundedVotingBalance.js +1 -1
  63. package/dist/src/dpp/structs/Batch/TokenBaseTransition.js +1 -1
  64. package/dist/src/dpp/structs/Batch/TokenPaymentInfo.js +1 -1
  65. package/dist/src/dpp/structs/Batch/TokenPricingSchedule.js +1 -1
  66. package/dist/src/dpp/structs/Batch/TokenTransition.d.ts +1 -0
  67. package/dist/src/dpp/structs/Batch/TokenTransition.js +4 -1
  68. package/dist/src/dpp/structs/Batch/TokenTransitions/TokenBurnTransition.js +1 -1
  69. package/dist/src/dpp/structs/Batch/TokenTransitions/TokenClaimTransition.js +1 -1
  70. package/dist/src/dpp/structs/Batch/TokenTransitions/TokenConfigUpdateTransition.js +1 -1
  71. package/dist/src/dpp/structs/Batch/TokenTransitions/TokenDestroyFrozenFundsTransition.js +1 -1
  72. package/dist/src/dpp/structs/Batch/TokenTransitions/TokenDirectPurchaseTransition.js +1 -1
  73. package/dist/src/dpp/structs/Batch/TokenTransitions/TokenEmergencyActionTransition.js +1 -1
  74. package/dist/src/dpp/structs/Batch/TokenTransitions/TokenFreezeTransition.js +1 -1
  75. package/dist/src/dpp/structs/Batch/TokenTransitions/TokenMintTransition.js +1 -1
  76. package/dist/src/dpp/structs/Batch/TokenTransitions/TokenSetPriceForDirectPurchaseTransition.js +1 -1
  77. package/dist/src/dpp/structs/Batch/TokenTransitions/TokenTransferTransition.d.ts +3 -0
  78. package/dist/src/dpp/structs/Batch/TokenTransitions/TokenTransferTransition.js +8 -1
  79. package/dist/src/dpp/structs/Batch/TokenTransitions/TokenUnFreezeTransition.js +1 -1
  80. package/dist/src/dpp/structs/ContractBounds.js +1 -1
  81. package/dist/src/dpp/structs/CoreScript.js +1 -1
  82. package/dist/src/dpp/structs/DataContract.d.ts +6 -4
  83. package/dist/src/dpp/structs/DataContract.js +8 -2
  84. package/dist/src/dpp/structs/DataContractTransitions/DataContractCreateTransition.js +1 -1
  85. package/dist/src/dpp/structs/DataContractTransitions/DataContractUpdateTransition.js +1 -1
  86. package/dist/src/dpp/structs/Document.d.ts +1 -1
  87. package/dist/src/dpp/structs/Document.js +1 -1
  88. package/dist/src/dpp/structs/EncryptedNote/PrivateEncryptedNote.js +1 -1
  89. package/dist/src/dpp/structs/EncryptedNote/SharedEncryptedNote.js +1 -1
  90. package/dist/src/dpp/structs/GroupStateTransitionInfo.js +1 -1
  91. package/dist/src/dpp/structs/Identifier.js +1 -1
  92. package/dist/src/dpp/structs/Identity.js +1 -1
  93. package/dist/src/dpp/structs/IdentityPublicKey.d.ts +1 -0
  94. package/dist/src/dpp/structs/IdentityPublicKey.js +6 -1
  95. package/dist/src/dpp/structs/IdentityPublicKeyInCreation.d.ts +1 -0
  96. package/dist/src/dpp/structs/IdentityPublicKeyInCreation.js +6 -1
  97. package/dist/src/dpp/structs/IdentityTransitions/IdentityCreateTransition.js +1 -1
  98. package/dist/src/dpp/structs/IdentityTransitions/IdentityCreditTransfer.js +1 -1
  99. package/dist/src/dpp/structs/IdentityTransitions/IdentityCreditWithdrawalTransition.js +1 -1
  100. package/dist/src/dpp/structs/IdentityTransitions/IdentityTopUpTransition.js +1 -1
  101. package/dist/src/dpp/structs/IdentityTransitions/IdentityUpdateTransition.js +1 -1
  102. package/dist/src/dpp/structs/InstantLock.js +1 -1
  103. package/dist/src/dpp/structs/MasternodeVote/MasternodeVoteTransition.d.ts +0 -2
  104. package/dist/src/dpp/structs/MasternodeVote/MasternodeVoteTransition.js +1 -7
  105. package/dist/src/dpp/structs/MasternodeVote/Vote.js +1 -1
  106. package/dist/src/dpp/structs/MasternodeVote/VotePoll.d.ts +1 -1
  107. package/dist/src/dpp/structs/MasternodeVote/VotePoll.js +3 -3
  108. package/dist/src/dpp/structs/Orchard/CommitmentTree.d.ts +14 -0
  109. package/dist/src/dpp/structs/Orchard/CommitmentTree.js +31 -0
  110. package/dist/src/dpp/structs/Orchard/IdentityCreateFromShieldedPoolResult.d.ts +21 -0
  111. package/dist/src/dpp/structs/Orchard/IdentityCreateFromShieldedPoolResult.js +38 -0
  112. package/dist/src/dpp/structs/Orchard/MerklePath.d.ts +11 -0
  113. package/dist/src/dpp/structs/Orchard/MerklePath.js +25 -0
  114. package/dist/src/dpp/structs/Orchard/Note.d.ts +18 -0
  115. package/dist/src/dpp/structs/Orchard/Note.js +42 -0
  116. package/dist/src/dpp/structs/Orchard/OrchardAddress.d.ts +15 -0
  117. package/dist/src/dpp/structs/Orchard/OrchardAddress.js +31 -0
  118. package/dist/src/dpp/structs/Orchard/OrchardProver.d.ts +12 -0
  119. package/dist/src/dpp/structs/Orchard/OrchardProver.js +18 -0
  120. package/dist/src/dpp/structs/Orchard/RecoveredNote.d.ts +18 -0
  121. package/dist/src/dpp/structs/Orchard/RecoveredNote.js +29 -0
  122. package/dist/src/dpp/structs/Orchard/ShieldedBuilder.d.ts +40 -0
  123. package/dist/src/dpp/structs/Orchard/ShieldedBuilder.js +45 -0
  124. package/dist/src/dpp/structs/Orchard/ShieldedMemo.d.ts +11 -0
  125. package/dist/src/dpp/structs/Orchard/ShieldedMemo.js +25 -0
  126. package/dist/src/dpp/structs/Orchard/ShieldedWithdrawalResult.d.ts +11 -0
  127. package/dist/src/dpp/structs/Orchard/ShieldedWithdrawalResult.js +18 -0
  128. package/dist/src/dpp/structs/Orchard/SpendableNote.d.ts +13 -0
  129. package/dist/src/dpp/structs/Orchard/SpendableNote.js +27 -0
  130. package/dist/src/dpp/structs/PartialIdentity.js +1 -1
  131. package/dist/src/dpp/structs/{Address → PlatformAddress}/AddressWitness.d.ts +2 -2
  132. package/dist/src/dpp/structs/{Address → PlatformAddress}/AddressWitness.js +2 -2
  133. package/dist/src/dpp/structs/{Address → PlatformAddress}/PlatformAddress.d.ts +4 -2
  134. package/dist/src/dpp/structs/{Address → PlatformAddress}/PlatformAddress.js +9 -3
  135. package/dist/src/dpp/structs/PrivateKey.js +1 -1
  136. package/dist/src/dpp/structs/PublicKey.js +1 -1
  137. package/dist/src/dpp/structs/ShieldedTransitions/IdentityCreateFromShieldedPoolTransition.d.ts +31 -0
  138. package/dist/src/dpp/structs/ShieldedTransitions/IdentityCreateFromShieldedPoolTransition.js +73 -0
  139. package/dist/src/dpp/structs/ShieldedTransitions/SerializedAction.d.ts +19 -0
  140. package/dist/src/dpp/structs/ShieldedTransitions/SerializedAction.js +49 -0
  141. package/dist/src/dpp/structs/ShieldedTransitions/ShieldFromAssetLockTransition.d.ts +30 -0
  142. package/dist/src/dpp/structs/ShieldedTransitions/ShieldFromAssetLockTransition.js +77 -0
  143. package/dist/src/dpp/structs/ShieldedTransitions/ShieldTransition.d.ts +32 -0
  144. package/dist/src/dpp/structs/ShieldedTransitions/ShieldTransition.js +78 -0
  145. package/dist/src/dpp/structs/ShieldedTransitions/ShieldedTransferTransition.d.ts +21 -0
  146. package/dist/src/dpp/structs/ShieldedTransitions/ShieldedTransferTransition.js +51 -0
  147. package/dist/src/dpp/structs/ShieldedTransitions/ShieldedWithdrawalTransition.d.ts +29 -0
  148. package/dist/src/dpp/structs/ShieldedTransitions/ShieldedWithdrawalTransition.js +71 -0
  149. package/dist/src/dpp/structs/ShieldedTransitions/UnshieldTransition.d.ts +25 -0
  150. package/dist/src/dpp/structs/ShieldedTransitions/UnshieldTransition.js +59 -0
  151. package/dist/src/dpp/structs/StateTransition.d.ts +1 -0
  152. package/dist/src/dpp/structs/StateTransition.js +3 -0
  153. package/dist/src/dpp/structs/TokenConfiguration/ActionTaker.js +1 -1
  154. package/dist/src/dpp/structs/TokenConfiguration/ChangeControlRules.js +1 -1
  155. package/dist/src/dpp/structs/TokenConfiguration/Group.js +1 -1
  156. package/dist/src/dpp/structs/TokenConfiguration/TokenConfiguration.js +1 -1
  157. package/dist/src/dpp/structs/TokenConfiguration/TokenConfigurationConvention.js +1 -1
  158. package/dist/src/dpp/structs/TokenConfiguration/TokenConfigurationLocalization.js +1 -1
  159. package/dist/src/dpp/structs/TokenConfiguration/TokenDistributionRules.js +1 -1
  160. package/dist/src/dpp/structs/TokenConfiguration/TokenKeepsHistoryRules.js +1 -1
  161. package/dist/src/dpp/structs/TokenConfiguration/TokenMarketplaceRules.js +1 -1
  162. package/dist/src/dpp/structs/TokenConfiguration/TokenPerpetualDistribution.js +1 -1
  163. package/dist/src/dpp/structs/TokenConfiguration/TokenPreProgrammedDistribution.js +1 -1
  164. package/dist/src/dpp/types.d.ts +85 -11
  165. package/dist/src/dpp/utils.d.ts +4 -3
  166. package/dist/src/dpp/utils.js +24 -6
  167. package/dist/src/dpp/verify/Contested/verifyVotePollVoteStateProof.d.ts +1 -1
  168. package/dist/src/dpp/verify/Contested/verifyVotePollVoteStateProof.js +1 -1
  169. package/dist/src/dpp/verify/PlatformAddress/verifyPlatformAddressInfo.d.ts +2 -0
  170. package/dist/src/dpp/verify/PlatformAddress/verifyPlatformAddressInfo.js +12 -0
  171. package/dist/src/dpp/verify/PlatformAddress/verifyPlatformAddressesInfos.d.ts +2 -0
  172. package/dist/src/dpp/verify/PlatformAddress/verifyPlatformAddressesInfos.js +14 -0
  173. package/dist/src/dpp/verify/Shielded/verifyMostRecentShieldedAnchorProof.d.ts +2 -0
  174. package/dist/src/dpp/verify/Shielded/verifyMostRecentShieldedAnchorProof.js +9 -0
  175. package/dist/src/dpp/verify/Shielded/verifyShieldedAnchorsProof.d.ts +2 -0
  176. package/dist/src/dpp/verify/Shielded/verifyShieldedAnchorsProof.js +9 -0
  177. package/dist/src/dpp/verify/Shielded/verifyShieldedEncryptedNotesProof.d.ts +2 -0
  178. package/dist/src/dpp/verify/Shielded/verifyShieldedEncryptedNotesProof.js +15 -0
  179. package/dist/src/dpp/verify/Shielded/verifyShieldedNotesCountProof.d.ts +2 -0
  180. package/dist/src/dpp/verify/Shielded/verifyShieldedNotesCountProof.js +9 -0
  181. package/dist/src/dpp/verify/Shielded/verifyShieldedNullifiersProof.d.ts +2 -0
  182. package/dist/src/dpp/verify/Shielded/verifyShieldedNullifiersProof.js +12 -0
  183. package/dist/src/dpp/verify/Shielded/verifyShieldedPoolStateProof.d.ts +2 -0
  184. package/dist/src/dpp/verify/Shielded/verifyShieldedPoolStateProof.js +9 -0
  185. package/dist/src/dpp/verify/StateTransition/utils.js +80 -15
  186. package/dist/src/dpp/verify/System/verifyEpochsInfoProof.js +1 -1
  187. package/dist/src/dpp/verify/Tokens/verifyTokenBalancesForIdentitiesProof.js +1 -1
  188. package/dist/src/dpp/verify/Tokens/verifyTokensBalancesForIdentityProof.js +1 -1
  189. package/dist/src/native.d.ts +3 -0
  190. package/dist/src/native.js +8 -0
  191. package/dist/utils/{base122.js → base122.cjs} +3 -1
  192. package/package.json +18 -28
  193. package/tests/unit/DataContract.spec.ts +281 -0
  194. package/tests/unit/DynamicValue.spec.ts +42 -2
  195. package/tests/unit/Identifier.spec.ts +1 -1
  196. package/tests/unit/Identity.spec.ts +1 -1
  197. package/tests/unit/IdentityPublicKey.spec.ts +1 -1
  198. package/tests/unit/NodeApi.spec.ts +49 -0
  199. package/tests/unit/Shielded.spec.ts +344 -0
  200. package/tests/unit/ShieldedTransitions.spec.ts +709 -0
  201. package/tests/unit/TokenConfiguration.spec.ts +114 -0
  202. package/tests/unit/WebAssembly.spec.ts +49 -0
  203. package/tests/unit/utils/buildTokenConfiguration.ts +66 -0
  204. package/dist/binaries/pshenmic_dpp.android.node/x86_64/libpshenmic_dpp.so +0 -0
  205. package/dist/binaries/wasm/wasmBytes.d.ts +0 -2
  206. package/dist/binaries/wasm/wasmBytes.js +0 -2
  207. /package/dist/utils/{base122.d.ts → base122.d.cts} +0 -0
@@ -26,7 +26,7 @@ export class GroupStateTransitionInfoWASM {
26
26
  this._rawGroupStateTransitionInfo.actionIsProposer = actionIsProposer;
27
27
  }
28
28
  static createFromRawInstance(rawInstance) {
29
- const instance = Object.create(this.prototype);
29
+ const instance = Object.create(GroupStateTransitionInfoWASM.prototype);
30
30
  instance._rawGroupStateTransitionInfo = rawInstance;
31
31
  return instance;
32
32
  }
@@ -40,7 +40,7 @@ export class IdentifierWASM {
40
40
  return this.createFromRawInstance(dppProvider.dpp.IdentifierNAPI.fromBytes(id));
41
41
  }
42
42
  static createFromRawInstance(rawInstance) {
43
- const instance = Object.create(this.prototype);
43
+ const instance = Object.create(IdentifierWASM.prototype);
44
44
  instance._rawIdentifier = rawInstance;
45
45
  return instance;
46
46
  }
@@ -63,7 +63,7 @@ export class IdentityWASM {
63
63
  return this._rawIdentity.base64();
64
64
  }
65
65
  static createFromRawInstance(rawInstance) {
66
- const instance = Object.create(this.prototype);
66
+ const instance = Object.create(IdentityWASM.prototype);
67
67
  instance._rawIdentity = rawInstance;
68
68
  return instance;
69
69
  }
@@ -29,6 +29,7 @@ export declare class IdentityPublicKeyWASM {
29
29
  set disabledAt(disabledAt: bigint | number);
30
30
  get contractBounds(): ContractBoundsWASM | undefined;
31
31
  set contractBounds(contractBounds: ContractBoundsWASM | undefined | null);
32
+ getContractBounds(): ContractBoundsWASM | undefined;
32
33
  removeDisabledAt(): void;
33
34
  getPublicKeyHash(): string;
34
35
  isMaster(): boolean;
@@ -84,6 +84,11 @@ export class IdentityPublicKeyWASM {
84
84
  set contractBounds(contractBounds) {
85
85
  this._rawIdentityPublicKey.contractBounds = contractBounds?._rawContractBounds;
86
86
  }
87
+ getContractBounds() {
88
+ if (this._rawIdentityPublicKey.contractBounds != null) {
89
+ return ContractBoundsWASM.createFromRawInstance(this._rawIdentityPublicKey.contractBounds);
90
+ }
91
+ }
87
92
  removeDisabledAt() {
88
93
  this._rawIdentityPublicKey.removeDisabledAt();
89
94
  }
@@ -119,7 +124,7 @@ export class IdentityPublicKeyWASM {
119
124
  return this.createFromRawInstance(rawInstance);
120
125
  }
121
126
  static createFromRawInstance(rawInstance) {
122
- const instance = Object.create(this.prototype);
127
+ const instance = Object.create(IdentityPublicKeyWASM.prototype);
123
128
  instance._rawIdentityPublicKey = rawInstance;
124
129
  return instance;
125
130
  }
@@ -10,6 +10,7 @@ export declare class IdentityPublicKeyInCreationWASM {
10
10
  toIdentityPublicKey(): IdentityPublicKeyWASM;
11
11
  validatePrivateKey(privateKey: string | Uint8Array | PrivateKeyWASM, network: NetworkLike): boolean;
12
12
  getHash(): Uint8Array;
13
+ getContractBounds(): ContractBoundsWASM | undefined;
13
14
  get contractBounds(): ContractBoundsWASM | undefined;
14
15
  set contractBounds(value: ContractBoundsWASM);
15
16
  get keyId(): number;
@@ -19,6 +19,11 @@ export class IdentityPublicKeyInCreationWASM {
19
19
  getHash() {
20
20
  return this._rawKeyInCreation.getHash();
21
21
  }
22
+ getContractBounds() {
23
+ if (this._rawKeyInCreation.contractBounds != null) {
24
+ return ContractBoundsWASM.createFromRawInstance(this._rawKeyInCreation.contractBounds);
25
+ }
26
+ }
22
27
  get contractBounds() {
23
28
  if (this._rawKeyInCreation.contractBounds != null) {
24
29
  return ContractBoundsWASM.createFromRawInstance(this._rawKeyInCreation.contractBounds);
@@ -70,7 +75,7 @@ export class IdentityPublicKeyInCreationWASM {
70
75
  this._rawKeyInCreation.signature = value;
71
76
  }
72
77
  static createFromRawInstance(rawInstance) {
73
- const instance = Object.create(this.prototype);
78
+ const instance = Object.create(IdentityPublicKeyInCreationWASM.prototype);
74
79
  instance._rawKeyInCreation = rawInstance;
75
80
  return instance;
76
81
  }
@@ -62,7 +62,7 @@ export class IdentityCreateTransitionWASM {
62
62
  return IdentityCreateTransitionWASM.createFromRawInstance(dppProvider.dpp.IdentityCreateTransitionNAPI.fromStateTransition(stateTransition._rawStateTransition));
63
63
  }
64
64
  static createFromRawInstance(rawInstance) {
65
- const instance = Object.create(this.prototype);
65
+ const instance = Object.create(IdentityCreateTransitionWASM.prototype);
66
66
  instance._rawIdentityCreateTransition = rawInstance;
67
67
  return instance;
68
68
  }
@@ -78,7 +78,7 @@ export class IdentityCreditTransferWASM {
78
78
  return IdentityCreditTransferWASM.createFromRawInstance(dppProvider.dpp.IdentityCreditTransferNAPI.fromStateTransition(stateTransition._rawStateTransition));
79
79
  }
80
80
  static createFromRawInstance(rawInstance) {
81
- const instance = Object.create(this.prototype);
81
+ const instance = Object.create(IdentityCreditTransferWASM.prototype);
82
82
  instance._rawIdentityCreditTransfer = rawInstance;
83
83
  return instance;
84
84
  }
@@ -107,7 +107,7 @@ export class IdentityCreditWithdrawalTransitionWASM {
107
107
  return IdentityCreditWithdrawalTransitionWASM.createFromRawInstance(dppProvider.dpp.IdentityCreditWithdrawalTransitionNAPI.fromStateTransition(stateTransition._rawStateTransition));
108
108
  }
109
109
  static createFromRawInstance(rawInstance) {
110
- const instance = Object.create(this.prototype);
110
+ const instance = Object.create(IdentityCreditWithdrawalTransitionWASM.prototype);
111
111
  instance._rawIdentityCreditWithdrawalTransition = rawInstance;
112
112
  return instance;
113
113
  }
@@ -68,7 +68,7 @@ export class IdentityTopUpTransitionWASM {
68
68
  return IdentityTopUpTransitionWASM.createFromRawInstance(dppProvider.dpp.IdentityTopUpTransitionNAPI.fromStateTransition(stateTransition._rawStateTransition));
69
69
  }
70
70
  static createFromRawInstance(rawInstance) {
71
- const instance = Object.create(this.prototype);
71
+ const instance = Object.create(IdentityTopUpTransitionWASM.prototype);
72
72
  instance._rawIdentityTopUpTransition = rawInstance;
73
73
  return instance;
74
74
  }
@@ -101,7 +101,7 @@ export class IdentityUpdateTransitionWASM {
101
101
  return IdentityUpdateTransitionWASM.createFromRawInstance(dppProvider.dpp.IdentityUpdateTransitionNAPI.fromStateTransition(stateTransition._rawStateTransition));
102
102
  }
103
103
  static createFromRawInstance(rawInstance) {
104
- const instance = Object.create(this.prototype);
104
+ const instance = Object.create(IdentityUpdateTransitionWASM.prototype);
105
105
  instance._rawIdentityUpdateTransition = rawInstance;
106
106
  return instance;
107
107
  }
@@ -36,7 +36,7 @@ export class InstantLockWASM {
36
36
  this._rawInstantLock.blsSignature = sig;
37
37
  }
38
38
  static createFromRawInstance(rawInstance) {
39
- const instance = Object.create(this.prototype);
39
+ const instance = Object.create(InstantLockWASM.prototype);
40
40
  instance._rawInstantLock = rawInstance;
41
41
  return instance;
42
42
  }
@@ -20,8 +20,6 @@ export declare class MasternodeVoteTransitionWASM {
20
20
  set signaturePublicKeyId(keyId: number);
21
21
  get signature(): Uint8Array;
22
22
  set signature(value: Uint8Array);
23
- get userFeeIncrease(): number;
24
- set userFeeIncrease(value: number);
25
23
  get assetLock(): AssetLockProofWASM | undefined;
26
24
  get modifiedDataIds(): IdentifierWASM[];
27
25
  getSignableBytes(): Uint8Array;
@@ -46,12 +46,6 @@ export class MasternodeVoteTransitionWASM {
46
46
  set signature(value) {
47
47
  this._rawMasternodeVoteTransition.signature = value;
48
48
  }
49
- get userFeeIncrease() {
50
- return this._rawMasternodeVoteTransition.userFeeIncrease;
51
- }
52
- set userFeeIncrease(value) {
53
- this._rawMasternodeVoteTransition.userFeeIncrease = value;
54
- }
55
49
  get assetLock() {
56
50
  const lock = this._rawMasternodeVoteTransition.assetLock;
57
51
  if (lock != null) {
@@ -89,7 +83,7 @@ export class MasternodeVoteTransitionWASM {
89
83
  return MasternodeVoteTransitionWASM.createFromRawInstance(dppProvider.dpp.MasternodeVoteTransitionNAPI.fromStateTransition(stateTransition._rawStateTransition));
90
84
  }
91
85
  static createFromRawInstance(rawInstance) {
92
- const instance = Object.create(this.prototype);
86
+ const instance = Object.create(MasternodeVoteTransitionWASM.prototype);
93
87
  instance._rawMasternodeVoteTransition = rawInstance;
94
88
  return instance;
95
89
  }
@@ -20,7 +20,7 @@ export class VoteWASM {
20
20
  this._rawVote.resourceVoteChoice = resourceVoteChoice._rawResourceVoteChoice;
21
21
  }
22
22
  static createFromRawInstance(rawInstance) {
23
- const instance = Object.create(this.prototype);
23
+ const instance = Object.create(VoteWASM.prototype);
24
24
  instance._rawVote = rawInstance;
25
25
  return instance;
26
26
  }
@@ -11,7 +11,7 @@ export declare class VotePollWASM {
11
11
  set documentTypeName(value: string);
12
12
  get indexName(): string;
13
13
  set indexName(value: string);
14
- get indexValues(): any;
14
+ get indexValues(): string[];
15
15
  set indexValues(values: string[]);
16
16
  toString(): string;
17
17
  static createFromRawInstance(rawInstance: VotePollNAPI): VotePollWASM;
@@ -1,5 +1,5 @@
1
1
  import { dppProvider } from '../../provider.js';
2
- import { prepareIdentifierValue, valueFromDynamicValue, valueToDynamicValue } from '../../utils.js';
2
+ import { prepareIdentifierValue, valueToDynamicValue } from '../../utils.js';
3
3
  import { IdentifierWASM } from '../Identifier.js';
4
4
  export class VotePollWASM {
5
5
  /** @private **/
@@ -26,7 +26,7 @@ export class VotePollWASM {
26
26
  this._rawVotePollWASM.indexName = value;
27
27
  }
28
28
  get indexValues() {
29
- return valueFromDynamicValue(new dppProvider.dpp.DynamicValue(this._rawVotePollWASM.indexValues));
29
+ return this._rawVotePollWASM.indexValues;
30
30
  }
31
31
  set indexValues(values) {
32
32
  this._rawVotePollWASM.indexValues = valueToDynamicValue(values);
@@ -35,7 +35,7 @@ export class VotePollWASM {
35
35
  return this._rawVotePollWASM.toString();
36
36
  }
37
37
  static createFromRawInstance(rawInstance) {
38
- const instance = Object.create(this.prototype);
38
+ const instance = Object.create(VotePollWASM.prototype);
39
39
  instance._rawVotePollWASM = rawInstance;
40
40
  return instance;
41
41
  }
@@ -0,0 +1,14 @@
1
+ import type { CommitmentTreeNAPI } from '../../../../binaries/bindingsTypes.js';
2
+ import { MerklePathWASM } from './MerklePath.js';
3
+ export declare class CommitmentTreeWASM {
4
+ /** @private **/
5
+ _rawCommitmentTree: CommitmentTreeNAPI;
6
+ constructor(maxCheckpoints?: number);
7
+ /** Appends a note commitment (cmx). `marked` = spendable (can be witnessed). */
8
+ append(cmx: Uint8Array, marked: boolean): void;
9
+ checkpoint(checkpointId: number): boolean;
10
+ maxLeafPosition(): number | null;
11
+ witness(position: number, checkpointDepth?: number): MerklePathWASM | null;
12
+ anchor(): Uint8Array;
13
+ static createFromRawInstance(rawInstance: CommitmentTreeNAPI): CommitmentTreeWASM;
14
+ }
@@ -0,0 +1,31 @@
1
+ import { dppProvider } from '../../provider.js';
2
+ import { MerklePathWASM } from './MerklePath.js';
3
+ export class CommitmentTreeWASM {
4
+ /** @private **/
5
+ _rawCommitmentTree;
6
+ constructor(maxCheckpoints) {
7
+ this._rawCommitmentTree = new dppProvider.dpp.CommitmentTreeNAPI(maxCheckpoints);
8
+ }
9
+ /** Appends a note commitment (cmx). `marked` = spendable (can be witnessed). */
10
+ append(cmx, marked) {
11
+ this._rawCommitmentTree.append(cmx, marked);
12
+ }
13
+ checkpoint(checkpointId) {
14
+ return this._rawCommitmentTree.checkpoint(checkpointId);
15
+ }
16
+ maxLeafPosition() {
17
+ return this._rawCommitmentTree.maxLeafPosition();
18
+ }
19
+ witness(position, checkpointDepth) {
20
+ const path = this._rawCommitmentTree.witness(position, checkpointDepth);
21
+ return path != null ? MerklePathWASM.createFromRawInstance(path) : null;
22
+ }
23
+ anchor() {
24
+ return this._rawCommitmentTree.anchor();
25
+ }
26
+ static createFromRawInstance(rawInstance) {
27
+ const instance = Object.create(CommitmentTreeWASM.prototype);
28
+ instance._rawCommitmentTree = rawInstance;
29
+ return instance;
30
+ }
31
+ }
@@ -0,0 +1,21 @@
1
+ import type { IdentityCreateFromShieldedPoolResultNAPI } from '../../../../binaries/bindingsTypes.js';
2
+ import { IdentifierWASM } from '../Identifier.js';
3
+ import { IdentityPublicKeyInCreationWASM } from '../IdentityPublicKeyInCreation.js';
4
+ import { SerializedActionWASM } from '../ShieldedTransitions/SerializedAction.js';
5
+ /**
6
+ * Result of `identityCreateFromShieldedPool`: the new identity's keys (with
7
+ * proof-of-possession signatures), the proven Orchard bundle fields, the derived
8
+ * identity id, and the client-predicted fee.
9
+ */
10
+ export declare class IdentityCreateFromShieldedPoolResultWASM {
11
+ /** @private **/
12
+ _rawIdentityCreateFromShieldedPoolResult: IdentityCreateFromShieldedPoolResultNAPI;
13
+ get publicKeys(): IdentityPublicKeyInCreationWASM[];
14
+ get identityId(): IdentifierWASM;
15
+ get predictedFee(): bigint;
16
+ get actions(): SerializedActionWASM[];
17
+ get anchor(): Uint8Array;
18
+ get proof(): Uint8Array;
19
+ get bindingsSignature(): Uint8Array;
20
+ static createFromRawInstance(rawInstance: IdentityCreateFromShieldedPoolResultNAPI): IdentityCreateFromShieldedPoolResultWASM;
21
+ }
@@ -0,0 +1,38 @@
1
+ import { IdentifierWASM } from '../Identifier.js';
2
+ import { IdentityPublicKeyInCreationWASM } from '../IdentityPublicKeyInCreation.js';
3
+ import { SerializedActionWASM } from '../ShieldedTransitions/SerializedAction.js';
4
+ /**
5
+ * Result of `identityCreateFromShieldedPool`: the new identity's keys (with
6
+ * proof-of-possession signatures), the proven Orchard bundle fields, the derived
7
+ * identity id, and the client-predicted fee.
8
+ */
9
+ export class IdentityCreateFromShieldedPoolResultWASM {
10
+ /** @private **/
11
+ _rawIdentityCreateFromShieldedPoolResult;
12
+ get publicKeys() {
13
+ return this._rawIdentityCreateFromShieldedPoolResult.publicKeys.map(IdentityPublicKeyInCreationWASM.createFromRawInstance);
14
+ }
15
+ get identityId() {
16
+ return new IdentifierWASM(this._rawIdentityCreateFromShieldedPoolResult.identityId);
17
+ }
18
+ get predictedFee() {
19
+ return BigInt(this._rawIdentityCreateFromShieldedPoolResult.predictedFee);
20
+ }
21
+ get actions() {
22
+ return this._rawIdentityCreateFromShieldedPoolResult.actions.map(SerializedActionWASM.createFromRawInstance);
23
+ }
24
+ get anchor() {
25
+ return this._rawIdentityCreateFromShieldedPoolResult.anchor;
26
+ }
27
+ get proof() {
28
+ return this._rawIdentityCreateFromShieldedPoolResult.proof;
29
+ }
30
+ get bindingsSignature() {
31
+ return this._rawIdentityCreateFromShieldedPoolResult.bindingsSignature;
32
+ }
33
+ static createFromRawInstance(rawInstance) {
34
+ const instance = Object.create(IdentityCreateFromShieldedPoolResultWASM.prototype);
35
+ instance._rawIdentityCreateFromShieldedPoolResult = rawInstance;
36
+ return instance;
37
+ }
38
+ }
@@ -0,0 +1,11 @@
1
+ import type { MerklePathNAPI } from '../../../../binaries/bindingsTypes.js';
2
+ export declare class MerklePathWASM {
3
+ /** @private **/
4
+ _rawMerklePath: MerklePathNAPI;
5
+ constructor(position: number, authPath: Uint8Array[]);
6
+ get position(): number;
7
+ set position(value: number);
8
+ get authPath(): Uint8Array[];
9
+ set authPath(value: Uint8Array[]);
10
+ static createFromRawInstance(rawInstance: MerklePathNAPI): MerklePathWASM;
11
+ }
@@ -0,0 +1,25 @@
1
+ import { dppProvider } from '../../provider.js';
2
+ export class MerklePathWASM {
3
+ /** @private **/
4
+ _rawMerklePath;
5
+ constructor(position, authPath) {
6
+ this._rawMerklePath = new dppProvider.dpp.MerklePathNAPI(position, authPath);
7
+ }
8
+ get position() {
9
+ return this._rawMerklePath.position;
10
+ }
11
+ set position(value) {
12
+ this._rawMerklePath.position = value;
13
+ }
14
+ get authPath() {
15
+ return this._rawMerklePath.authPath;
16
+ }
17
+ set authPath(value) {
18
+ this._rawMerklePath.authPath = value;
19
+ }
20
+ static createFromRawInstance(rawInstance) {
21
+ const instance = Object.create(MerklePathWASM.prototype);
22
+ instance._rawMerklePath = rawInstance;
23
+ return instance;
24
+ }
25
+ }
@@ -0,0 +1,18 @@
1
+ import type { NoteNAPI } from '../../../../binaries/bindingsTypes.js';
2
+ import { OrchardAddressWASM } from './OrchardAddress.js';
3
+ export declare class NoteWASM {
4
+ /** @private **/
5
+ _rawNote: NoteNAPI;
6
+ constructor(address: OrchardAddressWASM, value: bigint, rho: Uint8Array, rseed: Uint8Array);
7
+ get address(): OrchardAddressWASM;
8
+ set address(value: OrchardAddressWASM);
9
+ get value(): bigint;
10
+ set value(value: bigint);
11
+ get rho(): Uint8Array;
12
+ set rho(value: Uint8Array);
13
+ get rseed(): Uint8Array;
14
+ set rseed(value: Uint8Array);
15
+ /** The note commitment (cmx, 32 bytes) — its leaf in the commitment tree. */
16
+ get cmx(): Uint8Array;
17
+ static createFromRawInstance(rawInstance: NoteNAPI): NoteWASM;
18
+ }
@@ -0,0 +1,42 @@
1
+ import { dppProvider } from '../../provider.js';
2
+ import { OrchardAddressWASM } from './OrchardAddress.js';
3
+ export class NoteWASM {
4
+ /** @private **/
5
+ _rawNote;
6
+ constructor(address, value, rho, rseed) {
7
+ this._rawNote = new dppProvider.dpp.NoteNAPI(address._rawOrchardAddress, value.toString(), rho, rseed);
8
+ }
9
+ get address() {
10
+ return OrchardAddressWASM.createFromRawInstance(this._rawNote.address);
11
+ }
12
+ set address(value) {
13
+ this._rawNote.address = value._rawOrchardAddress;
14
+ }
15
+ get value() {
16
+ return BigInt(this._rawNote.value);
17
+ }
18
+ set value(value) {
19
+ this._rawNote.value = value.toString();
20
+ }
21
+ get rho() {
22
+ return this._rawNote.rho;
23
+ }
24
+ set rho(value) {
25
+ this._rawNote.rho = value;
26
+ }
27
+ get rseed() {
28
+ return this._rawNote.rseed;
29
+ }
30
+ set rseed(value) {
31
+ this._rawNote.rseed = value;
32
+ }
33
+ /** The note commitment (cmx, 32 bytes) — its leaf in the commitment tree. */
34
+ get cmx() {
35
+ return this._rawNote.cmx;
36
+ }
37
+ static createFromRawInstance(rawInstance) {
38
+ const instance = Object.create(NoteWASM.prototype);
39
+ instance._rawNote = rawInstance;
40
+ return instance;
41
+ }
42
+ }
@@ -0,0 +1,15 @@
1
+ import type { OrchardAddressNAPI } from '../../../../binaries/bindingsTypes.js';
2
+ import { NetworkLike } from '../../types.js';
3
+ export declare class OrchardAddressWASM {
4
+ /** @private **/
5
+ _rawOrchardAddress: OrchardAddressNAPI;
6
+ toBech32m(network: NetworkLike): string;
7
+ bytes(): Uint8Array;
8
+ static fromBech32m(bech32m: string): OrchardAddressWASM;
9
+ static fromBytes(bytes: Uint8Array): OrchardAddressWASM;
10
+ /** Derives the address from a BIP-39 seed via ZIP-32 (m/32'/coinType'/account'). */
11
+ static fromSeed(seed: Uint8Array, coinType: number, account: number, diversifierIndex?: number): OrchardAddressWASM;
12
+ static createFromRawInstance(rawInstance: OrchardAddressNAPI): OrchardAddressWASM;
13
+ }
14
+ /** Derives the sender's Orchard outgoing viewing key (32 bytes) from a BIP-39 seed. */
15
+ export declare function orchardOvkFromSeed(seed: Uint8Array, coinType: number, account: number): Uint8Array;
@@ -0,0 +1,31 @@
1
+ import { dppProvider } from '../../provider.js';
2
+ import { valueToDynamicValue } from '../../utils.js';
3
+ export class OrchardAddressWASM {
4
+ /** @private **/
5
+ _rawOrchardAddress;
6
+ toBech32m(network) {
7
+ return this._rawOrchardAddress.toBech32m(valueToDynamicValue(network));
8
+ }
9
+ bytes() {
10
+ return this._rawOrchardAddress.bytes();
11
+ }
12
+ static fromBech32m(bech32m) {
13
+ return OrchardAddressWASM.createFromRawInstance(dppProvider.dpp.OrchardAddressNAPI.fromBech32m(bech32m));
14
+ }
15
+ static fromBytes(bytes) {
16
+ return OrchardAddressWASM.createFromRawInstance(dppProvider.dpp.OrchardAddressNAPI.fromBytes(bytes));
17
+ }
18
+ /** Derives the address from a BIP-39 seed via ZIP-32 (m/32'/coinType'/account'). */
19
+ static fromSeed(seed, coinType, account, diversifierIndex) {
20
+ return OrchardAddressWASM.createFromRawInstance(dppProvider.dpp.OrchardAddressNAPI.fromSeed(seed, coinType, account, diversifierIndex));
21
+ }
22
+ static createFromRawInstance(rawInstance) {
23
+ const instance = Object.create(OrchardAddressWASM.prototype);
24
+ instance._rawOrchardAddress = rawInstance;
25
+ return instance;
26
+ }
27
+ }
28
+ /** Derives the sender's Orchard outgoing viewing key (32 bytes) from a BIP-39 seed. */
29
+ export function orchardOvkFromSeed(seed, coinType, account) {
30
+ return dppProvider.dpp.orchardOvkFromSeed(seed, coinType, account);
31
+ }
@@ -0,0 +1,12 @@
1
+ import type { OrchardProverNAPI } from '../../../../binaries/bindingsTypes.js';
2
+ /**
3
+ * Reusable Orchard prover holding the Halo 2 proving key. Building it is
4
+ * expensive (~seconds); construct once and reuse. (The `ShieldedBuilderWASM`
5
+ * already builds its own prover internally — this is exposed for standalone use.)
6
+ */
7
+ export declare class OrchardProverWASM {
8
+ /** @private **/
9
+ _rawOrchardProver: OrchardProverNAPI;
10
+ constructor();
11
+ static createFromRawInstance(rawInstance: OrchardProverNAPI): OrchardProverWASM;
12
+ }
@@ -0,0 +1,18 @@
1
+ import { dppProvider } from '../../provider.js';
2
+ /**
3
+ * Reusable Orchard prover holding the Halo 2 proving key. Building it is
4
+ * expensive (~seconds); construct once and reuse. (The `ShieldedBuilderWASM`
5
+ * already builds its own prover internally — this is exposed for standalone use.)
6
+ */
7
+ export class OrchardProverWASM {
8
+ /** @private **/
9
+ _rawOrchardProver;
10
+ constructor() {
11
+ this._rawOrchardProver = new dppProvider.dpp.OrchardProverNAPI();
12
+ }
13
+ static createFromRawInstance(rawInstance) {
14
+ const instance = Object.create(OrchardProverWASM.prototype);
15
+ instance._rawOrchardProver = rawInstance;
16
+ return instance;
17
+ }
18
+ }
@@ -0,0 +1,18 @@
1
+ import type { RecoveredNoteNAPI } from '../../../../binaries/bindingsTypes.js';
2
+ import { NoteWASM } from './Note.js';
3
+ import { SerializedActionWASM } from '../ShieldedTransitions/SerializedAction.js';
4
+ /** A note recovered from a shielded action by trial-decryption. */
5
+ export declare class RecoveredNoteWASM {
6
+ /** @private **/
7
+ _rawRecoveredNote: RecoveredNoteNAPI;
8
+ /** The action's global leaf position in the commitment tree. */
9
+ get index(): number;
10
+ get note(): NoteWASM;
11
+ static createFromRawInstance(rawInstance: RecoveredNoteNAPI): RecoveredNoteWASM;
12
+ }
13
+ /**
14
+ * Recovers your own notes from a set of shielded actions by trial-decrypting
15
+ * each with the viewing key derived from `seed` (ZIP-32 m/32'/coinType'/account').
16
+ * Only actions addressed to you are returned; `index` is the global leaf position.
17
+ */
18
+ export declare function recoverNotes(actions: SerializedActionWASM[], seed: Uint8Array, coinType: number, account: number): RecoveredNoteWASM[];
@@ -0,0 +1,29 @@
1
+ import { dppProvider } from '../../provider.js';
2
+ import { NoteWASM } from './Note.js';
3
+ /** A note recovered from a shielded action by trial-decryption. */
4
+ export class RecoveredNoteWASM {
5
+ /** @private **/
6
+ _rawRecoveredNote;
7
+ /** The action's global leaf position in the commitment tree. */
8
+ get index() {
9
+ return this._rawRecoveredNote.index;
10
+ }
11
+ get note() {
12
+ return NoteWASM.createFromRawInstance(this._rawRecoveredNote.note);
13
+ }
14
+ static createFromRawInstance(rawInstance) {
15
+ const instance = Object.create(RecoveredNoteWASM.prototype);
16
+ instance._rawRecoveredNote = rawInstance;
17
+ return instance;
18
+ }
19
+ }
20
+ /**
21
+ * Recovers your own notes from a set of shielded actions by trial-decrypting
22
+ * each with the viewing key derived from `seed` (ZIP-32 m/32'/coinType'/account').
23
+ * Only actions addressed to you are returned; `index` is the global leaf position.
24
+ */
25
+ export function recoverNotes(actions, seed, coinType, account) {
26
+ return dppProvider.dpp
27
+ .recoverNotes(actions.map(a => a._rawSerializedAction), seed, coinType, account)
28
+ .map(RecoveredNoteWASM.createFromRawInstance);
29
+ }
@@ -0,0 +1,40 @@
1
+ import type { PlatformVersionNAPI, ShieldedBuilderNAPI } from '../../../../binaries/bindingsTypes.js';
2
+ import { PlatformAddressLike, PoolingLike } from '../../types.js';
3
+ import { OrchardAddressWASM } from './OrchardAddress.js';
4
+ import { ShieldedMemoWASM } from './ShieldedMemo.js';
5
+ import { SpendableNoteWASM } from './SpendableNote.js';
6
+ import { ShieldedWithdrawalResultWASM } from './ShieldedWithdrawalResult.js';
7
+ import { AssetLockProofWASM } from '../AssetLockProof/AssetLockProof.js';
8
+ import { PrivateKeyWASM } from '../PrivateKey.js';
9
+ import { CoreScriptWASM } from '../CoreScript.js';
10
+ import { StateTransitionWASM } from '../StateTransition.js';
11
+ import { InputAddressWASM } from '../AddressTransitions/entities/InputAddress.js';
12
+ import { AddressFundsFeeStrategyStepWASM } from '../AddressTransitions/entities/AddressFundsFeeStrategyStep.js';
13
+ import { IdentityPublicKeyInCreationWASM } from '../IdentityPublicKeyInCreation.js';
14
+ import { IdentityCreateFromShieldedPoolResultWASM } from './IdentityCreateFromShieldedPoolResult.js';
15
+ /**
16
+ * Builds and proves shielded (Orchard) state transitions. Construction builds
17
+ * the Halo 2 proving key (~seconds), so create one instance and reuse it.
18
+ *
19
+ * Deposits (`shield`, `shieldFromAssetLock`) don't need pool notes. Spends
20
+ * (`shieldedWithdrawal`, `unshield`, `shieldedTransfer`) need a `SpendableNote`
21
+ * witnessed against an on-chain anchor — rebuild the tree from the full pool
22
+ * note set (getShieldedEncryptedNotes) with `CommitmentTreeWASM`.
23
+ */
24
+ export declare class ShieldedBuilderWASM {
25
+ /** @private **/
26
+ _rawShieldedBuilder: ShieldedBuilderNAPI;
27
+ constructor();
28
+ /** Asset lock -> pool (deposit). */
29
+ shieldFromAssetLock(recipient: OrchardAddressWASM, shieldAmount: bigint, assetLockProof: AssetLockProofWASM, privateKey: PrivateKeyWASM, memo: ShieldedMemoWASM, dummyOutputs: number, senderOvk?: Uint8Array, surplusOutput?: PlatformAddressLike, platformVersion?: PlatformVersionNAPI): StateTransitionWASM;
30
+ /** Transparent platform addresses -> pool (deposit). One private key per input. */
31
+ shield(recipient: OrchardAddressWASM, shieldAmount: bigint, inputs: InputAddressWASM[], privateKeys: PrivateKeyWASM[], feeStrategy: AddressFundsFeeStrategyStepWASM[], userFeeIncrease: number, memo: ShieldedMemoWASM, senderOvk?: Uint8Array, platformVersion?: PlatformVersionNAPI): StateTransitionWASM;
32
+ /** Pool -> core L1 (spend). */
33
+ shieldedWithdrawal(spends: SpendableNoteWASM[], withdrawalAmount: bigint, outputScript: CoreScriptWASM, coreFeePerByte: number, pooling: PoolingLike, changeAddress: OrchardAddressWASM, seed: Uint8Array, coinType: number, account: number, anchor: Uint8Array, memo: ShieldedMemoWASM, platformVersion?: PlatformVersionNAPI): ShieldedWithdrawalResultWASM;
34
+ /** Pool -> platform identity balance (spend). */
35
+ unshield(spends: SpendableNoteWASM[], outputAddress: PlatformAddressLike, unshieldAmount: bigint, changeAddress: OrchardAddressWASM, seed: Uint8Array, coinType: number, account: number, anchor: Uint8Array, memo: ShieldedMemoWASM, platformVersion?: PlatformVersionNAPI): ShieldedWithdrawalResultWASM;
36
+ /** Pool -> pool (spend). */
37
+ shieldedTransfer(spends: SpendableNoteWASM[], recipient: OrchardAddressWASM, transferAmount: bigint, changeAddress: OrchardAddressWASM, seed: Uint8Array, coinType: number, account: number, anchor: Uint8Array, memo: ShieldedMemoWASM, platformVersion?: PlatformVersionNAPI): ShieldedWithdrawalResultWASM;
38
+ /** Pool -> new identity (spend). One private key per public key, same order. */
39
+ identityCreateFromShieldedPool(publicKeys: IdentityPublicKeyInCreationWASM[], privateKeys: PrivateKeyWASM[], denomination: bigint, sendToAddressOnCreationFailure: PlatformAddressLike, spends: SpendableNoteWASM[], changeAddress: OrchardAddressWASM, seed: Uint8Array, coinType: number, account: number, anchor: Uint8Array, memo: ShieldedMemoWASM, platformVersion?: PlatformVersionNAPI): IdentityCreateFromShieldedPoolResultWASM;
40
+ }