@xyo-network/sdk-protocol 7.0.4

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 (391) hide show
  1. package/LICENSE +165 -0
  2. package/README.md +85 -0
  3. package/dist/_pkg/account/neutral/Account.d.ts +38 -0
  4. package/dist/_pkg/account/neutral/Jwt/base64url.d.ts +5 -0
  5. package/dist/_pkg/account/neutral/Jwt/createJwt.d.ts +3 -0
  6. package/dist/_pkg/account/neutral/Jwt/decodeJwt.d.ts +3 -0
  7. package/dist/_pkg/account/neutral/Jwt/digest.d.ts +4 -0
  8. package/dist/_pkg/account/neutral/Jwt/index.d.ts +6 -0
  9. package/dist/_pkg/account/neutral/Jwt/verifyJwt.d.ts +3 -0
  10. package/dist/_pkg/account/neutral/Key/AddressValue.d.ts +11 -0
  11. package/dist/_pkg/account/neutral/Key/EllipticKey.d.ts +4 -0
  12. package/dist/_pkg/account/neutral/Key/PrivateKey.d.ts +14 -0
  13. package/dist/_pkg/account/neutral/Key/PublicKey.d.ts +14 -0
  14. package/dist/_pkg/account/neutral/Key/index.d.ts +5 -0
  15. package/dist/_pkg/account/neutral/index.d.ts +6 -0
  16. package/dist/_pkg/account/neutral/index.mjs +547 -0
  17. package/dist/_pkg/account/neutral/lib/index.d.ts +2 -0
  18. package/dist/_pkg/account/neutral/lib/walletPath/combineWalletPaths.d.ts +2 -0
  19. package/dist/_pkg/account/neutral/lib/walletPath/formatWalletPath.d.ts +2 -0
  20. package/dist/_pkg/account/neutral/lib/walletPath/index.d.ts +4 -0
  21. package/dist/_pkg/account/neutral/lib/walletPath/isValidWalletPath.d.ts +3 -0
  22. package/dist/_pkg/account/neutral/register.d.ts +2 -0
  23. package/dist/_pkg/account-model/neutral/Account.d.ts +46 -0
  24. package/dist/_pkg/account-model/neutral/Algorithm.d.ts +5 -0
  25. package/dist/_pkg/account-model/neutral/Jwt/constants.d.ts +14 -0
  26. package/dist/_pkg/account-model/neutral/Jwt/index.d.ts +3 -0
  27. package/dist/_pkg/account-model/neutral/Jwt/types.d.ts +56 -0
  28. package/dist/_pkg/account-model/neutral/VerifierRegistry.d.ts +6 -0
  29. package/dist/_pkg/account-model/neutral/addressTo20Bytes.d.ts +2 -0
  30. package/dist/_pkg/account-model/neutral/index.d.ts +6 -0
  31. package/dist/_pkg/account-model/neutral/index.mjs +100 -0
  32. package/dist/_pkg/address/neutral/XyoAddress.d.ts +38 -0
  33. package/dist/_pkg/address/neutral/XyoLegacyAddress.d.ts +37 -0
  34. package/dist/_pkg/address/neutral/XyoQuantAddress.d.ts +33 -0
  35. package/dist/_pkg/address/neutral/index.d.ts +4 -0
  36. package/dist/_pkg/address/neutral/index.mjs +75 -0
  37. package/dist/_pkg/api/neutral/Api/Api.d.ts +8 -0
  38. package/dist/_pkg/api/neutral/Api/index.d.ts +2 -0
  39. package/dist/_pkg/api/neutral/Base.d.ts +32 -0
  40. package/dist/_pkg/api/neutral/Simple.d.ts +22 -0
  41. package/dist/_pkg/api/neutral/WithArchive.d.ts +4 -0
  42. package/dist/_pkg/api/neutral/index.d.ts +6 -0
  43. package/dist/_pkg/api/neutral/index.mjs +187 -0
  44. package/dist/_pkg/api/neutral/models/ArchivePath.d.ts +4 -0
  45. package/dist/_pkg/api/neutral/models/index.d.ts +2 -0
  46. package/dist/_pkg/api/neutral/objToQuery.d.ts +2 -0
  47. package/dist/_pkg/api-models/neutral/Config.d.ts +25 -0
  48. package/dist/_pkg/api-models/neutral/Envelope.d.ts +15 -0
  49. package/dist/_pkg/api-models/neutral/Error.d.ts +5 -0
  50. package/dist/_pkg/api-models/neutral/Reportable.d.ts +8 -0
  51. package/dist/_pkg/api-models/neutral/Response.d.ts +8 -0
  52. package/dist/_pkg/api-models/neutral/Warning.d.ts +2 -0
  53. package/dist/_pkg/api-models/neutral/index.d.ts +7 -0
  54. package/dist/_pkg/api-models/neutral/index.mjs +1 -0
  55. package/dist/_pkg/boundwitness/neutral/builder.d.ts +2 -0
  56. package/dist/_pkg/boundwitness/neutral/builder.mjs +3 -0
  57. package/dist/_pkg/boundwitness/neutral/index.d.ts +5 -0
  58. package/dist/_pkg/boundwitness/neutral/index.mjs +6 -0
  59. package/dist/_pkg/boundwitness/neutral/model.d.ts +2 -0
  60. package/dist/_pkg/boundwitness/neutral/model.mjs +3 -0
  61. package/dist/_pkg/boundwitness/neutral/validator.d.ts +2 -0
  62. package/dist/_pkg/boundwitness/neutral/validator.mjs +3 -0
  63. package/dist/_pkg/boundwitness/neutral/wrapper.d.ts +2 -0
  64. package/dist/_pkg/boundwitness/neutral/wrapper.mjs +3 -0
  65. package/dist/_pkg/boundwitness-builder/neutral/BoundWitnessBuilder.d.ts +48 -0
  66. package/dist/_pkg/boundwitness-builder/neutral/GeneratedBoundWitnessFields.d.ts +3 -0
  67. package/dist/_pkg/boundwitness-builder/neutral/Query/QueryBoundWitnessBuilder.d.ts +9 -0
  68. package/dist/_pkg/boundwitness-builder/neutral/Query/index.d.ts +2 -0
  69. package/dist/_pkg/boundwitness-builder/neutral/combinationsByBoundwitness.d.ts +10 -0
  70. package/dist/_pkg/boundwitness-builder/neutral/index.d.ts +5 -0
  71. package/dist/_pkg/boundwitness-builder/neutral/index.mjs +311 -0
  72. package/dist/_pkg/boundwitness-builder/neutral/intraBoundwitnessSchemaCombinations.d.ts +11 -0
  73. package/dist/_pkg/boundwitness-builder/neutral/uniqueAccounts.d.ts +3 -0
  74. package/dist/_pkg/boundwitness-builder/neutral/uniqueAddresses.d.ts +3 -0
  75. package/dist/_pkg/boundwitness-model/neutral/BoundWitness/BoundWitness.d.ts +173 -0
  76. package/dist/_pkg/boundwitness-model/neutral/BoundWitness/BoundWitnessJsonSchema.d.ts +37 -0
  77. package/dist/_pkg/boundwitness-model/neutral/BoundWitness/BoundWitnessSchema.d.ts +5 -0
  78. package/dist/_pkg/boundwitness-model/neutral/BoundWitness/HydratedBoundWitness.d.ts +72 -0
  79. package/dist/_pkg/boundwitness-model/neutral/BoundWitness/Signatures.d.ts +14 -0
  80. package/dist/_pkg/boundwitness-model/neutral/BoundWitness/SignedBoundWitness.d.ts +44 -0
  81. package/dist/_pkg/boundwitness-model/neutral/BoundWitness/UnsignedBoundWitness.d.ts +44 -0
  82. package/dist/_pkg/boundwitness-model/neutral/BoundWitness/index.d.ts +8 -0
  83. package/dist/_pkg/boundwitness-model/neutral/QueryBoundWitness.d.ts +150 -0
  84. package/dist/_pkg/boundwitness-model/neutral/index.d.ts +3 -0
  85. package/dist/_pkg/boundwitness-model/neutral/index.mjs +131 -0
  86. package/dist/_pkg/boundwitness-validator/neutral/Validator.d.ts +17 -0
  87. package/dist/_pkg/boundwitness-validator/neutral/index.d.ts +3 -0
  88. package/dist/_pkg/boundwitness-validator/neutral/index.mjs +177 -0
  89. package/dist/_pkg/boundwitness-validator/neutral/lib/addresses/addressesContains.d.ts +10 -0
  90. package/dist/_pkg/boundwitness-validator/neutral/lib/addresses/addressesContainsAll.d.ts +10 -0
  91. package/dist/_pkg/boundwitness-validator/neutral/lib/addresses/addressesContainsAny.d.ts +12 -0
  92. package/dist/_pkg/boundwitness-validator/neutral/lib/addresses/index.d.ts +4 -0
  93. package/dist/_pkg/boundwitness-validator/neutral/lib/index.d.ts +4 -0
  94. package/dist/_pkg/boundwitness-validator/neutral/lib/payloadHashes/index.d.ts +4 -0
  95. package/dist/_pkg/boundwitness-validator/neutral/lib/payloadHashes/payloadHashesContains.d.ts +10 -0
  96. package/dist/_pkg/boundwitness-validator/neutral/lib/payloadHashes/payloadHashesContainsAll.d.ts +10 -0
  97. package/dist/_pkg/boundwitness-validator/neutral/lib/payloadHashes/payloadHashesContainsAny.d.ts +12 -0
  98. package/dist/_pkg/boundwitness-validator/neutral/lib/payloadSchemas/index.d.ts +4 -0
  99. package/dist/_pkg/boundwitness-validator/neutral/lib/payloadSchemas/payloadSchemasContains.d.ts +10 -0
  100. package/dist/_pkg/boundwitness-validator/neutral/lib/payloadSchemas/payloadSchemasContainsAll.d.ts +10 -0
  101. package/dist/_pkg/boundwitness-validator/neutral/lib/payloadSchemas/payloadSchemasContainsAny.d.ts +12 -0
  102. package/dist/_pkg/boundwitness-validator/neutral/lib/util/BoundWitnessArrayProperty.d.ts +10 -0
  103. package/dist/_pkg/boundwitness-validator/neutral/lib/util/boundWitnessArrayPropertyContains.d.ts +11 -0
  104. package/dist/_pkg/boundwitness-validator/neutral/lib/util/boundWitnessArrayPropertyContainsAll.d.ts +11 -0
  105. package/dist/_pkg/boundwitness-validator/neutral/lib/util/boundWitnessArrayPropertyContainsAny.d.ts +13 -0
  106. package/dist/_pkg/boundwitness-validator/neutral/lib/util/index.d.ts +4 -0
  107. package/dist/_pkg/boundwitness-wrapper/neutral/BoundWitnessWrapper.d.ts +60 -0
  108. package/dist/_pkg/boundwitness-wrapper/neutral/QueryBoundWitnessWrapper.d.ts +14 -0
  109. package/dist/_pkg/boundwitness-wrapper/neutral/SchemaType.d.ts +6 -0
  110. package/dist/_pkg/boundwitness-wrapper/neutral/index.d.ts +4 -0
  111. package/dist/_pkg/boundwitness-wrapper/neutral/index.mjs +281 -0
  112. package/dist/_pkg/config-payload-plugin/neutral/Payload.d.ts +44 -0
  113. package/dist/_pkg/config-payload-plugin/neutral/Plugin.d.ts +7 -0
  114. package/dist/_pkg/config-payload-plugin/neutral/Schema.d.ts +5 -0
  115. package/dist/_pkg/config-payload-plugin/neutral/Template.d.ts +3 -0
  116. package/dist/_pkg/config-payload-plugin/neutral/index.d.ts +5 -0
  117. package/dist/_pkg/config-payload-plugin/neutral/index.mjs +44 -0
  118. package/dist/_pkg/core/neutral/index.d.ts +6 -0
  119. package/dist/_pkg/core/neutral/index.mjs +7 -0
  120. package/dist/_pkg/core-payload-plugins/neutral/index.d.ts +11 -0
  121. package/dist/_pkg/core-payload-plugins/neutral/index.mjs +26 -0
  122. package/dist/_pkg/crypto/neutral/account-model.d.ts +2 -0
  123. package/dist/_pkg/crypto/neutral/account-model.mjs +3 -0
  124. package/dist/_pkg/crypto/neutral/account.d.ts +2 -0
  125. package/dist/_pkg/crypto/neutral/account.mjs +3 -0
  126. package/dist/_pkg/crypto/neutral/index.d.ts +10 -0
  127. package/dist/_pkg/crypto/neutral/index.mjs +11 -0
  128. package/dist/_pkg/crypto/neutral/key-model.d.ts +2 -0
  129. package/dist/_pkg/crypto/neutral/key-model.mjs +3 -0
  130. package/dist/_pkg/crypto/neutral/wallet-model.d.ts +2 -0
  131. package/dist/_pkg/crypto/neutral/wallet-model.mjs +3 -0
  132. package/dist/_pkg/crypto/neutral/wallet.d.ts +2 -0
  133. package/dist/_pkg/crypto/neutral/wallet.mjs +3 -0
  134. package/dist/_pkg/data/neutral/AbstractData.d.ts +16 -0
  135. package/dist/_pkg/data/neutral/Data.d.ts +13 -0
  136. package/dist/_pkg/data/neutral/index.d.ts +3 -0
  137. package/dist/_pkg/data/neutral/index.mjs +53 -0
  138. package/dist/_pkg/dns/neutral/DnsRecordType.d.ts +16 -0
  139. package/dist/_pkg/dns/neutral/DnsReturnCode.d.ts +14 -0
  140. package/dist/_pkg/dns/neutral/GoogleDnsResult.d.ts +17 -0
  141. package/dist/_pkg/dns/neutral/GoogleDnsResultAnswer.d.ts +8 -0
  142. package/dist/_pkg/dns/neutral/GoogleDnsResultQuestion.d.ts +11 -0
  143. package/dist/_pkg/dns/neutral/domainExists.d.ts +8 -0
  144. package/dist/_pkg/dns/neutral/domainResolve.d.ts +9 -0
  145. package/dist/_pkg/dns/neutral/googleDnsOverHttps.d.ts +5 -0
  146. package/dist/_pkg/dns/neutral/index.d.ts +9 -0
  147. package/dist/_pkg/dns/neutral/index.mjs +61 -0
  148. package/dist/_pkg/domain-payload-plugin/neutral/DomainConfigPayload.d.ts +219 -0
  149. package/dist/_pkg/domain-payload-plugin/neutral/DomainConfigPlugin.d.ts +33 -0
  150. package/dist/_pkg/domain-payload-plugin/neutral/DomainConfigSchema.d.ts +5 -0
  151. package/dist/_pkg/domain-payload-plugin/neutral/DomainConfigTemplate.d.ts +3 -0
  152. package/dist/_pkg/domain-payload-plugin/neutral/Payload.d.ts +282 -0
  153. package/dist/_pkg/domain-payload-plugin/neutral/Plugin.d.ts +33 -0
  154. package/dist/_pkg/domain-payload-plugin/neutral/Resolution/DomainSchemaResolver.d.ts +45 -0
  155. package/dist/_pkg/domain-payload-plugin/neutral/Resolution/SchemaResolution.d.ts +27 -0
  156. package/dist/_pkg/domain-payload-plugin/neutral/Resolution/XyoDnsRecords.d.ts +27 -0
  157. package/dist/_pkg/domain-payload-plugin/neutral/Resolution/index.d.ts +4 -0
  158. package/dist/_pkg/domain-payload-plugin/neutral/Schema.d.ts +5 -0
  159. package/dist/_pkg/domain-payload-plugin/neutral/Template.d.ts +3 -0
  160. package/dist/_pkg/domain-payload-plugin/neutral/Wrapper.d.ts +278 -0
  161. package/dist/_pkg/domain-payload-plugin/neutral/index.d.ts +11 -0
  162. package/dist/_pkg/domain-payload-plugin/neutral/index.mjs +485 -0
  163. package/dist/_pkg/elliptic/neutral/Elliptic.d.ts +15 -0
  164. package/dist/_pkg/elliptic/neutral/index.d.ts +2 -0
  165. package/dist/_pkg/elliptic/neutral/index.mjs +89 -0
  166. package/dist/_pkg/hash/browser/BrowserObjectHasher.d.ts +9 -0
  167. package/dist/_pkg/hash/browser/NodeObjectHasher.d.ts +6 -0
  168. package/dist/_pkg/hash/browser/ObjectHasher.d.ts +69 -0
  169. package/dist/_pkg/hash/browser/createBrowserWorker.d.ts +3 -0
  170. package/dist/_pkg/hash/browser/createNodeWorker.d.ts +3 -0
  171. package/dist/_pkg/hash/browser/hasEmptyFields.d.ts +3 -0
  172. package/dist/_pkg/hash/browser/index-browser.d.ts +4 -0
  173. package/dist/_pkg/hash/browser/index-browser.mjs +289 -0
  174. package/dist/_pkg/hash/browser/index.d.ts +5 -0
  175. package/dist/_pkg/hash/browser/removeEmptyFields.d.ts +3 -0
  176. package/dist/_pkg/hash/browser/sortFields.d.ts +3 -0
  177. package/dist/_pkg/hash/browser/worker/index.d.ts +3 -0
  178. package/dist/_pkg/hash/browser/worker/subtleHash-bundle.mjs +257 -0
  179. package/dist/_pkg/hash/browser/worker/subtleHash.d.ts +2 -0
  180. package/dist/_pkg/hash/browser/worker/subtleHashNode.d.ts +2 -0
  181. package/dist/_pkg/hash/browser/worker/wasmHash-bundle.mjs +1678 -0
  182. package/dist/_pkg/hash/browser/worker/wasmHash.d.ts +2 -0
  183. package/dist/_pkg/hash/browser/worker/wasmHashNode.d.ts +2 -0
  184. package/dist/_pkg/hash/neutral/BrowserObjectHasher.d.ts +9 -0
  185. package/dist/_pkg/hash/neutral/NodeObjectHasher.d.ts +6 -0
  186. package/dist/_pkg/hash/neutral/ObjectHasher.d.ts +69 -0
  187. package/dist/_pkg/hash/neutral/createBrowserWorker.d.ts +3 -0
  188. package/dist/_pkg/hash/neutral/createNodeWorker.d.ts +3 -0
  189. package/dist/_pkg/hash/neutral/hasEmptyFields.d.ts +3 -0
  190. package/dist/_pkg/hash/neutral/index-browser.d.ts +4 -0
  191. package/dist/_pkg/hash/neutral/index-browser.mjs +289 -0
  192. package/dist/_pkg/hash/neutral/index.d.ts +5 -0
  193. package/dist/_pkg/hash/neutral/removeEmptyFields.d.ts +3 -0
  194. package/dist/_pkg/hash/neutral/sortFields.d.ts +3 -0
  195. package/dist/_pkg/hash/neutral/worker/index.d.ts +3 -0
  196. package/dist/_pkg/hash/neutral/worker/subtleHash.d.ts +2 -0
  197. package/dist/_pkg/hash/neutral/worker/subtleHashNode.d.ts +2 -0
  198. package/dist/_pkg/hash/neutral/worker/wasmHash.d.ts +2 -0
  199. package/dist/_pkg/hash/neutral/worker/wasmHashNode.d.ts +2 -0
  200. package/dist/_pkg/hash/node/BrowserObjectHasher.d.ts +9 -0
  201. package/dist/_pkg/hash/node/NodeObjectHasher.d.ts +6 -0
  202. package/dist/_pkg/hash/node/ObjectHasher.d.ts +69 -0
  203. package/dist/_pkg/hash/node/createBrowserWorker.d.ts +3 -0
  204. package/dist/_pkg/hash/node/createNodeWorker.d.ts +3 -0
  205. package/dist/_pkg/hash/node/hasEmptyFields.d.ts +3 -0
  206. package/dist/_pkg/hash/node/index-browser.d.ts +4 -0
  207. package/dist/_pkg/hash/node/index.d.ts +5 -0
  208. package/dist/_pkg/hash/node/index.mjs +279 -0
  209. package/dist/_pkg/hash/node/removeEmptyFields.d.ts +3 -0
  210. package/dist/_pkg/hash/node/sortFields.d.ts +3 -0
  211. package/dist/_pkg/hash/node/worker/index.d.ts +3 -0
  212. package/dist/_pkg/hash/node/worker/subtleHash.d.ts +2 -0
  213. package/dist/_pkg/hash/node/worker/subtleHashNode.d.ts +2 -0
  214. package/dist/_pkg/hash/node/worker/wasmHash.d.ts +2 -0
  215. package/dist/_pkg/hash/node/worker/wasmHashNode.d.ts +2 -0
  216. package/dist/_pkg/huri/neutral/Huri.d.ts +33 -0
  217. package/dist/_pkg/huri/neutral/index.d.ts +2 -0
  218. package/dist/_pkg/huri/neutral/index.mjs +118 -0
  219. package/dist/_pkg/id-payload-plugin/neutral/Payload.d.ts +86 -0
  220. package/dist/_pkg/id-payload-plugin/neutral/Plugin.d.ts +7 -0
  221. package/dist/_pkg/id-payload-plugin/neutral/Schema.d.ts +5 -0
  222. package/dist/_pkg/id-payload-plugin/neutral/Template.d.ts +3 -0
  223. package/dist/_pkg/id-payload-plugin/neutral/index.d.ts +5 -0
  224. package/dist/_pkg/id-payload-plugin/neutral/index.mjs +48 -0
  225. package/dist/_pkg/key-model/neutral/Key/AddressValue.d.ts +10 -0
  226. package/dist/_pkg/key-model/neutral/Key/EllipticKey.d.ts +4 -0
  227. package/dist/_pkg/key-model/neutral/Key/PrivateKey.d.ts +15 -0
  228. package/dist/_pkg/key-model/neutral/Key/PublicKey.d.ts +11 -0
  229. package/dist/_pkg/key-model/neutral/Key/index.d.ts +4 -0
  230. package/dist/_pkg/key-model/neutral/index.d.ts +2 -0
  231. package/dist/_pkg/key-model/neutral/index.mjs +1 -0
  232. package/dist/_pkg/manifest/neutral/index.d.ts +2 -0
  233. package/dist/_pkg/manifest/neutral/index.mjs +3 -0
  234. package/dist/_pkg/manifest-model/neutral/Manifest.d.ts +4 -0
  235. package/dist/_pkg/manifest-model/neutral/Manifest.zod.d.ts +2619 -0
  236. package/dist/_pkg/manifest-model/neutral/Payload.d.ts +2 -0
  237. package/dist/_pkg/manifest-model/neutral/Payload.zod.d.ts +1591 -0
  238. package/dist/_pkg/manifest-model/neutral/index.d.ts +3 -0
  239. package/dist/_pkg/manifest-model/neutral/index.mjs +193 -0
  240. package/dist/_pkg/metamask-connector/browser/MetaMaskConnector.d.ts +38 -0
  241. package/dist/_pkg/metamask-connector/browser/index.d.ts +2 -0
  242. package/dist/_pkg/metamask-connector/browser/index.mjs +114 -0
  243. package/dist/_pkg/network/neutral/NetworkNodePayload.d.ts +79 -0
  244. package/dist/_pkg/network/neutral/NetworkNodePayloadWrapper.d.ts +17 -0
  245. package/dist/_pkg/network/neutral/NetworkPayload.d.ts +119 -0
  246. package/dist/_pkg/network/neutral/NetworkPayloadWrapper.d.ts +63 -0
  247. package/dist/_pkg/network/neutral/index.d.ts +8 -0
  248. package/dist/_pkg/network/neutral/index.mjs +211 -0
  249. package/dist/_pkg/network/neutral/knownArchivists.d.ts +3 -0
  250. package/dist/_pkg/network/neutral/knownDiviners.d.ts +3 -0
  251. package/dist/_pkg/network/neutral/knownNetworks.d.ts +3 -0
  252. package/dist/_pkg/payload/neutral/builder.d.ts +2 -0
  253. package/dist/_pkg/payload/neutral/builder.mjs +3 -0
  254. package/dist/_pkg/payload/neutral/index.d.ts +6 -0
  255. package/dist/_pkg/payload/neutral/index.mjs +7 -0
  256. package/dist/_pkg/payload/neutral/model.d.ts +2 -0
  257. package/dist/_pkg/payload/neutral/model.mjs +3 -0
  258. package/dist/_pkg/payload/neutral/validator.d.ts +2 -0
  259. package/dist/_pkg/payload/neutral/validator.mjs +3 -0
  260. package/dist/_pkg/payload/neutral/wrapper.d.ts +2 -0
  261. package/dist/_pkg/payload/neutral/wrapper.mjs +3 -0
  262. package/dist/_pkg/payload-builder/neutral/Builder.d.ts +70 -0
  263. package/dist/_pkg/payload-builder/neutral/Options.d.ts +7 -0
  264. package/dist/_pkg/payload-builder/neutral/index.d.ts +3 -0
  265. package/dist/_pkg/payload-builder/neutral/index.mjs +218 -0
  266. package/dist/_pkg/payload-model/neutral/Error.d.ts +65 -0
  267. package/dist/_pkg/payload-model/neutral/Payload.d.ts +35 -0
  268. package/dist/_pkg/payload-model/neutral/PayloadBundle.d.ts +72 -0
  269. package/dist/_pkg/payload-model/neutral/PayloadFindFilter.d.ts +6 -0
  270. package/dist/_pkg/payload-model/neutral/PayloadHashMap.d.ts +7 -0
  271. package/dist/_pkg/payload-model/neutral/PayloadSet/PayloadSetPayload.d.ts +54 -0
  272. package/dist/_pkg/payload-model/neutral/PayloadSet/PayloadSetSchema.d.ts +5 -0
  273. package/dist/_pkg/payload-model/neutral/PayloadSet/index.d.ts +3 -0
  274. package/dist/_pkg/payload-model/neutral/PayloadValidationFunction.d.ts +14 -0
  275. package/dist/_pkg/payload-model/neutral/PayloadValueExpression.d.ts +38 -0
  276. package/dist/_pkg/payload-model/neutral/PayloadZod.d.ts +173 -0
  277. package/dist/_pkg/payload-model/neutral/Query.d.ts +21 -0
  278. package/dist/_pkg/payload-model/neutral/Schema.d.ts +38 -0
  279. package/dist/_pkg/payload-model/neutral/StorageMeta/DataHash.d.ts +24 -0
  280. package/dist/_pkg/payload-model/neutral/StorageMeta/Hash.d.ts +25 -0
  281. package/dist/_pkg/payload-model/neutral/StorageMeta/Sequence.d.ts +11 -0
  282. package/dist/_pkg/payload-model/neutral/StorageMeta/index.d.ts +3 -0
  283. package/dist/_pkg/payload-model/neutral/StorageMeta/sequence/Comparer.d.ts +7 -0
  284. package/dist/_pkg/payload-model/neutral/StorageMeta/sequence/Parser.d.ts +31 -0
  285. package/dist/_pkg/payload-model/neutral/StorageMeta/sequence/Sequence.d.ts +80 -0
  286. package/dist/_pkg/payload-model/neutral/StorageMeta/sequence/SequenceZod.d.ts +9 -0
  287. package/dist/_pkg/payload-model/neutral/StorageMeta/sequence/index.d.ts +5 -0
  288. package/dist/_pkg/payload-model/neutral/Timestamp.d.ts +8 -0
  289. package/dist/_pkg/payload-model/neutral/index.d.ts +16 -0
  290. package/dist/_pkg/payload-model/neutral/index.mjs +452 -0
  291. package/dist/_pkg/payload-model/neutral/isPayloadOfSchemaType.d.ts +5 -0
  292. package/dist/_pkg/payload-model/neutral/isPayloadOfZodType.d.ts +12 -0
  293. package/dist/_pkg/payload-plugin/neutral/Plugin.d.ts +19 -0
  294. package/dist/_pkg/payload-plugin/neutral/Resolver.d.ts +26 -0
  295. package/dist/_pkg/payload-plugin/neutral/createPlugin.d.ts +5 -0
  296. package/dist/_pkg/payload-plugin/neutral/index.d.ts +4 -0
  297. package/dist/_pkg/payload-plugin/neutral/index.mjs +67 -0
  298. package/dist/_pkg/payload-validator/neutral/Validator.d.ts +18 -0
  299. package/dist/_pkg/payload-validator/neutral/index.d.ts +2 -0
  300. package/dist/_pkg/payload-validator/neutral/index.mjs +40 -0
  301. package/dist/_pkg/payload-wrapper/neutral/PayloadDataWrapper.d.ts +18 -0
  302. package/dist/_pkg/payload-wrapper/neutral/PayloadWrapper.d.ts +6 -0
  303. package/dist/_pkg/payload-wrapper/neutral/PayloadWrapperBase.d.ts +23 -0
  304. package/dist/_pkg/payload-wrapper/neutral/SchemaType.d.ts +6 -0
  305. package/dist/_pkg/payload-wrapper/neutral/index.d.ts +4 -0
  306. package/dist/_pkg/payload-wrapper/neutral/index.mjs +157 -0
  307. package/dist/_pkg/pqc/neutral/MlDsa.d.ts +20 -0
  308. package/dist/_pkg/pqc/neutral/index.d.ts +2 -0
  309. package/dist/_pkg/pqc/neutral/index.mjs +47 -0
  310. package/dist/_pkg/previous-hash-store/neutral/index.d.ts +4 -0
  311. package/dist/_pkg/previous-hash-store/neutral/index.mjs +5 -0
  312. package/dist/_pkg/previous-hash-store-indexeddb/neutral/IndexedDbPreviousHashStore.d.ts +27 -0
  313. package/dist/_pkg/previous-hash-store-indexeddb/neutral/index.d.ts +2 -0
  314. package/dist/_pkg/previous-hash-store-indexeddb/neutral/index.mjs +42 -0
  315. package/dist/_pkg/previous-hash-store-model/neutral/PreviousHashStore.d.ts +8 -0
  316. package/dist/_pkg/previous-hash-store-model/neutral/index.d.ts +2 -0
  317. package/dist/_pkg/previous-hash-store-model/neutral/index.mjs +1 -0
  318. package/dist/_pkg/previous-hash-store-storage/neutral/NamespacedStorage.d.ts +10 -0
  319. package/dist/_pkg/previous-hash-store-storage/neutral/StoragePreviousHashStore.d.ts +24 -0
  320. package/dist/_pkg/previous-hash-store-storage/neutral/index.d.ts +3 -0
  321. package/dist/_pkg/previous-hash-store-storage/neutral/index.mjs +104 -0
  322. package/dist/_pkg/protocol/neutral/index.d.ts +5 -0
  323. package/dist/_pkg/protocol/neutral/index.mjs +6 -0
  324. package/dist/_pkg/quadkey/neutral/Quadkey.d.ts +65 -0
  325. package/dist/_pkg/quadkey/neutral/RelativeDirectionConstantLookup.d.ts +2 -0
  326. package/dist/_pkg/quadkey/neutral/index.d.ts +2 -0
  327. package/dist/_pkg/quadkey/neutral/index.mjs +281 -0
  328. package/dist/_pkg/quant-account/neutral/QuantAccount.d.ts +34 -0
  329. package/dist/_pkg/quant-account/neutral/index.d.ts +3 -0
  330. package/dist/_pkg/quant-account/neutral/index.mjs +173 -0
  331. package/dist/_pkg/quant-account/neutral/register.d.ts +2 -0
  332. package/dist/_pkg/query-payload-plugin/neutral/Payload.d.ts +43 -0
  333. package/dist/_pkg/query-payload-plugin/neutral/Plugin.d.ts +7 -0
  334. package/dist/_pkg/query-payload-plugin/neutral/Schema.d.ts +5 -0
  335. package/dist/_pkg/query-payload-plugin/neutral/Template.d.ts +3 -0
  336. package/dist/_pkg/query-payload-plugin/neutral/index.d.ts +5 -0
  337. package/dist/_pkg/query-payload-plugin/neutral/index.mjs +44 -0
  338. package/dist/_pkg/schema-cache/neutral/Debounce.d.ts +5 -0
  339. package/dist/_pkg/schema-cache/neutral/SchemaCache.d.ts +43 -0
  340. package/dist/_pkg/schema-cache/neutral/SchemaNameToValidatorMap.d.ts +12 -0
  341. package/dist/_pkg/schema-cache/neutral/TtlLruCache.d.ts +13 -0
  342. package/dist/_pkg/schema-cache/neutral/index.d.ts +5 -0
  343. package/dist/_pkg/schema-cache/neutral/index.mjs +178 -0
  344. package/dist/_pkg/schema-name-validator/neutral/SchemaNameValidator.d.ts +43 -0
  345. package/dist/_pkg/schema-name-validator/neutral/index.d.ts +2 -0
  346. package/dist/_pkg/schema-name-validator/neutral/index.mjs +69 -0
  347. package/dist/_pkg/schema-payload-plugin/neutral/Payload.d.ts +96 -0
  348. package/dist/_pkg/schema-payload-plugin/neutral/Plugin.d.ts +13 -0
  349. package/dist/_pkg/schema-payload-plugin/neutral/Schema.d.ts +5 -0
  350. package/dist/_pkg/schema-payload-plugin/neutral/Template.d.ts +3 -0
  351. package/dist/_pkg/schema-payload-plugin/neutral/index.d.ts +5 -0
  352. package/dist/_pkg/schema-payload-plugin/neutral/index.mjs +60 -0
  353. package/dist/_pkg/sdk-utils/neutral/api.d.ts +5 -0
  354. package/dist/_pkg/sdk-utils/neutral/api.mjs +6 -0
  355. package/dist/_pkg/sdk-utils/neutral/index.d.ts +9 -0
  356. package/dist/_pkg/sdk-utils/neutral/index.mjs +10 -0
  357. package/dist/_pkg/sdk-utils/neutral/integrations.d.ts +3 -0
  358. package/dist/_pkg/sdk-utils/neutral/integrations.mjs +4 -0
  359. package/dist/_pkg/sdk-utils/neutral/plugins.d.ts +2 -0
  360. package/dist/_pkg/sdk-utils/neutral/plugins.mjs +3 -0
  361. package/dist/_pkg/sdk-utils/neutral/validation.d.ts +2 -0
  362. package/dist/_pkg/sdk-utils/neutral/validation.mjs +3 -0
  363. package/dist/_pkg/value-payload-plugin/neutral/Payload.d.ts +46 -0
  364. package/dist/_pkg/value-payload-plugin/neutral/Plugin.d.ts +3 -0
  365. package/dist/_pkg/value-payload-plugin/neutral/Schema.d.ts +5 -0
  366. package/dist/_pkg/value-payload-plugin/neutral/Template.d.ts +3 -0
  367. package/dist/_pkg/value-payload-plugin/neutral/index.d.ts +5 -0
  368. package/dist/_pkg/value-payload-plugin/neutral/index.mjs +44 -0
  369. package/dist/_pkg/wallet/neutral/HDWallet.d.ts +38 -0
  370. package/dist/_pkg/wallet/neutral/index.d.ts +2 -0
  371. package/dist/_pkg/wallet/neutral/index.mjs +157 -0
  372. package/dist/_pkg/wallet-model/neutral/Mnemonic.d.ts +27 -0
  373. package/dist/_pkg/wallet-model/neutral/Wallet.d.ts +26 -0
  374. package/dist/_pkg/wallet-model/neutral/Wordlist.d.ts +24 -0
  375. package/dist/_pkg/wallet-model/neutral/index.d.ts +2 -0
  376. package/dist/_pkg/wallet-model/neutral/index.mjs +1 -0
  377. package/dist/_pkg/wasm/neutral/WasmSupport.d.ts +110 -0
  378. package/dist/_pkg/wasm/neutral/index.d.ts +2 -0
  379. package/dist/_pkg/wasm/neutral/index.mjs +178 -0
  380. package/dist/_pkg/wasm/neutral/wasmFeatureDetect.d.ts +16 -0
  381. package/dist/neutral/core-payload-plugins.d.ts +1 -0
  382. package/dist/neutral/core-payload-plugins.mjs +1 -0
  383. package/dist/neutral/index.d.ts +4 -0
  384. package/dist/neutral/index.mjs +4 -0
  385. package/dist/neutral/manifest.d.ts +1 -0
  386. package/dist/neutral/manifest.mjs +1 -0
  387. package/dist/neutral/protocol.d.ts +1 -0
  388. package/dist/neutral/protocol.mjs +1 -0
  389. package/dist/neutral/sdk-utils.d.ts +1 -0
  390. package/dist/neutral/sdk-utils.mjs +1 -0
  391. package/package.json +113 -0
