@docknetwork/wallet-sdk-wasm 1.5.14 → 1.7.6

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 (146) hide show
  1. package/generate-docs.js +49 -0
  2. package/jsdoc.conf.json +29 -6
  3. package/lib/index.js +9 -1
  4. package/lib/index.mjs +9 -1
  5. package/lib/modules/network-manager.js +15 -12
  6. package/lib/modules/network-manager.mjs +15 -12
  7. package/lib/rpc-server.js +11 -1
  8. package/lib/rpc-server.mjs +11 -1
  9. package/lib/services/blockchain/cached-did-resolver.js +113 -0
  10. package/lib/services/blockchain/cached-did-resolver.mjs +109 -0
  11. package/lib/services/blockchain/index.js +11 -0
  12. package/lib/services/blockchain/index.mjs +11 -0
  13. package/lib/services/blockchain/service-rpc.js +12 -0
  14. package/lib/services/blockchain/service-rpc.mjs +12 -0
  15. package/lib/services/blockchain/service.js +161 -19
  16. package/lib/services/blockchain/service.mjs +162 -20
  17. package/lib/services/credential/bbs-revocation.js +11 -0
  18. package/lib/services/credential/bbs-revocation.mjs +11 -0
  19. package/lib/services/credential/bound-check.js +1 -1
  20. package/lib/services/credential/bound-check.mjs +1 -1
  21. package/lib/services/credential/config.js +4 -1
  22. package/lib/services/credential/config.mjs +4 -1
  23. package/lib/services/credential/delegatable-credentials.js +300 -0
  24. package/lib/services/credential/delegatable-credentials.mjs +263 -0
  25. package/lib/services/credential/index.js +53 -0
  26. package/lib/services/credential/index.mjs +18 -0
  27. package/lib/services/credential/pex-helpers.js +4 -4
  28. package/lib/services/credential/pex-helpers.mjs +4 -4
  29. package/lib/services/credential/sd-jwt.js +214 -0
  30. package/lib/services/credential/sd-jwt.mjs +200 -0
  31. package/lib/services/credential/service-rpc.js +9 -0
  32. package/lib/services/credential/service-rpc.mjs +9 -0
  33. package/lib/services/credential/service.js +324 -7
  34. package/lib/services/credential/service.mjs +324 -7
  35. package/lib/services/edv/index.js +1 -0
  36. package/lib/services/edv/index.mjs +1 -0
  37. package/lib/services/edv/service-rpc.js +23 -0
  38. package/lib/services/edv/service-rpc.mjs +23 -0
  39. package/lib/services/edv/service.js +226 -2
  40. package/lib/services/edv/service.mjs +223 -3
  41. package/lib/services/index.js +14 -0
  42. package/lib/services/index.mjs +14 -0
  43. package/lib/services/pex/config.js +4 -0
  44. package/lib/services/pex/config.mjs +4 -0
  45. package/lib/services/pex/service-rpc.js +4 -0
  46. package/lib/services/pex/service-rpc.mjs +4 -0
  47. package/lib/services/pex/service.js +7 -0
  48. package/lib/services/pex/service.mjs +7 -0
  49. package/lib/services/relay-service/service.js +124 -1
  50. package/lib/services/relay-service/service.mjs +124 -1
  51. package/lib/services/rpc-service-client.js +0 -3
  52. package/lib/services/rpc-service-client.mjs +0 -3
  53. package/lib/services/storage/index.js +19 -2
  54. package/lib/services/storage/index.mjs +24 -1
  55. package/lib/services/storage/service-rpc.js +7 -3
  56. package/lib/services/storage/service-rpc.mjs +7 -3
  57. package/lib/services/storage/service.js +4 -0
  58. package/lib/services/storage/service.mjs +4 -0
  59. package/lib/setup-nodejs.js +9 -1
  60. package/lib/setup-nodejs.mjs +9 -1
  61. package/lib/setup-tests.js +9 -1
  62. package/lib/setup-tests.mjs +9 -1
  63. package/lib/src/modules/event-manager.d.ts +0 -1
  64. package/lib/src/modules/event-manager.d.ts.map +1 -1
  65. package/lib/src/modules/network-manager.d.ts +2 -4
  66. package/lib/src/modules/network-manager.d.ts.map +1 -1
  67. package/lib/src/services/blockchain/cached-did-resolver.d.ts +28 -0
  68. package/lib/src/services/blockchain/cached-did-resolver.d.ts.map +1 -0
  69. package/lib/src/services/blockchain/cached-did-resolver.test.d.ts +2 -0
  70. package/lib/src/services/blockchain/cached-did-resolver.test.d.ts.map +1 -0
  71. package/lib/src/services/blockchain/configs.d.ts +1 -2
  72. package/lib/src/services/blockchain/configs.d.ts.map +1 -1
  73. package/lib/src/services/blockchain/service.d.ts +117 -19
  74. package/lib/src/services/blockchain/service.d.ts.map +1 -1
  75. package/lib/src/services/credential/bbs-revocation.d.ts +1 -1
  76. package/lib/src/services/credential/bbs-revocation.d.ts.map +1 -1
  77. package/lib/src/services/credential/bound-check.d.ts.map +1 -1
  78. package/lib/src/services/credential/config.d.ts.map +1 -1
  79. package/lib/src/services/credential/delegatable-credentials.d.ts +272 -0
  80. package/lib/src/services/credential/delegatable-credentials.d.ts.map +1 -0
  81. package/lib/src/services/credential/index.d.ts +4 -0
  82. package/lib/src/services/credential/index.d.ts.map +1 -1
  83. package/lib/src/services/credential/pex-helpers.d.ts +2 -2
  84. package/lib/src/services/credential/pex-helpers.d.ts.map +1 -1
  85. package/lib/src/services/credential/sd-jwt.test.d.ts +2 -0
  86. package/lib/src/services/credential/sd-jwt.test.d.ts.map +1 -0
  87. package/lib/src/services/credential/service.d.ts +274 -4
  88. package/lib/src/services/credential/service.d.ts.map +1 -1
  89. package/lib/src/services/dids/keypair-utils.d.ts +2 -2
  90. package/lib/src/services/dids/keypair-utils.d.ts.map +1 -1
  91. package/lib/src/services/dids/service.d.ts +35 -3
  92. package/lib/src/services/dids/service.d.ts.map +1 -1
  93. package/lib/src/services/edv/service.d.ts +201 -2
  94. package/lib/src/services/edv/service.d.ts.map +1 -1
  95. package/lib/src/services/pex/config.d.ts +1 -0
  96. package/lib/src/services/pex/config.d.ts.map +1 -1
  97. package/lib/src/services/pex/service.d.ts +1 -0
  98. package/lib/src/services/pex/service.d.ts.map +1 -1
  99. package/lib/src/services/relay-service/service.d.ts +148 -8
  100. package/lib/src/services/relay-service/service.d.ts.map +1 -1
  101. package/lib/src/services/rpc-service-client.d.ts +2 -2
  102. package/lib/src/services/rpc-service-client.d.ts.map +1 -1
  103. package/lib/src/services/storage/index.d.ts +1 -1
  104. package/lib/src/services/storage/index.d.ts.map +1 -1
  105. package/lib/src/services/storage/service-rpc.d.ts +9 -0
  106. package/lib/src/services/storage/service-rpc.d.ts.map +1 -0
  107. package/lib/src/services/storage/service.d.ts +1 -0
  108. package/lib/src/services/storage/service.d.ts.map +1 -1
  109. package/lib/src/services/util-crypto/service.d.ts +2 -2
  110. package/lib/src/services/util-crypto/service.d.ts.map +1 -1
  111. package/lib/tsconfig.tsbuildinfo +1 -1
  112. package/lib/wallet/rpc-storage-interface.js +13 -3
  113. package/lib/wallet/rpc-storage-interface.mjs +11 -1
  114. package/lib/wallet/rpc-storage-wallet.js +10 -0
  115. package/lib/wallet/rpc-storage-wallet.mjs +10 -0
  116. package/package.json +29 -16
  117. package/rollup.config.mjs +5 -3
  118. package/src/globals.d.ts +3 -0
  119. package/src/modules/network-manager.ts +15 -14
  120. package/src/services/blockchain/cached-did-resolver.test.ts +288 -0
  121. package/src/services/blockchain/cached-did-resolver.ts +126 -0
  122. package/src/services/blockchain/configs.ts +1 -2
  123. package/src/services/blockchain/service-rpc.js +12 -0
  124. package/src/services/blockchain/service.ts +167 -20
  125. package/src/services/credential/bound-check.ts +1 -1
  126. package/src/services/credential/config.ts +7 -1
  127. package/src/services/credential/delegatable-credentials.ts +409 -0
  128. package/src/services/credential/index.ts +16 -0
  129. package/src/services/credential/pex-helpers.js +4 -4
  130. package/src/services/credential/pex-helpers.test.js +2 -2
  131. package/src/services/credential/sd-jwt.test.ts +718 -0
  132. package/src/services/credential/sd-jwt.ts +231 -0
  133. package/src/services/credential/service-rpc.js +9 -0
  134. package/src/services/credential/service.ts +328 -7
  135. package/src/services/edv/index.test.js +229 -0
  136. package/src/services/edv/service-rpc.js +23 -0
  137. package/src/services/edv/service.ts +272 -1
  138. package/src/services/pex/config.ts +4 -0
  139. package/src/services/pex/service-rpc.js +4 -0
  140. package/src/services/pex/service.ts +13 -0
  141. package/src/services/pex/tests/pex-service.test.js +210 -0
  142. package/src/services/relay-service/service.ts +130 -1
  143. package/src/services/rpc-service-client.js +0 -3
  144. package/src/services/storage/index.js +15 -1
  145. package/src/services/storage/service-rpc.js +7 -3
  146. package/src/services/storage/service.ts +5 -0
