@mocanetwork/privado-js-sdk 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (517) hide show
  1. package/README.md +75 -0
  2. package/dist/browser/esm/index.js +14901 -0
  3. package/dist/browser/esm/index.js.map +1 -0
  4. package/dist/browser/umd/index.global.js +678 -0
  5. package/dist/browser/umd/index.global.js.map +1 -0
  6. package/dist/node/cjs/index.cjs +15418 -0
  7. package/dist/node/cjs/index.cjs.map +1 -0
  8. package/dist/node/esm/index.js +14901 -0
  9. package/dist/node/esm/index.js.map +1 -0
  10. package/dist/types/blockchain/index.d.ts +2 -0
  11. package/dist/types/blockchain/index.d.ts.map +1 -0
  12. package/dist/types/blockchain/transaction-service.d.ts +81 -0
  13. package/dist/types/blockchain/transaction-service.d.ts.map +1 -0
  14. package/dist/types/circuits/atomic-query-mtp-v2-on-chain.d.ts +70 -0
  15. package/dist/types/circuits/atomic-query-mtp-v2-on-chain.d.ts.map +1 -0
  16. package/dist/types/circuits/atomic-query-mtp-v2.d.ts +63 -0
  17. package/dist/types/circuits/atomic-query-mtp-v2.d.ts.map +1 -0
  18. package/dist/types/circuits/atomic-query-sig-v2-on-chain.d.ts +137 -0
  19. package/dist/types/circuits/atomic-query-sig-v2-on-chain.d.ts.map +1 -0
  20. package/dist/types/circuits/atomic-query-sig-v2.d.ts +64 -0
  21. package/dist/types/circuits/atomic-query-sig-v2.d.ts.map +1 -0
  22. package/dist/types/circuits/atomic-query-v3-on-chain.d.ts +141 -0
  23. package/dist/types/circuits/atomic-query-v3-on-chain.d.ts.map +1 -0
  24. package/dist/types/circuits/atomic-query-v3.d.ts +121 -0
  25. package/dist/types/circuits/atomic-query-v3.d.ts.map +1 -0
  26. package/dist/types/circuits/auth-v2.d.ts +46 -0
  27. package/dist/types/circuits/auth-v2.d.ts.map +1 -0
  28. package/dist/types/circuits/common.d.ts +153 -0
  29. package/dist/types/circuits/common.d.ts.map +1 -0
  30. package/dist/types/circuits/comparer.d.ts +122 -0
  31. package/dist/types/circuits/comparer.d.ts.map +1 -0
  32. package/dist/types/circuits/index.d.ts +13 -0
  33. package/dist/types/circuits/index.d.ts.map +1 -0
  34. package/dist/types/circuits/linked-multi-query.d.ts +38 -0
  35. package/dist/types/circuits/linked-multi-query.d.ts.map +1 -0
  36. package/dist/types/circuits/models.d.ts +189 -0
  37. package/dist/types/circuits/models.d.ts.map +1 -0
  38. package/dist/types/circuits/state-transition.d.ts +49 -0
  39. package/dist/types/circuits/state-transition.d.ts.map +1 -0
  40. package/dist/types/credentials/credential-wallet.d.ts +200 -0
  41. package/dist/types/credentials/credential-wallet.d.ts.map +1 -0
  42. package/dist/types/credentials/index.d.ts +12 -0
  43. package/dist/types/credentials/index.d.ts.map +1 -0
  44. package/dist/types/credentials/models.d.ts +84 -0
  45. package/dist/types/credentials/models.d.ts.map +1 -0
  46. package/dist/types/credentials/rhs.d.ts +38 -0
  47. package/dist/types/credentials/rhs.d.ts.map +1 -0
  48. package/dist/types/credentials/status/agent-revocation.d.ts +20 -0
  49. package/dist/types/credentials/status/agent-revocation.d.ts.map +1 -0
  50. package/dist/types/credentials/status/credential-status-publisher.d.ts +73 -0
  51. package/dist/types/credentials/status/credential-status-publisher.d.ts.map +1 -0
  52. package/dist/types/credentials/status/did-resolver-revocation.d.ts +8 -0
  53. package/dist/types/credentials/status/did-resolver-revocation.d.ts.map +1 -0
  54. package/dist/types/credentials/status/on-chain-revocation.d.ts +58 -0
  55. package/dist/types/credentials/status/on-chain-revocation.d.ts.map +1 -0
  56. package/dist/types/credentials/status/resolver.d.ts +69 -0
  57. package/dist/types/credentials/status/resolver.d.ts.map +1 -0
  58. package/dist/types/credentials/status/reverse-sparse-merkle-tree.d.ts +126 -0
  59. package/dist/types/credentials/status/reverse-sparse-merkle-tree.d.ts.map +1 -0
  60. package/dist/types/credentials/status/sparse-merkle-tree.d.ts +38 -0
  61. package/dist/types/credentials/status/sparse-merkle-tree.d.ts.map +1 -0
  62. package/dist/types/credentials/utils.d.ts +15 -0
  63. package/dist/types/credentials/utils.d.ts.map +1 -0
  64. package/dist/types/iden3comm/constants.d.ts +61 -0
  65. package/dist/types/iden3comm/constants.d.ts.map +1 -0
  66. package/dist/types/iden3comm/errors.d.ts +10 -0
  67. package/dist/types/iden3comm/errors.d.ts.map +1 -0
  68. package/dist/types/iden3comm/handlers/auth.d.ts +157 -0
  69. package/dist/types/iden3comm/handlers/auth.d.ts.map +1 -0
  70. package/dist/types/iden3comm/handlers/common.d.ts +72 -0
  71. package/dist/types/iden3comm/handlers/common.d.ts.map +1 -0
  72. package/dist/types/iden3comm/handlers/contract-request.d.ts +96 -0
  73. package/dist/types/iden3comm/handlers/contract-request.d.ts.map +1 -0
  74. package/dist/types/iden3comm/handlers/credential-proposal.d.ts +120 -0
  75. package/dist/types/iden3comm/handlers/credential-proposal.d.ts.map +1 -0
  76. package/dist/types/iden3comm/handlers/discovery-protocol.d.ts +101 -0
  77. package/dist/types/iden3comm/handlers/discovery-protocol.d.ts.map +1 -0
  78. package/dist/types/iden3comm/handlers/fetch.d.ts +130 -0
  79. package/dist/types/iden3comm/handlers/fetch.d.ts.map +1 -0
  80. package/dist/types/iden3comm/handlers/index.d.ts +12 -0
  81. package/dist/types/iden3comm/handlers/index.d.ts.map +1 -0
  82. package/dist/types/iden3comm/handlers/message-handler.d.ts +93 -0
  83. package/dist/types/iden3comm/handlers/message-handler.d.ts.map +1 -0
  84. package/dist/types/iden3comm/handlers/payment.d.ts +167 -0
  85. package/dist/types/iden3comm/handlers/payment.d.ts.map +1 -0
  86. package/dist/types/iden3comm/handlers/problem-report.d.ts +18 -0
  87. package/dist/types/iden3comm/handlers/problem-report.d.ts.map +1 -0
  88. package/dist/types/iden3comm/handlers/refresh.d.ts +57 -0
  89. package/dist/types/iden3comm/handlers/refresh.d.ts.map +1 -0
  90. package/dist/types/iden3comm/handlers/revocation-status.d.ts +76 -0
  91. package/dist/types/iden3comm/handlers/revocation-status.d.ts.map +1 -0
  92. package/dist/types/iden3comm/index.d.ts +9 -0
  93. package/dist/types/iden3comm/index.d.ts.map +1 -0
  94. package/dist/types/iden3comm/packageManager.d.ts +47 -0
  95. package/dist/types/iden3comm/packageManager.d.ts.map +1 -0
  96. package/dist/types/iden3comm/packers/index.d.ts +4 -0
  97. package/dist/types/iden3comm/packers/index.d.ts.map +1 -0
  98. package/dist/types/iden3comm/packers/jws.d.ts +56 -0
  99. package/dist/types/iden3comm/packers/jws.d.ts.map +1 -0
  100. package/dist/types/iden3comm/packers/plain.d.ts +47 -0
  101. package/dist/types/iden3comm/packers/plain.d.ts.map +1 -0
  102. package/dist/types/iden3comm/packers/zkp.d.ts +98 -0
  103. package/dist/types/iden3comm/packers/zkp.d.ts.map +1 -0
  104. package/dist/types/iden3comm/types/index.d.ts +17 -0
  105. package/dist/types/iden3comm/types/index.d.ts.map +1 -0
  106. package/dist/types/iden3comm/types/models.d.ts +7 -0
  107. package/dist/types/iden3comm/types/models.d.ts.map +1 -0
  108. package/dist/types/iden3comm/types/packageManager.d.ts +100 -0
  109. package/dist/types/iden3comm/types/packageManager.d.ts.map +1 -0
  110. package/dist/types/iden3comm/types/packer.d.ts +158 -0
  111. package/dist/types/iden3comm/types/packer.d.ts.map +1 -0
  112. package/dist/types/iden3comm/types/protocol/accept-profile.d.ts +8 -0
  113. package/dist/types/iden3comm/types/protocol/accept-profile.d.ts.map +1 -0
  114. package/dist/types/iden3comm/types/protocol/attachment.d.ts +11 -0
  115. package/dist/types/iden3comm/types/protocol/attachment.d.ts.map +1 -0
  116. package/dist/types/iden3comm/types/protocol/auth.d.ts +90 -0
  117. package/dist/types/iden3comm/types/protocol/auth.d.ts.map +1 -0
  118. package/dist/types/iden3comm/types/protocol/common.d.ts +11 -0
  119. package/dist/types/iden3comm/types/protocol/common.d.ts.map +1 -0
  120. package/dist/types/iden3comm/types/protocol/contract-request.d.ts +62 -0
  121. package/dist/types/iden3comm/types/protocol/contract-request.d.ts.map +1 -0
  122. package/dist/types/iden3comm/types/protocol/credentials.d.ts +82 -0
  123. package/dist/types/iden3comm/types/protocol/credentials.d.ts.map +1 -0
  124. package/dist/types/iden3comm/types/protocol/discovery-protocol.d.ts +42 -0
  125. package/dist/types/iden3comm/types/protocol/discovery-protocol.d.ts.map +1 -0
  126. package/dist/types/iden3comm/types/protocol/messages.d.ts +12 -0
  127. package/dist/types/iden3comm/types/protocol/messages.d.ts.map +1 -0
  128. package/dist/types/iden3comm/types/protocol/payment.d.ts +178 -0
  129. package/dist/types/iden3comm/types/protocol/payment.d.ts.map +1 -0
  130. package/dist/types/iden3comm/types/protocol/problem-report.d.ts +17 -0
  131. package/dist/types/iden3comm/types/protocol/problem-report.d.ts.map +1 -0
  132. package/dist/types/iden3comm/types/protocol/proof.d.ts +22 -0
  133. package/dist/types/iden3comm/types/protocol/proof.d.ts.map +1 -0
  134. package/dist/types/iden3comm/types/protocol/proposal-request.d.ts +33 -0
  135. package/dist/types/iden3comm/types/protocol/proposal-request.d.ts.map +1 -0
  136. package/dist/types/iden3comm/types/protocol/revocation.d.ts +20 -0
  137. package/dist/types/iden3comm/types/protocol/revocation.d.ts.map +1 -0
  138. package/dist/types/iden3comm/utils/accept-profile.d.ts +4 -0
  139. package/dist/types/iden3comm/utils/accept-profile.d.ts.map +1 -0
  140. package/dist/types/iden3comm/utils/did.d.ts +8 -0
  141. package/dist/types/iden3comm/utils/did.d.ts.map +1 -0
  142. package/dist/types/iden3comm/utils/envelope.d.ts +32 -0
  143. package/dist/types/iden3comm/utils/envelope.d.ts.map +1 -0
  144. package/dist/types/iden3comm/utils/index.d.ts +5 -0
  145. package/dist/types/iden3comm/utils/index.d.ts.map +1 -0
  146. package/dist/types/iden3comm/utils/message.d.ts +20 -0
  147. package/dist/types/iden3comm/utils/message.d.ts.map +1 -0
  148. package/dist/types/identity/common.d.ts +27 -0
  149. package/dist/types/identity/common.d.ts.map +1 -0
  150. package/dist/types/identity/identity-wallet.d.ts +472 -0
  151. package/dist/types/identity/identity-wallet.d.ts.map +1 -0
  152. package/dist/types/identity/index.d.ts +3 -0
  153. package/dist/types/identity/index.d.ts.map +1 -0
  154. package/dist/types/index.d.ts +17 -0
  155. package/dist/types/index.d.ts.map +1 -0
  156. package/dist/types/kms/index.d.ts +5 -0
  157. package/dist/types/kms/index.d.ts.map +1 -0
  158. package/dist/types/kms/key-providers/bjj-provider.d.ts +54 -0
  159. package/dist/types/kms/key-providers/bjj-provider.d.ts.map +1 -0
  160. package/dist/types/kms/key-providers/ed25519-provider.d.ts +61 -0
  161. package/dist/types/kms/key-providers/ed25519-provider.d.ts.map +1 -0
  162. package/dist/types/kms/key-providers/index.d.ts +4 -0
  163. package/dist/types/kms/key-providers/index.d.ts.map +1 -0
  164. package/dist/types/kms/key-providers/secp256k1-provider.d.ts +62 -0
  165. package/dist/types/kms/key-providers/secp256k1-provider.d.ts.map +1 -0
  166. package/dist/types/kms/kms.d.ts +120 -0
  167. package/dist/types/kms/kms.d.ts.map +1 -0
  168. package/dist/types/kms/provider-helpers.d.ts +10 -0
  169. package/dist/types/kms/provider-helpers.d.ts.map +1 -0
  170. package/dist/types/kms/store/abstract-key-store.d.ts +41 -0
  171. package/dist/types/kms/store/abstract-key-store.d.ts.map +1 -0
  172. package/dist/types/kms/store/index.d.ts +6 -0
  173. package/dist/types/kms/store/index.d.ts.map +1 -0
  174. package/dist/types/kms/store/indexed-db-key-store.d.ts +44 -0
  175. package/dist/types/kms/store/indexed-db-key-store.d.ts.map +1 -0
  176. package/dist/types/kms/store/local-storage-key-store.d.ts +42 -0
  177. package/dist/types/kms/store/local-storage-key-store.d.ts.map +1 -0
  178. package/dist/types/kms/store/memory-key-store.d.ts +24 -0
  179. package/dist/types/kms/store/memory-key-store.d.ts.map +1 -0
  180. package/dist/types/kms/store/types.d.ts +21 -0
  181. package/dist/types/kms/store/types.d.ts.map +1 -0
  182. package/dist/types/proof/common.d.ts +49 -0
  183. package/dist/types/proof/common.d.ts.map +1 -0
  184. package/dist/types/proof/index.d.ts +5 -0
  185. package/dist/types/proof/index.d.ts.map +1 -0
  186. package/dist/types/proof/proof-service.d.ts +169 -0
  187. package/dist/types/proof/proof-service.d.ts.map +1 -0
  188. package/dist/types/proof/provers/index.d.ts +4 -0
  189. package/dist/types/proof/provers/index.d.ts.map +1 -0
  190. package/dist/types/proof/provers/inputs-generator.d.ts +57 -0
  191. package/dist/types/proof/provers/inputs-generator.d.ts.map +1 -0
  192. package/dist/types/proof/provers/prover.d.ts +56 -0
  193. package/dist/types/proof/provers/prover.d.ts.map +1 -0
  194. package/dist/types/proof/provers/witness_calculator.d.ts +17 -0
  195. package/dist/types/proof/provers/witness_calculator.d.ts.map +1 -0
  196. package/dist/types/proof/verifiers/index.d.ts +4 -0
  197. package/dist/types/proof/verifiers/index.d.ts.map +1 -0
  198. package/dist/types/proof/verifiers/pub-signals-verifier.d.ts +60 -0
  199. package/dist/types/proof/verifiers/pub-signals-verifier.d.ts.map +1 -0
  200. package/dist/types/proof/verifiers/query-hash.d.ts +4 -0
  201. package/dist/types/proof/verifiers/query-hash.d.ts.map +1 -0
  202. package/dist/types/proof/verifiers/query.d.ts +43 -0
  203. package/dist/types/proof/verifiers/query.d.ts.map +1 -0
  204. package/dist/types/schema-processor/index.d.ts +4 -0
  205. package/dist/types/schema-processor/index.d.ts.map +1 -0
  206. package/dist/types/schema-processor/json/index.d.ts +3 -0
  207. package/dist/types/schema-processor/json/index.d.ts.map +1 -0
  208. package/dist/types/schema-processor/json/parser.d.ts +141 -0
  209. package/dist/types/schema-processor/json/parser.d.ts.map +1 -0
  210. package/dist/types/schema-processor/json/validator.d.ts +26 -0
  211. package/dist/types/schema-processor/json/validator.d.ts.map +1 -0
  212. package/dist/types/schema-processor/jsonld/cache.d.ts +3 -0
  213. package/dist/types/schema-processor/jsonld/cache.d.ts.map +1 -0
  214. package/dist/types/schema-processor/jsonld/index.d.ts +3 -0
  215. package/dist/types/schema-processor/jsonld/index.d.ts.map +1 -0
  216. package/dist/types/schema-processor/jsonld/parser.d.ts +30 -0
  217. package/dist/types/schema-processor/jsonld/parser.d.ts.map +1 -0
  218. package/dist/types/schema-processor/utils.d.ts +54 -0
  219. package/dist/types/schema-processor/utils.d.ts.map +1 -0
  220. package/dist/types/storage/blockchain/common.d.ts +8 -0
  221. package/dist/types/storage/blockchain/common.d.ts.map +1 -0
  222. package/dist/types/storage/blockchain/did-resolver-readonly-storage.d.ts +17 -0
  223. package/dist/types/storage/blockchain/did-resolver-readonly-storage.d.ts.map +1 -0
  224. package/dist/types/storage/blockchain/erc20-helper.d.ts +20 -0
  225. package/dist/types/storage/blockchain/erc20-helper.d.ts.map +1 -0
  226. package/dist/types/storage/blockchain/errors.d.ts +4 -0
  227. package/dist/types/storage/blockchain/errors.d.ts.map +1 -0
  228. package/dist/types/storage/blockchain/index.d.ts +8 -0
  229. package/dist/types/storage/blockchain/index.d.ts.map +1 -0
  230. package/dist/types/storage/blockchain/onchain-issuer-adapter/non-merklized/version/v0.0.1/onchain-non-merklized-issuer-adapter.d.ts +67 -0
  231. package/dist/types/storage/blockchain/onchain-issuer-adapter/non-merklized/version/v0.0.1/onchain-non-merklized-issuer-adapter.d.ts.map +1 -0
  232. package/dist/types/storage/blockchain/onchain-issuer.d.ts +41 -0
  233. package/dist/types/storage/blockchain/onchain-issuer.d.ts.map +1 -0
  234. package/dist/types/storage/blockchain/onchain-revocation.d.ts +41 -0
  235. package/dist/types/storage/blockchain/onchain-revocation.d.ts.map +1 -0
  236. package/dist/types/storage/blockchain/onchain-zkp-verifier.d.ts +116 -0
  237. package/dist/types/storage/blockchain/onchain-zkp-verifier.d.ts.map +1 -0
  238. package/dist/types/storage/blockchain/state.d.ts +127 -0
  239. package/dist/types/storage/blockchain/state.d.ts.map +1 -0
  240. package/dist/types/storage/entities/circuitData.d.ts +8 -0
  241. package/dist/types/storage/entities/circuitData.d.ts.map +1 -0
  242. package/dist/types/storage/entities/identity.d.ts +17 -0
  243. package/dist/types/storage/entities/identity.d.ts.map +1 -0
  244. package/dist/types/storage/entities/index.d.ts +5 -0
  245. package/dist/types/storage/entities/index.d.ts.map +1 -0
  246. package/dist/types/storage/entities/mt.d.ts +22 -0
  247. package/dist/types/storage/entities/mt.d.ts.map +1 -0
  248. package/dist/types/storage/entities/state.d.ts +92 -0
  249. package/dist/types/storage/entities/state.d.ts.map +1 -0
  250. package/dist/types/storage/errors.d.ts +9 -0
  251. package/dist/types/storage/errors.d.ts.map +1 -0
  252. package/dist/types/storage/filters/index.d.ts +2 -0
  253. package/dist/types/storage/filters/index.d.ts.map +1 -0
  254. package/dist/types/storage/filters/jsonQuery.d.ts +83 -0
  255. package/dist/types/storage/filters/jsonQuery.d.ts.map +1 -0
  256. package/dist/types/storage/fs/circuits-storage.d.ts +64 -0
  257. package/dist/types/storage/fs/circuits-storage.d.ts.map +1 -0
  258. package/dist/types/storage/fs/index.d.ts +2 -0
  259. package/dist/types/storage/fs/index.d.ts.map +1 -0
  260. package/dist/types/storage/index.d.ts +10 -0
  261. package/dist/types/storage/index.d.ts.map +1 -0
  262. package/dist/types/storage/indexed-db/data-source.d.ts +44 -0
  263. package/dist/types/storage/indexed-db/data-source.d.ts.map +1 -0
  264. package/dist/types/storage/indexed-db/index.d.ts +3 -0
  265. package/dist/types/storage/indexed-db/index.d.ts.map +1 -0
  266. package/dist/types/storage/indexed-db/merkletree.d.ts +43 -0
  267. package/dist/types/storage/indexed-db/merkletree.d.ts.map +1 -0
  268. package/dist/types/storage/interfaces/circuits.d.ts +26 -0
  269. package/dist/types/storage/interfaces/circuits.d.ts.map +1 -0
  270. package/dist/types/storage/interfaces/credentials.d.ts +53 -0
  271. package/dist/types/storage/interfaces/credentials.d.ts.map +1 -0
  272. package/dist/types/storage/interfaces/data-source.d.ts +39 -0
  273. package/dist/types/storage/interfaces/data-source.d.ts.map +1 -0
  274. package/dist/types/storage/interfaces/data-storage.d.ts +17 -0
  275. package/dist/types/storage/interfaces/data-storage.d.ts.map +1 -0
  276. package/dist/types/storage/interfaces/identity.d.ts +70 -0
  277. package/dist/types/storage/interfaces/identity.d.ts.map +1 -0
  278. package/dist/types/storage/interfaces/index.d.ts +11 -0
  279. package/dist/types/storage/interfaces/index.d.ts.map +1 -0
  280. package/dist/types/storage/interfaces/merkletree.d.ts +44 -0
  281. package/dist/types/storage/interfaces/merkletree.d.ts.map +1 -0
  282. package/dist/types/storage/interfaces/onchain-issuer.d.ts +13 -0
  283. package/dist/types/storage/interfaces/onchain-issuer.d.ts.map +1 -0
  284. package/dist/types/storage/interfaces/onchain-revocation.d.ts +19 -0
  285. package/dist/types/storage/interfaces/onchain-revocation.d.ts.map +1 -0
  286. package/dist/types/storage/interfaces/onchain-zkp-verifier.d.ts +63 -0
  287. package/dist/types/storage/interfaces/onchain-zkp-verifier.d.ts.map +1 -0
  288. package/dist/types/storage/interfaces/state.d.ts +74 -0
  289. package/dist/types/storage/interfaces/state.d.ts.map +1 -0
  290. package/dist/types/storage/local-storage/data-source.d.ts +41 -0
  291. package/dist/types/storage/local-storage/data-source.d.ts.map +1 -0
  292. package/dist/types/storage/local-storage/index.d.ts +3 -0
  293. package/dist/types/storage/local-storage/index.d.ts.map +1 -0
  294. package/dist/types/storage/local-storage/merkletree.d.ts +41 -0
  295. package/dist/types/storage/local-storage/merkletree.d.ts.map +1 -0
  296. package/dist/types/storage/memory/cache-lru.d.ts +11 -0
  297. package/dist/types/storage/memory/cache-lru.d.ts.map +1 -0
  298. package/dist/types/storage/memory/data-source.d.ts +20 -0
  299. package/dist/types/storage/memory/data-source.d.ts.map +1 -0
  300. package/dist/types/storage/memory/index.d.ts +4 -0
  301. package/dist/types/storage/memory/index.d.ts.map +1 -0
  302. package/dist/types/storage/memory/merkletree.d.ts +48 -0
  303. package/dist/types/storage/memory/merkletree.d.ts.map +1 -0
  304. package/dist/types/storage/shared/circuit-storage.d.ts +39 -0
  305. package/dist/types/storage/shared/circuit-storage.d.ts.map +1 -0
  306. package/dist/types/storage/shared/credential-storage.d.ts +39 -0
  307. package/dist/types/storage/shared/credential-storage.d.ts.map +1 -0
  308. package/dist/types/storage/shared/identity-storage.d.ts +45 -0
  309. package/dist/types/storage/shared/identity-storage.d.ts.map +1 -0
  310. package/dist/types/storage/shared/index.d.ts +4 -0
  311. package/dist/types/storage/shared/index.d.ts.map +1 -0
  312. package/dist/types/storage/utils.d.ts +4 -0
  313. package/dist/types/storage/utils.d.ts.map +1 -0
  314. package/dist/types/utils/compare-func.d.ts +2 -0
  315. package/dist/types/utils/compare-func.d.ts.map +1 -0
  316. package/dist/types/utils/did-helper.d.ts +38 -0
  317. package/dist/types/utils/did-helper.d.ts.map +1 -0
  318. package/dist/types/utils/encoding.d.ts +25 -0
  319. package/dist/types/utils/encoding.d.ts.map +1 -0
  320. package/dist/types/utils/index.d.ts +8 -0
  321. package/dist/types/utils/index.d.ts.map +1 -0
  322. package/dist/types/utils/message-bus.d.ts +63 -0
  323. package/dist/types/utils/message-bus.d.ts.map +1 -0
  324. package/dist/types/utils/object.d.ts +10 -0
  325. package/dist/types/utils/object.d.ts.map +1 -0
  326. package/dist/types/utils/payments/evm.d.ts +19 -0
  327. package/dist/types/utils/payments/evm.d.ts.map +1 -0
  328. package/dist/types/utils/payments/solana.d.ts +88 -0
  329. package/dist/types/utils/payments/solana.d.ts.map +1 -0
  330. package/dist/types/verifiable/constants.d.ts +188 -0
  331. package/dist/types/verifiable/constants.d.ts.map +1 -0
  332. package/dist/types/verifiable/core-utils.d.ts +87 -0
  333. package/dist/types/verifiable/core-utils.d.ts.map +1 -0
  334. package/dist/types/verifiable/credential.d.ts +150 -0
  335. package/dist/types/verifiable/credential.d.ts.map +1 -0
  336. package/dist/types/verifiable/index.d.ts +7 -0
  337. package/dist/types/verifiable/index.d.ts.map +1 -0
  338. package/dist/types/verifiable/presentation.d.ts +11 -0
  339. package/dist/types/verifiable/presentation.d.ts.map +1 -0
  340. package/dist/types/verifiable/proof.d.ts +211 -0
  341. package/dist/types/verifiable/proof.d.ts.map +1 -0
  342. package/dist/types/verifiable/schema.d.ts +3 -0
  343. package/dist/types/verifiable/schema.d.ts.map +1 -0
  344. package/package.json +104 -0
  345. package/src/blockchain/index.ts +1 -0
  346. package/src/blockchain/transaction-service.ts +121 -0
  347. package/src/circuits/atomic-query-mtp-v2-on-chain.ts +338 -0
  348. package/src/circuits/atomic-query-mtp-v2.ts +283 -0
  349. package/src/circuits/atomic-query-sig-v2-on-chain.ts +411 -0
  350. package/src/circuits/atomic-query-sig-v2.ts +340 -0
  351. package/src/circuits/atomic-query-v3-on-chain.ts +531 -0
  352. package/src/circuits/atomic-query-v3.ts +461 -0
  353. package/src/circuits/auth-v2.ts +159 -0
  354. package/src/circuits/common.ts +261 -0
  355. package/src/circuits/comparer.ts +227 -0
  356. package/src/circuits/index.ts +12 -0
  357. package/src/circuits/linked-multi-query.ts +180 -0
  358. package/src/circuits/models.ts +263 -0
  359. package/src/circuits/state-transition.ts +139 -0
  360. package/src/credentials/credential-wallet.ts +353 -0
  361. package/src/credentials/index.ts +11 -0
  362. package/src/credentials/models.ts +93 -0
  363. package/src/credentials/rhs.ts +176 -0
  364. package/src/credentials/status/agent-revocation.ts +69 -0
  365. package/src/credentials/status/credential-status-publisher.ts +143 -0
  366. package/src/credentials/status/did-resolver-revocation.ts +24 -0
  367. package/src/credentials/status/on-chain-revocation.ts +174 -0
  368. package/src/credentials/status/resolver.ts +81 -0
  369. package/src/credentials/status/reverse-sparse-merkle-tree.ts +366 -0
  370. package/src/credentials/status/sparse-merkle-tree.ts +50 -0
  371. package/src/credentials/utils.ts +36 -0
  372. package/src/iden3comm/constants.ts +119 -0
  373. package/src/iden3comm/errors.ts +14 -0
  374. package/src/iden3comm/handlers/auth.ts +520 -0
  375. package/src/iden3comm/handlers/common.ts +324 -0
  376. package/src/iden3comm/handlers/contract-request.ts +367 -0
  377. package/src/iden3comm/handlers/credential-proposal.ts +371 -0
  378. package/src/iden3comm/handlers/discovery-protocol.ts +277 -0
  379. package/src/iden3comm/handlers/fetch.ts +450 -0
  380. package/src/iden3comm/handlers/index.ts +11 -0
  381. package/src/iden3comm/handlers/message-handler.ts +165 -0
  382. package/src/iden3comm/handlers/payment.ts +698 -0
  383. package/src/iden3comm/handlers/problem-report.ts +41 -0
  384. package/src/iden3comm/handlers/refresh.ts +138 -0
  385. package/src/iden3comm/handlers/revocation-status.ts +228 -0
  386. package/src/iden3comm/index.ts +9 -0
  387. package/src/iden3comm/packageManager.ts +143 -0
  388. package/src/iden3comm/packers/index.ts +3 -0
  389. package/src/iden3comm/packers/jws.ts +225 -0
  390. package/src/iden3comm/packers/plain.ts +86 -0
  391. package/src/iden3comm/packers/zkp.ts +243 -0
  392. package/src/iden3comm/types/index.ts +17 -0
  393. package/src/iden3comm/types/models.ts +7 -0
  394. package/src/iden3comm/types/packageManager.ts +112 -0
  395. package/src/iden3comm/types/packer.ts +190 -0
  396. package/src/iden3comm/types/protocol/accept-profile.ts +14 -0
  397. package/src/iden3comm/types/protocol/attachment.ts +12 -0
  398. package/src/iden3comm/types/protocol/auth.ts +104 -0
  399. package/src/iden3comm/types/protocol/common.ts +10 -0
  400. package/src/iden3comm/types/protocol/contract-request.ts +76 -0
  401. package/src/iden3comm/types/protocol/credentials.ts +96 -0
  402. package/src/iden3comm/types/protocol/discovery-protocol.ts +49 -0
  403. package/src/iden3comm/types/protocol/messages.ts +13 -0
  404. package/src/iden3comm/types/protocol/payment.ts +231 -0
  405. package/src/iden3comm/types/protocol/problem-report.ts +18 -0
  406. package/src/iden3comm/types/protocol/proof.ts +25 -0
  407. package/src/iden3comm/types/protocol/proposal-request.ts +38 -0
  408. package/src/iden3comm/types/protocol/revocation.ts +23 -0
  409. package/src/iden3comm/utils/accept-profile.ts +121 -0
  410. package/src/iden3comm/utils/did.ts +71 -0
  411. package/src/iden3comm/utils/envelope.ts +101 -0
  412. package/src/iden3comm/utils/index.ts +4 -0
  413. package/src/iden3comm/utils/message.ts +41 -0
  414. package/src/identity/common.ts +69 -0
  415. package/src/identity/identity-wallet.ts +1592 -0
  416. package/src/identity/index.ts +2 -0
  417. package/src/index.ts +16 -0
  418. package/src/kms/index.ts +4 -0
  419. package/src/kms/key-providers/bjj-provider.ts +118 -0
  420. package/src/kms/key-providers/ed25519-provider.ts +105 -0
  421. package/src/kms/key-providers/index.ts +3 -0
  422. package/src/kms/key-providers/secp256k1-provider.ts +125 -0
  423. package/src/kms/kms.ts +173 -0
  424. package/src/kms/provider-helpers.ts +13 -0
  425. package/src/kms/store/abstract-key-store.ts +34 -0
  426. package/src/kms/store/index.ts +5 -0
  427. package/src/kms/store/indexed-db-key-store.ts +60 -0
  428. package/src/kms/store/local-storage-key-store.ts +69 -0
  429. package/src/kms/store/memory-key-store.ts +29 -0
  430. package/src/kms/store/types.ts +21 -0
  431. package/src/proof/common.ts +273 -0
  432. package/src/proof/index.ts +4 -0
  433. package/src/proof/proof-service.ts +623 -0
  434. package/src/proof/provers/index.ts +3 -0
  435. package/src/proof/provers/inputs-generator.ts +627 -0
  436. package/src/proof/provers/prover.ts +104 -0
  437. package/src/proof/provers/witness_calculator.ts +315 -0
  438. package/src/proof/verifiers/index.ts +3 -0
  439. package/src/proof/verifiers/pub-signals-verifier.ts +730 -0
  440. package/src/proof/verifiers/query-hash.ts +57 -0
  441. package/src/proof/verifiers/query.ts +340 -0
  442. package/src/schema-processor/index.ts +3 -0
  443. package/src/schema-processor/json/index.ts +2 -0
  444. package/src/schema-processor/json/parser.ts +256 -0
  445. package/src/schema-processor/json/validator.ts +67 -0
  446. package/src/schema-processor/jsonld/cache.ts +49 -0
  447. package/src/schema-processor/jsonld/index.ts +2 -0
  448. package/src/schema-processor/jsonld/parser.ts +93 -0
  449. package/src/schema-processor/utils.ts +84 -0
  450. package/src/storage/blockchain/abi/CredentialStatusResolver.json +1 -0
  451. package/src/storage/blockchain/abi/ERC20.json +1 -0
  452. package/src/storage/blockchain/abi/ERC20Permit.json +1 -0
  453. package/src/storage/blockchain/abi/IdentityBase.json +1 -0
  454. package/src/storage/blockchain/abi/State.json +1 -0
  455. package/src/storage/blockchain/abi/ZkpVerifier.json +789 -0
  456. package/src/storage/blockchain/common.ts +20 -0
  457. package/src/storage/blockchain/did-resolver-readonly-storage.ts +90 -0
  458. package/src/storage/blockchain/erc20-helper.ts +66 -0
  459. package/src/storage/blockchain/errors.ts +46 -0
  460. package/src/storage/blockchain/index.ts +7 -0
  461. package/src/storage/blockchain/onchain-issuer-adapter/non-merklized/version/v0.0.1/onchain-non-merklized-issuer-adapter.ts +327 -0
  462. package/src/storage/blockchain/onchain-issuer.ts +104 -0
  463. package/src/storage/blockchain/onchain-revocation.ts +143 -0
  464. package/src/storage/blockchain/onchain-zkp-verifier.ts +704 -0
  465. package/src/storage/blockchain/state.ts +471 -0
  466. package/src/storage/entities/circuitData.ts +7 -0
  467. package/src/storage/entities/identity.ts +18 -0
  468. package/src/storage/entities/index.ts +4 -0
  469. package/src/storage/entities/mt.ts +25 -0
  470. package/src/storage/entities/state.ts +97 -0
  471. package/src/storage/errors.ts +8 -0
  472. package/src/storage/filters/index.ts +1 -0
  473. package/src/storage/filters/jsonQuery.ts +368 -0
  474. package/src/storage/fs/circuits-storage.ts +149 -0
  475. package/src/storage/fs/index.ts +1 -0
  476. package/src/storage/index.ts +9 -0
  477. package/src/storage/indexed-db/data-source.ts +58 -0
  478. package/src/storage/indexed-db/index.ts +2 -0
  479. package/src/storage/indexed-db/merkletree.ts +140 -0
  480. package/src/storage/interfaces/circuits.ts +27 -0
  481. package/src/storage/interfaces/credentials.ts +53 -0
  482. package/src/storage/interfaces/data-source.ts +41 -0
  483. package/src/storage/interfaces/data-storage.ts +17 -0
  484. package/src/storage/interfaces/identity.ts +73 -0
  485. package/src/storage/interfaces/index.ts +10 -0
  486. package/src/storage/interfaces/merkletree.ts +52 -0
  487. package/src/storage/interfaces/onchain-issuer.ts +13 -0
  488. package/src/storage/interfaces/onchain-revocation.ts +22 -0
  489. package/src/storage/interfaces/onchain-zkp-verifier.ts +94 -0
  490. package/src/storage/interfaces/state.ts +81 -0
  491. package/src/storage/local-storage/data-source.ts +87 -0
  492. package/src/storage/local-storage/index.ts +2 -0
  493. package/src/storage/local-storage/merkletree.ts +137 -0
  494. package/src/storage/memory/cache-lru.ts +30 -0
  495. package/src/storage/memory/data-source.ts +45 -0
  496. package/src/storage/memory/index.ts +3 -0
  497. package/src/storage/memory/merkletree.ts +116 -0
  498. package/src/storage/shared/circuit-storage.ts +49 -0
  499. package/src/storage/shared/credential-storage.ts +70 -0
  500. package/src/storage/shared/identity-storage.ts +82 -0
  501. package/src/storage/shared/index.ts +3 -0
  502. package/src/storage/utils.ts +19 -0
  503. package/src/utils/compare-func.ts +5 -0
  504. package/src/utils/did-helper.ts +157 -0
  505. package/src/utils/encoding.ts +47 -0
  506. package/src/utils/index.ts +7 -0
  507. package/src/utils/message-bus.ts +88 -0
  508. package/src/utils/object.ts +52 -0
  509. package/src/utils/payments/evm.ts +152 -0
  510. package/src/utils/payments/solana.ts +360 -0
  511. package/src/verifiable/constants.ts +239 -0
  512. package/src/verifiable/core-utils.ts +307 -0
  513. package/src/verifiable/credential.ts +649 -0
  514. package/src/verifiable/index.ts +6 -0
  515. package/src/verifiable/presentation.ts +97 -0
  516. package/src/verifiable/proof.ts +277 -0
  517. package/src/verifiable/schema.ts +241 -0