@@ -0,0 +1,25 @@
1
+ import type { ApiReportable } from './Reportable.ts';
2
+ interface ApiConfig extends ApiReportable {
3
+ /** @description The domain where the API is located */
4
+ apiDomain: string;
5
+ /** @description The apiKey used for authentication */
6
+ apiKey?: string;
7
+ /** @description Threshold for Content-Size to cause automatic gzip of request body [default = 1024] */
8
+ compressionThreshold?: number;
9
+ /** @description The jwtToken of the currently logged in user */
10
+ jwtToken?: string;
11
+ /** @description The query string, if any, that is added to the end of every request */
12
+ query?: string;
13
+ /** @description Parent that should also report events from this API */
14
+ reportableParent?: ApiReportable;
15
+ /** @description The location in the API tree where this API object is mounted */
16
+ root?: string;
17
+ /** @description Throw on error */
18
+ throwError?: boolean;
19
+ /** @description Throw on failures */
20
+ throwFailure?: boolean;
21
+ /** @deprecated use the jwtToken instead */
22
+ userid?: string;
23
+ }
24
+ export type { ApiConfig };
25
+ //# sourceMappingURL=Config.d.ts.map
@@ -0,0 +1,15 @@
1
+ import type { ApiError } from './Error.ts';
2
+ import type { ApiWarning } from './Warning.ts';
3
+ export interface ApiEnvelopeBase {
4
+ warning?: ApiWarning[];
5
+ }
6
+ export interface ApiEnvelopeSuccess<T> extends ApiEnvelopeBase {
7
+ data: T;
8
+ errors: never;
9
+ }
10
+ export interface ApiEnvelopeError extends ApiEnvelopeBase {
11
+ data: never;
12
+ errors: ApiError[];
13
+ }
14
+ export type ApiEnvelope<T> = ApiEnvelopeSuccess<T> | ApiEnvelopeError;
15
+ //# sourceMappingURL=Envelope.d.ts.map
@@ -0,0 +1,5 @@
1
+ import type { FetchClientError } from '@xylabs/sdk';
2
+ export interface ApiError<T = unknown> extends FetchClientError<T> {
3
+ isError: true;
4
+ }
5
+ //# sourceMappingURL=Error.d.ts.map
@@ -0,0 +1,8 @@
1
+ import type { ApiError } from './Error.ts';
2
+ import type { ApiResponse } from './Response.ts';
3
+ export interface ApiReportable {
4
+ onError?: (error: ApiError, depth: number) => void;
5
+ onFailure?: (response: ApiResponse, depth: number) => void;
6
+ onSuccess?: (response: ApiResponse, depth: number) => void;
7
+ }
8
+ //# sourceMappingURL=Reportable.d.ts.map
@@ -0,0 +1,8 @@
1
+ import type { FetchJsonResponse } from '@xylabs/sdk';
2
+ import type { ApiEnvelope } from './Envelope.ts';
3
+ export type ApiResponse<T = unknown> = FetchJsonResponse<T>;
4
+ export type ApiResponseBody<T> = T | undefined;
5
+ export type ApiResponseTuple<T> = [T | undefined, ApiEnvelope<T | undefined>, ApiResponse<ApiEnvelope<T | undefined>>];
6
+ export type ApiResponseTupleOrBody<T> = ApiResponseTuple<T> | ApiResponseBody<T>;
7
+ export type ApiResponseType = 'body' | 'tuple';
8
+ //# sourceMappingURL=Response.d.ts.map
@@ -0,0 +1,2 @@
1
+ export type ApiWarning = Error;
2
+ //# sourceMappingURL=Warning.d.ts.map
@@ -0,0 +1,7 @@
1
+ export * from './Config.ts';
2
+ export * from './Envelope.ts';
3
+ export * from './Error.ts';
4
+ export * from './Reportable.ts';
5
+ export * from './Response.ts';
6
+ export * from './Warning.ts';
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1,2 @@
1
+ export * from '../../boundwitness-builder/neutral/index.ts';
2
+ //# sourceMappingURL=builder.d.ts.map
@@ -0,0 +1,3 @@
1
+ // src/builder.ts
2
+ export * from "../../boundwitness-builder/neutral/index.mjs";
3
+ //# sourceMappingURL=builder.mjs.map
@@ -0,0 +1,5 @@
1
+ export * from '../../boundwitness-builder/neutral/index.ts';
2
+ export * from '../../boundwitness-model/neutral/index.ts';
3
+ export * from '../../boundwitness-validator/neutral/index.ts';
4
+ export * from '../../boundwitness-wrapper/neutral/index.ts';
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1,6 @@
1
+ // src/index.ts
2
+ export * from "../../boundwitness-builder/neutral/index.mjs";
3
+ export * from "../../boundwitness-model/neutral/index.mjs";
4
+ export * from "../../boundwitness-validator/neutral/index.mjs";
5
+ export * from "../../boundwitness-wrapper/neutral/index.mjs";
6
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1,2 @@
1
+ export * from '../../boundwitness-model/neutral/index.ts';
2
+ //# sourceMappingURL=model.d.ts.map
@@ -0,0 +1,3 @@
1
+ // src/model.ts
2
+ export * from "../../boundwitness-model/neutral/index.mjs";
3
+ //# sourceMappingURL=model.mjs.map
@@ -0,0 +1,2 @@
1
+ export * from '../../boundwitness-validator/neutral/index.ts';
2
+ //# sourceMappingURL=validator.d.ts.map
@@ -0,0 +1,3 @@
1
+ // src/validator.ts
2
+ export * from "../../boundwitness-validator/neutral/index.mjs";
3
+ //# sourceMappingURL=validator.mjs.map
@@ -0,0 +1,2 @@
1
+ export * from '../../boundwitness-wrapper/neutral/index.ts';
2
+ //# sourceMappingURL=wrapper.d.ts.map
@@ -0,0 +1,3 @@
1
+ // src/wrapper.ts
2
+ export * from "../../boundwitness-wrapper/neutral/index.mjs";
3
+ //# sourceMappingURL=wrapper.mjs.map
@@ -0,0 +1,48 @@
1
+ import type { Hash, Hex } from '@xylabs/sdk';
2
+ import type { AccountInstance } from '../../account-model/neutral/index.ts';
3
+ import type { XyoAddress } from '../../address/neutral/index.ts';
4
+ import type { BoundWitness, PossiblySigned, Signed, Unsigned } from '../../boundwitness-model/neutral/index.ts';
5
+ import type { PayloadBuilderOptions } from '../../payload-builder/neutral/index.ts';
6
+ import { PayloadBuilder } from '../../payload-builder/neutral/index.ts';
7
+ import type { ModuleError, Payload, Schema, WithoutClientMeta, WithoutMeta, WithoutSchema, WithoutStorageMeta } from '../../payload-model/neutral/index.ts';
8
+ import { GeneratedBoundWitnessFields } from './GeneratedBoundWitnessFields.ts';
9
+ export declare class BoundWitnessBuilder<TBoundWitness extends BoundWitness = BoundWitness, TPayload extends Payload = Payload> extends PayloadBuilder<TBoundWitness, Promise<[PossiblySigned<TBoundWitness>, TPayload[], ModuleError[]]>> {
10
+ private static readonly _buildMutex;
11
+ private _accounts;
12
+ private _errorHashes?;
13
+ private _errors;
14
+ private _payloadHashes?;
15
+ private _payloadSchemas?;
16
+ private _payloads;
17
+ constructor(options?: Omit<PayloadBuilderOptions, 'schema'>);
18
+ private static validateGeneratedFields;
19
+ protected static linkingFields<T extends BoundWitness>(accounts: AccountInstance[], payloads?: Payload[]): Promise<Pick<T, GeneratedBoundWitnessFields>>;
20
+ protected static signature<T extends BoundWitness>(payload: T, address: XyoAddress): import("@xylabs/sdk").BrandedHex | null;
21
+ protected static signatures(accounts: AccountInstance[], dataHash: Hash): Promise<string[]>;
22
+ static addressIndex<T extends BoundWitness>(payload: T, address: XyoAddress): number;
23
+ static previousHash<T extends BoundWitness>(boundWitness: T, address: XyoAddress): string | undefined;
24
+ protected get addresses(): XyoAddress[];
25
+ protected get payloadSchemas(): string[];
26
+ protected get previousHashBytes(): (ArrayBufferLike | null)[];
27
+ protected get previousHashes(): (Hash | null)[];
28
+ protected sign(): Promise<Hex[]>;
29
+ build(): Promise<[Signed<TBoundWitness>, TPayload[], ModuleError[]]>;
30
+ build(sign: false): Promise<[Unsigned<TBoundWitness>, TPayload[], ModuleError[]]>;
31
+ build(sign: true): Promise<[Signed<TBoundWitness>, TPayload[], ModuleError[]]>;
32
+ dataHash(): Promise<import("@xylabs/sdk").BrandedHash>;
33
+ dataHashableFields(): Promise<WithoutMeta<TBoundWitness>>;
34
+ error(payload?: ModuleError): this;
35
+ errors(errors?: (ModuleError | null)[]): this;
36
+ fields(fields: WithoutSchema<Omit<WithoutStorageMeta<WithoutClientMeta<TBoundWitness>>, 'addresses' | 'payload_hashes' | 'payload_schemas' | 'previous_hashes'>>): this;
37
+ hashes(hashes: Hash[], schema: Schema[]): this;
38
+ payload(payload?: TPayload): this;
39
+ payloads(payloads?: (TPayload | null)[]): this;
40
+ signer(account: AccountInstance): this;
41
+ signers(accounts: AccountInstance[]): this;
42
+ sourceQuery(sourceQuery: Hash): this;
43
+ /** @deprecated use signer instead */
44
+ witness(account: AccountInstance): this;
45
+ /** @deprecated use signers instead */
46
+ witnesses(accounts: AccountInstance[]): this;
47
+ }
48
+ //# sourceMappingURL=BoundWitnessBuilder.d.ts.map
@@ -0,0 +1,3 @@
1
+ export declare const GeneratedBoundWitnessFields: readonly ["addresses", "payload_hashes", "payload_schemas", "previous_hashes"];
2
+ export type GeneratedBoundWitnessFields = typeof GeneratedBoundWitnessFields[number];
3
+ //# sourceMappingURL=GeneratedBoundWitnessFields.d.ts.map
@@ -0,0 +1,9 @@
1
+ import type { QueryBoundWitness } from '../../../boundwitness-model/neutral/index.ts';
2
+ import type { Query, WithoutMeta } from '../../../payload-model/neutral/index.ts';
3
+ import { BoundWitnessBuilder } from '../BoundWitnessBuilder.ts';
4
+ export declare class QueryBoundWitnessBuilder<TBoundWitness extends QueryBoundWitness = QueryBoundWitness, TQuery extends Query = Query> extends BoundWitnessBuilder<TBoundWitness> {
5
+ private _query;
6
+ dataHashableFields(): Promise<WithoutMeta<TBoundWitness>>;
7
+ query<T extends TQuery>(query: T): this;
8
+ }
9
+ //# sourceMappingURL=QueryBoundWitnessBuilder.d.ts.map
@@ -0,0 +1,2 @@
1
+ export * from './QueryBoundWitnessBuilder.ts';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1,10 @@
1
+ import type { BoundWitness } from '../../boundwitness-model/neutral/index.ts';
2
+ import type { Payload } from '../../payload-model/neutral/index.ts';
3
+ /**
4
+ * Returns tuples of bound witnesses and their payloads from the supplied payloads. Omits
5
+ * bound witnesses where the payloads were not included in the supplied payloads.
6
+ * @param payloads An array of bound witnesses and payloads
7
+ * @returns An array of tuples of bound witnesses and their payloads
8
+ */
9
+ export declare const combinationsByBoundwitness: (payloads: Payload[]) => Promise<[BoundWitness, ...Payload[]][]>;
10
+ //# sourceMappingURL=combinationsByBoundwitness.d.ts.map
@@ -0,0 +1,5 @@
1
+ export * from './BoundWitnessBuilder.ts';
2
+ export * from './combinationsByBoundwitness.ts';
3
+ export * from './intraBoundwitnessSchemaCombinations.ts';
4
+ export * from './Query/index.ts';
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1,311 @@
1
+ // src/BoundWitnessBuilder.ts
2
+ import {
3
+ asHash,
4
+ assertEx,
5
+ hexFromArrayBuffer,
6
+ toArrayBuffer
7
+ } from "@xylabs/sdk";
8
+ import { BoundWitnessSchema } from "../../boundwitness-model/neutral/index.mjs";
9
+ import {
10
+ ObjectHasher,
11
+ removeEmptyFields,
12
+ sortFields
13
+ } from "../../hash/neutral/index-browser.mjs";
14
+ import { omitSchema, PayloadBuilder } from "../../payload-builder/neutral/index.mjs";
15
+ import { Mutex } from "async-mutex";
16
+
17
+ // src/GeneratedBoundWitnessFields.ts
18
+ var GeneratedBoundWitnessFields = ["addresses", "payload_hashes", "payload_schemas", "previous_hashes"];
19
+
20
+ // src/uniqueAddresses.ts
21
+ var uniqueAddresses = (addresses, throwOnFalse = false) => {
22
+ const addressesSet = /* @__PURE__ */ new Set();
23
+ for (const address of addresses) {
24
+ if (addressesSet.has(address)) {
25
+ if (throwOnFalse) {
26
+ throw new Error("Duplicate address");
27
+ }
28
+ return false;
29
+ }
30
+ addressesSet.add(address);
31
+ }
32
+ return true;
33
+ };
34
+
35
+ // src/uniqueAccounts.ts
36
+ var uniqueAccounts = (accounts, throwOnFalse = false) => {
37
+ return uniqueAddresses(accounts.map((account) => account.address), throwOnFalse);
38
+ };
39
+
40
+ // src/BoundWitnessBuilder.ts
41
+ function missingSchemaMessage(payload) {
42
+ return `Builder: Missing Schema
43
+ ${JSON.stringify(payload, null, 2)}`;
44
+ }
45
+ var BoundWitnessBuilder = class _BoundWitnessBuilder extends PayloadBuilder {
46
+ static _buildMutex = new Mutex();
47
+ _accounts = [];
48
+ _errorHashes;
49
+ _errors = [];
50
+ _payloadHashes;
51
+ _payloadSchemas;
52
+ _payloads = [];
53
+ constructor(options) {
54
+ super({ ...options, schema: BoundWitnessSchema });
55
+ }
56
+ static validateGeneratedFields(fields) {
57
+ assertEx(fields.payload_hashes?.length === fields.payload_schemas?.length, () => "Payload hash/schema mismatch");
58
+ assertEx(!fields.payload_hashes.includes(null), () => "nulls found in hashes");
59
+ assertEx(!fields.payload_schemas.includes(null), () => "nulls found in schemas");
60
+ }
61
+ static async linkingFields(accounts, payloads) {
62
+ const addresses = accounts.map((account) => account.address.toLowerCase());
63
+ const previous_hashes = accounts.map((account) => account.previousHash ?? null);
64
+ const payload_hashes = payloads ? await this.hashes(payloads) : [];
65
+ const payload_schemas = payloads?.map(({ schema }) => schema) ?? [];
66
+ return {
67
+ addresses,
68
+ payload_hashes,
69
+ payload_schemas,
70
+ previous_hashes
71
+ };
72
+ }
73
+ static signature(payload, address) {
74
+ return payload.$signatures[this.addressIndex(payload, address)];
75
+ }
76
+ static async signatures(accounts, dataHash) {
77
+ const hashBytes = toArrayBuffer(dataHash);
78
+ const previousHashesBytes = accounts?.map((account) => account.previousHashBytes);
79
+ return await Promise.all(accounts.map(async (account, index) => {
80
+ const signature = await account.sign(hashBytes, previousHashesBytes[index]);
81
+ return hexFromArrayBuffer(signature[0]);
82
+ }));
83
+ }
84
+ static addressIndex(payload, address) {
85
+ const index = payload.addresses.indexOf(address);
86
+ if (index === -1) {
87
+ throw new Error("Invalid address");
88
+ }
89
+ return index;
90
+ }
91
+ static previousHash(boundWitness, address) {
92
+ return asHash(boundWitness.previous_hashes[this.addressIndex(boundWitness, address)])?.toLowerCase();
93
+ }
94
+ get addresses() {
95
+ uniqueAccounts(this._accounts, true);
96
+ return this._accounts.map((account) => account.address.toLowerCase());
97
+ }
98
+ get payloadSchemas() {
99
+ return this._payloadSchemas ?? this._payloads.map((payload) => {
100
+ return assertEx(payload.schema, () => missingSchemaMessage(payload));
101
+ });
102
+ }
103
+ get previousHashBytes() {
104
+ return this._accounts.map((account) => account.previousHashBytes ?? null);
105
+ }
106
+ get previousHashes() {
107
+ return this._accounts.map((account) => account.previousHash ?? null);
108
+ }
109
+ async sign() {
110
+ uniqueAccounts(this._accounts, true);
111
+ const hashBytes = toArrayBuffer(await this.dataHash());
112
+ return await Promise.all(this._accounts.map(async (account) => {
113
+ const signature = await account.sign(hashBytes);
114
+ return hexFromArrayBuffer(signature[0]);
115
+ }));
116
+ }
117
+ async build(sign = true) {
118
+ return await _BoundWitnessBuilder._buildMutex.runExclusive(async () => {
119
+ const dataHashableFields = await this.dataHashableFields();
120
+ const $signatures = sign ? await this.sign() : this.addresses.map(() => null);
121
+ const ret = {
122
+ ...this._meta,
123
+ ...dataHashableFields,
124
+ ...this._fields,
125
+ $signatures
126
+ };
127
+ return [
128
+ ret,
129
+ this._payloads,
130
+ this._errors
131
+ ];
132
+ });
133
+ }
134
+ async dataHash() {
135
+ const dataHashableFields = await this.dataHashableFields();
136
+ const hash = await ObjectHasher.hash(dataHashableFields);
137
+ return hash;
138
+ }
139
+ async dataHashableFields() {
140
+ const generatedFields = await _BoundWitnessBuilder.linkingFields(this._accounts, this._payloads);
141
+ _BoundWitnessBuilder.validateGeneratedFields(generatedFields);
142
+ const fields = {
143
+ ...PayloadBuilder.omitMeta(this._fields ?? {}),
144
+ ...generatedFields
145
+ };
146
+ return await _BoundWitnessBuilder.dataHashableFields(this._schema, fields);
147
+ }
148
+ error(payload) {
149
+ assertEx(this._errorHashes === void 0, () => "Can not set errors when hashes already set");
150
+ if (payload) {
151
+ this._errors.push(assertEx(sortFields(payload)));
152
+ }
153
+ return this;
154
+ }
155
+ errors(errors) {
156
+ if (errors) {
157
+ for (const error of errors) {
158
+ if (error !== null) {
159
+ this.error(error);
160
+ }
161
+ }
162
+ }
163
+ return this;
164
+ }
165
+ fields(fields) {
166
+ const clone = structuredClone(fields);
167
+ for (const field of GeneratedBoundWitnessFields) {
168
+ delete clone[field];
169
+ }
170
+ const withoutEmptyFields = removeEmptyFields(clone);
171
+ const withoutSchema = omitSchema(withoutEmptyFields);
172
+ const withoutClientMeta = _BoundWitnessBuilder.omitClientMeta(withoutSchema);
173
+ this._fields = _BoundWitnessBuilder.omitStorageMeta(withoutClientMeta);
174
+ return this;
175
+ }
176
+ hashes(hashes, schema) {
177
+ assertEx(this.payloads.length === 0, () => "Can not set hashes when payloads already set");
178
+ this._payloadHashes = hashes;
179
+ this._payloadSchemas = schema;
180
+ return this;
181
+ }
182
+ payload(payload) {
183
+ assertEx(this._payloadHashes === void 0, () => "Can not set payloads when hashes already set");
184
+ if (payload) {
185
+ this._payloads.push(assertEx(sortFields(payload)));
186
+ }
187
+ return this;
188
+ }
189
+ payloads(payloads) {
190
+ if (payloads)
191
+ for (const payload of payloads) {
192
+ if (payload !== null) {
193
+ this.payload(payload);
194
+ }
195
+ }
196
+ return this;
197
+ }
198
+ signer(account) {
199
+ uniqueAccounts([...this._accounts, account], true);
200
+ this._accounts?.push(account);
201
+ return this;
202
+ }
203
+ signers(accounts) {
204
+ uniqueAccounts([...this._accounts, ...accounts], true);
205
+ this._accounts?.push(...accounts);
206
+ return this;
207
+ }
208
+ sourceQuery(sourceQuery) {
209
+ this._meta = {
210
+ ...this._meta,
211
+ $sourceQuery: sourceQuery
212
+ };
213
+ return this;
214
+ }
215
+ /** @deprecated use signer instead */
216
+ witness(account) {
217
+ this._accounts?.push(account);
218
+ return this;
219
+ }
220
+ /** @deprecated use signers instead */
221
+ witnesses(accounts) {
222
+ this._accounts?.push(...accounts);
223
+ return this;
224
+ }
225
+ };
226
+
227
+ // src/combinationsByBoundwitness.ts
228
+ import {
229
+ asHash as asHash2,
230
+ difference,
231
+ exists
232
+ } from "@xylabs/sdk";
233
+ import { isBoundWitness } from "../../boundwitness-model/neutral/index.mjs";
234
+ import { PayloadBuilder as PayloadBuilder2 } from "../../payload-builder/neutral/index.mjs";
235
+ var combinationsByBoundwitness = async (payloads) => {
236
+ const bws = new Set(payloads.filter((x) => isBoundWitness(x)));
237
+ const remaining = difference(new Set(payloads), bws);
238
+ const payloadDictionary = await PayloadBuilder2.toHashMap([...remaining]);
239
+ const results = [];
240
+ for (const bw of bws) {
241
+ const { payload_hashes } = bw;
242
+ const p = payload_hashes.map((h) => {
243
+ const hashKey = String(asHash2(h, true));
244
+ return payloadDictionary[hashKey];
245
+ }).filter(exists);
246
+ if (p.length === payload_hashes.length) {
247
+ const complete = [bw, ...p];
248
+ results.push(complete);
249
+ }
250
+ }
251
+ return results;
252
+ };
253
+
254
+ // src/intraBoundwitnessSchemaCombinations.ts
255
+ import { asHash as asHash3 } from "@xylabs/sdk";
256
+ var intraBoundwitnessSchemaCombinations = (boundwitness, schemas) => {
257
+ const indexMap = {};
258
+ for (const [index, element] of boundwitness.payload_schemas.entries()) {
259
+ if (!Object.hasOwn(indexMap, element)) {
260
+ indexMap[element] = [];
261
+ }
262
+ indexMap[element].push(index);
263
+ }
264
+ let uniqueCombinations = [[]];
265
+ for (const element of schemas) {
266
+ const newCombinations = [];
267
+ const indices = indexMap[element] ?? [];
268
+ for (const combination of uniqueCombinations) {
269
+ for (const index of indices) {
270
+ if (!combination.includes(index)) {
271
+ const newCombination = [...combination, index];
272
+ if (newCombination.length === schemas.indexOf(element) + 1) {
273
+ newCombinations.push(newCombination);
274
+ }
275
+ }
276
+ }
277
+ }
278
+ uniqueCombinations = newCombinations;
279
+ }
280
+ return uniqueCombinations.map((indexes) => {
281
+ return indexes.map((index) => {
282
+ return asHash3(boundwitness.payload_hashes[index], true);
283
+ });
284
+ });
285
+ };
286
+
287
+ // src/Query/QueryBoundWitnessBuilder.ts
288
+ import { assertEx as assertEx2 } from "@xylabs/sdk";
289
+ import { PayloadBuilder as PayloadBuilder3 } from "../../payload/neutral/index.mjs";
290
+ var QueryBoundWitnessBuilder = class extends BoundWitnessBuilder {
291
+ _query;
292
+ async dataHashableFields() {
293
+ const fields = {
294
+ ...await super.dataHashableFields(),
295
+ query: await PayloadBuilder3.dataHash(assertEx2(this._query, () => "No Query Specified"))
296
+ };
297
+ return { ...fields };
298
+ }
299
+ query(query) {
300
+ this.payload(query);
301
+ this._query = query;
302
+ return this;
303
+ }
304
+ };
305
+ export {
306
+ BoundWitnessBuilder,
307
+ QueryBoundWitnessBuilder,
308
+ combinationsByBoundwitness,
309
+ intraBoundwitnessSchemaCombinations
310
+ };
311
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1,11 @@
1
+ import { type Hash } from '@xylabs/sdk';
2
+ import type { BoundWitness } from '../../boundwitness-model/neutral/index.ts';
3
+ import type { Schema } from '../../payload-model/neutral/index.ts';
4
+ /**
5
+ * Returns all the possible combinations of payloads for the supplied schemas within the bound witness
6
+ * @param boundwitness The bound witness to search
7
+ * @param schemas The schemas to search for unique combinations of
8
+ * @returns The payload hashes corresponding to the unique combinations of the supplied schemas
9
+ */
10
+ export declare const intraBoundwitnessSchemaCombinations: (boundwitness: BoundWitness, schemas: Schema[]) => Hash[][];
11
+ //# sourceMappingURL=intraBoundwitnessSchemaCombinations.d.ts.map
@@ -0,0 +1,3 @@
1
+ import type { AccountInstance } from '../../account-model/neutral/index.ts';
2
+ export declare const uniqueAccounts: (accounts: AccountInstance[], throwOnFalse?: boolean) => boolean;
3
+ //# sourceMappingURL=uniqueAccounts.d.ts.map
@@ -0,0 +1,3 @@
1
+ import type { XyoAddress } from '../../address/neutral/index.ts';
2
+ export declare const uniqueAddresses: (addresses: XyoAddress[], throwOnFalse?: boolean) => boolean;
3
+ //# sourceMappingURL=uniqueAddresses.d.ts.map