@@ -24,6 +24,11 @@ import '@scure/bip39';
24
24
  import '@scure/bip39/wordlists/english';
25
25
  import './services/util-crypto/configs.mjs';
26
26
  import '@docknetwork/credential-sdk/types';
27
+ import './services/blockchain/cached-did-resolver.mjs';
28
+ import './services/storage/index.mjs';
29
+ import './services/storage/service.mjs';
30
+ import './services/storage/service-rpc.mjs';
31
+ import './services/rpc-service-client.mjs';
27
32
  import './services/wallet/service.mjs';
28
33
  import './wallet/memory-storage-wallet.mjs';
29
34
  import '@docknetwork/universal-wallet/storage-wallet';
@@ -32,7 +37,6 @@ import '@docknetwork/universal-wallet/storage/storage-interface';
32
37
  import './services/wallet/configs.mjs';
33
38
  import './core/validation.mjs';
34
39
  import './types.mjs';
35
- import './services/storage/service.mjs';
36
40
  import './services/dids/service.mjs';
37
41
  import '@docknetwork/wallet-sdk-dids/lib';
38
42
  import './services/dids/config.mjs';
@@ -59,6 +63,9 @@ import '@docknetwork/crypto-wasm-ts/lib/legosnark';
59
63
  import './services/credential/pex-helpers.mjs';
60
64
  import '@astronautlabs/jsonpath';
61
65
  import './services/credential/bbs-revocation.mjs';
66
+ import './services/credential/sd-jwt.mjs';
67
+ import '@sd-jwt/sd-jwt-vc';
68
+ import '@sd-jwt/crypto-nodejs';
62
69
  import './services/relay-service/service.mjs';
63
70
  import './services/relay-service/configs.mjs';
64
71
  import '@docknetwork/wallet-sdk-relay-service/lib';
@@ -71,6 +78,7 @@ import './services/edv/hmac.mjs';
71
78
  import 'base64url-universal';
72
79
  import '@docknetwork/universal-wallet/crypto';
73
80
  import '@docknetwork/wallet-sdk-data-store/lib/logger';
81
+ import 'futoin-hkdf';
74
82
 
75
83
  setStorage(global.localStorage);
76
84
 
@@ -1,4 +1,3 @@
1
- /// <reference types="node" />
2
1
  import { EventEmitter } from 'events';
