@interop/did-cli 0.13.0 → 0.14.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 (79) hide show
  1. package/CHANGELOG.md +117 -6
  2. package/README.md +157 -17
  3. package/dist/commands/did/create.d.ts +22 -0
  4. package/dist/commands/did/create.d.ts.map +1 -1
  5. package/dist/commands/did/create.js +6 -27
  6. package/dist/commands/did/create.js.map +1 -1
  7. package/dist/commands/did/service.d.ts +19 -4
  8. package/dist/commands/did/service.d.ts.map +1 -1
  9. package/dist/commands/did/service.js +46 -45
  10. package/dist/commands/did/service.js.map +1 -1
  11. package/dist/commands/did/webvh-update.d.ts +72 -9
  12. package/dist/commands/did/webvh-update.d.ts.map +1 -1
  13. package/dist/commands/did/webvh-update.js +177 -61
  14. package/dist/commands/did/webvh-update.js.map +1 -1
  15. package/dist/commands/did.d.ts.map +1 -1
  16. package/dist/commands/did.js +10 -1
  17. package/dist/commands/did.js.map +1 -1
  18. package/dist/commands/key.d.ts.map +1 -1
  19. package/dist/commands/key.js +5 -8
  20. package/dist/commands/key.js.map +1 -1
  21. package/dist/commands/was/request-grant.d.ts +37 -0
  22. package/dist/commands/was/request-grant.d.ts.map +1 -0
  23. package/dist/commands/was/request-grant.js +248 -0
  24. package/dist/commands/was/request-grant.js.map +1 -0
  25. package/dist/commands/was/resource.d.ts +21 -7
  26. package/dist/commands/was/resource.d.ts.map +1 -1
  27. package/dist/commands/was/resource.js +40 -15
  28. package/dist/commands/was/resource.js.map +1 -1
  29. package/dist/commands/was/shared.d.ts +43 -3
  30. package/dist/commands/was/shared.d.ts.map +1 -1
  31. package/dist/commands/was/shared.js +82 -4
  32. package/dist/commands/was/shared.js.map +1 -1
  33. package/dist/commands/was/shell/completer.d.ts +24 -0
  34. package/dist/commands/was/shell/completer.d.ts.map +1 -0
  35. package/dist/commands/was/shell/completer.js +99 -0
  36. package/dist/commands/was/shell/completer.js.map +1 -0
  37. package/dist/commands/was/shell/dispatcher.d.ts +27 -0
  38. package/dist/commands/was/shell/dispatcher.d.ts.map +1 -0
  39. package/dist/commands/was/shell/dispatcher.js +227 -0
  40. package/dist/commands/was/shell/dispatcher.js.map +1 -0
  41. package/dist/commands/was/shell/session.d.ts +37 -0
  42. package/dist/commands/was/shell/session.d.ts.map +1 -0
  43. package/dist/commands/was/shell/session.js +67 -0
  44. package/dist/commands/was/shell/session.js.map +1 -0
  45. package/dist/commands/was/shell/tokenize.d.ts +19 -0
  46. package/dist/commands/was/shell/tokenize.d.ts.map +1 -0
  47. package/dist/commands/was/shell/tokenize.js +77 -0
  48. package/dist/commands/was/shell/tokenize.js.map +1 -0
  49. package/dist/commands/was/shell.d.ts +30 -0
  50. package/dist/commands/was/shell.d.ts.map +1 -0
  51. package/dist/commands/was/shell.js +170 -0
  52. package/dist/commands/was/shell.js.map +1 -0
  53. package/dist/commands/was/tree.d.ts +6 -1
  54. package/dist/commands/was/tree.d.ts.map +1 -1
  55. package/dist/commands/was/tree.js +12 -5
  56. package/dist/commands/was/tree.js.map +1 -1
  57. package/dist/commands/was.d.ts.map +1 -1
  58. package/dist/commands/was.js +31 -1
  59. package/dist/commands/was.js.map +1 -1
  60. package/dist/keys/seed.d.ts +21 -0
  61. package/dist/keys/seed.d.ts.map +1 -0
  62. package/dist/keys/seed.js +41 -0
  63. package/dist/keys/seed.js.map +1 -0
  64. package/dist/keys/webvh-signer.d.ts +18 -13
  65. package/dist/keys/webvh-signer.d.ts.map +1 -1
  66. package/dist/keys/webvh-signer.js +5 -20
  67. package/dist/keys/webvh-signer.js.map +1 -1
  68. package/dist/storage.d.ts.map +1 -1
  69. package/dist/storage.js +57 -10
  70. package/dist/storage.js.map +1 -1
  71. package/dist/was/address.d.ts +24 -0
  72. package/dist/was/address.d.ts.map +1 -1
  73. package/dist/was/address.js +49 -3
  74. package/dist/was/address.js.map +1 -1
  75. package/dist/was/request-grant.d.ts +144 -0
  76. package/dist/was/request-grant.d.ts.map +1 -0
  77. package/dist/was/request-grant.js +249 -0
  78. package/dist/was/request-grant.js.map +1 -0
  79. package/package.json +22 -20
