@enbox/agent 0.2.2 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (133) hide show
  1. package/dist/browser.mjs +9 -9
  2. package/dist/browser.mjs.map +4 -4
  3. package/dist/esm/agent-did-resolver-cache.js.map +1 -1
  4. package/dist/esm/anonymous-dwn-api.js +1 -1
  5. package/dist/esm/bearer-identity.js +1 -1
  6. package/dist/esm/connect.js +3 -3
  7. package/dist/esm/connect.js.map +1 -1
  8. package/dist/esm/did-api.js +3 -3
  9. package/dist/esm/did-api.js.map +1 -1
  10. package/dist/esm/dwn-api.js +39 -8
  11. package/dist/esm/dwn-api.js.map +1 -1
  12. package/dist/esm/dwn-discovery-file.js +244 -0
  13. package/dist/esm/dwn-discovery-file.js.map +1 -0
  14. package/dist/esm/dwn-discovery-payload.js +253 -0
  15. package/dist/esm/dwn-discovery-payload.js.map +1 -0
  16. package/dist/esm/dwn-encryption.js.map +1 -1
  17. package/dist/esm/dwn-key-delivery.js.map +1 -1
  18. package/dist/esm/dwn-record-upgrade.js.map +1 -1
  19. package/dist/esm/{web5-user-agent.js → enbox-user-agent.js} +12 -7
  20. package/dist/esm/enbox-user-agent.js.map +1 -0
  21. package/dist/esm/identity-api.js +3 -3
  22. package/dist/esm/identity-api.js.map +1 -1
  23. package/dist/esm/index.js +3 -1
  24. package/dist/esm/index.js.map +1 -1
  25. package/dist/esm/local-dwn.js +150 -26
  26. package/dist/esm/local-dwn.js.map +1 -1
  27. package/dist/esm/local-key-manager.js +2 -2
  28. package/dist/esm/local-key-manager.js.map +1 -1
  29. package/dist/esm/oidc.js +11 -11
  30. package/dist/esm/oidc.js.map +1 -1
  31. package/dist/esm/permissions-api.js.map +1 -1
  32. package/dist/esm/store-data.js.map +1 -1
  33. package/dist/esm/sync-api.js +2 -2
  34. package/dist/esm/sync-api.js.map +1 -1
  35. package/dist/esm/sync-engine-level.js +2 -2
  36. package/dist/esm/sync-engine-level.js.map +1 -1
  37. package/dist/esm/test-harness.js +3 -3
  38. package/dist/esm/test-harness.js.map +1 -1
  39. package/dist/esm/utils-internal.js +2 -2
  40. package/dist/types/agent-did-resolver-cache.d.ts +7 -7
  41. package/dist/types/agent-did-resolver-cache.d.ts.map +1 -1
  42. package/dist/types/anonymous-dwn-api.d.ts +3 -3
  43. package/dist/types/anonymous-dwn-api.d.ts.map +1 -1
  44. package/dist/types/bearer-identity.d.ts +1 -1
  45. package/dist/types/connect.d.ts +8 -8
  46. package/dist/types/connect.d.ts.map +1 -1
  47. package/dist/types/did-api.d.ts +12 -11
  48. package/dist/types/did-api.d.ts.map +1 -1
  49. package/dist/types/dwn-api.d.ts +27 -11
  50. package/dist/types/dwn-api.d.ts.map +1 -1
  51. package/dist/types/dwn-discovery-file.d.ts +122 -0
  52. package/dist/types/dwn-discovery-file.d.ts.map +1 -0
  53. package/dist/types/dwn-discovery-payload.d.ts +105 -0
  54. package/dist/types/dwn-discovery-payload.d.ts.map +1 -0
  55. package/dist/types/dwn-encryption.d.ts +8 -8
  56. package/dist/types/dwn-encryption.d.ts.map +1 -1
  57. package/dist/types/dwn-key-delivery.d.ts +5 -5
  58. package/dist/types/dwn-key-delivery.d.ts.map +1 -1
  59. package/dist/types/dwn-record-upgrade.d.ts +2 -2
  60. package/dist/types/dwn-record-upgrade.d.ts.map +1 -1
  61. package/dist/types/{web5-user-agent.d.ts → enbox-user-agent.d.ts} +17 -13
  62. package/dist/types/enbox-user-agent.d.ts.map +1 -0
  63. package/dist/types/identity-api.d.ts +10 -10
  64. package/dist/types/identity-api.d.ts.map +1 -1
  65. package/dist/types/index.d.ts +3 -1
  66. package/dist/types/index.d.ts.map +1 -1
  67. package/dist/types/local-dwn.d.ts +93 -15
  68. package/dist/types/local-dwn.d.ts.map +1 -1
  69. package/dist/types/local-key-manager.d.ts +9 -9
  70. package/dist/types/local-key-manager.d.ts.map +1 -1
  71. package/dist/types/oidc.d.ts +23 -19
  72. package/dist/types/oidc.d.ts.map +1 -1
  73. package/dist/types/permissions-api.d.ts +4 -4
  74. package/dist/types/permissions-api.d.ts.map +1 -1
  75. package/dist/types/store-data.d.ts +3 -3
  76. package/dist/types/store-data.d.ts.map +1 -1
  77. package/dist/types/store-did.d.ts +2 -2
  78. package/dist/types/store-did.d.ts.map +1 -1
  79. package/dist/types/store-identity.d.ts +2 -2
  80. package/dist/types/store-identity.d.ts.map +1 -1
  81. package/dist/types/store-key.d.ts +2 -2
  82. package/dist/types/store-key.d.ts.map +1 -1
  83. package/dist/types/sync-api.d.ts +9 -9
  84. package/dist/types/sync-api.d.ts.map +1 -1
  85. package/dist/types/sync-engine-level.d.ts +9 -9
  86. package/dist/types/sync-engine-level.d.ts.map +1 -1
  87. package/dist/types/sync-messages.d.ts +5 -5
  88. package/dist/types/sync-messages.d.ts.map +1 -1
  89. package/dist/types/test-harness.d.ts +4 -4
  90. package/dist/types/test-harness.d.ts.map +1 -1
  91. package/dist/types/types/agent.d.ts +24 -19
  92. package/dist/types/types/agent.d.ts.map +1 -1
  93. package/dist/types/types/identity.d.ts +1 -1
  94. package/dist/types/types/key-manager.d.ts +2 -2
  95. package/dist/types/types/key-manager.d.ts.map +1 -1
  96. package/dist/types/types/sync.d.ts +2 -2
  97. package/dist/types/types/sync.d.ts.map +1 -1
  98. package/dist/types/utils-internal.d.ts +4 -4
  99. package/dist/types/utils-internal.d.ts.map +1 -1
  100. package/package.json +6 -6
  101. package/src/agent-did-resolver-cache.ts +8 -8
  102. package/src/anonymous-dwn-api.ts +4 -4
  103. package/src/bearer-identity.ts +1 -1
  104. package/src/connect.ts +12 -12
  105. package/src/did-api.ts +13 -11
  106. package/src/dwn-api.ts +61 -16
  107. package/src/dwn-discovery-file.ts +305 -0
  108. package/src/dwn-discovery-payload.ts +308 -0
  109. package/src/dwn-encryption.ts +8 -8
  110. package/src/dwn-key-delivery.ts +5 -5
  111. package/src/dwn-record-upgrade.ts +2 -2
  112. package/src/{web5-user-agent.ts → enbox-user-agent.ts} +26 -16
  113. package/src/identity-api.ts +11 -11
  114. package/src/index.ts +3 -1
  115. package/src/local-dwn.ts +154 -28
  116. package/src/local-key-manager.ts +10 -10
  117. package/src/oidc.ts +40 -30
  118. package/src/permissions-api.ts +5 -5
  119. package/src/store-data.ts +7 -7
  120. package/src/store-did.ts +2 -2
  121. package/src/store-identity.ts +2 -2
  122. package/src/store-key.ts +2 -2
  123. package/src/sync-api.ts +10 -10
  124. package/src/sync-engine-level.ts +12 -12
  125. package/src/sync-messages.ts +5 -5
  126. package/src/test-harness.ts +9 -9
  127. package/src/types/agent.ts +31 -20
  128. package/src/types/identity.ts +1 -1
  129. package/src/types/key-manager.ts +2 -2
  130. package/src/types/sync.ts +2 -2
  131. package/src/utils-internal.ts +4 -4
  132. package/dist/esm/web5-user-agent.js.map +0 -1
  133. package/dist/types/web5-user-agent.d.ts.map +0 -1