3
2
  export declare function once(emitter: EventEmitter, eventName: string): Promise<unknown>;
4
3
  export declare class EventManager {
@@ -1 +1 @@
1
- {"version":3,"file":"event-manager.d.ts","sourceRoot":"","sources":["../../../src/modules/event-manager.ts"],"names":[],"mappings":";AACA,OAAO,EAAC,YAAY,EAAC,MAAM,QAAQ,CAAC;AAIpC,wBAAgB,IAAI,CAAC,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,oBAE5D;AAGD,qBAAa,YAAY;IACvB,YAAY,EAAE,YAAY,CAAC;;IAK3B,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG;IAMrC,cAAc,CAAC,SAAS,KAAA,EAAE,QAAQ,KAAA;IAKlC,gBAAgB,CAAC,SAAS,KAAA,EAAE,QAAQ,KAAA;IAIpC,EAAE,CAAC,SAAS,KAAA,EAAE,QAAQ,KAAA;IAMtB,OAAO,CAAC,SAAS,KAAA;CAGlB"}
1
+ {"version":3,"file":"event-manager.d.ts","sourceRoot":"","sources":["../../../src/modules/event-manager.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,YAAY,EAAC,MAAM,QAAQ,CAAC;AAIpC,wBAAgB,IAAI,CAAC,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,oBAE5D;AAGD,qBAAa,YAAY;IACvB,YAAY,EAAE,YAAY,CAAC;;IAK3B,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG;IAMrC,cAAc,CAAC,SAAS,KAAA,EAAE,QAAQ,KAAA;IAKlC,gBAAgB,CAAC,SAAS,KAAA,EAAE,QAAQ,KAAA;IAIpC,EAAE,CAAC,SAAS,KAAA,EAAE,QAAQ,KAAA;IAMtB,OAAO,CAAC,SAAS,KAAA;CAGlB"}
@@ -1,11 +1,9 @@
1
1
  export type NetworkInfo = {
2
2
  name: string;
3
- substrateUrl: string | string[];
4
- addressPrefix: number;
5
- cheqdApiUrl: string;
3
+ cheqdApiUrl: string | string[];
6
4
  };
7
5
  export type NetworkId = 'mainnet' | 'testnet' | 'local' | 'custom';
8
- export declare const SUBSTRATE_NETWORKS: Record<NetworkId, NetworkInfo>;
6
+ export declare const BLOCKCHAIN_NETWORKS: Record<NetworkId, NetworkInfo>;
9
7
  /**
10
8
  * NetworkManager
11
9
  */
@@ -1 +1 @@
1
- {"version":3,"file":"network-manager.d.ts","sourceRoot":"","sources":["../../../src/modules/network-manager.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAChC,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,QAAQ,CAAC;AAEnE,eAAO,MAAM,kBAAkB,EAAG,MAAM,CAAC,SAAS,EAAE,WAAW,CAkB9D,CAAC;AAUF;;GAEG;AACH,qBAAa,cAAc;IACzB,SAAS,EAAE,SAAS,CAAC;IACrB,QAAQ,EAAE,OAAO,CAAC;;IAQlB;;;;OAIG;IACH,YAAY,CAAC,SAAS,EAAE,SAAS;IAMjC;;;OAGG;IACH,cAAc;IAId;;;;OAIG;IACH,MAAM,CAAC,WAAW,IAAI,cAAc;CAOrC"}
1
+ {"version":3,"file":"network-manager.d.ts","sourceRoot":"","sources":["../../../src/modules/network-manager.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,QAAQ,CAAC;AAEnE,eAAO,MAAM,mBAAmB,EAAG,MAAM,CAAC,SAAS,EAAE,WAAW,CAqB/D,CAAC;AAUF;;GAEG;AACH,qBAAa,cAAc;IACzB,SAAS,EAAE,SAAS,CAAC;IACrB,QAAQ,EAAE,OAAO,CAAC;;IAQlB;;;;OAIG;IACH,YAAY,CAAC,SAAS,EAAE,SAAS;IAMjC;;;OAGG;IACH,cAAc;IAId;;;;OAIG;IACH,MAAM,CAAC,WAAW,IAAI,cAAc;CAOrC"}
@@ -0,0 +1,28 @@
1
+ interface CacheOptions {
2
+ ttl?: number;
3
+ }
4
+ interface DIDResolver {
5
+ resolve(did: string): Promise<any>;
6
+ supports(id: string): boolean;
7
+ }
8
+ export declare class CachedDIDResolver {
9
+ private router;
10
+ private ttl;
11
+ private readonly CACHE_PREFIX;
12
+ constructor(router: DIDResolver, cacheOptions?: CacheOptions);
13
+ private getCacheKey;
14
+ private getCacheEntry;
15
+ private setCacheEntry;
16
+ getCachedDIDs(): Promise<string[]>;
17
+ resolve(did: string): Promise<any>;
18
+ private refreshInBackground;
19
+ /**
20
+ * if the did is provided, it will remove the specific did from the cache
21
+ * otherwise, it will clear the entire cache
22
+ * @param did
23
+ */
24
+ clearCache(did?: string): Promise<void>;
25
+ supports(id: string): boolean;
26
+ }
27
+ export {};
28
+ //# sourceMappingURL=cached-did-resolver.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cached-did-resolver.d.ts","sourceRoot":"","sources":["../../../../src/services/blockchain/cached-did-resolver.ts"],"names":[],"mappings":"AAQA,UAAU,YAAY;IACpB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,UAAU,WAAW;IACnB,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IACnC,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC;CAC/B;AAED,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,GAAG,CAAS;IACpB,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAgB;gBAEjC,MAAM,EAAE,WAAW,EAAE,YAAY,GAAE,YAAiB;IAMhE,OAAO,CAAC,WAAW;YAKL,aAAa;YAYb,aAAa;IAKrB,aAAa,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAalC,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;YA0B1B,mBAAmB;IAiBjC;;;;OAIG;IACG,UAAU,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAW7C,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;CAG9B"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=cached-did-resolver.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cached-did-resolver.test.d.ts","sourceRoot":"","sources":["../../../../src/services/blockchain/cached-did-resolver.test.ts"],"names":[],"mappings":""}
@@ -1,7 +1,6 @@
1
1
  export declare const validation: {};
2
2
  export type InitParams = {
3
- substrateUrl: string;
4
- cheqdApiUrl?: string;
3
+ cheqdApiUrl?: string | string[];
5
4
  networkId?: string;
6
5
  cheqdMnemonic?: string;
7
6
  };
@@ -1 +1 @@
1
- {"version":3,"file":"configs.d.ts","sourceRoot":"","sources":["../../../../src/services/blockchain/configs.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,UAAU,IAAK,CAAC;AAE7B,MAAM,MAAM,UAAU,GAAG;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,CAAC"}
1
+ {"version":3,"file":"configs.d.ts","sourceRoot":"","sources":["../../../../src/services/blockchain/configs.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,UAAU,IAAK,CAAC;AAE7B,MAAM,MAAM,UAAU,GAAG;IACvB,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,CAAC"}
@@ -1,11 +1,15 @@
1
- import { ResolverRouter } from '@docknetwork/credential-sdk/resolver';
2
1
  import { InitParams } from './configs';
2
+ /**
3
+ * Universal resolver URL for DID resolution fallback
4
+ * @constant {string}
5
+ */
3
6
  export declare const universalResolverUrl = "https://uniresolver.truvera.io";
4
- declare class AnyDIDResolver extends ResolverRouter {
5
- method: any;
6
- }
7
+ import { CachedDIDResolver } from './cached-did-resolver';
7
8
  /**
8
- *
9
+ * Main blockchain service class for managing blockchain connections and DID resolution
10
+ * @class
11
+ * @description Provides methods for connecting to Cheqd blockchain, resolving DIDs,
12
+ * and managing blockchain-related operations
9
13
  */
10
14
  export declare class BlockchainService {
11
15
  dock: any;
@@ -13,12 +17,32 @@ export declare class BlockchainService {
13
17
  cheqdApi: any;
14
18
  cheqdApiUrl: any;
15
19
  isBlockchainReady: boolean;
16
- resolver: any;
20
+ private _resolver;
21
+ get resolver(): any;
22
+ /**
23
+ * Event names emitted by the blockchain service
24
+ * @static
25
+ * @readonly
26
+ * @property {string} BLOCKCHAIN_READY - Emitted when blockchain connection is established
27
+ */
17
28
  static Events: {
18
29
  BLOCKCHAIN_READY: string;
19
30
  };
20
- rpcMethods: ((() => Promise<any>) | ((params: InitParams) => Promise<boolean>))[];
31
+ rpcMethods: ((did: any) => any)[];
32
+ /**
33
+ * Creates a new BlockchainService instance
34
+ * @constructor
35
+ */
21
36
  constructor();
37
+ /**
38
+ * Gets the types and modules needed for DID or accumulator operations
39
+ * @param {string} didOrRegistryId - DID or registry identifier
40
+ * @returns {Object} Object containing accumulator-related types and modules
41
+ * @returns {typeof AccumulatorPublicKey} returns.PublicKey - Accumulator public key type
42
+ * @returns {typeof AccumulatorId} returns.AccumulatorId - Accumulator ID type
43
+ * @returns {typeof AccumulatorCommon} returns.AccumulatorCommon - Common accumulator type
44
+ * @returns {Object} returns.AccumulatorModule - Accumulator module instance
45
+ */
22
46
  getTypesForDIDOrAccumulator(didOrRegistryId: any): {
23
47
  PublicKey: any;
24
48
  AccumulatorId: any;
@@ -26,32 +50,106 @@ export declare class BlockchainService {
26
50
  AccumulatorModule: any;
27
51
  };
28
52
  /**
29
- *
30
- * @returns
53
+ * Ensures the blockchain connection is ready before proceeding
54
+ * @returns {Promise<void>} Resolves when blockchain is ready
55
+ * @example
56
+ * await blockchainService.ensureBlockchainReady();
57
+ * // Blockchain is now connected and ready
31
58
  */
32
59
  ensureBlockchainReady(): Promise<unknown>;
33
- createDIDResolver(): AnyDIDResolver;
34
60
  /**
35
- *
36
- * @param {*} params
37
- * @returns
61
+ * Gets the cached DIDs
62
+ * @returns {Promise<string[]>} Cached DIDs
63
+ */
64
+ getCachedDIDs(): any;
65
+ /**
66
+ * Gets the cached DID resolution data
67
+ * @param {string} did - The DID to get the cache entry for
68
+ * @returns {Promise<any>} Cached DID resolution data
69
+ */
70
+ getCacheEntry(did: any): any;
71
+ /**
72
+ * Clears cached data for a specific DID
73
+ * @param {string} did - The DID to clear from cache
74
+ * @returns {void}
75
+ */
76
+ clearCache(did: any): any;
77
+ /**
78
+ * Creates a DID resolver with caching support
79
+ * @private
80
+ * @returns {CachedDIDResolver} Cached DID resolver instance
81
+ */
82
+ createDIDResolver(isBlockchainReady: boolean): CachedDIDResolver;
83
+ /**
84
+ * Initializes the blockchain service with connection parameters
85
+ * @param {InitParams} params - Initialization parameters
86
+ * @param {string} params.cheqdApiUrl - URL of the Cheqd API endpoint
87
+ * @param {string} [params.networkId] - Cheqd network identifier
88
+ * @param {string} [params.cheqdMnemonic] - Mnemonic for Cheqd wallet (auto-generated if not provided)
89
+ * @returns {Promise<boolean>} True if initialization successful
90
+ * @throws {Error} If cheqdApiUrl is not provided
91
+ * @example
92
+ * await blockchainService.init({
93
+ * cheqdApiUrl: 'https://api.cheqd.network',
94
+ * networkId: 'mainnet'
95
+ * });
38
96
  */
39
97
  init(params: InitParams): Promise<boolean>;
40
98
  /**
41
- *
42
- * @returns
99
+ * Disconnects from the blockchain
100
+ * @returns {Promise<void>} Resolves when disconnection is complete
101
+ * @example
102
+ * await blockchainService.disconnect();
43
103
  */
44
104
  disconnect(): Promise<any>;
105
+ /**
106
+ * Waits for the blockchain to be ready
107
+ * @returns {Promise<void>} Resolves when blockchain is ready
108
+ * @private
109
+ */
45
110
  waitBlockchainReady(): Promise<unknown>;
111
+ /**
112
+ * Resolves a DID to its document
113
+ * @param {string} did - The DID to resolve
114
+ * @returns {Promise<Object>} The resolved DID document
115
+ * @example
116
+ * const didDoc = await blockchainService.resolveDID('did:key:z6Mk...');
117
+ */
46
118
  resolveDID(did: string): Promise<any>;
47
119
  /**
48
- *
49
- * @returns
120
+ * Checks if the blockchain API is connected
121
+ * @returns {Promise<boolean>} True if connected, false otherwise
122
+ * @example
123
+ * const isConnected = await blockchainService.isApiConnected();
50
124
  */
51
125
  isApiConnected(): Promise<any>;
52
- getAddress(): Promise<any>;
126
+ /**
127
+ * Gets the current Cheqd API URL
128
+ * @returns {Promise<string>} The Cheqd API URL
129
+ * @example
130
+ * const apiUrl = await blockchainService.getAddress();
131
+ */
132
+ getAddress(): Promise<string | string[]>;
133
+ /**
134
+ * Sets the blockchain ready state and emits events
135
+ * @private
136
+ * @param {boolean} isBlockchainReady - Whether blockchain is ready
137
+ */
53
138
  _setBlockchainReady(isBlockchainReady: any): void;
54
139
  }
140
+ /**
141
+ * Singleton instance of the blockchain service
142
+ * @type {BlockchainService}
143
+ * @example
144
+ * import { blockchainService } from '@docknetwork/wallet-sdk-wasm/services/blockchain';
145
+ *
146
+ * // Initialize the service
147
+ * await blockchainService.init({
148
+ * cheqdApiUrl: 'https://api.cheqd.network'
149
+ * });
150
+ *
151
+ * // Resolve a DID
152
+ * const didDoc = await blockchainService.resolveDID('did:key:z6Mk...');
153
+ */
55
154
  export declare const blockchainService: BlockchainService;
56
- export {};
57
155
  //# sourceMappingURL=service.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../../../src/services/blockchain/service.ts"],"names":[],"mappings":"AAMA,OAAO,EAGL,cAAc,EAGf,MAAM,sCAAsC,CAAC;AAM9C,OAAO,EAAC,UAAU,EAAC,MAAM,WAAW,CAAC;AAErC,eAAO,MAAM,oBAAoB,mCAAmC,CAAC;AAQrE,cAAM,cAAe,SAAQ,cAAc;IACzC,MAAM,MAAY;CACnB;AAED;;GAEG;AACH,qBAAa,iBAAiB;IAC5B,IAAI,MAAC;IACL,OAAO,MAAC;IACR,QAAQ,MAAC;IACT,WAAW,MAAC;IACZ,iBAAiB,UAAS;IAC1B,QAAQ,EAAE,GAAG,CAAC;IACd,MAAM,CAAC,MAAM;;MAEX;IAEF,UAAU,oCAkDS,UAAU,0BA5C3B;;IAWF,2BAA2B,CAAC,eAAe,KAAA;;;;;;IAS3C;;;OAGG;IACG,qBAAqB;IAQ3B,iBAAiB;IAOjB;;;;OAIG;IACG,IAAI,CAAC,MAAM,EAAE,UAAU;IAwD7B;;;OAGG;IACG,UAAU;IAYV,mBAAmB;IAUnB,UAAU,CAAC,GAAG,EAAE,MAAM;IAG5B;;;OAGG;IACG,cAAc;IAId,UAAU;IAIhB,mBAAmB,CAAC,iBAAiB,KAAA;CAOtC;AAED,eAAO,MAAM,iBAAiB,EAAE,iBAA2C,CAAC"}
1
+ {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../../../src/services/blockchain/service.ts"],"names":[],"mappings":"AAyBA,OAAO,EAAC,UAAU,EAAC,MAAM,WAAW,CAAC;AAErC;;;GAGG;AACH,eAAO,MAAM,oBAAoB,mCAAmC,CAAC;AAOrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAY1D;;;;;GAKG;AACH,qBAAa,iBAAiB;IAC5B,IAAI,MAAC;IACL,OAAO,MAAC;IACR,QAAQ,MAAC;IACT,WAAW,MAAC;IACZ,iBAAiB,UAAS;IAC1B,OAAO,CAAC,SAAS,CAAM;IAEvB,IAAI,QAAQ,IAAI,GAAG,CAElB;IACD;;;;;OAKG;IACH,MAAM,CAAC,MAAM;;MAEX;IAEF,UAAU,wBAUR;IAEF;;;OAGG;;IAWH;;;;;;;;OAQG;IACH,2BAA2B,CAAC,eAAe,KAAA;;;;;;IAS3C;;;;;;OAMG;IACG,qBAAqB;IAS3B;;;OAGG;IACH,aAAa;IAIb;;;;OAIG;IACH,aAAa,CAAC,GAAG,KAAA;IAIjB;;;;OAIG;IACH,UAAU,CAAC,GAAG,KAAA;IAId;;;;OAIG;IACH,iBAAiB,CAAC,iBAAiB,EAAE,OAAO;IAkB5C;;;;;;;;;;;;;OAaG;IACG,IAAI,CAAC,MAAM,EAAE,UAAU;IA0D7B;;;;;OAKG;IACG,UAAU;IAYhB;;;;OAIG;IACG,mBAAmB;IAUzB;;;;;;OAMG;IACG,UAAU,CAAC,GAAG,EAAE,MAAM;IAG5B;;;;;OAKG;IACG,cAAc;IAIpB;;;;;OAKG;IACG,UAAU,IAAI,OAAO,CAAC,MAAM,GAAG,MAAM,EAAE,CAAC;IAI9C;;;;OAIG;IACH,mBAAmB,CAAC,iBAAiB,KAAA;CAOtC;AAED;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,iBAAiB,EAAE,iBAA2C,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import { PositiveAccumulator, AccumulatorPublicKey, VBMembershipWitness } from '@docknetwork/crypto-wasm-ts';
2
2
  export declare const getWitnessDetails: (credential: any, _membershipWitness: any) => Promise<{
3
- encodedRevId: Uint8Array;
3
+ encodedRevId: Uint8Array<ArrayBufferLike>;
4
4
  membershipWitness: VBMembershipWitness;
5
5
  pk: AccumulatorPublicKey;
6
6
  params: import("@docknetwork/crypto-wasm-ts").AccumulatorParams;
@@ -1 +1 @@
1
- {"version":3,"file":"bbs-revocation.d.ts","sourceRoot":"","sources":["../../../../src/services/credential/bbs-revocation.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,mBAAmB,EACnB,oBAAoB,EAEpB,mBAAmB,EAGpB,MAAM,6BAA6B,CAAC;AAgBrC,eAAO,MAAM,iBAAiB;;;;;;EA6E7B,CAAC;AAEF,eAAO,MAAM,YAAY,gEAexB,CAAC"}
1
+ {"version":3,"file":"bbs-revocation.d.ts","sourceRoot":"","sources":["../../../../src/services/credential/bbs-revocation.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,mBAAmB,EACnB,oBAAoB,EAEpB,mBAAmB,EAGpB,MAAM,6BAA6B,CAAC;AAgBrC,eAAO,MAAM,iBAAiB,GAAU,eAAU,EAAE,uBAAkB;;;;;;EA6ErE,CAAC;AAEF,eAAO,MAAM,YAAY,GAAU,eAAU,EAAE,uBAAkB,qBAehE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"bound-check.d.ts","sourceRoot":"","sources":["../../../../src/services/credential/bound-check.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAC,MAAM,2CAA2C,CAAC;AACzE,OAAO,EAAC,mBAAmB,EAAC,MAAM,iCAAiC,CAAC;AAKpE,UAAU,MAAM;IACd,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,UAAU,KAAK;IACb,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,UAAU,WAAW;IACnB,MAAM,EAAE,KAAK,EAAE,CAAC;CACjB;AAED,UAAU,eAAe;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,WAAW,CAAC;CAC1B;AAED,UAAU,OAAO;IACf,EAAE,EAAE,MAAM,CAAC;IACX,iBAAiB,EAAE,eAAe,EAAE,CAAC;CACtC;AAED,UAAU,YAAY;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,EACjC,OAAO,EACP,YAAY,EACZ,YAAY,EACZ,UAAU,EACV,mBAAmB,GACpB,EAAE;IACD,OAAO,EAAE,mBAAmB,CAAC;IAC7B,YAAY,EAAE,YAAY,CAAC;IAC3B,mBAAmB,EAAE,GAAG,EAAE,CAAC;IAC3B,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,cAAc,CAAC;CAC5B,SA0BA;AAED,wBAAsB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAQvE;AAED,wBAAgB,cAAc,CAAC,YAAY,EAAE,MAAM,GAAG,UAAU,CAM/D;AAED,wBAAsB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAKrE;AAED,wBAAsB,eAAe,CAAC,YAAY,EAAE,YAAY;;;GAa/D;AAED,eAAO,MAAM,aAAa,iBAAkB,YAAY,YACrB,CAAC"}
1
+ {"version":3,"file":"bound-check.d.ts","sourceRoot":"","sources":["../../../../src/services/credential/bound-check.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAC,MAAM,2CAA2C,CAAC;AACzE,OAAO,EAAC,mBAAmB,EAAC,MAAM,iCAAiC,CAAC;AAKpE,UAAU,MAAM;IACd,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,UAAU,KAAK;IACb,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,UAAU,WAAW;IACnB,MAAM,EAAE,KAAK,EAAE,CAAC;CACjB;AAED,UAAU,eAAe;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,WAAW,CAAC;CAC1B;AAED,UAAU,OAAO;IACf,EAAE,EAAE,MAAM,CAAC;IACX,iBAAiB,EAAE,eAAe,EAAE,CAAC;CACtC;AAED,UAAU,YAAY;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,EACjC,OAAO,EACP,YAAY,EACZ,YAAY,EACZ,UAAU,EACV,mBAAmB,GACpB,EAAE;IACD,OAAO,EAAE,mBAAmB,CAAC;IAC7B,YAAY,EAAE,YAAY,CAAC;IAC3B,mBAAmB,EAAE,GAAG,EAAE,CAAC;IAC3B,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,cAAc,CAAC;CAC5B,SA0BA;AAED,wBAAsB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAQvE;AAED,wBAAgB,cAAc,CAAC,YAAY,EAAE,MAAM,GAAG,UAAU,CAM/D;AAED,wBAAsB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAKrE;AAED,wBAAsB,eAAe,CAAC,YAAY,EAAE,YAAY;;;GAa/D;AAED,eAAO,MAAM,aAAa,GAAI,cAAc,YAAY,YACrB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../src/services/credential/config.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,WAAW,gBAAgB,CAAC;AACzC,eAAO,MAAM,UAAU;;;;;;;CA4CtB,CAAC"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../src/services/credential/config.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,WAAW,gBAAgB,CAAC;AACzC,eAAO,MAAM,UAAU;;;;;;;CAkDtB,CAAC"}
@@ -0,0 +1,272 @@
1
+ import * as cedar from '@cedar-policy/cedar-wasm/nodejs';
2
+ import { MAY_CLAIM_IRI } from '@docknetwork/vc-delegation-engine';
3
+ export interface VerificationResult {
4
+ verified: boolean;
5
+ credentialResults?: any[];
6
+ delegationResult?: {
7
+ decision: string;
8
+ summaries?: any[];
9
+ authorizations?: any[];
10
+ failures?: any[];
11
+ };
12
+ error?: any;
13
+ }
14
+ export interface CedarPolicies {
15
+ staticPolicies: string;
16
+ }
17
+ export interface VerifiablePresentation {
18
+ '@context': any[];
19
+ type: string[];
20
+ proof?: any;
21
+ verifiableCredential?: any[];
22
+ }
23
+ export interface DelegationCredential {
24
+ '@context': any[];
25
+ id: string;
26
+ type: string[];
27
+ issuer: string;
28
+ issuanceDate: string;
29
+ previousCredentialId: string | null;
30
+ rootCredentialId: string;
31
+ credentialSubject: {
32
+ id: string;
33
+ [key: string]: any;
34
+ };
35
+ proof?: any;
36
+ }
37
+ export interface VerifyDelegationOptions {
38
+ challenge?: string;
39
+ domain?: string;
40
+ unsignedPresentation?: boolean;
41
+ failOnUnauthorizedClaims?: boolean;
42
+ policies?: CedarPolicies;
43
+ }
44
+ export interface KeyPair {
45
+ type: string;
46
+ id?: string;
47
+ controller?: string;
48
+ publicKeyJwk?: any;
49
+ privateKeyJwk?: any;
50
+ publicKeyBase58?: string;
51
+ privateKeyBase58?: string;
52
+ }
53
+ /**
54
+ * W3C Credentials V1 context URL
55
+ */
56
+ export declare const W3C_CREDENTIALS_V1 = "https://www.w3.org/2018/credentials/v1";
57
+ /**
58
+ * Re-export MAY_CLAIM_IRI for use in credentials
59
+ */
60
+ export { MAY_CLAIM_IRI };
61
+ /**
62
+ * Namespace used by the vc-delegation-engine for delegation properties
63
+ */
64
+ export declare const DELEGATION_ENGINE_NS = "https://ld.truvera.io/credentials/delegation#";
65
+ /**
66
+ * Base delegation context terms required for delegation credentials.
67
+ * These terms define the JSON-LD mappings needed for the vc-delegation-engine
68
+ * to properly process delegation chains.
69
+ *
70
+ * Use this as a base and extend with your own application-specific terms:
71
+ * @example
72
+ * const myContext = [
73
+ * W3C_CREDENTIALS_V1,
74
+ * {
75
+ * ...DELEGATION_CONTEXT_TERMS,
76
+ * // Add your custom terms here
77
+ * MyCredentialType: 'https://example.org/MyCredentialType',
78
+ * myField: 'https://example.org/myField',
79
+ * },
80
+ * ];
81
+ */
82
+ export declare const DELEGATION_CONTEXT_TERMS: {
83
+ '@version': number;
84
+ '@protected': boolean;
85
+ DelegationCredential: string;
86
+ mayClaim: {
87
+ '@id': "https://rdf.dock.io/alpha/2021#mayClaim";
88
+ '@container': string;
89
+ };
90
+ rootCredentialId: {
91
+ '@id': string;
92
+ '@type': string;
93
+ };
94
+ previousCredentialId: {
95
+ '@id': string;
96
+ '@type': string;
97
+ };
98
+ };
99
+ /**
100
+ * Default context for verifiable presentations
101
+ */
102
+ export declare const PRESENTATION_CONTEXT: string[];
103
+ /**
104
+ * Issues a delegation credential that grants authority to a delegate
105
+ * @param keyPair - The key pair to sign the credential
106
+ * @param params - Delegation parameters
107
+ * @returns Signed delegation credential
108
+ */
109
+ export declare function issueDelegationCredential(keyPair: KeyPair, credential: any): Promise<DelegationCredential>;
110
+ /**
111
+ * Issues a credential as a delegate (with delegation chain reference)
112
+ * @param keyPair - The delegate's key pair to sign the credential
113
+ * @param params - Credential parameters
114
+ * @returns Signed credential
115
+ */
116
+ export declare function issueDelegatedCredential(keyPair: KeyPair, credential: any): Promise<any>;
117
+ /**
118
+ * Creates and signs a verifiable presentation with delegation credentials
119
+ * @param keyPair - The key pair to sign the presentation
120
+ * @param params - Presentation parameters
121
+ * @returns Signed verifiable presentation
122
+ */
123
+ export declare function createSignedPresentation(keyPair: KeyPair, params: {
124
+ credentials: any[];
125
+ holderDid: string;
126
+ challenge: string;
127
+ domain: string;
128
+ context?: any[];
129
+ }): Promise<VerifiablePresentation>;
130
+ /**
131
+ * Verifies a verifiable presentation with optional delegation chain validation
132
+ * Uses the credential-sdk's verifyPresentation which automatically:
133
+ * 1. Verifies the presentation signature
134
+ * 2. Verifies all credentials
135
+ * 3. Detects delegation credentials
136
+ * 4. Validates the delegation chain
137
+ * 5. Applies Cedar policies if provided
138
+ *
139
+ * @param vp - The verifiable presentation to verify
140
+ * @param options - Verification options
141
+ * @returns Verification result with delegation info if applicable
142
+ */
143
+ export declare function verifyDelegatablePresentation(vp: VerifiablePresentation, options?: VerifyDelegationOptions): Promise<VerificationResult>;
144
+ /**
145
+ * Creates a Cedar policy for delegation verification
146
+ * @param config - Policy configuration
147
+ * @returns Cedar policy object
148
+ */
149
+ export declare function createCedarPolicy(config: {
150
+ maxDepth?: number;
151
+ rootIssuer: string;
152
+ requiredClaims?: Record<string, any>;
153
+ }): CedarPolicies;
154
+ /**
155
+ * Creates an unsigned verifiable presentation (for testing)
156
+ * @param credentials - Array of credentials to include
157
+ * @param proof - Optional proof object
158
+ * @param context - Optional context
159
+ * @returns Verifiable presentation object
160
+ */
161
+ export declare function createUnsignedPresentation(credentials: any[], proof?: any, context?: any[]): VerifiablePresentation;
162
+ /**
163
+ * Re-export cedar for use in tests and external code
164
+ */
165
+ export { cedar };
166
+ /**
167
+ * Service class for delegatable credentials operations
168
+ */
169
+ declare class DelegatableCredentialsService {
170
+ name: string;
171
+ rpcMethods: (((params: {
172
+ keyPair: KeyPair;
173
+ id: string;
174
+ issuerDid: string;
175
+ delegateDid: string;
176
+ mayClaim: string[];
177
+ context: any[];
178
+ types: string[];
179
+ additionalSubjectProperties?: Record<string, any>;
180
+ previousCredentialId?: string | null;
181
+ rootCredentialId?: string;
182
+ }) => Promise<DelegationCredential>) | ((params: {
183
+ keyPair: KeyPair;
184
+ id: string;
185
+ issuerDid: string;
186
+ subjectDid: string;
187
+ claims: Record<string, any>;
188
+ rootCredentialId: string;
189
+ previousCredentialId: string;
190
+ context: any[];
191
+ types: string[];
192
+ }) => Promise<any>) | ((params: {
193
+ keyPair: KeyPair;
194
+ credentials: any[];
195
+ holderDid: string;
196
+ challenge: string;
197
+ domain: string;
198
+ context?: any[];
199
+ }) => Promise<VerifiablePresentation>) | ((params: {
200
+ presentation: VerifiablePresentation;
201
+ challenge?: string;
202
+ domain?: string;
203
+ unsignedPresentation?: boolean;
204
+ failOnUnauthorizedClaims?: boolean;
205
+ policies?: CedarPolicies;
206
+ }) => Promise<VerificationResult>) | ((params: {
207
+ maxDepth?: number;
208
+ rootIssuer: string;
209
+ requiredClaims?: Record<string, any>;
210
+ }) => CedarPolicies))[];
211
+ /**
212
+ * Issues a delegation credential
213
+ */
214
+ issueDelegation(params: {
215
+ keyPair: KeyPair;
216
+ id: string;
217
+ issuerDid: string;
218
+ delegateDid: string;
219
+ mayClaim: string[];
220
+ context: any[];
221
+ types: string[];
222
+ additionalSubjectProperties?: Record<string, any>;
223
+ previousCredentialId?: string | null;
224
+ rootCredentialId?: string;
225
+ }): Promise<DelegationCredential>;
226
+ /**
227
+ * Issues a credential as a delegate
228
+ */
229
+ issueDelegatedCredential(params: {
230
+ keyPair: KeyPair;
231
+ id: string;
232
+ issuerDid: string;
233
+ subjectDid: string;
234
+ claims: Record<string, any>;
235
+ rootCredentialId: string;
236
+ previousCredentialId: string;
237
+ context: any[];
238
+ types: string[];
239
+ }): Promise<any>;
240
+ /**
241
+ * Creates and signs a verifiable presentation
242
+ */
243
+ createPresentation(params: {
244
+ keyPair: KeyPair;
245
+ credentials: any[];
246
+ holderDid: string;
247
+ challenge: string;
248
+ domain: string;
249
+ context?: any[];
250
+ }): Promise<VerifiablePresentation>;
251
+ /**
252
+ * Verifies a verifiable presentation with delegation chain
253
+ */
254
+ verifyPresentation(params: {
255
+ presentation: VerifiablePresentation;
256
+ challenge?: string;
257
+ domain?: string;
258
+ unsignedPresentation?: boolean;
259
+ failOnUnauthorizedClaims?: boolean;
260
+ policies?: CedarPolicies;
261
+ }): Promise<VerificationResult>;
262
+ /**
263
+ * Creates a Cedar policy for delegation verification
264
+ */
265
+ createPolicy(params: {
266
+ maxDepth?: number;
267
+ rootIssuer: string;
268
+ requiredClaims?: Record<string, any>;
269
+ }): CedarPolicies;
270
+ }
271
+ export declare const delegatableCredentialsService: DelegatableCredentialsService;
272
+ //# sourceMappingURL=delegatable-credentials.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delegatable-credentials.d.ts","sourceRoot":"","sources":["../../../../src/services/credential/delegatable-credentials.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  export declare const credentialServiceRPC: {
2
2
  rpcMethods: ((params?: {}) => any)[];
3
+ createSDJWTPresentation(params: any): Promise<string>;
3
4
  generateCredential(params?: {}): any;
4
5
  signCredential(params: any): Promise<any>;
5
6
  createPresentation(params: any): Promise<any>;
@@ -9,6 +10,8 @@ export declare const credentialServiceRPC: {
9
10
  evaluatePresentation(params: any): import("@sphereon/pex").EvaluationResults;
10
11
  isBBSPlusCredential(params: any): any;
11
12
  isKvacCredential(params: any): any;
13
+ isSDJWTCredential(params: any): boolean;
14
+ credentialToW3C(params: any): Promise<any>;
12
15
  acquireOIDCredential({ uri, authorizationCode, holderKeyDocument, }: {
13
16
  uri: string;
14
17
  authorizationCode?: string;
@@ -28,4 +31,5 @@ export declare const credentialServiceRPC: {
28
31
  deriveVCFromPresentation(params: any): Promise<any>;
29
32
  testRangeProof(): Promise<void>;
30
33
  };
34
+ export { delegatableCredentialsService, verifyDelegatablePresentation, issueDelegationCredential, issueDelegatedCredential, createSignedPresentation, createUnsignedPresentation, createCedarPolicy, cedar, MAY_CLAIM_IRI, W3C_CREDENTIALS_V1, DELEGATION_ENGINE_NS, DELEGATION_CONTEXT_TERMS, PRESENTATION_CONTEXT, } from './delegatable-credentials';
31
35
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/services/credential/index.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAAoB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/services/credential/index.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;yBAiB8sc,CAAC;;;;;;;;;;;;;;;;CAjB3rc,CAAC;AAEtD,OAAO,EACL,6BAA6B,EAC7B,6BAA6B,EAC7B,yBAAyB,EACzB,wBAAwB,EACxB,wBAAwB,EACxB,0BAA0B,EAC1B,iBAAiB,EACjB,KAAK,EACL,aAAa,EACb,kBAAkB,EAClB,oBAAoB,EACpB,wBAAwB,EACxB,oBAAoB,GACrB,MAAM,2BAA2B,CAAC"}