@@ -1 +1 @@
1
- {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../../src/commands/did/service.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EAIL,KAAK,eAAe,EACrB,MAAM,2BAA2B,CAAA;AAoBlC;;;;;;;;;;GAUG;AACH,wBAAgB,kBAAkB,CAAC,EACjC,GAAG,EACH,EAAE,EACH,EAAE;IACD,GAAG,EAAE,MAAM,CAAA;IACX,EAAE,EAAE,MAAM,CAAA;CACX,GAAG,MAAM,CAQT;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,iBAAiB,CAAC,EAChC,GAAG,EACH,EAAE,EACF,IAAI,EACJ,QAAQ,EACR,YAAY,EACb,EAAE;IACD,GAAG,EAAE,MAAM,CAAA;IACX,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,EAAE,CAAA;IACd,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;IACnB,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB,GAAG,eAAe,CAsBlB;AA4BD;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAAC,EAC9B,OAAO,EACP,KAAK,EACL,GAAG,EACJ,EAAE;IACD,OAAO,EAAE,eAAe,EAAE,CAAA;IAC1B,KAAK,EAAE,eAAe,CAAA;IACtB,GAAG,EAAE,MAAM,CAAA;CACZ,GAAG,eAAe,EAAE,CAKpB;AAED;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAAC,EACjC,OAAO,EACP,EAAE,EACF,GAAG,EACJ,EAAE;IACD,OAAO,EAAE,eAAe,EAAE,CAAA;IAC1B,EAAE,EAAE,MAAM,CAAA;IACV,GAAG,EAAE,MAAM,CAAA;CACZ,GAAG,eAAe,EAAE,CAMpB;AAiMD;;;;;;;;;;;GAWG;AACH,wBAAsB,qBAAqB,CAAC,EAC1C,GAAG,EACH,SAAS,EACT,GAAG,EACH,UAAU,EACX,EAAE;IACD,GAAG,EAAE,MAAM,CAAA;IACX,SAAS,EAAE,CAAC,OAAO,EAAE,eAAe,EAAE,EAAE,GAAG,EAAE,MAAM,KAAK,eAAe,EAAE,CAAA;IACzE,GAAG,CAAC,EAAE,OAAO,CAAA;IACb,UAAU,CAAC,EAAE,OAAO,CAAA;CACrB,GAAG,OAAO,CAAC,MAAM,CAAC,CAoBlB"}
1
+ {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../../src/commands/did/service.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EAIL,KAAK,eAAe,EACrB,MAAM,2BAA2B,CAAA;AAqBlC;;;;;;;;;;GAUG;AACH,wBAAgB,kBAAkB,CAAC,EACjC,GAAG,EACH,EAAE,EACH,EAAE;IACD,GAAG,EAAE,MAAM,CAAA;IACX,EAAE,EAAE,MAAM,CAAA;CACX,GAAG,MAAM,CAQT;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,oBAAoB,CAAC,EACnC,QAAQ,EACR,YAAY,EACb,EAAE;IACD,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;IACnB,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB,GAAG,eAAe,CAAC,iBAAiB,CAAC,CAerC;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,iBAAiB,CAAC,EAChC,GAAG,EACH,EAAE,EACF,IAAI,EACJ,QAAQ,EACR,YAAY,EACb,EAAE;IACD,GAAG,EAAE,MAAM,CAAA;IACX,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,EAAE,CAAA;IACd,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;IACnB,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB,GAAG,eAAe,CAMlB;AA4BD;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAAC,EAC9B,OAAO,EACP,KAAK,EACL,GAAG,EACJ,EAAE;IACD,OAAO,EAAE,eAAe,EAAE,CAAA;IAC1B,KAAK,EAAE,eAAe,CAAA;IACtB,GAAG,EAAE,MAAM,CAAA;CACZ,GAAG,eAAe,EAAE,CAKpB;AAED;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAAC,EACjC,OAAO,EACP,EAAE,EACF,GAAG,EACJ,EAAE;IACD,OAAO,EAAE,eAAe,EAAE,CAAA;IAC1B,EAAE,EAAE,MAAM,CAAA;IACV,GAAG,EAAE,MAAM,CAAA;CACZ,GAAG,eAAe,EAAE,CAMpB;AAgMD;;;;;;;;;;;GAWG;AACH,wBAAsB,qBAAqB,CAAC,EAC1C,GAAG,EACH,SAAS,EACT,GAAG,EACH,UAAU,EACX,EAAE;IACD,GAAG,EAAE,MAAM,CAAA;IACX,SAAS,EAAE,CAAC,OAAO,EAAE,eAAe,EAAE,EAAE,GAAG,EAAE,MAAM,KAAK,eAAe,EAAE,CAAA;IACzE,GAAG,CAAC,EAAE,OAAO,CAAA;IACb,UAAU,CAAC,EAAE,OAAO,CAAA;CACrB,GAAG,OAAO,CAAC,MAAM,CAAC,CAoBlB"}
@@ -1,16 +1,7 @@
1
- /**
2
- * Service-entry management for did:web and did:webvh DIDs. Builds and edits the
3
- * `service` array (add/remove by id, with id normalization) and routes a
4
- * service-array transform to the right per-method runner: did:web is a direct
5
- * document edit, did:webvh appends a sparse log entry (advancing the
6
- * pre-rotation ratchet when one is armed). The webvh log machinery is reused
7
- * from `./webvh-update.js`.
8
- */
9
- import { updateDID } from '@interop/did-method-webvh';
10
- import { loadDidDocument, saveDidLog, saveToDids } from '../../storage.js';
1
+ import { loadDidDocument, saveToDids } from '../../storage.js';
11
2
  import { resolveDidRef } from '../../meta.js';
12
3
  import { generateStagedKey } from '../../keys/webvh-update.js';
13
- import { confirmAction, loadActiveSigner, loadStoredUpdateKeys, makeWebvhEntrySigner, persistUpdateKeysSidecar, resolveWebvhForUpdate, revealStagedSigner } from './webvh-update.js';
4
+ import { appendWebvhEntry, confirmAction, loadActiveSigner, loadStoredUpdateKeys, makeWebvhEntrySigner, persistWebvhUpdate, resolveWebvhForUpdate, revealStagedSigner } from './webvh-update.js';
14
5
  /**
15
6
  * Expand a service id to a full DID URL. A bare fragment (`files`) or a
16
7
  * leading-`#` fragment (`#files`) is resolved against the DID; a value that is
@@ -32,42 +23,52 @@ export function normalizeServiceId({ did, id }) {
32
23
  return `${did}#${id}`;
33
24
  }
34
25
  /**
35
- * Build a service-endpoint entry from add-service options. Exactly one of
36
- * `endpoint` (one or more endpoint values -- a single value stays a string,
37
- * several become an array) or `endpointJson` (a raw JSON value) supplies the
38
- * serviceEndpoint; a single `type` likewise stays a string.
26
+ * Build (and validate) the serviceEndpoint value from add-service options.
27
+ * Exactly one of `endpoint` (one or more endpoint values -- a single value
28
+ * stays a string, several become an array) or `endpointJson` (a raw JSON
29
+ * value) must supply it. Needs no DID, so the CLI layer calls it up front to
30
+ * reject bad arguments before any (expensive) log resolution.
39
31
  *
40
32
  * @param options {object}
41
- * @param options.did {string}
42
- * @param options.id {string}
43
- * @param options.type {string[]}
44
33
  * @param [options.endpoint] {string[]}
45
34
  * @param [options.endpointJson] {string}
46
- * @returns {ServiceEndpoint}
35
+ * @returns {ServiceEndpoint['serviceEndpoint']}
47
36
  */
48
- export function buildServiceEntry({ did, id, type, endpoint, endpointJson }) {
37
+ export function buildServiceEndpoint({ endpoint, endpointJson }) {
49
38
  const hasEndpoint = Boolean(endpoint?.length);
50
39
  const hasEndpointJson = Boolean(endpointJson);
51
40
  // True when both are supplied or neither is -- i.e. not exactly one.
52
41
  if (hasEndpoint === hasEndpointJson) {
53
42
  throw new Error('Provide exactly one of --endpoint or --endpoint-json.');
54
43
  }
55
- let serviceEndpoint;
56
44
  if (endpointJson) {
57
45
  try {
58
- serviceEndpoint = JSON.parse(endpointJson);
46
+ return JSON.parse(endpointJson);
59
47
  }
60
48
  catch {
61
49
  throw new Error('--endpoint-json must be valid JSON.');
62
50
  }
63
51
  }
64
- else {
65
- serviceEndpoint = endpoint.length === 1 ? endpoint[0] : endpoint;
66
- }
52
+ return endpoint.length === 1 ? endpoint[0] : endpoint;
53
+ }
54
+ /**
55
+ * Build a service-endpoint entry from add-service options (see
56
+ * `buildServiceEndpoint` for the serviceEndpoint rules); a single `type`
57
+ * stays a string.
58
+ *
59
+ * @param options {object}
60
+ * @param options.did {string}
61
+ * @param options.id {string}
62
+ * @param options.type {string[]}
63
+ * @param [options.endpoint] {string[]}
64
+ * @param [options.endpointJson] {string}
65
+ * @returns {ServiceEndpoint}
66
+ */
67
+ export function buildServiceEntry({ did, id, type, endpoint, endpointJson }) {
67
68
  return {
68
69
  id: normalizeServiceId({ did, id }),
69
70
  type: type.length === 1 ? type[0] : type,
70
- serviceEndpoint
71
+ serviceEndpoint: buildServiceEndpoint({ endpoint, endpointJson })
71
72
  };
72
73
  }
73
74
  /**
@@ -200,7 +201,14 @@ async function runWebvhServiceUpdate({ targetDid, transform, yes, keepOldKey })
200
201
  console.error(err.message);
201
202
  return 1;
202
203
  }
203
- const stored = await loadStoredUpdateKeys(targetDid);
204
+ let stored;
205
+ try {
206
+ stored = await loadStoredUpdateKeys(targetDid);
207
+ }
208
+ catch (err) {
209
+ console.error(err.message);
210
+ return 1;
211
+ }
204
212
  // Choose the signer and key parameters. A sparse update normally omits
205
213
  // updateKeys/nextKeyHashes so the keys carry forward untouched; a
206
214
  // pre-rotation DID instead must reveal its staged key (which signs) and stage
@@ -245,13 +253,14 @@ async function runWebvhServiceUpdate({ targetDid, transform, yes, keepOldKey })
245
253
  });
246
254
  if (!confirmed) {
247
255
  console.error('Aborted.');
248
- return 0;
256
+ return 1;
249
257
  }
250
258
  const signer = makeWebvhEntrySigner(signerKeyPair);
251
259
  let result;
252
260
  try {
253
- result = await updateDID({
261
+ result = await appendWebvhEntry({
254
262
  log,
263
+ meta,
255
264
  signer,
256
265
  services,
257
266
  ...(updateKeys ? { updateKeys } : {}),
@@ -262,23 +271,15 @@ async function runWebvhServiceUpdate({ targetDid, transform, yes, keepOldKey })
262
271
  console.error(`Service update failed: ${err.message}`);
263
272
  return 1;
264
273
  }
265
- const logPath = await saveDidLog({ did: result.did, log: result.log });
266
- const docPath = await saveToDids({
267
- method: 'webvh',
268
- did: result.did,
269
- data: result.doc
274
+ // The advanced ratchet is persisted only on the pre-rotation path; an
275
+ // ordinary service update leaves the update-keys sidecar untouched.
276
+ const { logPath, docPath, updateKeysPath } = await persistWebvhUpdate({
277
+ result,
278
+ sidecar: meta.prerotation && newActive
279
+ ? { newActive, newStaged, retiredActive, stored, keepOldKey }
280
+ : undefined
270
281
  });
271
- // Persist the advanced ratchet only on the pre-rotation path; an ordinary
272
- // service update leaves the update-keys sidecar untouched.
273
- if (meta.prerotation && newActive) {
274
- const updateKeysPath = await persistUpdateKeysSidecar({
275
- did: result.did,
276
- newActive,
277
- newStaged,
278
- retiredActive,
279
- stored,
280
- keepOldKey
281
- });
282
+ if (updateKeysPath !== undefined) {
282
283
  console.error(`Update keys saved to ${updateKeysPath}`);
283
284
  console.error('Pre-rotation: the update key was advanced as part of this change.');
284
285
  }
@@ -1 +1 @@
1
- {"version":3,"file":"service.js","sourceRoot":"","sources":["../../../src/commands/did/service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"service.js","sourceRoot":"","sources":["../../../src/commands/did/service.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { resolveDIDFromLog, type DIDLog } from '@interop/did-method-webvh';
1
+ import { resolveDIDFromLog, updateDID, type DIDLog } from '@interop/did-method-webvh';
2
2
  import { Ed25519VerificationKey } from '@interop/ed25519-verification-key';
3
3
  import { type WebvhUpdateKey, type WebvhUpdateKeys } from '../../storage.js';
4
4
  /**
@@ -11,8 +11,10 @@ import { type WebvhUpdateKey, type WebvhUpdateKeys } from '../../storage.js';
11
11
  export declare function parseDidLog(logText: string): DIDLog;
12
12
  /**
13
13
  * Ask the user to confirm a hard-to-undo action. Returns true immediately when
14
- * `--yes` was passed or when stdin is not an interactive TTY (so scripts and
15
- * tests are not blocked); otherwise prompts and requires an explicit `y`.
14
+ * `--yes` was passed. When stdin is not an interactive TTY the question cannot
15
+ * be asked, so the action is refused (with a hint to pass `--yes`) rather than
16
+ * silently confirmed -- a script or cron job must opt in explicitly. Otherwise
17
+ * prompts and requires an explicit `y`.
16
18
  *
17
19
  * @param options {object}
18
20
  * @param options.message {string}
@@ -70,7 +72,12 @@ export declare function loadStoredUpdateKeys(did: string): Promise<WebvhUpdateKe
70
72
  /**
71
73
  * Pre-rotation reveal: validate and load the staged (pre-committed) update key
72
74
  * that must sign this entry, returning the signer key pair plus the records
73
- * that make it the new active key and retire the current one.
75
+ * that make it the new active key and retire the current one. As a recovery
76
+ * path, when the staged record does not match the log's commitment but the
77
+ * sidecar's `active` record does (an earlier rotation wrote the sidecar and
78
+ * was then interrupted before the log write), the active record is revealed
79
+ * instead; `retiredActive` is undefined in that case, since the active record
80
+ * is not superseded.
74
81
  *
75
82
  * @param options {object}
76
83
  * @param options.stored {WebvhUpdateKeys | undefined} the update-keys sidecar.
@@ -89,11 +96,15 @@ export declare function revealStagedSigner({ stored, meta, targetDid, action }:
89
96
  }): Promise<{
90
97
  signerKeyPair: Ed25519VerificationKey;
91
98
  newActive: WebvhUpdateKey;
92
- retiredActive: WebvhUpdateKey;
99
+ retiredActive?: WebvhUpdateKey;
93
100
  }>;
94
101
  /**
95
102
  * Ordinary (non-pre-rotation) signer: the current active update key signs.
96
- * Returns the signer key pair and the active record it was loaded from.
103
+ * Returns the signer key pair and the active record it was loaded from. When
104
+ * the `active` record does not match the log's updateKeys, the staged and
105
+ * retired records are searched as a recovery path: an interrupted rotation
106
+ * can leave the sidecar one step ahead of (or behind) the log, and the secret
107
+ * authorized by the log may then live in one of those records.
97
108
  *
98
109
  * @param options {object}
99
110
  * @param options.stored {WebvhUpdateKeys | undefined} the update-keys sidecar.
@@ -101,8 +112,7 @@ export declare function revealStagedSigner({ stored, meta, targetDid, action }:
101
112
  * @param options.targetDid {string}
102
113
  * @param options.action {string} verb used in error messages.
103
114
  * @returns {Promise<{ signerKeyPair, activeRecord }>}
104
- * @throws {Error} if the active secret is missing or no longer matches the
105
- * log's updateKeys.
115
+ * @throws {Error} if no stored secret matches the log's updateKeys.
106
116
  */
107
117
  export declare function loadActiveSigner({ stored, meta, targetDid, action }: {
108
118
  stored: WebvhUpdateKeys | undefined;
@@ -116,10 +126,63 @@ export declare function loadActiveSigner({ stored, meta, targetDid, action }: {
116
126
  /**
117
127
  * Build the entry signer for a did:webvh update from an update key pair.
118
128
  *
119
- * @param keyPair {Ed25519VerificationKey} mutated: its `id` is set in place.
129
+ * @param keyPair {Ed25519VerificationKey}
120
130
  * @returns the signer to pass to `updateDID`.
121
131
  */
122
132
  export declare function makeWebvhEntrySigner(keyPair: Ed25519VerificationKey): import("@interop/did-method-webvh").Signer<import("@interop/did-method-webvh").SignableDocument>;
133
+ /**
134
+ * Append a signed entry to a did:webvh history log via the library's
135
+ * `updateDID`, passing the already-resolved `meta` as `priorMeta` to skip its
136
+ * internal re-resolution (a full re-verification of every log entry). The
137
+ * library trusts `priorMeta` blindly, so it must describe this exact log's
138
+ * head; that pairing is asserted here (an O(1) check) before signing, so a
139
+ * future edit that reloads or truncates the log cannot sign a forked entry.
140
+ *
141
+ * @param options {object}
142
+ * @param options.meta {Awaited<ReturnType<typeof resolveDIDFromLog>>['meta']}
143
+ * the metadata resolved from this same log (e.g. by
144
+ * `resolveWebvhForUpdate`).
145
+ * @param options.log {DIDLog}
146
+ * @param options.signer the entry signer (see `makeWebvhEntrySigner`).
147
+ * @returns {Promise<Awaited<ReturnType<typeof updateDID>>>}
148
+ * @throws {Error} if `meta` does not match the log head.
149
+ */
150
+ export declare function appendWebvhEntry({ meta, ...update }: Omit<Parameters<typeof updateDID>[0], 'priorMeta'> & {
151
+ meta: Awaited<ReturnType<typeof resolveDIDFromLog>>['meta'];
152
+ }): Promise<Awaited<ReturnType<typeof updateDID>>>;
153
+ /**
154
+ * Persist the artifacts of a signed did:webvh update in a crash-safe order:
155
+ * the update-keys sidecar first -- retaining the superseded secret regardless
156
+ * of `keepOldKey`, so that every key authorized by either the old or the new
157
+ * log head has its secret on disk -- then the log and document, then the
158
+ * sidecar again in its final shape when the retained secret should be
159
+ * dropped. An interruption at any point leaves a state the signer loaders
160
+ * (`loadActiveSigner`, `revealStagedSigner`) can recover from; the reverse
161
+ * order could commit a log whose only authorized secret was never persisted.
162
+ *
163
+ * @param options {object}
164
+ * @param options.result {Awaited<ReturnType<typeof updateDID>>}
165
+ * @param [options.sidecar] {object} update-keys sidecar changes, if any:
166
+ * the `persistUpdateKeysSidecar` arguments minus `did`.
167
+ * @returns {Promise<{ logPath, docPath, updateKeysPath }>} the saved paths;
168
+ * `updateKeysPath` is undefined when no sidecar change was requested.
169
+ */
170
+ export declare function persistWebvhUpdate({ result, sidecar }: {
171
+ result: Awaited<ReturnType<typeof updateDID>>;
172
+ sidecar?: {
173
+ newActive: WebvhUpdateKey;
174
+ newStaged?: WebvhUpdateKey & {
175
+ nextKeyHash: string;
176
+ };
177
+ retiredActive?: WebvhUpdateKey;
178
+ stored?: WebvhUpdateKeys;
179
+ keepOldKey?: boolean;
180
+ };
181
+ }): Promise<{
182
+ logPath: string;
183
+ docPath: string;
184
+ updateKeysPath?: string;
185
+ }>;
123
186
  /**
124
187
  * Write the update-keys sidecar: the active key, the staged next key (or
125
188
  * none), and any retired secrets. At creation there is no prior sidecar; after
@@ -1 +1 @@
1
- {"version":3,"file":"webvh-update.d.ts","sourceRoot":"","sources":["../../../src/commands/did/webvh-update.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"webvh-update.d.ts","sourceRoot":"","sources":["../../../src/commands/did/webvh-update.ts"],"names":[],"mappings":"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"}