@extrimian/agent 0.12.0-2 → 0.12.0-4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (139) hide show
  1. package/dist/agent.d.ts +77 -0
  2. package/dist/agent.js +174 -0
  3. package/dist/agent.js.map +1 -0
  4. package/dist/data-share-behaviours/data-share-behavior.d.ts +4 -0
  5. package/dist/data-share-behaviours/data-share-behavior.js +3 -0
  6. package/dist/data-share-behaviours/data-share-behavior.js.map +1 -0
  7. package/dist/data-share-behaviours/identity-data-share-behavior.d.ts +16 -0
  8. package/dist/data-share-behaviours/identity-data-share-behavior.js +3 -0
  9. package/dist/data-share-behaviours/identity-data-share-behavior.js.map +1 -0
  10. package/dist/data-share-behaviours/identity-plaintext-data-share-behavior.d.ts +5 -0
  11. package/dist/data-share-behaviours/identity-plaintext-data-share-behavior.js +16 -0
  12. package/dist/data-share-behaviours/identity-plaintext-data-share-behavior.js.map +1 -0
  13. package/dist/data-share-behaviours/vcs/vc-share-behavior.d.ts +12 -0
  14. package/dist/data-share-behaviours/vcs/vc-share-behavior.js +3 -0
  15. package/dist/data-share-behaviours/vcs/vc-share-behavior.js.map +1 -0
  16. package/dist/data-share-behaviours/vcs/vc-share-didcomm-behavior.d.ts +20 -0
  17. package/dist/data-share-behaviours/vcs/vc-share-didcomm-behavior.js +30 -0
  18. package/dist/data-share-behaviours/vcs/vc-share-didcomm-behavior.js.map +1 -0
  19. package/dist/did/did-services.d.ts +14 -0
  20. package/dist/did/did-services.js +15 -0
  21. package/dist/did/did-services.js.map +1 -0
  22. package/dist/exceptions/agent-plugin-not-found.d.ts +2 -0
  23. package/dist/exceptions/agent-plugin-not-found.js +7 -0
  24. package/dist/exceptions/agent-plugin-not-found.js.map +1 -0
  25. package/dist/exceptions/vc-protocol-not-found.d.ts +3 -0
  26. package/dist/exceptions/vc-protocol-not-found.js +12 -0
  27. package/dist/exceptions/vc-protocol-not-found.js.map +1 -0
  28. package/dist/index.d.ts +32 -0
  29. package/dist/index.js +61 -0
  30. package/dist/index.js.map +1 -0
  31. package/dist/messaging/messaging.d.ts +41 -0
  32. package/dist/messaging/messaging.js +89 -0
  33. package/dist/messaging/messaging.js.map +1 -0
  34. package/dist/models/agent-identity.d.ts +86 -0
  35. package/dist/models/agent-identity.js +400 -0
  36. package/dist/models/agent-identity.js.map +1 -0
  37. package/dist/models/agent-kms.d.ts +42 -0
  38. package/dist/models/agent-kms.js +79 -0
  39. package/dist/models/agent-kms.js.map +1 -0
  40. package/dist/models/agent-pbk.d.ts +11 -0
  41. package/dist/models/agent-pbk.js +12 -0
  42. package/dist/models/agent-pbk.js.map +1 -0
  43. package/dist/models/agent-registry.d.ts +94 -0
  44. package/dist/models/agent-registry.js +130 -0
  45. package/dist/models/agent-registry.js.map +1 -0
  46. package/dist/models/agent-resolver-cache.d.ts +21 -0
  47. package/dist/models/agent-resolver-cache.js +48 -0
  48. package/dist/models/agent-resolver-cache.js.map +1 -0
  49. package/dist/models/agent-resolver.d.ts +19 -0
  50. package/dist/models/agent-resolver.js +34 -0
  51. package/dist/models/agent-resolver.js.map +1 -0
  52. package/dist/models/agent-secure-storage.d.ts +3 -0
  53. package/dist/models/agent-secure-storage.js +3 -0
  54. package/dist/models/agent-secure-storage.js.map +1 -0
  55. package/dist/models/agent-secure-storages/filesystem-agent-secure-storage.d.ts +14 -0
  56. package/dist/models/agent-secure-storages/filesystem-agent-secure-storage.js +49 -0
  57. package/dist/models/agent-secure-storages/filesystem-agent-secure-storage.js.map +1 -0
  58. package/dist/models/agent-storage.d.ts +9 -0
  59. package/dist/models/agent-storage.js +3 -0
  60. package/dist/models/agent-storage.js.map +1 -0
  61. package/dist/models/did.d.ts +19 -0
  62. package/dist/models/did.js +64 -0
  63. package/dist/models/did.js.map +1 -0
  64. package/dist/models/transports/ami-transport.d.ts +30 -0
  65. package/dist/models/transports/ami-transport.js +184 -0
  66. package/dist/models/transports/ami-transport.js.map +1 -0
  67. package/dist/models/transports/connectable-transport.d.ts +25 -0
  68. package/dist/models/transports/connectable-transport.js +26 -0
  69. package/dist/models/transports/connectable-transport.js.map +1 -0
  70. package/dist/models/transports/dwn-transport.d.ts +32 -0
  71. package/dist/models/transports/dwn-transport.js +192 -0
  72. package/dist/models/transports/dwn-transport.js.map +1 -0
  73. package/dist/models/transports/messaging-transport.d.ts +3 -0
  74. package/dist/models/transports/messaging-transport.js +3 -0
  75. package/dist/models/transports/messaging-transport.js.map +1 -0
  76. package/dist/models/transports/transport.d.ts +30 -0
  77. package/dist/models/transports/transport.js +8 -0
  78. package/dist/models/transports/transport.js.map +1 -0
  79. package/dist/models/transports/websocket-client-transport.d.ts +5 -0
  80. package/dist/models/transports/websocket-client-transport.js +34 -0
  81. package/dist/models/transports/websocket-client-transport.js.map +1 -0
  82. package/dist/models/transports/websocket-server-transport.d.ts +7 -0
  83. package/dist/models/transports/websocket-server-transport.js +22 -0
  84. package/dist/models/transports/websocket-server-transport.js.map +1 -0
  85. package/dist/models/transports/websocket-transport.d.ts +30 -0
  86. package/dist/models/transports/websocket-transport.js +85 -0
  87. package/dist/models/transports/websocket-transport.js.map +1 -0
  88. package/dist/models/vc-storage.d.ts +8 -0
  89. package/dist/models/vc-storage.js +3 -0
  90. package/dist/models/vc-storage.js.map +1 -0
  91. package/dist/plugins/iplugin.d.ts +17 -0
  92. package/dist/plugins/iplugin.js +3 -0
  93. package/dist/plugins/iplugin.js.map +1 -0
  94. package/dist/plugins/istatus-list-plugin.d.ts +14 -0
  95. package/dist/plugins/istatus-list-plugin.js +3 -0
  96. package/dist/plugins/istatus-list-plugin.js.map +1 -0
  97. package/dist/plugins/ivc-interceptor-plugin.d.ts +9 -0
  98. package/dist/plugins/ivc-interceptor-plugin.js +3 -0
  99. package/dist/plugins/ivc-interceptor-plugin.js.map +1 -0
  100. package/dist/plugins/plugin-dispatcher.d.ts +6 -0
  101. package/dist/plugins/plugin-dispatcher.js +20 -0
  102. package/dist/plugins/plugin-dispatcher.js.map +1 -0
  103. package/dist/transport/transport.d.ts +43 -0
  104. package/dist/transport/transport.js +110 -0
  105. package/dist/transport/transport.js.map +1 -0
  106. package/dist/utils/index.d.ts +1 -0
  107. package/dist/utils/index.js +15 -0
  108. package/dist/utils/index.js.map +1 -0
  109. package/dist/utils/lite-event.d.ts +25 -0
  110. package/dist/utils/lite-event.js +37 -0
  111. package/dist/utils/lite-event.js.map +1 -0
  112. package/dist/vc/models/credentia-flow.d.ts +4 -0
  113. package/dist/vc/models/credentia-flow.js +9 -0
  114. package/dist/vc/models/credentia-flow.js.map +1 -0
  115. package/dist/vc/models/credential-request.d.ts +3 -0
  116. package/dist/vc/models/credential-request.js +3 -0
  117. package/dist/vc/models/credential-request.js.map +1 -0
  118. package/dist/vc/models/vc-create-key-request.d.ts +4 -0
  119. package/dist/vc/models/vc-create-key-request.js +3 -0
  120. package/dist/vc/models/vc-create-key-request.js.map +1 -0
  121. package/dist/vc/models/waci-message.d.ts +3 -0
  122. package/dist/vc/models/waci-message.js +8 -0
  123. package/dist/vc/models/waci-message.js.map +1 -0
  124. package/dist/vc/protocols/openid-protocol.d.ts +161 -0
  125. package/dist/vc/protocols/openid-protocol.js +126 -0
  126. package/dist/vc/protocols/openid-protocol.js.map +1 -0
  127. package/dist/vc/protocols/vc-protocol.d.ts +106 -0
  128. package/dist/vc/protocols/vc-protocol.js +37 -0
  129. package/dist/vc/protocols/vc-protocol.js.map +1 -0
  130. package/dist/vc/protocols/waci-protocol.d.ts +183 -0
  131. package/dist/vc/protocols/waci-protocol.js +553 -0
  132. package/dist/vc/protocols/waci-protocol.js.map +1 -0
  133. package/dist/vc/vc-setup/vc-setup.d.ts +0 -0
  134. package/dist/vc/vc-setup/vc-setup.js +1 -0
  135. package/dist/vc/vc-setup/vc-setup.js.map +1 -0
  136. package/dist/vc/vc.d.ts +225 -0
  137. package/dist/vc/vc.js +329 -0
  138. package/dist/vc/vc.js.map +1 -0
  139. package/package.json +2 -2
