@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.
- package/README.md +75 -0
- package/dist/browser/esm/index.js +14901 -0
- package/dist/browser/esm/index.js.map +1 -0
- package/dist/browser/umd/index.global.js +678 -0
- package/dist/browser/umd/index.global.js.map +1 -0
- package/dist/node/cjs/index.cjs +15418 -0
- package/dist/node/cjs/index.cjs.map +1 -0
- package/dist/node/esm/index.js +14901 -0
- package/dist/node/esm/index.js.map +1 -0
- package/dist/types/blockchain/index.d.ts +2 -0
- package/dist/types/blockchain/index.d.ts.map +1 -0
- package/dist/types/blockchain/transaction-service.d.ts +81 -0
- package/dist/types/blockchain/transaction-service.d.ts.map +1 -0
- package/dist/types/circuits/atomic-query-mtp-v2-on-chain.d.ts +70 -0
- package/dist/types/circuits/atomic-query-mtp-v2-on-chain.d.ts.map +1 -0
- package/dist/types/circuits/atomic-query-mtp-v2.d.ts +63 -0
- package/dist/types/circuits/atomic-query-mtp-v2.d.ts.map +1 -0
- package/dist/types/circuits/atomic-query-sig-v2-on-chain.d.ts +137 -0
- package/dist/types/circuits/atomic-query-sig-v2-on-chain.d.ts.map +1 -0
- package/dist/types/circuits/atomic-query-sig-v2.d.ts +64 -0
- package/dist/types/circuits/atomic-query-sig-v2.d.ts.map +1 -0
- package/dist/types/circuits/atomic-query-v3-on-chain.d.ts +141 -0
- package/dist/types/circuits/atomic-query-v3-on-chain.d.ts.map +1 -0
- package/dist/types/circuits/atomic-query-v3.d.ts +121 -0
- package/dist/types/circuits/atomic-query-v3.d.ts.map +1 -0
- package/dist/types/circuits/auth-v2.d.ts +46 -0
- package/dist/types/circuits/auth-v2.d.ts.map +1 -0
- package/dist/types/circuits/common.d.ts +153 -0
- package/dist/types/circuits/common.d.ts.map +1 -0
- package/dist/types/circuits/comparer.d.ts +122 -0
- package/dist/types/circuits/comparer.d.ts.map +1 -0
- package/dist/types/circuits/index.d.ts +13 -0
- package/dist/types/circuits/index.d.ts.map +1 -0
- package/dist/types/circuits/linked-multi-query.d.ts +38 -0
- package/dist/types/circuits/linked-multi-query.d.ts.map +1 -0
- package/dist/types/circuits/models.d.ts +189 -0
- package/dist/types/circuits/models.d.ts.map +1 -0
- package/dist/types/circuits/state-transition.d.ts +49 -0
- package/dist/types/circuits/state-transition.d.ts.map +1 -0
- package/dist/types/credentials/credential-wallet.d.ts +200 -0
- package/dist/types/credentials/credential-wallet.d.ts.map +1 -0
- package/dist/types/credentials/index.d.ts +12 -0
- package/dist/types/credentials/index.d.ts.map +1 -0
- package/dist/types/credentials/models.d.ts +84 -0
- package/dist/types/credentials/models.d.ts.map +1 -0
- package/dist/types/credentials/rhs.d.ts +38 -0
- package/dist/types/credentials/rhs.d.ts.map +1 -0
- package/dist/types/credentials/status/agent-revocation.d.ts +20 -0
- package/dist/types/credentials/status/agent-revocation.d.ts.map +1 -0
- package/dist/types/credentials/status/credential-status-publisher.d.ts +73 -0
- package/dist/types/credentials/status/credential-status-publisher.d.ts.map +1 -0
- package/dist/types/credentials/status/did-resolver-revocation.d.ts +8 -0
- package/dist/types/credentials/status/did-resolver-revocation.d.ts.map +1 -0
- package/dist/types/credentials/status/on-chain-revocation.d.ts +58 -0
- package/dist/types/credentials/status/on-chain-revocation.d.ts.map +1 -0
- package/dist/types/credentials/status/resolver.d.ts +69 -0
- package/dist/types/credentials/status/resolver.d.ts.map +1 -0
- package/dist/types/credentials/status/reverse-sparse-merkle-tree.d.ts +126 -0
- package/dist/types/credentials/status/reverse-sparse-merkle-tree.d.ts.map +1 -0
- package/dist/types/credentials/status/sparse-merkle-tree.d.ts +38 -0
- package/dist/types/credentials/status/sparse-merkle-tree.d.ts.map +1 -0
- package/dist/types/credentials/utils.d.ts +15 -0
- package/dist/types/credentials/utils.d.ts.map +1 -0
- package/dist/types/iden3comm/constants.d.ts +61 -0
- package/dist/types/iden3comm/constants.d.ts.map +1 -0
- package/dist/types/iden3comm/errors.d.ts +10 -0
- package/dist/types/iden3comm/errors.d.ts.map +1 -0
- package/dist/types/iden3comm/handlers/auth.d.ts +157 -0
- package/dist/types/iden3comm/handlers/auth.d.ts.map +1 -0
- package/dist/types/iden3comm/handlers/common.d.ts +72 -0
- package/dist/types/iden3comm/handlers/common.d.ts.map +1 -0
- package/dist/types/iden3comm/handlers/contract-request.d.ts +96 -0
- package/dist/types/iden3comm/handlers/contract-request.d.ts.map +1 -0
- package/dist/types/iden3comm/handlers/credential-proposal.d.ts +120 -0
- package/dist/types/iden3comm/handlers/credential-proposal.d.ts.map +1 -0
- package/dist/types/iden3comm/handlers/discovery-protocol.d.ts +101 -0
- package/dist/types/iden3comm/handlers/discovery-protocol.d.ts.map +1 -0
- package/dist/types/iden3comm/handlers/fetch.d.ts +130 -0
- package/dist/types/iden3comm/handlers/fetch.d.ts.map +1 -0
- package/dist/types/iden3comm/handlers/index.d.ts +12 -0
- package/dist/types/iden3comm/handlers/index.d.ts.map +1 -0
- package/dist/types/iden3comm/handlers/message-handler.d.ts +93 -0
- package/dist/types/iden3comm/handlers/message-handler.d.ts.map +1 -0
- package/dist/types/iden3comm/handlers/payment.d.ts +167 -0
- package/dist/types/iden3comm/handlers/payment.d.ts.map +1 -0
- package/dist/types/iden3comm/handlers/problem-report.d.ts +18 -0
- package/dist/types/iden3comm/handlers/problem-report.d.ts.map +1 -0
- package/dist/types/iden3comm/handlers/refresh.d.ts +57 -0
- package/dist/types/iden3comm/handlers/refresh.d.ts.map +1 -0
- package/dist/types/iden3comm/handlers/revocation-status.d.ts +76 -0
- package/dist/types/iden3comm/handlers/revocation-status.d.ts.map +1 -0
- package/dist/types/iden3comm/index.d.ts +9 -0
- package/dist/types/iden3comm/index.d.ts.map +1 -0
- package/dist/types/iden3comm/packageManager.d.ts +47 -0
- package/dist/types/iden3comm/packageManager.d.ts.map +1 -0
- package/dist/types/iden3comm/packers/index.d.ts +4 -0
- package/dist/types/iden3comm/packers/index.d.ts.map +1 -0
- package/dist/types/iden3comm/packers/jws.d.ts +56 -0
- package/dist/types/iden3comm/packers/jws.d.ts.map +1 -0
- package/dist/types/iden3comm/packers/plain.d.ts +47 -0
- package/dist/types/iden3comm/packers/plain.d.ts.map +1 -0
- package/dist/types/iden3comm/packers/zkp.d.ts +98 -0
- package/dist/types/iden3comm/packers/zkp.d.ts.map +1 -0
- package/dist/types/iden3comm/types/index.d.ts +17 -0
- package/dist/types/iden3comm/types/index.d.ts.map +1 -0
- package/dist/types/iden3comm/types/models.d.ts +7 -0
- package/dist/types/iden3comm/types/models.d.ts.map +1 -0
- package/dist/types/iden3comm/types/packageManager.d.ts +100 -0
- package/dist/types/iden3comm/types/packageManager.d.ts.map +1 -0
- package/dist/types/iden3comm/types/packer.d.ts +158 -0
- package/dist/types/iden3comm/types/packer.d.ts.map +1 -0
- package/dist/types/iden3comm/types/protocol/accept-profile.d.ts +8 -0
- package/dist/types/iden3comm/types/protocol/accept-profile.d.ts.map +1 -0
- package/dist/types/iden3comm/types/protocol/attachment.d.ts +11 -0
- package/dist/types/iden3comm/types/protocol/attachment.d.ts.map +1 -0
- package/dist/types/iden3comm/types/protocol/auth.d.ts +90 -0
- package/dist/types/iden3comm/types/protocol/auth.d.ts.map +1 -0
- package/dist/types/iden3comm/types/protocol/common.d.ts +11 -0
- package/dist/types/iden3comm/types/protocol/common.d.ts.map +1 -0
- package/dist/types/iden3comm/types/protocol/contract-request.d.ts +62 -0
- package/dist/types/iden3comm/types/protocol/contract-request.d.ts.map +1 -0
- package/dist/types/iden3comm/types/protocol/credentials.d.ts +82 -0
- package/dist/types/iden3comm/types/protocol/credentials.d.ts.map +1 -0
- package/dist/types/iden3comm/types/protocol/discovery-protocol.d.ts +42 -0
- package/dist/types/iden3comm/types/protocol/discovery-protocol.d.ts.map +1 -0
- package/dist/types/iden3comm/types/protocol/messages.d.ts +12 -0
- package/dist/types/iden3comm/types/protocol/messages.d.ts.map +1 -0
- package/dist/types/iden3comm/types/protocol/payment.d.ts +178 -0
- package/dist/types/iden3comm/types/protocol/payment.d.ts.map +1 -0
- package/dist/types/iden3comm/types/protocol/problem-report.d.ts +17 -0
- package/dist/types/iden3comm/types/protocol/problem-report.d.ts.map +1 -0
- package/dist/types/iden3comm/types/protocol/proof.d.ts +22 -0
- package/dist/types/iden3comm/types/protocol/proof.d.ts.map +1 -0
- package/dist/types/iden3comm/types/protocol/proposal-request.d.ts +33 -0
- package/dist/types/iden3comm/types/protocol/proposal-request.d.ts.map +1 -0
- package/dist/types/iden3comm/types/protocol/revocation.d.ts +20 -0
- package/dist/types/iden3comm/types/protocol/revocation.d.ts.map +1 -0
- package/dist/types/iden3comm/utils/accept-profile.d.ts +4 -0
- package/dist/types/iden3comm/utils/accept-profile.d.ts.map +1 -0
- package/dist/types/iden3comm/utils/did.d.ts +8 -0
- package/dist/types/iden3comm/utils/did.d.ts.map +1 -0
- package/dist/types/iden3comm/utils/envelope.d.ts +32 -0
- package/dist/types/iden3comm/utils/envelope.d.ts.map +1 -0
- package/dist/types/iden3comm/utils/index.d.ts +5 -0
- package/dist/types/iden3comm/utils/index.d.ts.map +1 -0
- package/dist/types/iden3comm/utils/message.d.ts +20 -0
- package/dist/types/iden3comm/utils/message.d.ts.map +1 -0
- package/dist/types/identity/common.d.ts +27 -0
- package/dist/types/identity/common.d.ts.map +1 -0
- package/dist/types/identity/identity-wallet.d.ts +472 -0
- package/dist/types/identity/identity-wallet.d.ts.map +1 -0
- package/dist/types/identity/index.d.ts +3 -0
- package/dist/types/identity/index.d.ts.map +1 -0
- package/dist/types/index.d.ts +17 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/kms/index.d.ts +5 -0
- package/dist/types/kms/index.d.ts.map +1 -0
- package/dist/types/kms/key-providers/bjj-provider.d.ts +54 -0
- package/dist/types/kms/key-providers/bjj-provider.d.ts.map +1 -0
- package/dist/types/kms/key-providers/ed25519-provider.d.ts +61 -0
- package/dist/types/kms/key-providers/ed25519-provider.d.ts.map +1 -0
- package/dist/types/kms/key-providers/index.d.ts +4 -0
- package/dist/types/kms/key-providers/index.d.ts.map +1 -0
- package/dist/types/kms/key-providers/secp256k1-provider.d.ts +62 -0
- package/dist/types/kms/key-providers/secp256k1-provider.d.ts.map +1 -0
- package/dist/types/kms/kms.d.ts +120 -0
- package/dist/types/kms/kms.d.ts.map +1 -0
- package/dist/types/kms/provider-helpers.d.ts +10 -0
- package/dist/types/kms/provider-helpers.d.ts.map +1 -0
- package/dist/types/kms/store/abstract-key-store.d.ts +41 -0
- package/dist/types/kms/store/abstract-key-store.d.ts.map +1 -0
- package/dist/types/kms/store/index.d.ts +6 -0
- package/dist/types/kms/store/index.d.ts.map +1 -0
- package/dist/types/kms/store/indexed-db-key-store.d.ts +44 -0
- package/dist/types/kms/store/indexed-db-key-store.d.ts.map +1 -0
- package/dist/types/kms/store/local-storage-key-store.d.ts +42 -0
- package/dist/types/kms/store/local-storage-key-store.d.ts.map +1 -0
- package/dist/types/kms/store/memory-key-store.d.ts +24 -0
- package/dist/types/kms/store/memory-key-store.d.ts.map +1 -0
- package/dist/types/kms/store/types.d.ts +21 -0
- package/dist/types/kms/store/types.d.ts.map +1 -0
- package/dist/types/proof/common.d.ts +49 -0
- package/dist/types/proof/common.d.ts.map +1 -0
- package/dist/types/proof/index.d.ts +5 -0
- package/dist/types/proof/index.d.ts.map +1 -0
- package/dist/types/proof/proof-service.d.ts +169 -0
- package/dist/types/proof/proof-service.d.ts.map +1 -0
- package/dist/types/proof/provers/index.d.ts +4 -0
- package/dist/types/proof/provers/index.d.ts.map +1 -0
- package/dist/types/proof/provers/inputs-generator.d.ts +57 -0
- package/dist/types/proof/provers/inputs-generator.d.ts.map +1 -0
- package/dist/types/proof/provers/prover.d.ts +56 -0
- package/dist/types/proof/provers/prover.d.ts.map +1 -0
- package/dist/types/proof/provers/witness_calculator.d.ts +17 -0
- package/dist/types/proof/provers/witness_calculator.d.ts.map +1 -0
- package/dist/types/proof/verifiers/index.d.ts +4 -0
- package/dist/types/proof/verifiers/index.d.ts.map +1 -0
- package/dist/types/proof/verifiers/pub-signals-verifier.d.ts +60 -0
- package/dist/types/proof/verifiers/pub-signals-verifier.d.ts.map +1 -0
- package/dist/types/proof/verifiers/query-hash.d.ts +4 -0
- package/dist/types/proof/verifiers/query-hash.d.ts.map +1 -0
- package/dist/types/proof/verifiers/query.d.ts +43 -0
- package/dist/types/proof/verifiers/query.d.ts.map +1 -0
- package/dist/types/schema-processor/index.d.ts +4 -0
- package/dist/types/schema-processor/index.d.ts.map +1 -0
- package/dist/types/schema-processor/json/index.d.ts +3 -0
- package/dist/types/schema-processor/json/index.d.ts.map +1 -0
- package/dist/types/schema-processor/json/parser.d.ts +141 -0
- package/dist/types/schema-processor/json/parser.d.ts.map +1 -0
- package/dist/types/schema-processor/json/validator.d.ts +26 -0
- package/dist/types/schema-processor/json/validator.d.ts.map +1 -0
- package/dist/types/schema-processor/jsonld/cache.d.ts +3 -0
- package/dist/types/schema-processor/jsonld/cache.d.ts.map +1 -0
- package/dist/types/schema-processor/jsonld/index.d.ts +3 -0
- package/dist/types/schema-processor/jsonld/index.d.ts.map +1 -0
- package/dist/types/schema-processor/jsonld/parser.d.ts +30 -0
- package/dist/types/schema-processor/jsonld/parser.d.ts.map +1 -0
- package/dist/types/schema-processor/utils.d.ts +54 -0
- package/dist/types/schema-processor/utils.d.ts.map +1 -0
- package/dist/types/storage/blockchain/common.d.ts +8 -0
- package/dist/types/storage/blockchain/common.d.ts.map +1 -0
- package/dist/types/storage/blockchain/did-resolver-readonly-storage.d.ts +17 -0
- package/dist/types/storage/blockchain/did-resolver-readonly-storage.d.ts.map +1 -0
- package/dist/types/storage/blockchain/erc20-helper.d.ts +20 -0
- package/dist/types/storage/blockchain/erc20-helper.d.ts.map +1 -0
- package/dist/types/storage/blockchain/errors.d.ts +4 -0
- package/dist/types/storage/blockchain/errors.d.ts.map +1 -0
- package/dist/types/storage/blockchain/index.d.ts +8 -0
- package/dist/types/storage/blockchain/index.d.ts.map +1 -0
- package/dist/types/storage/blockchain/onchain-issuer-adapter/non-merklized/version/v0.0.1/onchain-non-merklized-issuer-adapter.d.ts +67 -0
- package/dist/types/storage/blockchain/onchain-issuer-adapter/non-merklized/version/v0.0.1/onchain-non-merklized-issuer-adapter.d.ts.map +1 -0
- package/dist/types/storage/blockchain/onchain-issuer.d.ts +41 -0
- package/dist/types/storage/blockchain/onchain-issuer.d.ts.map +1 -0
- package/dist/types/storage/blockchain/onchain-revocation.d.ts +41 -0
- package/dist/types/storage/blockchain/onchain-revocation.d.ts.map +1 -0
- package/dist/types/storage/blockchain/onchain-zkp-verifier.d.ts +116 -0
- package/dist/types/storage/blockchain/onchain-zkp-verifier.d.ts.map +1 -0
- package/dist/types/storage/blockchain/state.d.ts +127 -0
- package/dist/types/storage/blockchain/state.d.ts.map +1 -0
- package/dist/types/storage/entities/circuitData.d.ts +8 -0
- package/dist/types/storage/entities/circuitData.d.ts.map +1 -0
- package/dist/types/storage/entities/identity.d.ts +17 -0
- package/dist/types/storage/entities/identity.d.ts.map +1 -0
- package/dist/types/storage/entities/index.d.ts +5 -0
- package/dist/types/storage/entities/index.d.ts.map +1 -0
- package/dist/types/storage/entities/mt.d.ts +22 -0
- package/dist/types/storage/entities/mt.d.ts.map +1 -0
- package/dist/types/storage/entities/state.d.ts +92 -0
- package/dist/types/storage/entities/state.d.ts.map +1 -0
- package/dist/types/storage/errors.d.ts +9 -0
- package/dist/types/storage/errors.d.ts.map +1 -0
- package/dist/types/storage/filters/index.d.ts +2 -0
- package/dist/types/storage/filters/index.d.ts.map +1 -0
- package/dist/types/storage/filters/jsonQuery.d.ts +83 -0
- package/dist/types/storage/filters/jsonQuery.d.ts.map +1 -0
- package/dist/types/storage/fs/circuits-storage.d.ts +64 -0
- package/dist/types/storage/fs/circuits-storage.d.ts.map +1 -0
- package/dist/types/storage/fs/index.d.ts +2 -0
- package/dist/types/storage/fs/index.d.ts.map +1 -0
- package/dist/types/storage/index.d.ts +10 -0
- package/dist/types/storage/index.d.ts.map +1 -0
- package/dist/types/storage/indexed-db/data-source.d.ts +44 -0
- package/dist/types/storage/indexed-db/data-source.d.ts.map +1 -0
- package/dist/types/storage/indexed-db/index.d.ts +3 -0
- package/dist/types/storage/indexed-db/index.d.ts.map +1 -0
- package/dist/types/storage/indexed-db/merkletree.d.ts +43 -0
- package/dist/types/storage/indexed-db/merkletree.d.ts.map +1 -0
- package/dist/types/storage/interfaces/circuits.d.ts +26 -0
- package/dist/types/storage/interfaces/circuits.d.ts.map +1 -0
- package/dist/types/storage/interfaces/credentials.d.ts +53 -0
- package/dist/types/storage/interfaces/credentials.d.ts.map +1 -0
- package/dist/types/storage/interfaces/data-source.d.ts +39 -0
- package/dist/types/storage/interfaces/data-source.d.ts.map +1 -0
- package/dist/types/storage/interfaces/data-storage.d.ts +17 -0
- package/dist/types/storage/interfaces/data-storage.d.ts.map +1 -0
- package/dist/types/storage/interfaces/identity.d.ts +70 -0
- package/dist/types/storage/interfaces/identity.d.ts.map +1 -0
- package/dist/types/storage/interfaces/index.d.ts +11 -0
- package/dist/types/storage/interfaces/index.d.ts.map +1 -0
- package/dist/types/storage/interfaces/merkletree.d.ts +44 -0
- package/dist/types/storage/interfaces/merkletree.d.ts.map +1 -0
- package/dist/types/storage/interfaces/onchain-issuer.d.ts +13 -0
- package/dist/types/storage/interfaces/onchain-issuer.d.ts.map +1 -0
- package/dist/types/storage/interfaces/onchain-revocation.d.ts +19 -0
- package/dist/types/storage/interfaces/onchain-revocation.d.ts.map +1 -0
- package/dist/types/storage/interfaces/onchain-zkp-verifier.d.ts +63 -0
- package/dist/types/storage/interfaces/onchain-zkp-verifier.d.ts.map +1 -0
- package/dist/types/storage/interfaces/state.d.ts +74 -0
- package/dist/types/storage/interfaces/state.d.ts.map +1 -0
- package/dist/types/storage/local-storage/data-source.d.ts +41 -0
- package/dist/types/storage/local-storage/data-source.d.ts.map +1 -0
- package/dist/types/storage/local-storage/index.d.ts +3 -0
- package/dist/types/storage/local-storage/index.d.ts.map +1 -0
- package/dist/types/storage/local-storage/merkletree.d.ts +41 -0
- package/dist/types/storage/local-storage/merkletree.d.ts.map +1 -0
- package/dist/types/storage/memory/cache-lru.d.ts +11 -0
- package/dist/types/storage/memory/cache-lru.d.ts.map +1 -0
- package/dist/types/storage/memory/data-source.d.ts +20 -0
- package/dist/types/storage/memory/data-source.d.ts.map +1 -0
- package/dist/types/storage/memory/index.d.ts +4 -0
- package/dist/types/storage/memory/index.d.ts.map +1 -0
- package/dist/types/storage/memory/merkletree.d.ts +48 -0
- package/dist/types/storage/memory/merkletree.d.ts.map +1 -0
- package/dist/types/storage/shared/circuit-storage.d.ts +39 -0
- package/dist/types/storage/shared/circuit-storage.d.ts.map +1 -0
- package/dist/types/storage/shared/credential-storage.d.ts +39 -0
- package/dist/types/storage/shared/credential-storage.d.ts.map +1 -0
- package/dist/types/storage/shared/identity-storage.d.ts +45 -0
- package/dist/types/storage/shared/identity-storage.d.ts.map +1 -0
- package/dist/types/storage/shared/index.d.ts +4 -0
- package/dist/types/storage/shared/index.d.ts.map +1 -0
- package/dist/types/storage/utils.d.ts +4 -0
- package/dist/types/storage/utils.d.ts.map +1 -0
- package/dist/types/utils/compare-func.d.ts +2 -0
- package/dist/types/utils/compare-func.d.ts.map +1 -0
- package/dist/types/utils/did-helper.d.ts +38 -0
- package/dist/types/utils/did-helper.d.ts.map +1 -0
- package/dist/types/utils/encoding.d.ts +25 -0
- package/dist/types/utils/encoding.d.ts.map +1 -0
- package/dist/types/utils/index.d.ts +8 -0
- package/dist/types/utils/index.d.ts.map +1 -0
- package/dist/types/utils/message-bus.d.ts +63 -0
- package/dist/types/utils/message-bus.d.ts.map +1 -0
- package/dist/types/utils/object.d.ts +10 -0
- package/dist/types/utils/object.d.ts.map +1 -0
- package/dist/types/utils/payments/evm.d.ts +19 -0
- package/dist/types/utils/payments/evm.d.ts.map +1 -0
- package/dist/types/utils/payments/solana.d.ts +88 -0
- package/dist/types/utils/payments/solana.d.ts.map +1 -0
- package/dist/types/verifiable/constants.d.ts +188 -0
- package/dist/types/verifiable/constants.d.ts.map +1 -0
- package/dist/types/verifiable/core-utils.d.ts +87 -0
- package/dist/types/verifiable/core-utils.d.ts.map +1 -0
- package/dist/types/verifiable/credential.d.ts +150 -0
- package/dist/types/verifiable/credential.d.ts.map +1 -0
- package/dist/types/verifiable/index.d.ts +7 -0
- package/dist/types/verifiable/index.d.ts.map +1 -0
- package/dist/types/verifiable/presentation.d.ts +11 -0
- package/dist/types/verifiable/presentation.d.ts.map +1 -0
- package/dist/types/verifiable/proof.d.ts +211 -0
- package/dist/types/verifiable/proof.d.ts.map +1 -0
- package/dist/types/verifiable/schema.d.ts +3 -0
- package/dist/types/verifiable/schema.d.ts.map +1 -0
- package/package.json +104 -0
- package/src/blockchain/index.ts +1 -0
- package/src/blockchain/transaction-service.ts +121 -0
- package/src/circuits/atomic-query-mtp-v2-on-chain.ts +338 -0
- package/src/circuits/atomic-query-mtp-v2.ts +283 -0
- package/src/circuits/atomic-query-sig-v2-on-chain.ts +411 -0
- package/src/circuits/atomic-query-sig-v2.ts +340 -0
- package/src/circuits/atomic-query-v3-on-chain.ts +531 -0
- package/src/circuits/atomic-query-v3.ts +461 -0
- package/src/circuits/auth-v2.ts +159 -0
- package/src/circuits/common.ts +261 -0
- package/src/circuits/comparer.ts +227 -0
- package/src/circuits/index.ts +12 -0
- package/src/circuits/linked-multi-query.ts +180 -0
- package/src/circuits/models.ts +263 -0
- package/src/circuits/state-transition.ts +139 -0
- package/src/credentials/credential-wallet.ts +353 -0
- package/src/credentials/index.ts +11 -0
- package/src/credentials/models.ts +93 -0
- package/src/credentials/rhs.ts +176 -0
- package/src/credentials/status/agent-revocation.ts +69 -0
- package/src/credentials/status/credential-status-publisher.ts +143 -0
- package/src/credentials/status/did-resolver-revocation.ts +24 -0
- package/src/credentials/status/on-chain-revocation.ts +174 -0
- package/src/credentials/status/resolver.ts +81 -0
- package/src/credentials/status/reverse-sparse-merkle-tree.ts +366 -0
- package/src/credentials/status/sparse-merkle-tree.ts +50 -0
- package/src/credentials/utils.ts +36 -0
- package/src/iden3comm/constants.ts +119 -0
- package/src/iden3comm/errors.ts +14 -0
- package/src/iden3comm/handlers/auth.ts +520 -0
- package/src/iden3comm/handlers/common.ts +324 -0
- package/src/iden3comm/handlers/contract-request.ts +367 -0
- package/src/iden3comm/handlers/credential-proposal.ts +371 -0
- package/src/iden3comm/handlers/discovery-protocol.ts +277 -0
- package/src/iden3comm/handlers/fetch.ts +450 -0
- package/src/iden3comm/handlers/index.ts +11 -0
- package/src/iden3comm/handlers/message-handler.ts +165 -0
- package/src/iden3comm/handlers/payment.ts +698 -0
- package/src/iden3comm/handlers/problem-report.ts +41 -0
- package/src/iden3comm/handlers/refresh.ts +138 -0
- package/src/iden3comm/handlers/revocation-status.ts +228 -0
- package/src/iden3comm/index.ts +9 -0
- package/src/iden3comm/packageManager.ts +143 -0
- package/src/iden3comm/packers/index.ts +3 -0
- package/src/iden3comm/packers/jws.ts +225 -0
- package/src/iden3comm/packers/plain.ts +86 -0
- package/src/iden3comm/packers/zkp.ts +243 -0
- package/src/iden3comm/types/index.ts +17 -0
- package/src/iden3comm/types/models.ts +7 -0
- package/src/iden3comm/types/packageManager.ts +112 -0
- package/src/iden3comm/types/packer.ts +190 -0
- package/src/iden3comm/types/protocol/accept-profile.ts +14 -0
- package/src/iden3comm/types/protocol/attachment.ts +12 -0
- package/src/iden3comm/types/protocol/auth.ts +104 -0
- package/src/iden3comm/types/protocol/common.ts +10 -0
- package/src/iden3comm/types/protocol/contract-request.ts +76 -0
- package/src/iden3comm/types/protocol/credentials.ts +96 -0
- package/src/iden3comm/types/protocol/discovery-protocol.ts +49 -0
- package/src/iden3comm/types/protocol/messages.ts +13 -0
- package/src/iden3comm/types/protocol/payment.ts +231 -0
- package/src/iden3comm/types/protocol/problem-report.ts +18 -0
- package/src/iden3comm/types/protocol/proof.ts +25 -0
- package/src/iden3comm/types/protocol/proposal-request.ts +38 -0
- package/src/iden3comm/types/protocol/revocation.ts +23 -0
- package/src/iden3comm/utils/accept-profile.ts +121 -0
- package/src/iden3comm/utils/did.ts +71 -0
- package/src/iden3comm/utils/envelope.ts +101 -0
- package/src/iden3comm/utils/index.ts +4 -0
- package/src/iden3comm/utils/message.ts +41 -0
- package/src/identity/common.ts +69 -0
- package/src/identity/identity-wallet.ts +1592 -0
- package/src/identity/index.ts +2 -0
- package/src/index.ts +16 -0
- package/src/kms/index.ts +4 -0
- package/src/kms/key-providers/bjj-provider.ts +118 -0
- package/src/kms/key-providers/ed25519-provider.ts +105 -0
- package/src/kms/key-providers/index.ts +3 -0
- package/src/kms/key-providers/secp256k1-provider.ts +125 -0
- package/src/kms/kms.ts +173 -0
- package/src/kms/provider-helpers.ts +13 -0
- package/src/kms/store/abstract-key-store.ts +34 -0
- package/src/kms/store/index.ts +5 -0
- package/src/kms/store/indexed-db-key-store.ts +60 -0
- package/src/kms/store/local-storage-key-store.ts +69 -0
- package/src/kms/store/memory-key-store.ts +29 -0
- package/src/kms/store/types.ts +21 -0
- package/src/proof/common.ts +273 -0
- package/src/proof/index.ts +4 -0
- package/src/proof/proof-service.ts +623 -0
- package/src/proof/provers/index.ts +3 -0
- package/src/proof/provers/inputs-generator.ts +627 -0
- package/src/proof/provers/prover.ts +104 -0
- package/src/proof/provers/witness_calculator.ts +315 -0
- package/src/proof/verifiers/index.ts +3 -0
- package/src/proof/verifiers/pub-signals-verifier.ts +730 -0
- package/src/proof/verifiers/query-hash.ts +57 -0
- package/src/proof/verifiers/query.ts +340 -0
- package/src/schema-processor/index.ts +3 -0
- package/src/schema-processor/json/index.ts +2 -0
- package/src/schema-processor/json/parser.ts +256 -0
- package/src/schema-processor/json/validator.ts +67 -0
- package/src/schema-processor/jsonld/cache.ts +49 -0
- package/src/schema-processor/jsonld/index.ts +2 -0
- package/src/schema-processor/jsonld/parser.ts +93 -0
- package/src/schema-processor/utils.ts +84 -0
- package/src/storage/blockchain/abi/CredentialStatusResolver.json +1 -0
- package/src/storage/blockchain/abi/ERC20.json +1 -0
- package/src/storage/blockchain/abi/ERC20Permit.json +1 -0
- package/src/storage/blockchain/abi/IdentityBase.json +1 -0
- package/src/storage/blockchain/abi/State.json +1 -0
- package/src/storage/blockchain/abi/ZkpVerifier.json +789 -0
- package/src/storage/blockchain/common.ts +20 -0
- package/src/storage/blockchain/did-resolver-readonly-storage.ts +90 -0
- package/src/storage/blockchain/erc20-helper.ts +66 -0
- package/src/storage/blockchain/errors.ts +46 -0
- package/src/storage/blockchain/index.ts +7 -0
- package/src/storage/blockchain/onchain-issuer-adapter/non-merklized/version/v0.0.1/onchain-non-merklized-issuer-adapter.ts +327 -0
- package/src/storage/blockchain/onchain-issuer.ts +104 -0
- package/src/storage/blockchain/onchain-revocation.ts +143 -0
- package/src/storage/blockchain/onchain-zkp-verifier.ts +704 -0
- package/src/storage/blockchain/state.ts +471 -0
- package/src/storage/entities/circuitData.ts +7 -0
- package/src/storage/entities/identity.ts +18 -0
- package/src/storage/entities/index.ts +4 -0
- package/src/storage/entities/mt.ts +25 -0
- package/src/storage/entities/state.ts +97 -0
- package/src/storage/errors.ts +8 -0
- package/src/storage/filters/index.ts +1 -0
- package/src/storage/filters/jsonQuery.ts +368 -0
- package/src/storage/fs/circuits-storage.ts +149 -0
- package/src/storage/fs/index.ts +1 -0
- package/src/storage/index.ts +9 -0
- package/src/storage/indexed-db/data-source.ts +58 -0
- package/src/storage/indexed-db/index.ts +2 -0
- package/src/storage/indexed-db/merkletree.ts +140 -0
- package/src/storage/interfaces/circuits.ts +27 -0
- package/src/storage/interfaces/credentials.ts +53 -0
- package/src/storage/interfaces/data-source.ts +41 -0
- package/src/storage/interfaces/data-storage.ts +17 -0
- package/src/storage/interfaces/identity.ts +73 -0
- package/src/storage/interfaces/index.ts +10 -0
- package/src/storage/interfaces/merkletree.ts +52 -0
- package/src/storage/interfaces/onchain-issuer.ts +13 -0
- package/src/storage/interfaces/onchain-revocation.ts +22 -0
- package/src/storage/interfaces/onchain-zkp-verifier.ts +94 -0
- package/src/storage/interfaces/state.ts +81 -0
- package/src/storage/local-storage/data-source.ts +87 -0
- package/src/storage/local-storage/index.ts +2 -0
- package/src/storage/local-storage/merkletree.ts +137 -0
- package/src/storage/memory/cache-lru.ts +30 -0
- package/src/storage/memory/data-source.ts +45 -0
- package/src/storage/memory/index.ts +3 -0
- package/src/storage/memory/merkletree.ts +116 -0
- package/src/storage/shared/circuit-storage.ts +49 -0
- package/src/storage/shared/credential-storage.ts +70 -0
- package/src/storage/shared/identity-storage.ts +82 -0
- package/src/storage/shared/index.ts +3 -0
- package/src/storage/utils.ts +19 -0
- package/src/utils/compare-func.ts +5 -0
- package/src/utils/did-helper.ts +157 -0
- package/src/utils/encoding.ts +47 -0
- package/src/utils/index.ts +7 -0
- package/src/utils/message-bus.ts +88 -0
- package/src/utils/object.ts +52 -0
- package/src/utils/payments/evm.ts +152 -0
- package/src/utils/payments/solana.ts +360 -0
- package/src/verifiable/constants.ts +239 -0
- package/src/verifiable/core-utils.ts +307 -0
- package/src/verifiable/credential.ts +649 -0
- package/src/verifiable/index.ts +6 -0
- package/src/verifiable/presentation.ts +97 -0
- package/src/verifiable/proof.ts +277 -0
- 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 @@
|
|
|
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 @@
|
|
|
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"}
|