@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.
- package/generate-docs.js +49 -0
- package/jsdoc.conf.json +29 -6
- package/lib/index.js +9 -1
- package/lib/index.mjs +9 -1
- package/lib/modules/network-manager.js +15 -12
- package/lib/modules/network-manager.mjs +15 -12
- package/lib/rpc-server.js +11 -1
- package/lib/rpc-server.mjs +11 -1
- package/lib/services/blockchain/cached-did-resolver.js +113 -0
- package/lib/services/blockchain/cached-did-resolver.mjs +109 -0
- package/lib/services/blockchain/index.js +11 -0
- package/lib/services/blockchain/index.mjs +11 -0
- package/lib/services/blockchain/service-rpc.js +12 -0
- package/lib/services/blockchain/service-rpc.mjs +12 -0
- package/lib/services/blockchain/service.js +161 -19
- package/lib/services/blockchain/service.mjs +162 -20
- package/lib/services/credential/bbs-revocation.js +11 -0
- package/lib/services/credential/bbs-revocation.mjs +11 -0
- package/lib/services/credential/bound-check.js +1 -1
- package/lib/services/credential/bound-check.mjs +1 -1
- package/lib/services/credential/config.js +4 -1
- package/lib/services/credential/config.mjs +4 -1
- package/lib/services/credential/delegatable-credentials.js +300 -0
- package/lib/services/credential/delegatable-credentials.mjs +263 -0
- package/lib/services/credential/index.js +53 -0
- package/lib/services/credential/index.mjs +18 -0
- package/lib/services/credential/pex-helpers.js +4 -4
- package/lib/services/credential/pex-helpers.mjs +4 -4
- package/lib/services/credential/sd-jwt.js +214 -0
- package/lib/services/credential/sd-jwt.mjs +200 -0
- package/lib/services/credential/service-rpc.js +9 -0
- package/lib/services/credential/service-rpc.mjs +9 -0
- package/lib/services/credential/service.js +324 -7
- package/lib/services/credential/service.mjs +324 -7
- package/lib/services/edv/index.js +1 -0
- package/lib/services/edv/index.mjs +1 -0
- package/lib/services/edv/service-rpc.js +23 -0
- package/lib/services/edv/service-rpc.mjs +23 -0
- package/lib/services/edv/service.js +226 -2
- package/lib/services/edv/service.mjs +223 -3
- package/lib/services/index.js +14 -0
- package/lib/services/index.mjs +14 -0
- package/lib/services/pex/config.js +4 -0
- package/lib/services/pex/config.mjs +4 -0
- package/lib/services/pex/service-rpc.js +4 -0
- package/lib/services/pex/service-rpc.mjs +4 -0
- package/lib/services/pex/service.js +7 -0
- package/lib/services/pex/service.mjs +7 -0
- package/lib/services/relay-service/service.js +124 -1
- package/lib/services/relay-service/service.mjs +124 -1
- package/lib/services/rpc-service-client.js +0 -3
- package/lib/services/rpc-service-client.mjs +0 -3
- package/lib/services/storage/index.js +19 -2
- package/lib/services/storage/index.mjs +24 -1
- package/lib/services/storage/service-rpc.js +7 -3
- package/lib/services/storage/service-rpc.mjs +7 -3
- package/lib/services/storage/service.js +4 -0
- package/lib/services/storage/service.mjs +4 -0
- package/lib/setup-nodejs.js +9 -1
- package/lib/setup-nodejs.mjs +9 -1
- package/lib/setup-tests.js +9 -1
- package/lib/setup-tests.mjs +9 -1
- package/lib/src/modules/event-manager.d.ts +0 -1
- package/lib/src/modules/event-manager.d.ts.map +1 -1
- package/lib/src/modules/network-manager.d.ts +2 -4
- package/lib/src/modules/network-manager.d.ts.map +1 -1
- package/lib/src/services/blockchain/cached-did-resolver.d.ts +28 -0
- package/lib/src/services/blockchain/cached-did-resolver.d.ts.map +1 -0
- package/lib/src/services/blockchain/cached-did-resolver.test.d.ts +2 -0
- package/lib/src/services/blockchain/cached-did-resolver.test.d.ts.map +1 -0
- package/lib/src/services/blockchain/configs.d.ts +1 -2
- package/lib/src/services/blockchain/configs.d.ts.map +1 -1
- package/lib/src/services/blockchain/service.d.ts +117 -19
- package/lib/src/services/blockchain/service.d.ts.map +1 -1
- package/lib/src/services/credential/bbs-revocation.d.ts +1 -1
- package/lib/src/services/credential/bbs-revocation.d.ts.map +1 -1
- package/lib/src/services/credential/bound-check.d.ts.map +1 -1
- package/lib/src/services/credential/config.d.ts.map +1 -1
- package/lib/src/services/credential/delegatable-credentials.d.ts +272 -0
- package/lib/src/services/credential/delegatable-credentials.d.ts.map +1 -0
- package/lib/src/services/credential/index.d.ts +4 -0
- package/lib/src/services/credential/index.d.ts.map +1 -1
- package/lib/src/services/credential/pex-helpers.d.ts +2 -2
- package/lib/src/services/credential/pex-helpers.d.ts.map +1 -1
- package/lib/src/services/credential/sd-jwt.test.d.ts +2 -0
- package/lib/src/services/credential/sd-jwt.test.d.ts.map +1 -0
- package/lib/src/services/credential/service.d.ts +274 -4
- package/lib/src/services/credential/service.d.ts.map +1 -1
- package/lib/src/services/dids/keypair-utils.d.ts +2 -2
- package/lib/src/services/dids/keypair-utils.d.ts.map +1 -1
- package/lib/src/services/dids/service.d.ts +35 -3
- package/lib/src/services/dids/service.d.ts.map +1 -1
- package/lib/src/services/edv/service.d.ts +201 -2
- package/lib/src/services/edv/service.d.ts.map +1 -1
- package/lib/src/services/pex/config.d.ts +1 -0
- package/lib/src/services/pex/config.d.ts.map +1 -1
- package/lib/src/services/pex/service.d.ts +1 -0
- package/lib/src/services/pex/service.d.ts.map +1 -1
- package/lib/src/services/relay-service/service.d.ts +148 -8
- package/lib/src/services/relay-service/service.d.ts.map +1 -1
- package/lib/src/services/rpc-service-client.d.ts +2 -2
- package/lib/src/services/rpc-service-client.d.ts.map +1 -1
- package/lib/src/services/storage/index.d.ts +1 -1
- package/lib/src/services/storage/index.d.ts.map +1 -1
- package/lib/src/services/storage/service-rpc.d.ts +9 -0
- package/lib/src/services/storage/service-rpc.d.ts.map +1 -0
- package/lib/src/services/storage/service.d.ts +1 -0
- package/lib/src/services/storage/service.d.ts.map +1 -1
- package/lib/src/services/util-crypto/service.d.ts +2 -2
- package/lib/src/services/util-crypto/service.d.ts.map +1 -1
- package/lib/tsconfig.tsbuildinfo +1 -1
- package/lib/wallet/rpc-storage-interface.js +13 -3
- package/lib/wallet/rpc-storage-interface.mjs +11 -1
- package/lib/wallet/rpc-storage-wallet.js +10 -0
- package/lib/wallet/rpc-storage-wallet.mjs +10 -0
- package/package.json +29 -16
- package/rollup.config.mjs +5 -3
- package/src/globals.d.ts +3 -0
- package/src/modules/network-manager.ts +15 -14
- package/src/services/blockchain/cached-did-resolver.test.ts +288 -0
- package/src/services/blockchain/cached-did-resolver.ts +126 -0
- package/src/services/blockchain/configs.ts +1 -2
- package/src/services/blockchain/service-rpc.js +12 -0
- package/src/services/blockchain/service.ts +167 -20
- package/src/services/credential/bound-check.ts +1 -1
- package/src/services/credential/config.ts +7 -1
- package/src/services/credential/delegatable-credentials.ts +409 -0
- package/src/services/credential/index.ts +16 -0
- package/src/services/credential/pex-helpers.js +4 -4
- package/src/services/credential/pex-helpers.test.js +2 -2
- package/src/services/credential/sd-jwt.test.ts +718 -0
- package/src/services/credential/sd-jwt.ts +231 -0
- package/src/services/credential/service-rpc.js +9 -0
- package/src/services/credential/service.ts +328 -7
- package/src/services/edv/index.test.js +229 -0
- package/src/services/edv/service-rpc.js +23 -0
- package/src/services/edv/service.ts +272 -1
- package/src/services/pex/config.ts +4 -0
- package/src/services/pex/service-rpc.js +4 -0
- package/src/services/pex/service.ts +13 -0
- package/src/services/pex/tests/pex-service.test.js +210 -0
- package/src/services/relay-service/service.ts +130 -1
- package/src/services/rpc-service-client.js +0 -3
- package/src/services/storage/index.js +15 -1
- package/src/services/storage/service-rpc.js +7 -3
- package/src/services/storage/service.ts +5 -0
package/lib/setup-tests.mjs
CHANGED
|
@@ -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 +1 @@
|
|
|
1
|
-
{"version":3,"file":"event-manager.d.ts","sourceRoot":"","sources":["../../../src/modules/event-manager.ts"],"names":[],"mappings":"
|
|
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
|
-
|
|
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
|
|
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,
|
|
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 @@
|
|
|
1
|
+
{"version":3,"file":"cached-did-resolver.test.d.ts","sourceRoot":"","sources":["../../../../src/services/blockchain/cached-did-resolver.test.ts"],"names":[],"mappings":""}
|
|
@@ -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,
|
|
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
|
-
|
|
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
|
-
|
|
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: ((
|
|
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
|
-
* @
|
|
37
|
-
|
|
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
|
-
|
|
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":"
|
|
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;;;;;;
|
|
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,
|
|
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;;;;;;;
|
|
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
|
|
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"}
|