@@ -0,0 +1,79 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.VerifiyJWSResult = exports.AgentKMS = void 0;
4
+ const did_core_1 = require("@extrimian/did-core");
5
+ const kms_core_1 = require("@extrimian/kms-core");
6
+ const did_1 = require("./did");
7
+ class AgentKMS {
8
+ constructor(opts) {
9
+ this.kms = opts.kms;
10
+ this.resolver = opts.resolver;
11
+ this.identity = opts.identity;
12
+ }
13
+ async signMessage(params) {
14
+ const did = this.identity.getOperationalDID();
15
+ const didDoc = await this.resolver.resolve(did);
16
+ const vms = did_core_1.DIDDocumentUtils.getVerificationMethodsByType(didDoc, did_core_1.VerificationMethodTypes.EcdsaSecp256k1VerificationKey2019);
17
+ let vm = null;
18
+ if (!params.publicKey) {
19
+ params.publicKey = (await this.kms.getAllPublicKeys()).find(x => vms.some(y => x.x == y.publicKeyJwk.x &&
20
+ x.y == y.publicKeyJwk.y));
21
+ }
22
+ if (!params.publicKey) {
23
+ throw new Error(`Cannot find a valid key of type 'Ed25519VerificationKey2018' to use to signJWS for did ${did}`);
24
+ }
25
+ vm = vms.find(y => y.publicKeyJwk.x == params.publicKey.x &&
26
+ y.publicKeyJwk.y == params.publicKey.y);
27
+ if (!vm) {
28
+ throw new Error(`Provided publicKey not found in did document: DID -> ${did} | pbk: ${JSON.stringify(params.publicKey)}`);
29
+ }
30
+ const result = await this.kms.sign(kms_core_1.Suite.ES256k, params.publicKey, params.content);
31
+ return {
32
+ signature: result,
33
+ publicKey: params.publicKey,
34
+ verificationMethodId: vm.id.indexOf(did.value) > -1 ? vm.id : did.value + vm.id
35
+ };
36
+ }
37
+ async verifyMessage(params) {
38
+ try {
39
+ let pbk = null;
40
+ if ('verificationMethodId' in params) {
41
+ const did = did_1.DID.from(params.verificationMethodId);
42
+ const didDoc = await this.resolver.resolve(did);
43
+ const vm = did_core_1.DIDDocumentUtils.getVerificationMethodById(didDoc, params.verificationMethodId);
44
+ if (!vm)
45
+ throw new Error(`Verification Method id not found in DID Document: ${params.verificationMethodId}`);
46
+ pbk = vm.publicKeyJwk;
47
+ }
48
+ if ('publicKey' in params) {
49
+ pbk = params.publicKey;
50
+ }
51
+ const result = await this.kms.verifySignature(pbk, params.content, params.signature);
52
+ if (result) {
53
+ return { verified: true };
54
+ }
55
+ ;
56
+ return {
57
+ verified: false,
58
+ signedContent: null,
59
+ result: VerifiyJWSResult.InvalidSignature
60
+ };
61
+ }
62
+ catch (ex) {
63
+ return {
64
+ verified: false,
65
+ signedContent: null,
66
+ result: VerifiyJWSResult.UnexpectedError,
67
+ error: ex,
68
+ };
69
+ }
70
+ }
71
+ }
72
+ exports.AgentKMS = AgentKMS;
73
+ var VerifiyJWSResult;
74
+ (function (VerifiyJWSResult) {
75
+ VerifiyJWSResult["InvalidContent"] = "invalid-content";
76
+ VerifiyJWSResult["UnexpectedError"] = "invalid-content";
77
+ VerifiyJWSResult["InvalidSignature"] = "invalid-signature";
78
+ })(VerifiyJWSResult = exports.VerifiyJWSResult || (exports.VerifiyJWSResult = {}));
79
+ //# sourceMappingURL=agent-kms.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-kms.js","sourceRoot":"","sources":["../../src/models/agent-kms.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import { IJWK } from "@extrimian/kms-core";
2
+ export declare class AgentPublicKey {
3
+ name: string;
4
+ description: string;
5
+ publicKeyJWK: IJWK;
6
+ constructor(params: {
7
+ name: string;
8
+ description: string;
9
+ publicKeyJWK: IJWK;
10
+ });
11
+ }
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AgentPublicKey = void 0;
4
+ class AgentPublicKey {
5
+ constructor(params) {
6
+ this.name = params.name;
7
+ this.description = params.description;
8
+ this.publicKeyJWK = params.publicKeyJWK;
9
+ }
10
+ }
11
+ exports.AgentPublicKey = AgentPublicKey;
12
+ //# sourceMappingURL=agent-pbk.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-pbk.js","sourceRoot":"","sources":["../../src/models/agent-pbk.ts"],"names":[],"mappings":";;;AAEA,MAAa,cAAc;IAKvB,YAAY,MAIX;QACG,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;QACxB,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;QACtC,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC;IAC5C,CAAC;CACJ;AAdD,wCAcC"}
@@ -0,0 +1,94 @@
1
+ import { IJWK, IKMS } from "@extrimian/kms-core";
2
+ import { Did, ModenaUniversalRegistry } from "@extrimian/did-registry";
3
+ import { Purpose, Service } from "@extrimian/did-core";
4
+ import { DID } from "./did";
5
+ import { DIDDocumentMetadata } from "@extrimian/modena-sdk";
6
+ export declare abstract class IAgentRegistry {
7
+ protected kms: IKMS;
8
+ initialize(params: {
9
+ kms: IKMS;
10
+ }): void;
11
+ abstract createDID(createRequest: CreateDIDRequest): Promise<CreateDIDResponse>;
12
+ abstract updateDIDDocument(updateRequest: UpdateDIDRequest): Promise<void>;
13
+ }
14
+ export declare abstract class IAgentSidetreeRegistry extends IAgentRegistry {
15
+ protected kms: IKMS;
16
+ initialize(params: {
17
+ kms: IKMS;
18
+ }): void;
19
+ abstract createDID(createRequest: CreateDIDRequest): Promise<CreateDIDSidetreeResponse>;
20
+ }
21
+ export interface CreateDIDRequest {
22
+ didMethod?: string;
23
+ updateKeys: IJWK[];
24
+ recoveryKeys: IJWK[];
25
+ verificationMethods: {
26
+ id: string;
27
+ type: string;
28
+ publicKeyJwk: IJWK;
29
+ purpose: Purpose[];
30
+ }[];
31
+ services?: Service[];
32
+ alsoKnownAs?: string[];
33
+ }
34
+ export interface UpdateDIDRequest {
35
+ did: DID;
36
+ updatePublicKey: IJWK;
37
+ kms: IKMS;
38
+ newUpdateKeys: IJWK[];
39
+ documentMetadata: DIDDocumentMetadata;
40
+ updateKeysToRemove?: {
41
+ publicKeys?: IJWK[];
42
+ updateCommitment?: string[];
43
+ };
44
+ verificationMethodsToAdd?: {
45
+ id: string;
46
+ type: string;
47
+ publicKeyJwk: IJWK;
48
+ purpose: Purpose[];
49
+ }[];
50
+ idsOfVerificationMethodsToRemove?: string[];
51
+ servicesToAdd?: ServiceDefinition[];
52
+ idsOfServiceToRemove?: string[];
53
+ alsoKnownAsToAdd?: string[];
54
+ alsoKnownAsToRemove?: string[];
55
+ }
56
+ export interface CreateDIDResponse {
57
+ did: string;
58
+ }
59
+ export interface CreateDIDSidetreeResponse extends CreateDIDResponse {
60
+ longDid: string;
61
+ }
62
+ export interface KeyDefinition {
63
+ id: string;
64
+ vmKey: VMKey;
65
+ }
66
+ export declare enum VMKey {
67
+ ES256k = 0,
68
+ DIDComm = 1,
69
+ VC = 2,
70
+ RSA = 3
71
+ }
72
+ export interface ServiceDefinition {
73
+ id: string;
74
+ type: string;
75
+ serviceEndpoint: string | string[] | Record<string, string | string[]>;
76
+ }
77
+ export declare class AgentModenaUniversalRegistry extends IAgentSidetreeRegistry {
78
+ private modenaEndpointURL;
79
+ _defaultDidMethod: string;
80
+ didService: ModenaUniversalRegistry;
81
+ constructor(modenaEndpointURL: string, defaultDidMethod?: string);
82
+ setDefaultDIDMethod(didMethod: string): void;
83
+ getSupportedDidMethods(): Promise<string[]>;
84
+ createDID(createRequest: CreateDIDRequest): Promise<CreateDIDSidetreeResponse>;
85
+ updateDIDDocument(request: UpdateDIDRequest): Promise<void>;
86
+ }
87
+ export declare class AgentModenaRegistry extends IAgentSidetreeRegistry {
88
+ private modenaEndpointURL;
89
+ private didMethod?;
90
+ didService: Did;
91
+ constructor(modenaEndpointURL: string, didMethod?: string);
92
+ createDID(createRequest: CreateDIDRequest): Promise<CreateDIDSidetreeResponse>;
93
+ updateDIDDocument(request: UpdateDIDRequest): Promise<void>;
94
+ }
@@ -0,0 +1,130 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AgentModenaRegistry = exports.AgentModenaUniversalRegistry = exports.VMKey = exports.IAgentSidetreeRegistry = exports.IAgentRegistry = void 0;
4
+ const kms_core_1 = require("@extrimian/kms-core");
5
+ const did_registry_1 = require("@extrimian/did-registry");
6
+ const modena_sdk_1 = require("@extrimian/modena-sdk");
7
+ class IAgentRegistry {
8
+ initialize(params) {
9
+ this.kms = params.kms;
10
+ }
11
+ }
12
+ exports.IAgentRegistry = IAgentRegistry;
13
+ class IAgentSidetreeRegistry extends IAgentRegistry {
14
+ initialize(params) {
15
+ this.kms = params.kms;
16
+ }
17
+ }
18
+ exports.IAgentSidetreeRegistry = IAgentSidetreeRegistry;
19
+ var VMKey;
20
+ (function (VMKey) {
21
+ VMKey[VMKey["ES256k"] = 0] = "ES256k";
22
+ VMKey[VMKey["DIDComm"] = 1] = "DIDComm";
23
+ VMKey[VMKey["VC"] = 2] = "VC";
24
+ VMKey[VMKey["RSA"] = 3] = "RSA";
25
+ })(VMKey = exports.VMKey || (exports.VMKey = {}));
26
+ class AgentModenaUniversalRegistry extends IAgentSidetreeRegistry {
27
+ constructor(modenaEndpointURL, defaultDidMethod) {
28
+ super();
29
+ this.modenaEndpointURL = modenaEndpointURL;
30
+ this.didService = new did_registry_1.ModenaUniversalRegistry();
31
+ modena_sdk_1.ModenaSdkConfig.maxCanonicalizedDeltaSizeInBytes = 2000;
32
+ this._defaultDidMethod = defaultDidMethod;
33
+ }
34
+ setDefaultDIDMethod(didMethod) {
35
+ this._defaultDidMethod = didMethod;
36
+ }
37
+ async getSupportedDidMethods() {
38
+ return await this.didService.getSupportedDidMethods(this.modenaEndpointURL);
39
+ }
40
+ async createDID(createRequest) {
41
+ var _a;
42
+ const defaultDidMethod = createRequest.didMethod || this._defaultDidMethod || (await (this.getSupportedDidMethods())[0]);
43
+ const didService = new did_registry_1.ModenaUniversalRegistry();
44
+ const createDIDResponse = await didService.createDID({
45
+ updateKeys: createRequest.updateKeys,
46
+ recoveryKeys: createRequest.recoveryKeys,
47
+ verificationMethods: createRequest.verificationMethods,
48
+ services: ((_a = createRequest.services) === null || _a === void 0 ? void 0 : _a.length) > 0 ? createRequest.services : undefined,
49
+ alsoKnownAs: createRequest.alsoKnownAs,
50
+ });
51
+ const publishResult = await didService.publishDID({
52
+ didMethod: defaultDidMethod,
53
+ universalResolverURL: this.modenaEndpointURL,
54
+ createDIDResponse: createDIDResponse,
55
+ });
56
+ return {
57
+ did: publishResult.did,
58
+ longDid: publishResult.longDid,
59
+ };
60
+ }
61
+ async updateDIDDocument(request) {
62
+ return await this.didService.updateDID({
63
+ didSuffix: request.did.getDIDSuffix(),
64
+ newUpdateKeys: request.newUpdateKeys,
65
+ updateApiUrl: this.modenaEndpointURL,
66
+ updateKeysToRemove: request.updateKeysToRemove,
67
+ documentMetadata: request.documentMetadata,
68
+ updatePublicKey: request.updatePublicKey,
69
+ idsOfServiceToRemove: request.idsOfServiceToRemove,
70
+ servicesToAdd: request.servicesToAdd,
71
+ verificationMethodsToAdd: request.verificationMethodsToAdd,
72
+ idsOfVerificationMethodsToRemove: request.idsOfVerificationMethodsToRemove,
73
+ alsoKnownAsToAdd: request.alsoKnownAsToAdd,
74
+ alsoKnownAsToRemove: request.alsoKnownAsToRemove,
75
+ signer: async (content) => {
76
+ return await request.kms.sign(kms_core_1.Suite.ES256k, request.updatePublicKey, content);
77
+ },
78
+ });
79
+ }
80
+ }
81
+ exports.AgentModenaUniversalRegistry = AgentModenaUniversalRegistry;
82
+ class AgentModenaRegistry extends IAgentSidetreeRegistry {
83
+ constructor(modenaEndpointURL, didMethod) {
84
+ super();
85
+ this.modenaEndpointURL = modenaEndpointURL;
86
+ this.didMethod = didMethod;
87
+ this.didService = new did_registry_1.Did();
88
+ }
89
+ async createDID(createRequest) {
90
+ var _a;
91
+ modena_sdk_1.ModenaSdkConfig.maxCanonicalizedDeltaSizeInBytes = 2000;
92
+ const createDIDResponse = await this.didService.createDID({
93
+ updateKeys: createRequest.updateKeys,
94
+ recoveryKeys: createRequest.recoveryKeys,
95
+ verificationMethods: createRequest.verificationMethods,
96
+ didMethod: this.didMethod,
97
+ services: ((_a = createRequest.services) === null || _a === void 0 ? void 0 : _a.length) > 0 ? createRequest.services : undefined,
98
+ alsoKnownAs: createRequest.alsoKnownAs,
99
+ });
100
+ const publishResult = await this.didService.publishDID({
101
+ modenaApiURL: this.modenaEndpointURL,
102
+ createDIDResponse: createDIDResponse,
103
+ });
104
+ return {
105
+ did: publishResult.did,
106
+ longDid: createDIDResponse.longDid,
107
+ };
108
+ }
109
+ async updateDIDDocument(request) {
110
+ return await this.didService.updateDID({
111
+ didSuffix: request.did.getDIDSuffix(),
112
+ newUpdateKeys: request.newUpdateKeys,
113
+ updateApiUrl: this.modenaEndpointURL,
114
+ updateKeysToRemove: request.updateKeysToRemove,
115
+ documentMetadata: request.documentMetadata,
116
+ updatePublicKey: request.updatePublicKey,
117
+ idsOfServiceToRemove: request.idsOfServiceToRemove,
118
+ servicesToAdd: request.servicesToAdd,
119
+ verificationMethodsToAdd: request.verificationMethodsToAdd,
120
+ idsOfVerificationMethodsToRemove: request.idsOfVerificationMethodsToRemove,
121
+ alsoKnownAsToAdd: request.alsoKnownAsToAdd,
122
+ alsoKnownAsToRemove: request.alsoKnownAsToRemove,
123
+ signer: async (content) => {
124
+ return await request.kms.sign(kms_core_1.Suite.ES256k, request.updatePublicKey, content);
125
+ },
126
+ });
127
+ }
128
+ }
129
+ exports.AgentModenaRegistry = AgentModenaRegistry;
130
+ //# sourceMappingURL=agent-registry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-registry.js","sourceRoot":"","sources":["../../src/models/agent-registry.ts"],"names":[],"mappings":";;;AAAA,kDAAwD;AACxD,0DAAuE;AAEvE,sDAAiE;AAMjE,MAAsB,cAAc;IAGhC,UAAU,CAAC,MAEV;QACG,IAAI,CAAC,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC;IAC1B,CAAC;CAIJ;AAXD,wCAWC;AAED,MAAsB,sBAAuB,SAAQ,cAAc;IAG/D,UAAU,CAAC,MAEV;QACG,IAAI,CAAC,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC;IAC1B,CAAC;CAGJ;AAVD,wDAUC;AAqDD,IAAY,KAKX;AALD,WAAY,KAAK;IACb,qCAAM,CAAA;IACN,uCAAO,CAAA;IACP,6BAAE,CAAA;IACF,+BAAG,CAAA;AACP,CAAC,EALW,KAAK,GAAL,aAAK,KAAL,aAAK,QAKhB;AAQD,MAAa,4BAA6B,SAAQ,sBAAsB;IAIpE,YAAoB,iBAAyB,EAAE,gBAAyB;QACpE,KAAK,EAAE,CAAC;QADQ,sBAAiB,GAAjB,iBAAiB,CAAQ;QAEzC,IAAI,CAAC,UAAU,GAAG,IAAI,sCAAuB,EAAE,CAAC;QAEhD,4BAAe,CAAC,gCAAgC,GAAG,IAAI,CAAC;QACxD,IAAI,CAAC,iBAAiB,GAAG,gBAAgB,CAAC;IAC9C,CAAC;IAED,mBAAmB,CAAC,SAAiB;QACjC,IAAI,CAAC,iBAAiB,GAAG,SAAS,CAAC;IACvC,CAAC;IAED,KAAK,CAAC,sBAAsB;QACxB,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,sBAAsB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IAChF,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,aAA+B;;QAC3C,MAAM,gBAAgB,GAAG,aAAa,CAAC,SAAS,IAAI,IAAI,CAAC,iBAAiB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,sBAAsB,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QAExH,MAAM,UAAU,GAAG,IAAI,sCAAuB,EAAE,CAAC;QAEjD,MAAM,iBAAiB,GAAG,MAAM,UAAU,CAAC,SAAS,CAAC;YACjD,UAAU,EAAE,aAAa,CAAC,UAAU;YACpC,YAAY,EAAE,aAAa,CAAC,YAAY;YACxC,mBAAmB,EAAE,aAAa,CAAC,mBAAmB;YACtD,QAAQ,EAAE,CAAA,MAAA,aAAa,CAAC,QAAQ,0CAAE,MAAM,IAAG,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;YACjF,WAAW,EAAE,aAAa,CAAC,WAAW;SACzC,CAAC,CAAC;QAEH,MAAM,aAAa,GAAG,MAAM,UAAU,CAAC,UAAU,CAAC;YAC9C,SAAS,EAAE,gBAAgB;YAC3B,oBAAoB,EAAE,IAAI,CAAC,iBAAiB;YAC5C,iBAAiB,EAAE,iBAAiB;SACvC,CAAC,CAAC;QAEH,OAAO;YACH,GAAG,EAAE,aAAa,CAAC,GAAG;YACtB,OAAO,EAAE,aAAa,CAAC,OAAO;SACjC,CAAA;IACL,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,OAAyB;QAC7C,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC;YACnC,SAAS,EAAE,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE;YACrC,aAAa,EAAE,OAAO,CAAC,aAAa;YACpC,YAAY,EAAE,IAAI,CAAC,iBAAiB;YACpC,kBAAkB,EAAE,OAAO,CAAC,kBAAkB;YAC9C,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;YAC1C,eAAe,EAAE,OAAO,CAAC,eAAe;YACxC,oBAAoB,EAAE,OAAO,CAAC,oBAAoB;YAClD,aAAa,EAAE,OAAO,CAAC,aAAa;YACpC,wBAAwB,EAAE,OAAO,CAAC,wBAAwB;YAC1D,gCAAgC,EAAE,OAAO,CAAC,gCAAgC;YAC1E,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;YAC1C,mBAAmB,EAAE,OAAO,CAAC,mBAAmB;YAChD,MAAM,EAAE,KAAK,EAAE,OAAY,EAAmB,EAAE;gBAC5C,OAAO,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,gBAAK,CAAC,MAAM,EAAE,OAAO,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;YAClF,CAAC;SACJ,CAAC,CAAC;IACP,CAAC;CACJ;AAhED,oEAgEC;AAED,MAAa,mBAAoB,SAAQ,sBAAsB;IAG3D,YAAoB,iBAAyB,EAAU,SAAkB;QACrE,KAAK,EAAE,CAAC;QADQ,sBAAiB,GAAjB,iBAAiB,CAAQ;QAAU,cAAS,GAAT,SAAS,CAAS;QAFzE,eAAU,GAAG,IAAI,kBAAG,EAAE,CAAC;IAIvB,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,aAA+B;;QAC3C,4BAAe,CAAC,gCAAgC,GAAG,IAAI,CAAC;QAExD,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC;YACtD,UAAU,EAAE,aAAa,CAAC,UAAU;YACpC,YAAY,EAAE,aAAa,CAAC,YAAY;YACxC,mBAAmB,EAAE,aAAa,CAAC,mBAAmB;YACtD,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,QAAQ,EAAE,CAAA,MAAA,aAAa,CAAC,QAAQ,0CAAE,MAAM,IAAG,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;YACjF,WAAW,EAAE,aAAa,CAAC,WAAW;SACzC,CAAC,CAAC;QAEH,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC;YACnD,YAAY,EAAE,IAAI,CAAC,iBAAiB;YACpC,iBAAiB,EAAE,iBAAiB;SACvC,CAAC,CAAC;QAEH,OAAO;YACH,GAAG,EAAE,aAAa,CAAC,GAAG;YACtB,OAAO,EAAE,iBAAiB,CAAC,OAAO;SACrC,CAAA;IACL,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,OAAyB;QAC7C,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC;YACnC,SAAS,EAAE,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE;YACrC,aAAa,EAAE,OAAO,CAAC,aAAa;YACpC,YAAY,EAAE,IAAI,CAAC,iBAAiB;YACpC,kBAAkB,EAAE,OAAO,CAAC,kBAAkB;YAC9C,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;YAC1C,eAAe,EAAE,OAAO,CAAC,eAAe;YACxC,oBAAoB,EAAE,OAAO,CAAC,oBAAoB;YAClD,aAAa,EAAE,OAAO,CAAC,aAAa;YACpC,wBAAwB,EAAE,OAAO,CAAC,wBAAwB;YAC1D,gCAAgC,EAAE,OAAO,CAAC,gCAAgC;YAC1E,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;YAC1C,mBAAmB,EAAE,OAAO,CAAC,mBAAmB;YAChD,MAAM,EAAE,KAAK,EAAE,OAAY,EAAmB,EAAE;gBAC5C,OAAO,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,gBAAK,CAAC,MAAM,EAAE,OAAO,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;YAClF,CAAC;SACJ,CAAC,CAAC;IACP,CAAC;CACJ;AAjDD,kDAiDC"}
@@ -0,0 +1,21 @@
1
+ import { DIDDocument } from "@extrimian/did-core";
2
+ import { DIDModenaResolver, DIDUniversalResolver, ModenaResponse } from "@extrimian/did-resolver";
3
+ import { DID } from "./did";
4
+ import { IAgentResolver } from "./agent-resolver";
5
+ export declare class AgentModenaUniversalResolverCached implements IAgentResolver {
6
+ universalResolver: DIDUniversalResolver;
7
+ cache: any;
8
+ constructor(resolverURL: string, cacheOptions?: {
9
+ maxItems?: number;
10
+ durationInSeconds?: number;
11
+ });
12
+ resolve(did: DID): Promise<DIDDocument>;
13
+ resolveWithMetdata(did: DID): Promise<ModenaResponse>;
14
+ }
15
+ export declare class AgentModenaResolverCached implements IAgentResolver {
16
+ cache: any;
17
+ modenaResolver: DIDModenaResolver;
18
+ constructor(resolverURL: string);
19
+ resolve(did: DID): Promise<DIDDocument>;
20
+ resolveWithMetdata(did: DID): Promise<ModenaResponse>;
21
+ }
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AgentModenaResolverCached = exports.AgentModenaUniversalResolverCached = void 0;
4
+ const did_resolver_1 = require("@extrimian/did-resolver");
5
+ const LRU = require('lru-cache');
6
+ class AgentModenaUniversalResolverCached {
7
+ constructor(resolverURL, cacheOptions) {
8
+ this.universalResolver = new did_resolver_1.DIDUniversalResolver({
9
+ universalResolverURL: resolverURL,
10
+ });
11
+ this.cache = new LRU({
12
+ max: (cacheOptions === null || cacheOptions === void 0 ? void 0 : cacheOptions.maxItems) || 10000,
13
+ ttl: 1000 * ((cacheOptions === null || cacheOptions === void 0 ? void 0 : cacheOptions.durationInSeconds) || 30)
14
+ });
15
+ }
16
+ async resolve(did) {
17
+ return (await this.resolveWithMetdata(did)).didDocument;
18
+ }
19
+ async resolveWithMetdata(did) {
20
+ if (this.cache.has(did.value)) {
21
+ return this.cache.get(did.value);
22
+ }
23
+ const didDocWithMetadata = await this.universalResolver.resolveDIDWithMetadata(did.value);
24
+ this.cache.set(did.value, didDocWithMetadata);
25
+ return didDocWithMetadata;
26
+ }
27
+ }
28
+ exports.AgentModenaUniversalResolverCached = AgentModenaUniversalResolverCached;
29
+ class AgentModenaResolverCached {
30
+ constructor(resolverURL) {
31
+ this.modenaResolver = new did_resolver_1.DIDModenaResolver({
32
+ modenaURL: resolverURL,
33
+ });
34
+ }
35
+ async resolve(did) {
36
+ return (await this.resolveWithMetdata(did)).didDocument;
37
+ }
38
+ async resolveWithMetdata(did) {
39
+ if (this.cache.has(did.value)) {
40
+ return this.cache.get(did.value);
41
+ }
42
+ const didDocWithMetadata = await this.modenaResolver.resolveDIDWithMetadata(did.getDidMethod());
43
+ this.cache.set(did.value, didDocWithMetadata);
44
+ return didDocWithMetadata;
45
+ }
46
+ }
47
+ exports.AgentModenaResolverCached = AgentModenaResolverCached;
48
+ //# sourceMappingURL=agent-resolver-cache.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-resolver-cache.js","sourceRoot":"","sources":["../../src/models/agent-resolver-cache.ts"],"names":[],"mappings":";;;AACA,0DAAiG;AAEjG,MAAM,GAAG,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;AAGjC,MAAa,kCAAkC;IAI3C,YAAY,WAAmB,EAAE,YAGhC;QACG,IAAI,CAAC,iBAAiB,GAAG,IAAI,mCAAoB,CAAC;YAC9C,oBAAoB,EAAE,WAAW;SACpC,CAAC,CAAC;QAEH,IAAI,CAAC,KAAK,GAAG,IAAI,GAAG,CAAC;YACjB,GAAG,EAAE,CAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,QAAQ,KAAI,KAAK;YACpC,GAAG,EAAE,IAAI,GAAG,CAAC,CAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,iBAAiB,KAAI,EAAE,CAAC;SACtD,CAAC,CAAC;IACP,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,GAAQ;QAClB,OAAO,CAAC,MAAM,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC;IAC5D,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,GAAQ;QAC7B,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;YAC3B,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;SACpC;QACD,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,sBAAsB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC1F,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,kBAAkB,CAAC,CAAC;QAC9C,OAAO,kBAAkB,CAAC;IAC9B,CAAC;CACJ;AA9BD,gFA8BC;AAED,MAAa,yBAAyB;IAIlC,YAAY,WAAmB;QAC3B,IAAI,CAAC,cAAc,GAAG,IAAI,gCAAiB,CAAC;YACxC,SAAS,EAAE,WAAW;SACzB,CAAC,CAAC;IACP,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,GAAQ;QAClB,OAAO,CAAC,MAAM,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC;IAC5D,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,GAAQ;QAC7B,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;YAC3B,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;SACpC;QACD,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,sBAAsB,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,CAAC;QAChG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,kBAAkB,CAAC,CAAC;QAC9C,OAAO,kBAAkB,CAAC;IAC9B,CAAC;CAEJ;AAvBD,8DAuBC"}
@@ -0,0 +1,19 @@
1
+ import { DIDDocument } from "@extrimian/did-core";
2
+ import { DIDModenaResolver, DIDUniversalResolver, ModenaResponse } from "@extrimian/did-resolver";
3
+ import { DID } from "./did";
4
+ export interface IAgentResolver {
5
+ resolve(did: DID): Promise<DIDDocument>;
6
+ resolveWithMetdata(did: DID): Promise<ModenaResponse>;
7
+ }
8
+ export declare class AgentModenaUniversalResolver implements IAgentResolver {
9
+ universalResolver: DIDUniversalResolver;
10
+ constructor(resolverURL: string);
11
+ resolve(did: DID): Promise<DIDDocument>;
12
+ resolveWithMetdata(did: DID): Promise<ModenaResponse>;
13
+ }
14
+ export declare class AgentModenaResolver implements IAgentResolver {
15
+ modenaResolver: DIDModenaResolver;
16
+ constructor(resolverURL: string);
17
+ resolve(did: DID): Promise<DIDDocument>;
18
+ resolveWithMetdata(did: DID): Promise<ModenaResponse>;
19
+ }
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AgentModenaResolver = exports.AgentModenaUniversalResolver = void 0;
4
+ const did_resolver_1 = require("@extrimian/did-resolver");
5
+ class AgentModenaUniversalResolver {
6
+ constructor(resolverURL) {
7
+ this.universalResolver = new did_resolver_1.DIDUniversalResolver({
8
+ universalResolverURL: resolverURL,
9
+ });
10
+ }
11
+ async resolve(did) {
12
+ return await this.universalResolver.resolveDID(did.value);
13
+ }
14
+ async resolveWithMetdata(did) {
15
+ return await this.universalResolver.resolveDIDWithMetadata(did.value);
16
+ }
17
+ }
18
+ exports.AgentModenaUniversalResolver = AgentModenaUniversalResolver;
19
+ class AgentModenaResolver {
20
+ constructor(resolverURL) {
21
+ this.modenaResolver = new did_resolver_1.DIDModenaResolver({
22
+ modenaURL: resolverURL,
23
+ });
24
+ }
25
+ async resolve(did) {
26
+ const didDocumentResult = await this.modenaResolver.resolveDID(did.getDIDSuffix());
27
+ return didDocumentResult;
28
+ }
29
+ async resolveWithMetdata(did) {
30
+ return await this.modenaResolver.resolveDIDWithMetadata(did.value);
31
+ }
32
+ }
33
+ exports.AgentModenaResolver = AgentModenaResolver;
34
+ //# sourceMappingURL=agent-resolver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-resolver.js","sourceRoot":"","sources":["../../src/models/agent-resolver.ts"],"names":[],"mappings":";;;AACA,0DAAiG;AAQjG,MAAa,4BAA4B;IAGrC,YAAY,WAAmB;QAC3B,IAAI,CAAC,iBAAiB,GAAG,IAAI,mCAAoB,CAAC;YAC9C,oBAAoB,EAAE,WAAW;SACpC,CAAC,CAAC;IACP,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,GAAQ;QAClB,OAAO,MAAM,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAC9D,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,GAAQ;QAC7B,OAAO,MAAM,IAAI,CAAC,iBAAiB,CAAC,sBAAsB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAC1E,CAAC;CACJ;AAhBD,oEAgBC;AAED,MAAa,mBAAmB;IAG5B,YAAY,WAAmB;QAC3B,IAAI,CAAC,cAAc,GAAG,IAAI,gCAAiB,CAAC;YACxC,SAAS,EAAE,WAAW;SACzB,CAAC,CAAC;IACP,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,GAAQ;QAClB,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,CAAC;QACnF,OAAO,iBAAiB,CAAC;IAC7B,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,GAAQ;QAC7B,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,sBAAsB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACvE,CAAC;CAEJ;AAlBD,kDAkBC"}
@@ -0,0 +1,3 @@
1
+ import { KMSStorage } from "@extrimian/kms-core";
2
+ export interface AgentSecureStorage extends KMSStorage {
3
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=agent-secure-storage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-secure-storage.js","sourceRoot":"","sources":["../../src/models/agent-secure-storage.ts"],"names":[],"mappings":""}
@@ -0,0 +1,14 @@
1
+ import { AgentSecureStorage } from "../agent-secure-storage";
2
+ export declare class FileSystemAgentSecureStorage implements AgentSecureStorage {
3
+ readonly filepath: string;
4
+ constructor(params: {
5
+ filepath: string;
6
+ });
7
+ add(key: string, data: any): Promise<void>;
8
+ get(key: string): Promise<any>;
9
+ getAll(): Promise<Map<string, any>>;
10
+ update(key: string, data: any): void;
11
+ remove(key: string): void;
12
+ private getData;
13
+ private saveData;
14
+ }
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FileSystemAgentSecureStorage = void 0;
4
+ const fs_1 = require("fs");
5
+ class FileSystemAgentSecureStorage {
6
+ constructor(params) {
7
+ this.filepath = params.filepath;
8
+ }
9
+ async add(key, data) {
10
+ const map = this.getData();
11
+ map.set(key, data);
12
+ this.saveData(map);
13
+ }
14
+ async get(key) {
15
+ return this.getData().get(key);
16
+ }
17
+ async getAll() {
18
+ return this.getData();
19
+ }
20
+ update(key, data) {
21
+ const map = this.getData();
22
+ map.set(key, data);
23
+ this.saveData(map);
24
+ }
25
+ remove(key) {
26
+ const map = this.getData();
27
+ map.delete(key);
28
+ this.saveData(map);
29
+ }
30
+ getData() {
31
+ if (!(0, fs_1.existsSync)(this.filepath)) {
32
+ return new Map();
33
+ }
34
+ const file = (0, fs_1.readFileSync)(this.filepath, {
35
+ encoding: "utf-8",
36
+ });
37
+ if (!file) {
38
+ return new Map();
39
+ }
40
+ return new Map(Object.entries(JSON.parse(file)));
41
+ }
42
+ saveData(data) {
43
+ (0, fs_1.writeFileSync)(this.filepath, JSON.stringify(Object.fromEntries(data)), {
44
+ encoding: "utf-8",
45
+ });
46
+ }
47
+ }
48
+ exports.FileSystemAgentSecureStorage = FileSystemAgentSecureStorage;
49
+ //# sourceMappingURL=filesystem-agent-secure-storage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filesystem-agent-secure-storage.js","sourceRoot":"","sources":["../../../src/models/agent-secure-storages/filesystem-agent-secure-storage.ts"],"names":[],"mappings":";;;AACA,2BAAqF;AAErF,MAAa,4BAA4B;IAIrC,YAAY,MAEX;QACG,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;IACpC,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,GAAW,EAAE,IAAS;QAC5B,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAC3B,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QACnB,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,GAAW;QACjB,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACnC,CAAC;IAED,KAAK,CAAC,MAAM;QACR,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC;IAC1B,CAAC;IAED,MAAM,CAAC,GAAW,EAAE,IAAS;QACzB,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAC3B,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QACnB,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IACvB,CAAC;IAED,MAAM,CAAC,GAAW;QACd,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAC3B,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAChB,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IACvB,CAAC;IAEO,OAAO;QACX,IAAI,CAAC,IAAA,eAAU,EAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;YAC5B,OAAO,IAAI,GAAG,EAAE,CAAC;SACpB;QAED,MAAM,IAAI,GAAG,IAAA,iBAAY,EAAC,IAAI,CAAC,QAAQ,EAAE;YACrC,QAAQ,EAAE,OAAO;SACpB,CAAC,CAAC;QAEH,IAAI,CAAC,IAAI,EAAE;YACP,OAAO,IAAI,GAAG,EAAE,CAAC;SACpB;QAED,OAAO,IAAI,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACrD,CAAC;IAEO,QAAQ,CAAC,IAAsB;QACnC,IAAA,kBAAa,EAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,EAAE;YACnE,QAAQ,EAAE,OAAO;SACpB,CAAC,CAAC;IACP,CAAC;CACJ;AAzDD,oEAyDC"}
@@ -0,0 +1,9 @@
1
+ export interface IStorage {
2
+ add(key: string, data: any): Promise<void>;
3
+ get<T = any>(key: string): Promise<T>;
4
+ getAll(): Promise<Map<string, any>>;
5
+ update(key: string, data: any): any;
6
+ remove(key: string): any;
7
+ }
8
+ export interface IAgentStorage extends IStorage {
9
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=agent-storage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-storage.js","sourceRoot":"","sources":["../../src/models/agent-storage.ts"],"names":[],"mappings":""}
@@ -0,0 +1,19 @@
1
+ export declare class DID {
2
+ value: string;
3
+ private constructor();
4
+ /**
5
+ * This method converts a string value or full verification method id to a data value DID object.
6
+ *
7
+ * @param did - DID input. This value can also be a full verification method id.
8
+ * @returns Data value object that represent a DID
9
+ */
10
+ static from(did: string): DID;
11
+ validate(did: string): boolean;
12
+ getDidMethod(): string;
13
+ isEqual(other: DID): boolean;
14
+ isLongDIDFor(shortDID: DID): boolean;
15
+ isShortDIDFor(longDID: DID): boolean;
16
+ getDIDSuffix(): string;
17
+ private getLongDIDSuffix;
18
+ isLongDID(): boolean;
19
+ }