package/src/sync-api.ts CHANGED
@@ -1,19 +1,19 @@
1
- import type { Web5PlatformAgent } from './types/agent.js';
1
+ import type { EnboxPlatformAgent } from './types/agent.js';
2
2
  import type { StartSyncParams, SyncConnectivityState, SyncEngine, SyncIdentityOptions } from './types/sync.js';
3
3
 
4
4
  export type SyncApiParams = {
5
- agent?: Web5PlatformAgent;
5
+ agent?: EnboxPlatformAgent;
6
6
  syncEngine: SyncEngine;
7
7
  };
8
8
 
9
9
  export class AgentSyncApi implements SyncEngine {
10
10
  /**
11
- * Holds the instance of a `Web5PlatformAgent` that represents the current execution context for
12
- * the `AgentSyncApi`. This agent is used to interact with other Web5 agent components. It's vital
13
- * to ensure this instance is set to correctly contextualize operations within the broader Web5
11
+ * Holds the instance of a `EnboxPlatformAgent` that represents the current execution context for
12
+ * the `AgentSyncApi`. This agent is used to interact with other Enbox agent components. It's vital
13
+ * to ensure this instance is set to correctly contextualize operations within the broader Enbox
14
14
  * Agent framework.
15
15
  */
16
- private _agent?: Web5PlatformAgent;
16
+ private _agent?: EnboxPlatformAgent;
17
17
 
18
18
  private _syncEngine: SyncEngine;
19
19
 
@@ -23,12 +23,12 @@ export class AgentSyncApi implements SyncEngine {
23
23
  }
24
24
 
25
25
  /**
26
- * Retrieves the `Web5PlatformAgent` execution context.
26
+ * Retrieves the `EnboxPlatformAgent` execution context.
27
27
  *
28
- * @returns The `Web5PlatformAgent` instance that represents the current execution context.
28
+ * @returns The `EnboxPlatformAgent` instance that represents the current execution context.
29
29
  * @throws Will throw an error if the `agent` instance property is undefined.
30
30
  */
31
- get agent(): Web5PlatformAgent {
31
+ get agent(): EnboxPlatformAgent {
32
32
  if (this._agent === undefined) {
33
33
  throw new Error('AgentSyncApi: Unable to determine agent execution context.');
34
34
  }
@@ -36,7 +36,7 @@ export class AgentSyncApi implements SyncEngine {
36
36
  return this._agent;
37
37
  }
38
38
 
39
- set agent(agent: Web5PlatformAgent) {
39
+ set agent(agent: EnboxPlatformAgent) {
40
40
  this._agent = agent;
41
41
  this._syncEngine.agent = agent;
42
42
  }
@@ -7,8 +7,8 @@ import { Level } from 'level';
7
7
  import { hashToHex, initDefaultHashes, Message } from '@enbox/dwn-sdk-js';
8
8
 
9
9
  import type { PermissionsApi } from './types/permissions.js';
10
+ import type { EnboxAgent, EnboxPlatformAgent } from './types/agent.js';
10
11
  import type { StartSyncParams, SyncConnectivityState, SyncEngine, SyncIdentityOptions, SyncMode } from './types/sync.js';
11
- import type { Web5Agent, Web5PlatformAgent } from './types/agent.js';
12
12
 
13
13
  import { AgentPermissionsApi } from './permissions-api.js';
14
14
  import { DwnInterface } from './types/dwn.js';
@@ -17,7 +17,7 @@ import { topologicalSort } from './sync-topological-sort.js';
17
17
  import { pullMessages, pushMessages } from './sync-messages.js';
18
18
 
19
19
  export type SyncEngineLevelParams = {
20
- agent?: Web5PlatformAgent;
20
+ agent?: EnboxPlatformAgent;
21
21
  dataPath?: string;
22
22
  db?: AbstractLevel<string | Buffer | Uint8Array>;
23
23
  };
@@ -61,12 +61,12 @@ type LocalSubscription = {
61
61
 
62
62
  export class SyncEngineLevel implements SyncEngine {
63
63
  /**
64
- * Holds the instance of a `Web5PlatformAgent` that represents the current execution context for
65
- * the `SyncEngineLevel`. This agent is used to interact with other Web5 agent components. It's
64
+ * Holds the instance of a `EnboxPlatformAgent` that represents the current execution context for
65
+ * the `SyncEngineLevel`. This agent is used to interact with other Enbox agent components. It's
66
66
  * vital to ensure this instance is set to correctly contextualize operations within the broader
67
- * Web5 Agent framework.
67
+ * Enbox Agent framework.
68
68
  */
69
- private _agent?: Web5PlatformAgent;
69
+ private _agent?: EnboxPlatformAgent;
70
70
 
71
71
  /**
72
72
  * An instance of the `AgentPermissionsApi` that is used to interact with permissions grants used during sync
@@ -117,17 +117,17 @@ export class SyncEngineLevel implements SyncEngine {
117
117
 
118
118
  constructor({ agent, dataPath, db }: SyncEngineLevelParams) {
119
119
  this._agent = agent;
120
- this._permissionsApi = new AgentPermissionsApi({ agent: agent as Web5Agent });
120
+ this._permissionsApi = new AgentPermissionsApi({ agent: agent as EnboxAgent });
121
121
  this._db = (db) ? db : new Level<string, string>(dataPath ?? 'DATA/AGENT/SYNC_STORE');
122
122
  }
123
123
 
124
124
  /**
125
- * Retrieves the `Web5PlatformAgent` execution context.
125
+ * Retrieves the `EnboxPlatformAgent` execution context.
126
126
  *
127
- * @returns The `Web5PlatformAgent` instance that represents the current execution context.
127
+ * @returns The `EnboxPlatformAgent` instance that represents the current execution context.
128
128
  * @throws Will throw an error if the `agent` instance property is undefined.
129
129
  */
130
- get agent(): Web5PlatformAgent {
130
+ get agent(): EnboxPlatformAgent {
131
131
  if (this._agent === undefined) {
132
132
  throw new Error('SyncEngineLevel: Unable to determine agent execution context.');
133
133
  }
@@ -135,9 +135,9 @@ export class SyncEngineLevel implements SyncEngine {
135
135
  return this._agent;
136
136
  }
137
137
 
138
- set agent(agent: Web5PlatformAgent) {
138
+ set agent(agent: EnboxPlatformAgent) {
139
139
  this._agent = agent;
140
- this._permissionsApi = new AgentPermissionsApi({ agent: agent as Web5Agent });
140
+ this._permissionsApi = new AgentPermissionsApi({ agent: agent as EnboxAgent });
141
141
  }
142
142
 
143
143
  get connectivityState(): SyncConnectivityState {
@@ -1,5 +1,5 @@
1
+ import type { EnboxPlatformAgent } from './types/agent.js';
1
2
  import type { PermissionsApi } from './types/permissions.js';
2
- import type { Web5PlatformAgent } from './types/agent.js';
3
3
  import type { GenericMessage, MessagesReadReply, UnionMessageReply } from '@enbox/dwn-sdk-js';
4
4
 
5
5
  import { DwnInterfaceName, DwnMethodName, Message } from '@enbox/dwn-sdk-js';
@@ -54,7 +54,7 @@ export async function pullMessages({ did, dwnUrl, delegateDid, protocol, message
54
54
  delegateDid?: string;
55
55
  protocol?: string;
56
56
  messageCids: string[];
57
- agent: Web5PlatformAgent;
57
+ agent: EnboxPlatformAgent;
58
58
  permissionsApi: PermissionsApi;
59
59
  }): Promise<void> {
60
60
  // Step 1: Fetch all missing messages from the remote in parallel.
@@ -101,7 +101,7 @@ export async function fetchRemoteMessages({ did, dwnUrl, delegateDid, protocol,
101
101
  delegateDid?: string;
102
102
  protocol?: string;
103
103
  messageCids: string[];
104
- agent: Web5PlatformAgent;
104
+ agent: EnboxPlatformAgent;
105
105
  permissionsApi: PermissionsApi;
106
106
  }): Promise<SyncMessageEntry[]> {
107
107
  const results: SyncMessageEntry[] = [];
@@ -189,7 +189,7 @@ export async function pushMessages({ did, dwnUrl, delegateDid, protocol, message
189
189
  delegateDid?: string;
190
190
  protocol?: string;
191
191
  messageCids: string[];
192
- agent: Web5PlatformAgent;
192
+ agent: EnboxPlatformAgent;
193
193
  permissionsApi: PermissionsApi;
194
194
  }): Promise<void> {
195
195
  // Step 1: Fetch all local messages (streams are pull-based, not yet consumed).
@@ -234,7 +234,7 @@ export async function getLocalMessage({ author, delegateDid, protocol, messageCi
234
234
  delegateDid?: string;
235
235
  protocol?: string;
236
236
  messageCid: string;
237
- agent: Web5PlatformAgent;
237
+ agent: EnboxPlatformAgent;
238
238
  permissionsApi: PermissionsApi;
239
239
  }): Promise<SyncMessageEntry | undefined> {
240
240
  let permissionGrantId: string | undefined;
@@ -2,8 +2,8 @@ import type { AbstractLevel } from 'abstract-level';
2
2
  import type { BearerIdentity } from './bearer-identity.js';
3
3
  import type { DidResolverCache } from '@enbox/dids';
4
4
  import type { Dwn } from '@enbox/dwn-sdk-js';
5
+ import type { EnboxPlatformAgent } from './types/agent.js';
5
6
  import type { KeyValueStore } from '@enbox/common';
6
- import type { Web5PlatformAgent } from './types/agent.js';
7
7
 
8
8
  import { Level } from 'level';
9
9
  import { DataStoreLevel, EventEmitterEventLog, MessageStoreLevel, ResumableTaskStoreLevel, StateIndexLevel } from '@enbox/dwn-sdk-js';
@@ -17,10 +17,10 @@ import { AgentDwnApi } from './dwn-api.js';
17
17
  import { AgentIdentityApi } from './identity-api.js';
18
18
  import { AgentPermissionsApi } from './permissions-api.js';
19
19
  import { AgentSyncApi } from './sync-api.js';
20
+ import { EnboxRpcClient } from '@enbox/dwn-clients';
20
21
  import { HdIdentityVault } from './hd-identity-vault.js';
21
22
  import { LocalKeyManager } from './local-key-manager.js';
22
23
  import { SyncEngineLevel } from './sync-engine-level.js';
23
- import { Web5RpcClient } from '@enbox/dwn-clients';
24
24
  import { DwnDidStore, InMemoryDidStore } from './store-did.js';
25
25
  import { DwnIdentityStore, InMemoryIdentityStore } from './store-identity.js';
26
26
  import { DwnKeyStore, InMemoryKeyStore } from './store-key.js';
@@ -36,7 +36,7 @@ type StoreSetupResult = {
36
36
  };
37
37
 
38
38
  type PlatformAgentTestHarnessParams = {
39
- agent: Web5PlatformAgent<LocalKeyManager>
39
+ agent: EnboxPlatformAgent<LocalKeyManager>
40
40
 
41
41
  agentStores: 'dwn' | 'memory';
42
42
  didResolverCache: DidResolverCache;
@@ -56,7 +56,7 @@ type PlatformAgentTestHarnessParams = {
56
56
  };
57
57
 
58
58
  export class PlatformAgentTestHarness {
59
- public agent: Web5PlatformAgent<LocalKeyManager>;
59
+ public agent: EnboxPlatformAgent<LocalKeyManager>;
60
60
 
61
61
  public agentStores: 'dwn' | 'memory';
62
62
  public didResolverCache: DidResolverCache;
@@ -215,7 +215,7 @@ export class PlatformAgentTestHarness {
215
215
  }
216
216
 
217
217
  public static async setup({ agentClass, agentStores, testDataLocation }: {
218
- agentClass: new (params: any) => Web5PlatformAgent<LocalKeyManager>
218
+ agentClass: new (params: any) => EnboxPlatformAgent<LocalKeyManager>
219
219
  agentStores?: 'dwn' | 'memory';
220
220
  testDataLocation?: string;
221
221
  }): Promise<PlatformAgentTestHarness> {
@@ -228,7 +228,7 @@ export class PlatformAgentTestHarness {
228
228
  const cryptoApi = new AgentCryptoApi();
229
229
 
230
230
  // Instantiate Agent's RPC Client.
231
- const rpcClient = new Web5RpcClient();
231
+ const rpcClient = new EnboxRpcClient();
232
232
 
233
233
  const dwnStores = {
234
234
  keyStore : new DwnKeyStore(),
@@ -285,7 +285,7 @@ export class PlatformAgentTestHarness {
285
285
  const syncEngine = new SyncEngineLevel({ db: syncStore });
286
286
  const syncApi = new AgentSyncApi({ syncEngine });
287
287
 
288
- // Create Web5PlatformAgent instance
288
+ // Create EnboxPlatformAgent instance
289
289
  const agent = new agentClass({
290
290
  agentVault,
291
291
  cryptoApi,
@@ -314,7 +314,7 @@ export class PlatformAgentTestHarness {
314
314
  }
315
315
 
316
316
  private static useDiskStores({ agent, testDataLocation, stores }: {
317
- agent?: Web5PlatformAgent<LocalKeyManager>;
317
+ agent?: EnboxPlatformAgent<LocalKeyManager>;
318
318
  stores: {
319
319
  keyStore: DwnKeyStore;
320
320
  identityStore: DwnIdentityStore;
@@ -350,7 +350,7 @@ export class PlatformAgentTestHarness {
350
350
  return { agentVault, didApi, didResolverCache, identityApi, keyManager, permissionsApi, vaultStore };
351
351
  }
352
352
 
353
- private static useMemoryStores({ agent }: { agent?: Web5PlatformAgent<LocalKeyManager> } = {}): StoreSetupResult {
353
+ private static useMemoryStores({ agent }: { agent?: EnboxPlatformAgent<LocalKeyManager> } = {}): StoreSetupResult {
354
354
  const vaultStore = new MemoryStore<string, string>();
355
355
  const agentVault = new HdIdentityVault({ keyDerivationWorkFactor: 1, store: vaultStore });
356
356
 
@@ -6,8 +6,9 @@ import type { AgentIdentityApi } from '../identity-api.js';
6
6
  import type { AgentKeyManager } from './key-manager.js';
7
7
  import type { AgentPermissionsApi } from '../permissions-api.js';
8
8
  import type { AgentSyncApi } from '../sync-api.js';
9
+ import type { EnboxRpc } from '@enbox/dwn-clients';
9
10
  import type { IdentityVault } from './identity-vault.js';
10
- import type { Web5Rpc } from '@enbox/dwn-clients';
11
+ import type { LocalKeyManager } from '../local-key-manager.js';
11
12
  import type { AgentDidApi, DidInterface, DidRequest, DidResponse } from '../did-api.js';
12
13
  import type { DwnInterface, DwnResponse, ProcessDwnRequest, SendDwnRequest } from './dwn.js';
13
14
  import type { ProcessVcRequest, SendVcRequest, VcResponse } from './vc.js';
@@ -15,7 +16,7 @@ import type { ProcessVcRequest, SendVcRequest, VcResponse } from './vc.js';
15
16
 
16
17
  /**
17
18
  * Defines the structure for response status in the context of an Agent's interaction within the
18
- * Web5 framework.
19
+ * Enbox framework.
19
20
  *
20
21
  * This type is utilized to convey the success or failure of an operation performed by the Agent,
21
22
  * providing feedback that can be programmatically interpreted and acted upon.
@@ -54,18 +55,18 @@ export type ResponseStatus = {
54
55
  };
55
56
 
56
57
  /**
57
- * Defines the interface for a Web5 Agent, encapsulating the core functionality all implementations
58
+ * Defines the interface for an Enbox Agent, encapsulating the core functionality all implementations
58
59
  * must include.
59
60
  *
60
61
  * The Agent is responsible for handling decentralized identifier (DID) requests, decentralized web
61
62
  * node (DWN) requests, and verifiable credential (VC) requests.
62
63
  *
63
- * The `AgentDid` property represents the Web5 Agent's own DID, while the various process and send
64
+ * The `AgentDid` property represents the Enbox Agent's own DID, while the various process and send
64
65
  * methods enable the Agent to handle and initiate requests pertaining to DIDs, DWNs, and VCs.
65
66
  */
66
- export interface Web5Agent {
67
+ export interface EnboxAgent {
67
68
  /**
68
- * The Decentralized Identifier (DID) of this Web5 Agent.
69
+ * The Decentralized Identifier (DID) of this Enbox Agent.
69
70
  */
70
71
  agentDid: BearerDid;
71
72
 
@@ -108,23 +109,23 @@ export interface Web5Agent {
108
109
  }
109
110
 
110
111
  /**
111
- * Represents a Web5 Platform Agent, an extended and more feature-rich implementation of a
112
- * {@link Web5Agent}.
112
+ * Represents an Enbox Platform Agent, an extended and more feature-rich implementation of a
113
+ * {@link EnboxAgent}.
113
114
  *
114
115
  * This Agent integrates a comprehensive set of APIs and functionalities, including cryptographic
115
116
  * operations, DID management, DWN interaction, identity handling, and data synchronization.
116
117
  *
117
- * The platform agent provides a higher-level abstraction over the core Web5Agent functionalities,
118
- * facilitating a robust platform for developing Web5 applications. It includes lifecycle management
118
+ * The platform agent provides a higher-level abstraction over the core EnboxAgent functionalities,
119
+ * facilitating a robust platform for developing Enbox applications. It includes lifecycle management
119
120
  * methods like initialization and startup, alongside a suite of specialized APIs and utilities.
120
121
  *
121
122
  * @typeParam TKeyManager - The type of Key Manager used to manage cryptographic keys.
122
123
  */
123
- export interface Web5PlatformAgent<TKeyManager extends AgentKeyManager = AgentKeyManager> extends Web5Agent {
124
+ export interface EnboxPlatformAgent<TKeyManager extends AgentKeyManager = AgentKeyManager> extends EnboxAgent {
124
125
  /**
125
126
  * The cryptography API, essential for performing various cryptographic operations such
126
127
  * as encryption, decryption, signing, and verification, ensuring secure data handling and
127
- * communication within the Web5 Platform.
128
+ * communication within the Enbox platform.
128
129
  */
129
130
  crypto: AgentCryptoApi;
130
131
 
@@ -136,13 +137,13 @@ export interface Web5PlatformAgent<TKeyManager extends AgentKeyManager = AgentKe
136
137
 
137
138
  /**
138
139
  * The DWN API, enabling the Agent to interact with Decentralized Web Nodes (DWNs) and handle
139
- * requests from Web5 applications.
140
+ * requests from Enbox applications.
140
141
  */
141
142
  dwn: AgentDwnApi;
142
143
 
143
144
  /**
144
145
  * The identity management API, handling identity-related operations and allowing the agent to
145
- * manage Web5 identities, supporting operations like identity creation and update.
146
+ * manage Enbox identities, supporting operations like identity creation and update.
146
147
  */
147
148
  identity: AgentIdentityApi<TKeyManager>;
148
149
 
@@ -158,10 +159,10 @@ export interface Web5PlatformAgent<TKeyManager extends AgentKeyManager = AgentKe
158
159
  permissions: AgentPermissionsApi;
159
160
 
160
161
  /**
161
- * The RPC (Remote Procedure Call) client interface, facilitating communication with other Web5
162
- * Agents and services.
162
+ * The RPC (Remote Procedure Call) client interface, facilitating communication with other Enbox
163
+ * agents and services.
163
164
  */
164
- rpc: Web5Rpc;
165
+ rpc: EnboxRpc;
165
166
 
166
167
  /**
167
168
  * The synchronization API, responsible for managing the consistency and real-time update of the
@@ -170,7 +171,7 @@ export interface Web5PlatformAgent<TKeyManager extends AgentKeyManager = AgentKe
170
171
  sync: AgentSyncApi;
171
172
 
172
173
  /**
173
- * An instance of {@link IdentityVault}, providing secure storage and management of a Web5 Agent's
174
+ * An instance of {@link IdentityVault}, providing secure storage and management of an Enbox Agent's
174
175
  * DID and cryptographic keys.
175
176
  */
176
177
  vault: IdentityVault;
@@ -183,7 +184,7 @@ export interface Web5PlatformAgent<TKeyManager extends AgentKeyManager = AgentKe
183
184
 
184
185
  /**
185
186
  * Initializes the agent with essential parameters (e.g., a passphrase) and prepares it for
186
- * processing Web5 requests.
187
+ * processing requests.
187
188
  */
188
189
  initialize(params: unknown): Promise<unknown>;
189
190
 
@@ -192,4 +193,14 @@ export interface Web5PlatformAgent<TKeyManager extends AgentKeyManager = AgentKe
192
193
  * normal operation and readiness to process requests.
193
194
  */
194
195
  start(params: unknown): Promise<unknown>;
195
- }
196
+ }
197
+
198
+ // ---------------------------------------------------------------------------
199
+ // Deprecated aliases — migration aid
200
+ // ---------------------------------------------------------------------------
201
+
202
+ /** @deprecated Use {@link EnboxAgent} instead. Will be removed in a future version. */
203
+ export type Web5Agent = EnboxAgent;
204
+
205
+ /** @deprecated Use {@link EnboxPlatformAgent} instead. Will be removed in a future version. */
206
+ export type Web5PlatformAgent<TKeyManager extends AgentKeyManager = LocalKeyManager> = EnboxPlatformAgent<TKeyManager>;
@@ -1,7 +1,7 @@
1
1
  import type { PortableDid } from '@enbox/dids';
2
2
 
3
3
  /**
4
- * Represents metadata about a Web5 Identity.
4
+ * Represents metadata about an Enbox Identity.
5
5
  */
6
6
  export interface IdentityMetadata {
7
7
  name: string;
@@ -16,7 +16,7 @@ import type {
16
16
  PublicKeyJwk,
17
17
  } from '@enbox/crypto';
18
18
 
19
- import type { Web5PlatformAgent } from './agent.js';
19
+ import type { EnboxPlatformAgent } from './agent.js';
20
20
 
21
21
  export interface AgentKeyManager extends KeyManager,
22
22
  Cipher<KmsCipherParams, KmsCipherParams>,
@@ -25,7 +25,7 @@ export interface AgentKeyManager extends KeyManager,
25
25
  KeyDeleter<KmsDeleteKeyParams>,
26
26
  KeyWrapper<KmsUriWrapKeyParams, KmsUriUnwrapKeyParams> {
27
27
 
28
- agent: Web5PlatformAgent;
28
+ agent: EnboxPlatformAgent;
29
29
 
30
30
  /**
31
31
  * Derives an HD child public key from a stored private key using HKDF-SHA256
package/src/types/sync.ts CHANGED
@@ -1,4 +1,4 @@
1
- import type { Web5PlatformAgent } from './agent.js';
1
+ import type { EnboxPlatformAgent } from './agent.js';
2
2
 
3
3
  /**
4
4
  * The SyncEngine is responsible for syncing messages between the agent and the platform.
@@ -58,7 +58,7 @@ export interface SyncEngine {
58
58
  /**
59
59
  * The agent that the SyncEngine is attached to.
60
60
  */
61
- agent: Web5PlatformAgent;
61
+ agent: EnboxPlatformAgent;
62
62
 
63
63
  /**
64
64
  * Current connectivity state as observed by the sync engine.
@@ -2,10 +2,10 @@ import type { Jwk, KeyIdentifier, KmsExportKeyParams, KmsGetPublicKeyParams, Kms
2
2
 
3
3
  import { computeJwkThumbprint, Ed25519, LocalKeyManager } from '@enbox/crypto';
4
4
 
5
- import type { Web5PlatformAgent } from './types/agent.js';
5
+ import type { EnboxPlatformAgent } from './types/agent.js';
6
6
 
7
7
  /**
8
- * Internal utility functions used by the Web5 platform agent that are not intended for public use
8
+ * Internal utility functions used by the Enbox platform agent that are not intended for public use
9
9
  * and are not exported in the public API.
10
10
  */
11
11
 
@@ -121,14 +121,14 @@ export class DeterministicKeyGenerator extends LocalKeyManager {
121
121
  * This approach ensures operations are isolated by DID, supporting multi-tenancy.
122
122
  *
123
123
  * @param params - The parameters for determining the tenant.
124
- * @param params.agent - The Web5 platform agent instance.
124
+ * @param params.agent - The Enbox platform agent instance.
125
125
  * @param [params.tenant] - An optional tenant DID. If provided, it takes precedence.
126
126
  * @param [params.didUri] - An optional DID URI to use if no tenant DID or agent DID is available.
127
127
  * @returns A promise that resolves to the tenant DID.
128
128
  * @throws Throws an error if it fails to determine the tenant from the provided inputs.
129
129
  */
130
130
  export async function getDataStoreTenant({ agent, tenant, didUri }: {
131
- agent: Web5PlatformAgent;
131
+ agent: EnboxPlatformAgent;
132
132
  tenant?: string;
133
133
  didUri?: string;
134
134
  }): Promise<string> {
@@ -1 +0,0 @@
1
- {"version":3,"file":"web5-user-agent.js","sourceRoot":"","sources":["../../src/web5-user-agent.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"web5-user-agent.d.ts","sourceRoot":"","sources":["../../src/web5-user-agent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC1E,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACnG,OAAO,KAAK,EAAE,gBAAgB,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAEjF,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAI7C,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAEzD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAKzD;;;GAGG;AACH,MAAM,MAAM,qBAAqB,GAAG;IAClC;;;;QAII;IACH,QAAQ,EAAE,MAAM,CAAC;IAElB;;;;;;OAMG;IACF,cAAc,CAAC,EAAE,MAAM,CAAC;IAEzB;;;;;;;OAOG;IACF,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG;IAC7B;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;CACjB,CAAC;AAEH,MAAM,MAAM,WAAW,CAAC,WAAW,SAAS,eAAe,GAAG,eAAe,IAAI;IAC/E,sFAAsF;IACtF,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,6EAA6E;IAC7E,UAAU,EAAE,eAAe,CAAC;IAC5B,+FAA+F;IAC/F,SAAS,EAAE,cAAc,CAAC;IAC1B,iFAAiF;IACjF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,wEAAwE;IACxE,MAAM,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC;IACjC,4EAA4E;IAC5E,MAAM,EAAE,WAAW,CAAC;IACpB,0FAA0F;IAC1F,WAAW,EAAE,gBAAgB,CAAC,WAAW,CAAC,CAAC;IAC3C,6EAA6E;IAC7E,UAAU,EAAE,WAAW,CAAC;IACxB,2GAA2G;IAC3G,cAAc,EAAE,mBAAmB,CAAC;IACpC,uFAAuF;IACvF,SAAS,EAAE,OAAO,CAAC;IACnB,qEAAqE;IACrE,OAAO,EAAE,YAAY,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG,OAAO,CAAC,WAAW,CAAC,GAAG;IACzD,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;CACrC,CAAC;AAEF,qBAAa,aAAa,CAAC,WAAW,SAAS,eAAe,GAAG,eAAe,CAAE,YAAW,iBAAiB,CAAC,WAAW,CAAC;IAClH,MAAM,EAAE,cAAc,CAAC;IACvB,GAAG,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC;IAC9B,GAAG,EAAE,WAAW,CAAC;IACjB,QAAQ,EAAE,gBAAgB,CAAC,WAAW,CAAC,CAAC;IACxC,UAAU,EAAE,WAAW,CAAC;IACxB,WAAW,EAAE,mBAAmB,CAAC;IACjC,GAAG,EAAE,OAAO,CAAC;IACb,IAAI,EAAE,YAAY,CAAC;IACnB,KAAK,EAAE,eAAe,CAAC;IAE9B,OAAO,CAAC,SAAS,CAAC,CAAY;gBAElB,MAAM,EAAE,WAAW,CAAC,WAAW,CAAC;IAqB5C,IAAI,QAAQ,IAAI,SAAS,CAQxB;IAED,IAAI,QAAQ,CAAC,GAAG,EAAE,SAAS,EAE1B;IAED;;OAEG;WACiB,MAAM,CAAC,EACzB,QAAuB,EACvB,gBAAgB,EAChB,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,cAAc,EAAE,SAAS,EAAE,OAAO,EAC7G,GAAE,qBAA0B,GAC1B,OAAO,CAAC,aAAa,CAAC;IAgDZ,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAK5C;;;;;;;;;;OAUG;IACU,UAAU,CAAC,EAAE,QAAQ,EAAE,cAAc,EAAE,YAAY,EAAE,EAAE,qBAAqB,GAAG,OAAO,CAAC,MAAM,CAAC;IAOrG,iBAAiB,CAAC,CAAC,SAAS,YAAY,EAC5C,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,GACrB,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;IAIb,iBAAiB,CAAC,CAAC,SAAS,YAAY,EACnD,OAAO,EAAE,iBAAiB,CAAC,CAAC,CAAC,GAC5B,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;IAIb,gBAAgB,CAAC,QAAQ,EAAE,gBAAgB,GAAG,OAAO,CAAC,UAAU,CAAC;IAIjE,cAAc,CAAC,CAAC,SAAS,YAAY,EAChD,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC,GACtB,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;IAIb,cAAc,CAAC,CAAC,SAAS,YAAY,EAChD,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC,GACzB,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;IAIb,aAAa,CAAC,QAAQ,EAAE,aAAa,GAAG,OAAO,CAAC,UAAU,CAAC;IAI3D,KAAK,CAAC,EAAE,QAAQ,EAAE,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC;CASvE"}