@@ -0,0 +1,17 @@
1
+ import { RootInfo, StateInfo, StateProof } from '../entities';
2
+ import { IStateStorage } from '../interfaces';
3
+ import { JsonRpcProvider } from 'ethers';
4
+ export declare class DidResolverStateReadonlyStorage implements IStateStorage {
5
+ private readonly resolverUrl;
6
+ constructor(resolverUrl: string);
7
+ getLatestStateById(id: bigint): Promise<StateInfo>;
8
+ getStateInfoByIdAndState(id: bigint, state: bigint): Promise<StateInfo>;
9
+ getGISTProof(id: bigint): Promise<StateProof>;
10
+ getGISTRootInfo(root: bigint, userId: bigint): Promise<RootInfo>;
11
+ getRpcProvider(): JsonRpcProvider;
12
+ publishState(): Promise<string>;
13
+ publishStateGeneric(): Promise<string>;
14
+ private getStateInfo;
15
+ private getIden3StateInfo2023;
16
+ }
17
+ //# sourceMappingURL=did-resolver-readonly-storage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"did-resolver-readonly-storage.d.ts","sourceRoot":"","sources":["../../../../src/storage/blockchain/did-resolver-readonly-storage.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAE9C,OAAO,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC;AAEzC,qBAAa,+BAAgC,YAAW,aAAa;IACvD,OAAO,CAAC,QAAQ,CAAC,WAAW;gBAAX,WAAW,EAAE,MAAM;IAC1C,kBAAkB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IAGlD,wBAAwB,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IAIvE,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAyB7C,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;IAetE,cAAc,IAAI,eAAe;IAIjC,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC;IAI/B,mBAAmB,IAAI,OAAO,CAAC,MAAM,CAAC;YAIxB,YAAY;IAW1B,OAAO,CAAC,qBAAqB;CAS9B"}
@@ -0,0 +1,20 @@
1
+ import { Signer, ethers } from 'ethers';
2
+ /**
3
+ * @beta
4
+ * getPermitSignature is a function to create EIP712 Permit signature
5
+ * @param {Signer} signer - User who owns the tokens
6
+ * @param {string} tokenAddress - EIP-2612 contract address
7
+ * @param {string} spender - The contract address that will spend tokens
8
+ * @param {bigint} value - Amount of tokens to approve
9
+ * @param {number} deadline - Timestamp when the permit expires
10
+ * @returns {Promise<PaymentRequestMessage>}
11
+ */
12
+ export declare function getPermitSignature(signer: Signer, tokenAddress: string, spender: string, value: bigint, deadline: number): Promise<string>;
13
+ /**
14
+ * @beta
15
+ * getERC20Decimals is a function to retrieve the number of decimals of an ERC20 token
16
+ * @param {string} tokenAddress - Token address
17
+ * @param {ethers.ContractRunner} runner - Contract runner
18
+ */
19
+ export declare function getERC20Decimals(tokenAddress: string, runner: ethers.ContractRunner): Promise<number>;
20
+ //# sourceMappingURL=erc20-helper.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"erc20-helper.d.ts","sourceRoot":"","sources":["../../../../src/storage/blockchain/erc20-helper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,MAAM,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAKlD;;;;;;;;;GASG;AACH,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,mBA+BjB;AAED;;;;;GAKG;AACH,wBAAsB,gBAAgB,CACpC,YAAY,EAAE,MAAM,EACpB,MAAM,EAAE,MAAM,CAAC,cAAc,GAC5B,OAAO,CAAC,MAAM,CAAC,CAGjB"}
@@ -0,0 +1,4 @@
1
+ export declare function isIdentityDoesNotExistError(error: unknown): boolean;
2
+ export declare function isStateDoesNotExistError(error: unknown): boolean;
3
+ export declare function isRootDoesNotExistError(error: unknown): boolean;
4
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../../src/storage/blockchain/errors.ts"],"names":[],"mappings":"AA0BA,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAKnE;AAED,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAKhE;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAK/D"}
@@ -0,0 +1,8 @@
1
+ export * from './state';
2
+ export * from './onchain-zkp-verifier';
3
+ export * from './onchain-revocation';
4
+ export * from './onchain-issuer';
5
+ export * from './did-resolver-readonly-storage';
6
+ export * from './erc20-helper';
7
+ export * from './errors';
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/storage/blockchain/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iCAAiC,CAAC;AAChD,cAAc,gBAAgB,CAAC;AAC/B,cAAc,UAAU,CAAC"}
@@ -0,0 +1,67 @@
1
+ import { DID, Id } from '@mocanetwork/moca-iden3';
2
+ import { INonMerklizedIssuer } from '@iden3/onchain-non-merklized-issuer-base-abi';
3
+ import { W3CCredential } from '../../../../../../verifiable';
4
+ import { Options } from '@iden3/js-jsonld-merklization';
5
+ import { EthConnectionConfig } from '../../../../state';
6
+ /**
7
+ * `OnchainNonMerklizedIssuerAdapter` provides functionality to interact with a non-merklized on-chain credential issuer.
8
+ * This adapter enables interface detection, credential retrieval, and conversion to the W3C Verifiable Credential format.
9
+ *
10
+ * @public
11
+ * @beta
12
+ * @class OnchainNonMerklizedIssuerAdapter
13
+ */
14
+ export declare class OnchainNonMerklizedIssuerAdapter {
15
+ private readonly _contract;
16
+ private readonly _contractAddress;
17
+ private readonly _chainId;
18
+ private readonly _issuerDid;
19
+ private readonly _merklizationOptions?;
20
+ /**
21
+ * Initializes an instance of `OnchainNonMerklizedIssuerAdapter`.
22
+ *
23
+ * @param ethConnectionConfig The configuration for the Ethereum connection.
24
+ * @param issuerDid The decentralized identifier (DID) of the issuer.
25
+ * @param merklizationOptions Optional settings for merklization.
26
+ */
27
+ constructor(ethConnectionConfig: EthConnectionConfig, issuerDid: DID, options?: {
28
+ merklizationOptions?: Options;
29
+ });
30
+ /**
31
+ * Checks if the contract supports required interfaces.
32
+ * Throws an error if any required interface is unsupported.
33
+ *
34
+ * @throws Error - If required interfaces are not supported.
35
+ */
36
+ isInterfaceSupported(): Promise<void>;
37
+ /**
38
+ * Retrieves a credential from the on-chain non-merklized contract.
39
+ * @param userId The user's core.Id.
40
+ * @param credentialId The unique identifier of the credential.
41
+ */
42
+ getCredential(userId: Id, credentialId: bigint): Promise<{
43
+ credentialData: INonMerklizedIssuer.CredentialDataStructOutput;
44
+ coreClaimBigInts: bigint[];
45
+ credentialSubjectFields: INonMerklizedIssuer.SubjectFieldStructOutput[];
46
+ }>;
47
+ /**
48
+ * Retrieves the credential IDs of a user.
49
+ * @param userId The user's core.Id.
50
+ * @returns An array of credential IDs.
51
+ */
52
+ getUserCredentialsIds(userId: Id): Promise<bigint[]>;
53
+ /**
54
+ * Converts on-chain credential to a verifiable credential.
55
+ *
56
+ * @param credentialData Data structure of the credential from the contract.
57
+ * @param coreClaimBigInts Claim data in bigint format.
58
+ * @param credentialSubjectFields Subject fields of the credential.
59
+ */
60
+ convertOnChainInfoToW3CCredential(credentialData: INonMerklizedIssuer.CredentialDataStructOutput, coreClaimBigInts: bigint[], credentialSubjectFields: INonMerklizedIssuer.SubjectFieldStructOutput[]): Promise<W3CCredential>;
61
+ private credentialId;
62
+ private convertCredentialSubject;
63
+ private existenceProof;
64
+ private validateSourceValue;
65
+ private convertDisplayMethod;
66
+ }
67
+ //# sourceMappingURL=onchain-non-merklized-issuer-adapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"onchain-non-merklized-issuer-adapter.d.ts","sourceRoot":"","sources":["../../../../../../../../src/storage/blockchain/onchain-issuer-adapter/non-merklized/version/v0.0.1/onchain-non-merklized-issuer-adapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,GAAG,EAAE,EAAE,EAAE,MAAM,yBAAyB,CAAC;AAGzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,8CAA8C,CAAC;AACnF,OAAO,EAKL,aAAa,EACd,MAAM,8BAA8B,CAAC;AAOtC,OAAO,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAaxD;;;;;;;GAOG;AACH,qBAAa,gCAAgC;IAC3C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAyB;IACnD,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAS;IAC1C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAElC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAM;IAEjC,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAU;IAEhD;;;;;;OAMG;gBAED,mBAAmB,EAAE,mBAAmB,EACxC,SAAS,EAAE,GAAG,EACd,OAAO,CAAC,EAAE;QACR,mBAAmB,CAAC,EAAE,OAAO,CAAC;KAC/B;IAmBH;;;;;OAKG;IACU,oBAAoB;IAgCjC;;;;OAIG;IACU,aAAa,CACxB,MAAM,EAAE,EAAE,EACV,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC;QACT,cAAc,EAAE,mBAAmB,CAAC,0BAA0B,CAAC;QAC/D,gBAAgB,EAAE,MAAM,EAAE,CAAC;QAC3B,uBAAuB,EAAE,mBAAmB,CAAC,wBAAwB,EAAE,CAAC;KACzE,CAAC;IAMF;;;;OAIG;IACU,qBAAqB,CAAC,MAAM,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAIjE;;;;;;OAMG;IACU,iCAAiC,CAC5C,cAAc,EAAE,mBAAmB,CAAC,0BAA0B,EAC9D,gBAAgB,EAAE,MAAM,EAAE,EAC1B,uBAAuB,EAAE,mBAAmB,CAAC,wBAAwB,EAAE,GACtE,OAAO,CAAC,aAAa,CAAC;IAgCzB,OAAO,CAAC,YAAY;YAIN,wBAAwB;YAwExB,cAAc;YAsCd,mBAAmB;IAOjC,OAAO,CAAC,oBAAoB;CAkB7B"}
@@ -0,0 +1,41 @@
1
+ import { DID } from '@mocanetwork/moca-iden3';
2
+ import { Options } from '@iden3/js-jsonld-merklization';
3
+ import { W3CCredential } from '../../verifiable';
4
+ import { EthConnectionConfig } from './state';
5
+ import { IOnchainIssuer } from '../interfaces/onchain-issuer';
6
+ interface OnchainIssuerOptions {
7
+ merklizationOptions?: Options;
8
+ }
9
+ /**
10
+ * Represents an adapter for interacting with on-chain issuers.
11
+ *
12
+ * @public
13
+ * @beta
14
+ * @class OnchainIssuer
15
+ */
16
+ export declare class OnchainIssuer implements IOnchainIssuer {
17
+ private readonly _ethConnectionConfig;
18
+ private readonly _onchainIssuerOptions?;
19
+ /**
20
+ * Initializes an instance of `Adapter`.
21
+ * @param config The configuration for the Ethereum connection.
22
+ * @param merklizationOptions Optional settings for merklization.
23
+ */
24
+ constructor(config: EthConnectionConfig[], options?: OnchainIssuerOptions);
25
+ /**
26
+ * Retrieves a credential from the on-chain issuer.
27
+ * @param issuerDID The issuer's core.DID.
28
+ * @param userId The user's core.Id.
29
+ * @param credentialId The unique identifier of the credential.
30
+ */
31
+ getCredential(issuerDID: DID, userDID: DID, credentialId: bigint): Promise<W3CCredential>;
32
+ /**
33
+ * Retrieves the credential identifiers for a user from the on-chain issuer.
34
+ * @param issuerDID The issuer's core.DID.
35
+ * @param userId The user's core.Id.
36
+ */
37
+ getUserCredentialIds(issuerDID: DID, userDID: DID): Promise<bigint[]>;
38
+ private getContractConnection;
39
+ }
40
+ export {};
41
+ //# sourceMappingURL=onchain-issuer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"onchain-issuer.d.ts","sourceRoot":"","sources":["../../../../src/storage/blockchain/onchain-issuer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAsB,MAAM,yBAAyB,CAAC;AAGlE,OAAO,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAE9D,UAAU,oBAAoB;IAC5B,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED;;;;;;GAMG;AACH,qBAAa,aAAc,YAAW,cAAc;IAClD,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAwB;IAC7D,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAC,CAAuB;IAE9D;;;;OAIG;gBACS,MAAM,EAAE,mBAAmB,EAAE,EAAE,OAAO,CAAC,EAAE,oBAAoB;IAKzE;;;;;OAKG;IACU,aAAa,CACxB,SAAS,EAAE,GAAG,EACd,OAAO,EAAE,GAAG,EACZ,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,aAAa,CAAC;IAsBzB;;;;OAIG;IACU,oBAAoB,CAAC,SAAS,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAgBlF,OAAO,CAAC,qBAAqB;CAgB9B"}
@@ -0,0 +1,41 @@
1
+ import { RevocationStatus } from '../../verifiable';
2
+ import { Signer, TransactionReceipt } from 'ethers';
3
+ import { EthConnectionConfig } from './state';
4
+ /**
5
+ * OnChainRevocationStore is a class that allows to interact with the onchain contract
6
+ * and build the revocation status.
7
+ *
8
+ * @public
9
+ * @class OnChainIssuer
10
+ */
11
+ export declare class OnChainRevocationStorage {
12
+ private readonly _config;
13
+ private _signer?;
14
+ private readonly _contract;
15
+ private readonly _provider;
16
+ private readonly _transactionService;
17
+ /**
18
+ *
19
+ * Creates an instance of OnChainIssuer.
20
+ * @public
21
+ * @param {string} - onchain contract address
22
+ * @param {string} - rpc url to connect to the blockchain
23
+ */
24
+ constructor(_config: EthConnectionConfig, contractAddress: string, _signer?: Signer | undefined);
25
+ /**
26
+ * Get revocation status by issuerId, issuerState and nonce from the onchain.
27
+ * @public
28
+ * @returns Promise<RevocationStatus>
29
+ */
30
+ getRevocationStatusByIdAndState(issuerID: bigint, state: bigint, nonce: number): Promise<RevocationStatus>;
31
+ /**
32
+ * Get revocation status by nonce from the onchain contract.
33
+ * @public
34
+ * @returns Promise<RevocationStatus>
35
+ */
36
+ getRevocationStatus(issuerID: bigint, nonce: number): Promise<RevocationStatus>;
37
+ saveNodes(payload: bigint[][]): Promise<TransactionReceipt>;
38
+ private static convertIssuerInfo;
39
+ private static convertSmtProofToProof;
40
+ }
41
+ //# sourceMappingURL=onchain-revocation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"onchain-revocation.d.ts","sourceRoot":"","sources":["../../../../src/storage/blockchain/onchain-revocation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAU,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAA6B,MAAM,EAAE,kBAAkB,EAAsB,MAAM,QAAQ,CAAC;AAEnG,OAAO,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAI9C;;;;;;GAMG;AACH,qBAAa,wBAAwB;IAcjC,OAAO,CAAC,QAAQ,CAAC,OAAO;IAExB,OAAO,CAAC,OAAO,CAAC;IAflB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAW;IACrC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAkB;IAC5C,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAsB;IAE1D;;;;;;OAMG;gBAGgB,OAAO,EAAE,mBAAmB,EAC7C,eAAe,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,MAAM,YAAA;IAY1B;;;;OAIG;IACU,+BAA+B,CAC1C,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,gBAAgB,CAAC;IAY5B;;;;OAIG;IACU,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAY/E,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,GAAG,OAAO,CAAC,kBAAkB,CAAC;IA+BxE,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAYhC,OAAO,CAAC,MAAM,CAAC,sBAAsB;CAmBtC"}
@@ -0,0 +1,116 @@
1
+ import { Signer } from 'ethers';
2
+ import { EthConnectionConfig } from './state';
3
+ import { IOnChainZKPVerifier } from '../interfaces/onchain-zkp-verifier';
4
+ import { AuthMethod, AuthProof, ContractInvokeTransactionData, CrossChainProof, JsonDocumentObjectValue, ZeroKnowledgeInvokeResponse, ZeroKnowledgeProofResponse } from '../../iden3comm';
5
+ import { DID } from '@mocanetwork/moca-iden3';
6
+ import { GlobalStateUpdate } from '../entities/state';
7
+ /**
8
+ * Supported function signature for SubmitZKPResponse
9
+ */
10
+ export declare enum FunctionSignatures {
11
+ /**
12
+ * solidity identifier for function signature:
13
+ * function submitZKPResponse(uint64 requestId, uint256[] calldata inputs,
14
+ * uint256[2] calldata a, uint256[2][2] calldata b, uint256[2] calldata c) public
15
+ */
16
+ SubmitZKPResponseV1 = "b68967e2",
17
+ SubmitZKPResponseV2 = "ade09fcd",
18
+ SubmitResponse = "06c86a91"
19
+ }
20
+ /**
21
+ * OnChainZKPVerifierOptions represents OnChainZKPVerifier options
22
+ */
23
+ export type OnChainZKPVerifierOptions = {
24
+ didResolverUrl?: string;
25
+ };
26
+ type ProofPreparationResult = {
27
+ requestId: string | number;
28
+ proof: ZeroKnowledgeProofResponse;
29
+ encoded: string;
30
+ metadata: string;
31
+ };
32
+ export type TxPreparationResultSubmitResponse = {
33
+ authProof: {
34
+ raw: AuthProof;
35
+ encoded: string;
36
+ };
37
+ crossChainProof: {
38
+ raw: CrossChainProof;
39
+ encoded: string;
40
+ };
41
+ proofs: ProofPreparationResult[];
42
+ };
43
+ export declare const toTxDataArgs: (res: TxPreparationResultSubmitResponse) => (string | {
44
+ requestId: string | number;
45
+ proof: string;
46
+ metadata: string;
47
+ }[] | {
48
+ authMethod: AuthMethod;
49
+ proof: string;
50
+ })[];
51
+ /**
52
+ * OnChainZKPVerifier is a class that allows to interact with the OnChainZKPVerifier contract
53
+ * and submitZKPResponse.
54
+ *
55
+ * @beta
56
+ * @class OnChainZKPVerifier
57
+ */
58
+ export declare class OnChainZKPVerifier implements IOnChainZKPVerifier {
59
+ private readonly _configs;
60
+ private readonly _opts?;
61
+ /**
62
+ * supported circuits
63
+ */
64
+ private static readonly _supportedCircuits;
65
+ private static readonly _supportedCircuitsPubSignalsMap;
66
+ /**
67
+ *
68
+ * Creates an instance of OnChainZKPVerifier.
69
+ * @beta
70
+ * @param {EthConnectionConfig[]} - array of ETH configs
71
+ */
72
+ constructor(_configs: EthConnectionConfig[], _opts?: OnChainZKPVerifierOptions | undefined);
73
+ static prepareTxArgsSubmitV1(txData: ContractInvokeTransactionData, zkProofResponse: ZeroKnowledgeProofResponse): Promise<JsonDocumentObjectValue[]>;
74
+ /**
75
+ * {@inheritDoc IOnChainZKPVerifier.prepareTxArgsSubmitV1}
76
+ */
77
+ prepareTxArgsSubmitV1(txData: ContractInvokeTransactionData, zkProofResponse: ZeroKnowledgeProofResponse): Promise<JsonDocumentObjectValue[]>;
78
+ /**
79
+ * {@inheritDoc IOnChainZKPVerifier.submitZKPResponse}
80
+ */
81
+ submitZKPResponse(ethSigner: Signer, txData: ContractInvokeTransactionData, zkProofResponses: ZeroKnowledgeProofResponse[]): Promise<Map<string, ZeroKnowledgeProofResponse>>;
82
+ /**
83
+ * {@inheritDoc IOnChainZKPVerifier.submitZKPResponseV2}
84
+ */
85
+ submitZKPResponseV2(ethSigner: Signer, txData: ContractInvokeTransactionData, zkProofResponses: ZeroKnowledgeProofResponse[]): Promise<Map<string, ZeroKnowledgeProofResponse[]>>;
86
+ /**
87
+ * {@inheritDoc IOnChainVerifierMultiQuery.submitResponse}
88
+ */
89
+ submitResponse(ethSigner: Signer, txData: ContractInvokeTransactionData, responses: ZeroKnowledgeProofResponse[], authProof: AuthProof): Promise<Map<string, ZeroKnowledgeInvokeResponse>>;
90
+ static prepareTxArgsSubmit(resolverUrl: string, txData: ContractInvokeTransactionData, responses: ZeroKnowledgeProofResponse[], authProof: AuthProof): Promise<{
91
+ result: TxPreparationResultSubmitResponse;
92
+ txDataArgs: JsonDocumentObjectValue[];
93
+ }>;
94
+ prepareTxArgsSubmit(txData: ContractInvokeTransactionData, responses: ZeroKnowledgeProofResponse[], authProof: AuthProof): Promise<{
95
+ result: TxPreparationResultSubmitResponse;
96
+ txDataArgs: JsonDocumentObjectValue[];
97
+ }>;
98
+ private static checkSupportedCircuit;
99
+ private static getCrossChainResolvers;
100
+ static prepareTxArgsSubmitV2(resolverUrl: string, txData: ContractInvokeTransactionData, zkProofResponses: ZeroKnowledgeProofResponse[]): Promise<JsonDocumentObjectValue[]>;
101
+ prepareTxArgsSubmitV2(txData: ContractInvokeTransactionData, zkProofResponses: ZeroKnowledgeProofResponse[]): Promise<JsonDocumentObjectValue[]>;
102
+ private static getUpdateResolutions;
103
+ private static packCrossChainProofs;
104
+ static packGlobalStateMsg(msg: GlobalStateUpdate): string;
105
+ private static packIdentityStateMsg;
106
+ private static getOnChainGistRootStatePubSignals;
107
+ private static resolveDidDocumentEip712MessageAndSignature;
108
+ }
109
+ /**
110
+ * Packs an Ethereum identity proof from a Decentralized Identifier (DID).
111
+ * @param did - Decentralized Identifier (DID) to pack.
112
+ * @returns A hexadecimal string representing the packed DID identity proof.
113
+ */
114
+ export declare const packEthIdentityProof: (did: DID) => string;
115
+ export {};
116
+ //# sourceMappingURL=onchain-zkp-verifier.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"onchain-zkp-verifier.d.ts","sourceRoot":"","sources":["../../../../src/storage/blockchain/onchain-zkp-verifier.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,127 @@
1
+ import { RootInfo, StateProof } from './../entities/state';
2
+ import { ZKProof } from '@iden3/js-jwz';
3
+ import { IStateStorage, UserStateTransitionInfo } from '../interfaces/state';
4
+ import { Contract, JsonRpcProvider, Signer } from 'ethers';
5
+ import { StateInfo } from '../entities/state';
6
+ import { ICache } from '../memory';
7
+ /**
8
+ * Configuration options for caching behavior
9
+ */
10
+ export type ResolverCacheOptions = {
11
+ /** TTL in milliseconds for latest states/roots (shorter since they can change) */
12
+ notReplacedTtl?: number;
13
+ /** TTL in milliseconds for historical states/roots (longer since they can change with less probability) */
14
+ replacedTtl?: number;
15
+ /** Maximum number of entries to store in cache */
16
+ maxSize?: number;
17
+ };
18
+ /**
19
+ * Simplified cache config with a single TTL (used for latest/gist proofs etc.)
20
+ */
21
+ export type SimpleCacheOptions = {
22
+ /** TTL in milliseconds for latest states/gist proof */
23
+ ttl?: number;
24
+ /** Maximum number of entries to store in cache */
25
+ maxSize?: number;
26
+ };
27
+ /**
28
+ * EthStateStorageOptions options for the Ethereum state storage.
29
+ */
30
+ export type EthStateStorageOptions = {
31
+ /** Disable caching */
32
+ disableCache?: boolean;
33
+ /** Configuration for latest state resolution caching */
34
+ latestStateCacheOptions?: {
35
+ /** Custom cache implementation (if not provided, uses in-memory cache) */
36
+ cache?: ICache<StateInfo>;
37
+ } & SimpleCacheOptions;
38
+ /** Configuration for state resolution caching */
39
+ stateCacheOptions?: {
40
+ /** Custom cache implementation (if not provided, uses in-memory cache) */
41
+ cache?: ICache<StateInfo>;
42
+ } & ResolverCacheOptions;
43
+ /** Configuration for GIST root resolution caching */
44
+ rootCacheOptions?: {
45
+ /** Custom cache implementation (if not provided, uses in-memory cache) */
46
+ cache?: ICache<RootInfo>;
47
+ } & ResolverCacheOptions;
48
+ gistProofCacheOptions?: {
49
+ /** Custom cache implementation for GIST proofs (if not provided, uses in-memory cache) */
50
+ cache?: ICache<StateProof>;
51
+ } & SimpleCacheOptions;
52
+ };
53
+ /**
54
+ * Configuration of ethereum based blockchain connection
55
+ *
56
+ * @public
57
+ * @interface EthConnectionConfig
58
+ */
59
+ export interface EthConnectionConfig {
60
+ url: string;
61
+ defaultGasLimit: number;
62
+ minGasPrice?: string;
63
+ maxGasPrice?: string;
64
+ maxFeePerGas?: string;
65
+ maxPriorityFeePerGas?: string;
66
+ confirmationBlockCount: number;
67
+ confirmationTimeout: number;
68
+ contractAddress: string;
69
+ receiptTimeout: number;
70
+ rpcResponseTimeout: number;
71
+ waitReceiptCycleTime: number;
72
+ waitBlockCycleTime: number;
73
+ chainId?: number;
74
+ }
75
+ export declare const defaultEthConnectionConfig: EthConnectionConfig;
76
+ /**
77
+ *
78
+ *
79
+ * @public
80
+ * @class EthStateStorage
81
+ * @implements implements IStateStorage interface
82
+ */
83
+ export declare class EthStateStorage implements IStateStorage {
84
+ private readonly ethConfig;
85
+ readonly stateContract: Contract;
86
+ private readonly provider;
87
+ private readonly _transactionService;
88
+ private _latestStateResolveCache;
89
+ private _stateResolveCache;
90
+ private _rootResolveCache;
91
+ private _gistProofResolveCache;
92
+ private _latestStateCacheOptions;
93
+ private _stateCacheOptions;
94
+ private _rootCacheOptions;
95
+ private _gistProofCacheOptions;
96
+ private _disableCache;
97
+ /**
98
+ * Creates an instance of EthStateStorage.
99
+ * @param {EthConnectionConfig} [ethConfig=defaultEthConnectionConfig]
100
+ */
101
+ constructor(ethConfig: EthConnectionConfig | EthConnectionConfig[], options?: EthStateStorageOptions);
102
+ /** {@inheritdoc IStateStorage.getLatestStateById} */
103
+ getLatestStateById(id: bigint): Promise<StateInfo>;
104
+ /** {@inheritdoc IStateStorage.getStateInfoByIdAndState} */
105
+ getStateInfoByIdAndState(id: bigint, state: bigint): Promise<StateInfo>;
106
+ /** {@inheritdoc IStateStorage.publishState} */
107
+ publishState(proof: ZKProof, signer: Signer): Promise<string>;
108
+ /** {@inheritdoc IStateStorage.publishStateGeneric} */
109
+ publishStateGeneric(signer: Signer, userStateTransitionInfo: UserStateTransitionInfo): Promise<string>;
110
+ /** {@inheritdoc IStateStorage.getGISTProof} */
111
+ getGISTProof(id: bigint): Promise<StateProof>;
112
+ /** {@inheritdoc IStateStorage.getGISTRootInfo} */
113
+ getGISTRootInfo(root: bigint, id: bigint): Promise<RootInfo>;
114
+ /** {@inheritdoc IStateStorage.getRpcProvider} */
115
+ getRpcProvider(): JsonRpcProvider;
116
+ /** enable caching */
117
+ enableCache(): void;
118
+ /** disable caching */
119
+ disableCache(): void;
120
+ private getStateContractAndProviderForId;
121
+ private networkByChainId;
122
+ private getGistProofCacheKey;
123
+ private getLatestStateCacheKey;
124
+ private getStateCacheKey;
125
+ private getRootCacheKey;
126
+ }
127
+ //# sourceMappingURL=state.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../../../src/storage/blockchain/state.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ /** Circuit data that includes id, wasm file, verification key and proving key */
2
+ export type CircuitData = {
3
+ circuitId: string;
4
+ wasm: Uint8Array | null;
5
+ verificationKey: Uint8Array | null;
6
+ provingKey: Uint8Array | null;
7
+ };
8
+ //# sourceMappingURL=circuitData.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"circuitData.d.ts","sourceRoot":"","sources":["../../../../src/storage/entities/circuitData.ts"],"names":[],"mappings":"AAAA,iFAAiF;AACjF,MAAM,MAAM,WAAW,GAAG;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,UAAU,GAAG,IAAI,CAAC;IACxB,eAAe,EAAE,UAAU,GAAG,IAAI,CAAC;IACnC,UAAU,EAAE,UAAU,GAAG,IAAI,CAAC;CAC/B,CAAC"}
@@ -0,0 +1,17 @@
1
+ import { Hash } from '@iden3/js-merkletree';
2
+ /** Identity structure that can be used for identity storage */
3
+ export type Identity = {
4
+ did: string;
5
+ state?: Hash;
6
+ isStatePublished?: boolean;
7
+ isStateGenesis?: boolean;
8
+ };
9
+ /** Profile structure that can be used for profiles storage */
10
+ export type Profile = {
11
+ id: string;
12
+ nonce: number | string;
13
+ genesisIdentifier: string;
14
+ verifier: string;
15
+ tags?: string[];
16
+ };
17
+ //# sourceMappingURL=identity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"identity.d.ts","sourceRoot":"","sources":["../../../../src/storage/entities/identity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAE5C,+DAA+D;AAC/D,MAAM,MAAM,QAAQ,GAAG;IACrB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,IAAI,CAAC;IACb,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;AAEF,+DAA+D;AAC/D,MAAM,MAAM,OAAO,GAAG;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;CACjB,CAAC"}
@@ -0,0 +1,5 @@
1
+ export * from './identity';
2
+ export * from './mt';
3
+ export * from './state';
4
+ export * from './circuitData';
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/storage/entities/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,MAAM,CAAC;AACrB,cAAc,SAAS,CAAC;AACxB,cAAc,eAAe,CAAC"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Interface to store metadata about merkle tree
3
+ *
4
+ * @public
5
+ * @interface IdentityMerkleTreeMetaInformation
6
+ */
7
+ export interface IdentityMerkleTreeMetaInformation {
8
+ treeId: string;
9
+ identifier: string;
10
+ type: MerkleTreeType;
11
+ }
12
+ /**
13
+ * Type of MerkleTree
14
+ *
15
+ * @enum {number}
16
+ */
17
+ export declare enum MerkleTreeType {
18
+ Claims = 0,
19
+ Revocations = 1,
20
+ Roots = 2
21
+ }
22
+ //# sourceMappingURL=mt.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mt.d.ts","sourceRoot":"","sources":["../../../../src/storage/entities/mt.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,WAAW,iCAAiC;IAChD,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,cAAc,CAAC;CACtB;AAED;;;;GAIG;AACH,oBAAY,cAAc;IAExB,MAAM,IAAI;IAEV,WAAW,IAAI;IAEf,KAAK,IAAI;CACV"}