@interop/did-cli 0.10.0 → 0.12.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 (129) hide show
  1. package/CHANGELOG.md +113 -0
  2. package/README.md +184 -35
  3. package/dist/commands/collection-command.d.ts +169 -0
  4. package/dist/commands/collection-command.d.ts.map +1 -0
  5. package/dist/commands/collection-command.js +241 -0
  6. package/dist/commands/collection-command.js.map +1 -0
  7. package/dist/commands/did/create.d.ts +63 -0
  8. package/dist/commands/did/create.d.ts.map +1 -0
  9. package/dist/commands/did/create.js +624 -0
  10. package/dist/commands/did/create.js.map +1 -0
  11. package/dist/commands/did/manage.d.ts +69 -0
  12. package/dist/commands/did/manage.d.ts.map +1 -0
  13. package/dist/commands/did/manage.js +322 -0
  14. package/dist/commands/did/manage.js.map +1 -0
  15. package/dist/commands/did/service.d.ts +93 -0
  16. package/dist/commands/did/service.d.ts.map +1 -0
  17. package/dist/commands/did/service.js +322 -0
  18. package/dist/commands/did/service.js.map +1 -0
  19. package/dist/commands/did/webvh-update.d.ts +172 -0
  20. package/dist/commands/did/webvh-update.d.ts.map +1 -0
  21. package/dist/commands/did/webvh-update.js +438 -0
  22. package/dist/commands/did/webvh-update.js.map +1 -0
  23. package/dist/commands/did.d.ts +8 -8
  24. package/dist/commands/did.d.ts.map +1 -1
  25. package/dist/commands/did.js +31 -1519
  26. package/dist/commands/did.js.map +1 -1
  27. package/dist/commands/edv.d.ts +15 -6
  28. package/dist/commands/edv.d.ts.map +1 -1
  29. package/dist/commands/edv.js +38 -28
  30. package/dist/commands/edv.js.map +1 -1
  31. package/dist/commands/key.d.ts +104 -0
  32. package/dist/commands/key.d.ts.map +1 -1
  33. package/dist/commands/key.js +432 -402
  34. package/dist/commands/key.js.map +1 -1
  35. package/dist/commands/vc.d.ts +2 -1
  36. package/dist/commands/vc.d.ts.map +1 -1
  37. package/dist/commands/vc.js +88 -145
  38. package/dist/commands/vc.js.map +1 -1
  39. package/dist/commands/was/collection.d.ts.map +1 -1
  40. package/dist/commands/was/collection.js +31 -85
  41. package/dist/commands/was/collection.js.map +1 -1
  42. package/dist/commands/was/publish.d.ts.map +1 -1
  43. package/dist/commands/was/publish.js +16 -44
  44. package/dist/commands/was/publish.js.map +1 -1
  45. package/dist/commands/was/resource.d.ts.map +1 -1
  46. package/dist/commands/was/resource.js +24 -51
  47. package/dist/commands/was/resource.js.map +1 -1
  48. package/dist/commands/was/shared.d.ts +83 -6
  49. package/dist/commands/was/shared.d.ts.map +1 -1
  50. package/dist/commands/was/shared.js +104 -1
  51. package/dist/commands/was/shared.js.map +1 -1
  52. package/dist/commands/was/space.d.ts.map +1 -1
  53. package/dist/commands/was/space.js +10 -16
  54. package/dist/commands/was/space.js.map +1 -1
  55. package/dist/commands/was/tree.d.ts.map +1 -1
  56. package/dist/commands/was/tree.js +4 -6
  57. package/dist/commands/was/tree.js.map +1 -1
  58. package/dist/commands/was.d.ts.map +1 -1
  59. package/dist/commands/was.js +60 -74
  60. package/dist/commands/was.js.map +1 -1
  61. package/dist/commands/zcap.d.ts +0 -18
  62. package/dist/commands/zcap.d.ts.map +1 -1
  63. package/dist/commands/zcap.js +63 -155
  64. package/dist/commands/zcap.js.map +1 -1
  65. package/dist/documentLoader.d.ts +3 -0
  66. package/dist/documentLoader.d.ts.map +1 -0
  67. package/dist/documentLoader.js +26 -0
  68. package/dist/documentLoader.js.map +1 -0
  69. package/dist/edv/core.d.ts +5 -4
  70. package/dist/edv/core.d.ts.map +1 -1
  71. package/dist/edv/core.js +22 -19
  72. package/dist/edv/core.js.map +1 -1
  73. package/dist/edv/hmac.d.ts.map +1 -1
  74. package/dist/edv/hmac.js +12 -12
  75. package/dist/edv/hmac.js.map +1 -1
  76. package/dist/edv/recipients.d.ts +2 -0
  77. package/dist/edv/recipients.d.ts.map +1 -1
  78. package/dist/edv/recipients.js +12 -15
  79. package/dist/edv/recipients.js.map +1 -1
  80. package/dist/keys/webvh-signer.d.ts +4 -10
  81. package/dist/keys/webvh-signer.d.ts.map +1 -1
  82. package/dist/keys/webvh-signer.js +10 -14
  83. package/dist/keys/webvh-signer.js.map +1 -1
  84. package/dist/keys/webvh-update.d.ts +6 -1
  85. package/dist/keys/webvh-update.d.ts.map +1 -1
  86. package/dist/keys/webvh-update.js +5 -2
  87. package/dist/keys/webvh-update.js.map +1 -1
  88. package/dist/meta.d.ts +36 -11
  89. package/dist/meta.d.ts.map +1 -1
  90. package/dist/meta.js +95 -73
  91. package/dist/meta.js.map +1 -1
  92. package/dist/storage.d.ts +65 -13
  93. package/dist/storage.d.ts.map +1 -1
  94. package/dist/storage.js +75 -17
  95. package/dist/storage.js.map +1 -1
  96. package/dist/vc/issue.d.ts.map +1 -1
  97. package/dist/vc/issue.js +4 -7
  98. package/dist/vc/issue.js.map +1 -1
  99. package/dist/vc/suites/expirationSuite.d.ts.map +1 -1
  100. package/dist/vc/suites/expirationSuite.js.map +1 -1
  101. package/dist/vc/suites/issuerDetailsSuite.d.ts.map +1 -1
  102. package/dist/vc/suites/issuerDetailsSuite.js.map +1 -1
  103. package/dist/vc/verify.d.ts +10 -0
  104. package/dist/vc/verify.d.ts.map +1 -1
  105. package/dist/vc/verify.js +38 -1
  106. package/dist/vc/verify.js.map +1 -1
  107. package/dist/was/client.d.ts.map +1 -1
  108. package/dist/was/client.js +8 -2
  109. package/dist/was/client.js.map +1 -1
  110. package/dist/was/grant.d.ts +44 -0
  111. package/dist/was/grant.d.ts.map +1 -0
  112. package/dist/was/grant.js +78 -0
  113. package/dist/was/grant.js.map +1 -0
  114. package/dist/was/io.d.ts +2 -2
  115. package/dist/was/io.d.ts.map +1 -1
  116. package/dist/was/io.js +1 -1
  117. package/dist/was/registry.d.ts.map +1 -1
  118. package/dist/was/registry.js +9 -2
  119. package/dist/was/registry.js.map +1 -1
  120. package/dist/zcap/delegate.d.ts.map +1 -1
  121. package/dist/zcap/delegate.js +1 -6
  122. package/dist/zcap/delegate.js.map +1 -1
  123. package/dist/zcap/signer.d.ts.map +1 -1
  124. package/dist/zcap/signer.js.map +1 -1
  125. package/package.json +20 -19
  126. package/dist/keys/webvh-driver.d.ts +0 -24
  127. package/dist/keys/webvh-driver.d.ts.map +0 -1
  128. package/dist/keys/webvh-driver.js +0 -73
  129. package/dist/keys/webvh-driver.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"documentLoader.d.ts","sourceRoot":"","sources":["../src/documentLoader.ts"],"names":[],"mappings":"AA6BA,uDAAuD;AACvD,eAAO,MAAM,cAAc,wDAA0C,CAAA"}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * The CLI's single shared JSON-LD document loader, used by every command that
3
+ * resolves DIDs / dereferences DID URLs or loads JSON-LD contexts (DID
4
+ * resolution, VC issue/verify, EDV recipient resolution, zcap signing).
5
+ *
6
+ * Per project convention, DID/JSON-LD resolution always goes through
7
+ * `@interop/security-document-loader`, never a hand-rolled loader. The loader's
8
+ * default resolver only knows did:key and did:web, so the did:webvh driver is
9
+ * registered onto a copy of the defaults -- keeping the did:webvh dependency out
10
+ * of the shared loader package itself. A bare DID resolves to its DID document;
11
+ * a `did#fragment` URL is dereferenced straight to its verification-method node.
12
+ * Works for did:key (offline), did:web, and did:webvh (both fetched). Built once
13
+ * and reused.
14
+ */
15
+ import { createDefaultDidResolver, securityLoader } from '@interop/security-document-loader';
16
+ import { createDidWebvhDriver } from '@interop/did-method-webvh/driver';
17
+ // The shared DID resolver underlying `documentLoader`. Kept module-private: its
18
+ // `@interop/did-io` type is not portably nameable across an export boundary.
19
+ const didResolver = createDefaultDidResolver();
20
+ // `CachedResolver.use` types its argument as the full generation-capable
21
+ // `DidMethodDriver`, but only reads `.method` (and later calls `.get`) for
22
+ // resolution; the webvh driver implements just that resolution subset.
23
+ didResolver.use(createDidWebvhDriver());
24
+ /** The shared document loader for all CLI commands. */
25
+ export const documentLoader = securityLoader({ didResolver }).build();
26
+ //# sourceMappingURL=documentLoader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"documentLoader.js","sourceRoot":"","sources":["../src/documentLoader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,OAAO,EACL,wBAAwB,EACxB,cAAc,EACf,MAAM,mCAAmC,CAAA;AAC1C,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAA;AAGvE,gFAAgF;AAChF,6EAA6E;AAC7E,MAAM,WAAW,GAAG,wBAAwB,EAAE,CAAA;AAC9C,yEAAyE;AACzE,2EAA2E;AAC3E,uEAAuE;AACvE,WAAW,CAAC,GAAG,CAAC,oBAAoB,EAAgC,CAAC,CAAA;AAErE,uDAAuD;AACvD,MAAM,CAAC,MAAM,cAAc,GAAG,cAAc,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,KAAK,EAAE,CAAA"}
@@ -17,7 +17,7 @@ export interface UpdateBase {
17
17
  indexed: IEncryptedDocument['indexed'];
18
18
  }
19
19
  /**
20
- * Encrypt an EDV Document through `EdvClientCore._encrypt`: serialize the
20
+ * Encrypt an EDV Document through `EdvDocumentCipher.encrypt`: serialize the
21
21
  * document's `{ content, meta, stream }` into a single JWE for the recipients,
22
22
  * blind any declared indexable attributes with `hmac`, and assemble the
23
23
  * `{ id, sequence, indexed, jwe }` envelope (plus `stream` when present).
@@ -44,9 +44,10 @@ export declare function encryptDocument({ doc, keys, hmac, indexes, base }: {
44
44
  base?: UpdateBase;
45
45
  }): Promise<IEncryptedDocument>;
46
46
  /**
47
- * Decrypt an EDV Document envelope through `EdvClientCore._decrypt`, returning
48
- * its cleartext payload (`content`, plus `meta`/`stream` when present). A wrong
49
- * key surfaces as a thrown error (the core rejects a `null` decrypt).
47
+ * Decrypt an EDV Document envelope through `EdvDocumentCipher.decrypt`,
48
+ * returning its cleartext payload (`content`, plus `meta`/`stream` when
49
+ * present). Decryption reads no index, so the codec needs no `indexHelper`. A
50
+ * wrong key surfaces as a thrown error (the codec rejects a `null` decrypt).
50
51
  *
51
52
  * @param options {object}
52
53
  * @param options.encryptedDoc {IEncryptedDocument}
@@ -1 +1 @@
1
- {"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../src/edv/core.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EACV,YAAY,EACZ,kBAAkB,EAClB,KAAK,EACN,MAAM,8BAA8B,CAAA;AACrC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AACpD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAEtD,2EAA2E;AAC3E,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,MAAM,CAAA;IACjB,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB;AAED;;;;GAIG;AACH,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAA;IACV,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,kBAAkB,CAAC,SAAS,CAAC,CAAA;CACvC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAsB,eAAe,CAAC,EACpC,GAAG,EACH,IAAI,EACJ,IAAI,EACJ,OAAO,EACP,IAAI,EACL,EAAE;IACD,GAAG,EAAE,YAAY,CAAA;IACjB,IAAI,EAAE,eAAe,EAAE,CAAA;IACvB,IAAI,CAAC,EAAE,KAAK,CAAA;IACZ,OAAO,CAAC,EAAE,gBAAgB,EAAE,CAAA;IAC5B,IAAI,CAAC,EAAE,UAAU,CAAA;CAClB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAkB9B;AAED;;;;;;;;;GASG;AACH,wBAAsB,eAAe,CAAC,EACpC,YAAY,EACZ,eAAe,EAChB,EAAE;IACD,YAAY,EAAE,kBAAkB,CAAA;IAChC,eAAe,EAAE,eAAe,CAAA;CACjC,GAAG,OAAO,CAAC,eAAe,CAAC,CAO3B"}
1
+ {"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../src/edv/core.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EACV,YAAY,EACZ,kBAAkB,EAClB,KAAK,EACN,MAAM,8BAA8B,CAAA;AACrC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AACpD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAEtD,2EAA2E;AAC3E,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,MAAM,CAAA;IACjB,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB;AAED;;;;GAIG;AACH,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAA;IACV,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,kBAAkB,CAAC,SAAS,CAAC,CAAA;CACvC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAsB,eAAe,CAAC,EACpC,GAAG,EACH,IAAI,EACJ,IAAI,EACJ,OAAO,EACP,IAAI,EACL,EAAE;IACD,GAAG,EAAE,YAAY,CAAA;IACjB,IAAI,EAAE,eAAe,EAAE,CAAA;IACvB,IAAI,CAAC,EAAE,KAAK,CAAA;IACZ,OAAO,CAAC,EAAE,gBAAgB,EAAE,CAAA;IAC5B,IAAI,CAAC,EAAE,UAAU,CAAA;CAClB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAkB9B;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,eAAe,CAAC,EACpC,YAAY,EACZ,eAAe,EAChB,EAAE;IACD,YAAY,EAAE,kBAAkB,CAAA;IAChC,eAAe,EAAE,eAAe,CAAA;CACjC,GAAG,OAAO,CAAC,eAAe,CAAC,CAO3B"}
package/dist/edv/core.js CHANGED
@@ -1,21 +1,23 @@
1
1
  /**
2
- * EDV Document encryption via `@interop/edv-client`'s `EdvClientCore` (Layer 2,
3
- * Phase 3). Phases 1-2 hand-rolled the `{ id, sequence, indexed, jwe }` envelope;
4
- * this routes document encryption and decryption through the reference core
5
- * instead, so the envelope -- and now the HMAC-blinded `indexed` array -- is
6
- * correct-by-construction against the implementation an EDV / WAS server expects.
2
+ * EDV Document encryption via `@interop/edv-client`'s `EdvDocumentCipher`. The
3
+ * `{ id, sequence, indexed, jwe }` envelope is not assembled here; it is routed
4
+ * through the reference codec instead, so the envelope -- and the HMAC-blinded
5
+ * `indexed` array -- is correct-by-construction against the implementation an
6
+ * EDV / WAS server expects.
7
7
  *
8
- * Only the transport-free helpers are used: `EdvClientCore._encrypt` /
9
- * `_decrypt` (the envelope + index blinding), `ensureIndex` (declaring indexable
10
- * attributes), and `generateId` (the document id). The chunked-stream bytes are
11
- * still produced by the cipher directly (see `./stream.ts`), since the core's
12
- * stream path requires a server transport; only the stream document's envelope
13
- * passes through here.
8
+ * Only the transport-free helpers are used: `EdvDocumentCipher.encrypt` /
9
+ * `decrypt` (the envelope + index blinding), plus `EdvClientCore.ensureIndex`
10
+ * (declaring indexable attributes, which registers them on the core's
11
+ * `indexHelper` -- and so on the `documentCipher` that shares it) and
12
+ * `generateId` (the document id). The chunked-stream bytes are still produced
13
+ * by the cipher directly (see `./stream.ts`), since the core's stream path
14
+ * requires a server transport; only the stream document's envelope passes
15
+ * through here.
14
16
  */
15
17
  import { Cipher } from '@interop/minimal-cipher';
16
- import { EdvClientCore } from '@interop/edv-client';
18
+ import { EdvClientCore, EdvDocumentCipher } from '@interop/edv-client';
17
19
  /**
18
- * Encrypt an EDV Document through `EdvClientCore._encrypt`: serialize the
20
+ * Encrypt an EDV Document through `EdvDocumentCipher.encrypt`: serialize the
19
21
  * document's `{ content, meta, stream }` into a single JWE for the recipients,
20
22
  * blind any declared indexable attributes with `hmac`, and assemble the
21
23
  * `{ id, sequence, indexed, jwe }` envelope (plus `stream` when present).
@@ -46,7 +48,7 @@ export async function encryptDocument({ doc, keys, hmac, indexes, base }) {
46
48
  core.ensureIndex({ attribute, unique });
47
49
  }
48
50
  const { recipients, keyResolver } = new Cipher().createRecipients({ keys });
49
- return core._encrypt({
51
+ return core.documentCipher.encrypt({
50
52
  doc,
51
53
  recipients,
52
54
  keyResolver,
@@ -55,9 +57,10 @@ export async function encryptDocument({ doc, keys, hmac, indexes, base }) {
55
57
  });
56
58
  }
57
59
  /**
58
- * Decrypt an EDV Document envelope through `EdvClientCore._decrypt`, returning
59
- * its cleartext payload (`content`, plus `meta`/`stream` when present). A wrong
60
- * key surfaces as a thrown error (the core rejects a `null` decrypt).
60
+ * Decrypt an EDV Document envelope through `EdvDocumentCipher.decrypt`,
61
+ * returning its cleartext payload (`content`, plus `meta`/`stream` when
62
+ * present). Decryption reads no index, so the codec needs no `indexHelper`. A
63
+ * wrong key surfaces as a thrown error (the codec rejects a `null` decrypt).
61
64
  *
62
65
  * @param options {object}
63
66
  * @param options.encryptedDoc {IEncryptedDocument}
@@ -65,8 +68,8 @@ export async function encryptDocument({ doc, keys, hmac, indexes, base }) {
65
68
  * @returns {Promise<DocumentPayload>}
66
69
  */
67
70
  export async function decryptDocument({ encryptedDoc, keyAgreementKey }) {
68
- const core = new EdvClientCore();
69
- const { content, meta, stream } = await core._decrypt({
71
+ const documentCipher = new EdvDocumentCipher({ cipher: new Cipher() });
72
+ const { content, meta, stream } = await documentCipher.decrypt({
70
73
  encryptedDoc,
71
74
  keyAgreementKey
72
75
  });
@@ -1 +1 @@
1
- {"version":3,"file":"core.js","sourceRoot":"","sources":["../../src/edv/core.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AA0BnD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,EACpC,GAAG,EACH,IAAI,EACJ,IAAI,EACJ,OAAO,EACP,IAAI,EAOL;IACC,IAAI,IAAI,EAAE,CAAC;QACT,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IAC1B,CAAC;SAAM,CAAC;QACN,GAAG,CAAC,EAAE,GAAG,MAAM,aAAa,CAAC,UAAU,EAAE,CAAA;IAC3C,CAAC;IACD,MAAM,IAAI,GAAG,IAAI,aAAa,CAAC,EAAE,IAAI,EAAE,CAAC,CAAA;IACxC,KAAK,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,OAAO,IAAI,EAAE,EAAE,CAAC;QAClD,IAAI,CAAC,WAAW,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAA;IACzC,CAAC;IACD,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,GAAG,IAAI,MAAM,EAAE,CAAC,gBAAgB,CAAC,EAAE,IAAI,EAAE,CAAC,CAAA;IAC3E,OAAO,IAAI,CAAC,QAAQ,CAAC;QACnB,GAAG;QACH,UAAU;QACV,WAAW;QACX,IAAI;QACJ,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC;KACtB,CAAC,CAAA;AACJ,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,EACpC,YAAY,EACZ,eAAe,EAIhB;IACC,MAAM,IAAI,GAAG,IAAI,aAAa,EAAE,CAAA;IAChC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC;QACpD,YAAY;QACZ,eAAe;KAChB,CAAC,CAAA;IACF,OAAO,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAA;AAC7E,CAAC"}
1
+ {"version":3,"file":"core.js","sourceRoot":"","sources":["../../src/edv/core.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAChD,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AA0BtE;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,EACpC,GAAG,EACH,IAAI,EACJ,IAAI,EACJ,OAAO,EACP,IAAI,EAOL;IACC,IAAI,IAAI,EAAE,CAAC;QACT,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IAC1B,CAAC;SAAM,CAAC;QACN,GAAG,CAAC,EAAE,GAAG,MAAM,aAAa,CAAC,UAAU,EAAE,CAAA;IAC3C,CAAC;IACD,MAAM,IAAI,GAAG,IAAI,aAAa,CAAC,EAAE,IAAI,EAAE,CAAC,CAAA;IACxC,KAAK,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,OAAO,IAAI,EAAE,EAAE,CAAC;QAClD,IAAI,CAAC,WAAW,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAA;IACzC,CAAC;IACD,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,GAAG,IAAI,MAAM,EAAE,CAAC,gBAAgB,CAAC,EAAE,IAAI,EAAE,CAAC,CAAA;IAC3E,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;QACjC,GAAG;QACH,UAAU;QACV,WAAW;QACX,IAAI;QACJ,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC;KACtB,CAAC,CAAA;AACJ,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,EACpC,YAAY,EACZ,eAAe,EAIhB;IACC,MAAM,cAAc,GAAG,IAAI,iBAAiB,CAAC,EAAE,MAAM,EAAE,IAAI,MAAM,EAAE,EAAE,CAAC,CAAA;IACtE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC;QAC7D,YAAY;QACZ,eAAe;KAChB,CAAC,CAAA;IACF,OAAO,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAA;AAC7E,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"hmac.d.ts","sourceRoot":"","sources":["../../src/edv/hmac.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EACL,aAAa,EAEd,MAAM,8BAA8B,CAAA;AAOrC,iFAAiF;AACjF,eAAO,MAAM,aAAa,sBAAsB,CAAA;AAyBhD;;;;;;;;;;GAUG;AACH,wBAAsB,WAAW,CAAC,EAChC,GAAG,EACJ,EAAE;IACD,GAAG,CAAC,EAAE,MAAM,CAAA;CACb,GAAG,OAAO,CAAC,aAAa,CAAC,CA+CzB"}
1
+ {"version":3,"file":"hmac.d.ts","sourceRoot":"","sources":["../../src/edv/hmac.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EACL,aAAa,EAEd,MAAM,8BAA8B,CAAA;AAQrC,iFAAiF;AACjF,eAAO,MAAM,aAAa,sBAAsB,CAAA;AAyBhD;;;;;;;;;;GAUG;AACH,wBAAsB,WAAW,CAAC,EAChC,GAAG,EACJ,EAAE;IACD,GAAG,CAAC,EAAE,MAAM,CAAA;CACb,GAAG,OAAO,CAAC,aAAa,CAAC,CAyCzB"}
package/dist/edv/hmac.js CHANGED
@@ -8,6 +8,7 @@
8
8
  */
9
9
  import { SHA256HMACKey } from '@interop/data-integrity-core';
10
10
  import { listCollection, loadFromCollection, loadMetaFromCollection } from '../storage.js';
11
+ import { resolveByHandle } from '../meta.js';
11
12
  /** The stored `type` value of an HMAC blinding key (the EDV protocol string). */
12
13
  export const HMAC_KEY_TYPE = 'Sha256HmacKey2019';
13
14
  /**
@@ -17,7 +18,7 @@ export const HMAC_KEY_TYPE = 'Sha256HmacKey2019';
17
18
  */
18
19
  async function listStoredHmacs() {
19
20
  const storageIds = await listCollection('keys');
20
- const stored = await Promise.all(storageIds.map(storageId => loadFromCollection('keys', storageId)));
21
+ const stored = await Promise.all(storageIds.map(storageId => loadFromCollection({ collection: 'keys', storageId })));
21
22
  return storageIds
22
23
  .map((storageId, index) => ({ storageId, stored: stored[index] }))
23
24
  .filter(({ stored }) => stored.type === HMAC_KEY_TYPE);
@@ -50,18 +51,17 @@ export async function resolveHmac({ ref }) {
50
51
  if (direct) {
51
52
  return SHA256HMACKey.from(direct.stored);
52
53
  }
53
- const metas = await Promise.all(candidates.map(candidate => loadMetaFromCollection({
54
- collection: 'keys',
55
- storageId: candidate.storageId
56
- })));
57
- const byHandle = candidates.filter((_candidate, index) => metas[index]?.handle === ref);
58
- if (byHandle.length === 0) {
54
+ const match = await resolveByHandle({
55
+ ref,
56
+ noun: 'HMAC keys',
57
+ alternative: 'key id',
58
+ storageIds: candidates.map(candidate => candidate.storageId),
59
+ loadMeta: storageId => loadMetaFromCollection({ collection: 'keys', storageId })
60
+ });
61
+ if (!match) {
59
62
  throw new Error(`No HMAC key found for "${ref}".`);
60
63
  }
61
- if (byHandle.length > 1) {
62
- throw new Error(`Handle "${ref}" matches ${byHandle.length} HMAC keys; ` +
63
- 'use the key id instead.');
64
- }
65
- return SHA256HMACKey.from(byHandle[0].stored);
64
+ const candidate = candidates.find(candidate => candidate.storageId === match.storageId);
65
+ return SHA256HMACKey.from(candidate.stored);
66
66
  }
67
67
  //# sourceMappingURL=hmac.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"hmac.js","sourceRoot":"","sources":["../../src/edv/hmac.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EACL,aAAa,EAEd,MAAM,8BAA8B,CAAA;AACrC,OAAO,EACL,cAAc,EACd,kBAAkB,EAClB,sBAAsB,EACvB,MAAM,eAAe,CAAA;AAEtB,iFAAiF;AACjF,MAAM,CAAC,MAAM,aAAa,GAAG,mBAAmB,CAAA;AAQhD;;;;GAIG;AACH,KAAK,UAAU,eAAe;IAC5B,MAAM,UAAU,GAAG,MAAM,cAAc,CAAC,MAAM,CAAC,CAAA;IAC/C,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,CAC9B,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CACzB,kBAAkB,CAAiB,MAAM,EAAE,SAAS,CAAC,CACtD,CACF,CAAA;IACD,OAAO,UAAU;SACd,GAAG,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;SACjE,MAAM,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,aAAa,CAAC,CAAA;AAC1D,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,EAChC,GAAG,EAGJ;IACC,MAAM,UAAU,GAAG,MAAM,eAAe,EAAE,CAAA;IAC1C,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,MAAM,IAAI,KAAK,CACb,mDAAmD;YACjD,qCAAqC,CACxC,CAAA;IACH,CAAC;IAED,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;QACtB,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1B,MAAM,IAAI,KAAK,CACb,kBAAkB,UAAU,CAAC,MAAM,cAAc;gBAC/C,4BAA4B,CAC/B,CAAA;QACH,CAAC;QACD,OAAO,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAA;IACjD,CAAC;IAED,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,CAC5B,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,KAAK,GAAG,IAAI,SAAS,CAAC,SAAS,KAAK,GAAG,CACxE,CAAA;IACD,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;IAC1C,CAAC;IAED,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,GAAG,CAC7B,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CACzB,sBAAsB,CAAC;QACrB,UAAU,EAAE,MAAM;QAClB,SAAS,EAAE,SAAS,CAAC,SAAS;KAC/B,CAAC,CACH,CACF,CAAA;IACD,MAAM,QAAQ,GAAG,UAAU,CAAC,MAAM,CAChC,CAAC,UAAU,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,MAAM,KAAK,GAAG,CACpD,CAAA;IACD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,0BAA0B,GAAG,IAAI,CAAC,CAAA;IACpD,CAAC;IACD,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CACb,WAAW,GAAG,aAAa,QAAQ,CAAC,MAAM,cAAc;YACtD,yBAAyB,CAC5B,CAAA;IACH,CAAC;IACD,OAAO,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAA;AAC/C,CAAC"}
1
+ {"version":3,"file":"hmac.js","sourceRoot":"","sources":["../../src/edv/hmac.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EACL,aAAa,EAEd,MAAM,8BAA8B,CAAA;AACrC,OAAO,EACL,cAAc,EACd,kBAAkB,EAClB,sBAAsB,EACvB,MAAM,eAAe,CAAA;AACtB,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAE5C,iFAAiF;AACjF,MAAM,CAAC,MAAM,aAAa,GAAG,mBAAmB,CAAA;AAQhD;;;;GAIG;AACH,KAAK,UAAU,eAAe;IAC5B,MAAM,UAAU,GAAG,MAAM,cAAc,CAAC,MAAM,CAAC,CAAA;IAC/C,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,CAC9B,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CACzB,kBAAkB,CAAiB,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CACtE,CACF,CAAA;IACD,OAAO,UAAU;SACd,GAAG,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;SACjE,MAAM,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,aAAa,CAAC,CAAA;AAC1D,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,EAChC,GAAG,EAGJ;IACC,MAAM,UAAU,GAAG,MAAM,eAAe,EAAE,CAAA;IAC1C,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,MAAM,IAAI,KAAK,CACb,mDAAmD;YACjD,qCAAqC,CACxC,CAAA;IACH,CAAC;IAED,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;QACtB,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1B,MAAM,IAAI,KAAK,CACb,kBAAkB,UAAU,CAAC,MAAM,cAAc;gBAC/C,4BAA4B,CAC/B,CAAA;QACH,CAAC;QACD,OAAO,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAA;IACjD,CAAC;IAED,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,CAC5B,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,KAAK,GAAG,IAAI,SAAS,CAAC,SAAS,KAAK,GAAG,CACxE,CAAA;IACD,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;IAC1C,CAAC;IAED,MAAM,KAAK,GAAG,MAAM,eAAe,CAAC;QAClC,GAAG;QACH,IAAI,EAAE,WAAW;QACjB,WAAW,EAAE,QAAQ;QACrB,UAAU,EAAE,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,SAAS,CAAC;QAC5D,QAAQ,EAAE,SAAS,CAAC,EAAE,CACpB,sBAAsB,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;KAC5D,CAAC,CAAA;IACF,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CAAC,0BAA0B,GAAG,IAAI,CAAC,CAAA;IACpD,CAAC;IACD,MAAM,SAAS,GAAG,UAAU,CAAC,IAAI,CAC/B,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,SAAS,KAAK,KAAK,CAAC,SAAS,CACpD,CAAA;IACF,OAAO,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA;AAC7C,CAAC"}
@@ -1,6 +1,8 @@
1
1
  import { X25519KeyAgreementKey2020 } from '@interop/x25519-key-agreement-key';
2
2
  /** The X25519 key-agreement verification-method type minimal-cipher expects. */
3
3
  export declare const KEY_AGREEMENT_TYPE = "X25519KeyAgreementKey2020";
4
+ /** The multibase prefix of an X25519 `publicKeyMultibase`. */
5
+ export declare const X25519_MULTIBASE_PREFIX = "z6LS";
4
6
  /**
5
7
  * An X25519 key-agreement key instance with its `.id` (`kid`) populated. Used
6
8
  * both as a resolved recipient (encrypt reads `id` + `publicKeyMultibase`) and
@@ -1 +1 @@
1
- {"version":3,"file":"recipients.d.ts","sourceRoot":"","sources":["../../src/edv/recipients.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAA;AAI7E,gFAAgF;AAChF,eAAO,MAAM,kBAAkB,8BAA8B,CAAA;AAW7D;;;;GAIG;AACH,MAAM,MAAM,eAAe,GAAG,YAAY,CAAC,OAAO,yBAAyB,CAAC,GAAG;IAC7E,EAAE,EAAE,MAAM,CAAA;CACX,CAAA;AAqKD;;;;;;;;GAQG;AACH,wBAAsB,gBAAgB,CAAC,EACrC,GAAG,EACJ,EAAE;IACD,GAAG,EAAE,MAAM,CAAA;CACZ,GAAG,OAAO,CAAC,eAAe,CAAC,CAmB3B;AAED;;;;;;;GAOG;AACH,wBAAsB,oBAAoB,CAAC,EACzC,IAAI,EACL,EAAE;IACD,IAAI,EAAE,MAAM,CAAA;CACb,GAAG,OAAO,CAAC,eAAe,CAAC,CAa3B;AAED;;;;;;;;GAQG;AACH,wBAAsB,mBAAmB,CAAC,EACxC,GAAG,EACJ,EAAE;IACD,GAAG,EAAE,MAAM,CAAA;CACZ,GAAG,OAAO,CAAC,eAAe,CAAC,CAa3B;AAED;;;;;;;;GAQG;AACH,wBAAsB,yBAAyB,CAAC,EAC9C,GAAG,EACJ,EAAE;IACD,GAAG,EAAE;QAAE,UAAU,CAAC,EAAE;YAAE,MAAM,CAAC,EAAE;gBAAE,GAAG,CAAC,EAAE,MAAM,CAAA;aAAE,CAAA;SAAE,EAAE,CAAA;KAAE,CAAA;CACtD,GAAG,OAAO,CAAC,eAAe,CAAC,CAsC3B"}
1
+ {"version":3,"file":"recipients.d.ts","sourceRoot":"","sources":["../../src/edv/recipients.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAA;AAK7E,gFAAgF;AAChF,eAAO,MAAM,kBAAkB,8BAA8B,CAAA;AAE7D,8DAA8D;AAC9D,eAAO,MAAM,uBAAuB,SAAS,CAAA;AAoB7C;;;;GAIG;AACH,MAAM,MAAM,eAAe,GAAG,YAAY,CAAC,OAAO,yBAAyB,CAAC,GAAG;IAC7E,EAAE,EAAE,MAAM,CAAA;CACX,CAAA;AAkKD;;;;;;;;GAQG;AACH,wBAAsB,gBAAgB,CAAC,EACrC,GAAG,EACJ,EAAE;IACD,GAAG,EAAE,MAAM,CAAA;CACZ,GAAG,OAAO,CAAC,eAAe,CAAC,CAmB3B;AAED;;;;;;;GAOG;AACH,wBAAsB,oBAAoB,CAAC,EACzC,IAAI,EACL,EAAE;IACD,IAAI,EAAE,MAAM,CAAA;CACb,GAAG,OAAO,CAAC,eAAe,CAAC,CAa3B;AAED;;;;;;;;GAQG;AACH,wBAAsB,mBAAmB,CAAC,EACxC,GAAG,EACJ,EAAE;IACD,GAAG,EAAE,MAAM,CAAA;CACZ,GAAG,OAAO,CAAC,eAAe,CAAC,CAa3B;AAED;;;;;;;;GAQG;AACH,wBAAsB,yBAAyB,CAAC,EAC9C,GAAG,EACJ,EAAE;IACD,GAAG,EAAE;QAAE,UAAU,CAAC,EAAE;YAAE,MAAM,CAAC,EAAE;gBAAE,GAAG,CAAC,EAAE,MAAM,CAAA;aAAE,CAAA;SAAE,EAAE,CAAA;KAAE,CAAA;CACtD,GAAG,OAAO,CAAC,eAAe,CAAC,CAsC3B"}
@@ -10,20 +10,14 @@
10
10
  * for decrypt.
11
11
  */
12
12
  import { readFile } from 'node:fs/promises';
13
- import { securityLoader } from '@interop/security-document-loader';
14
13
  import { X25519KeyAgreementKey2020 } from '@interop/x25519-key-agreement-key';
14
+ import { documentLoader } from '../documentLoader.js';
15
15
  import { listCollection, loadFromCollection } from '../storage.js';
16
16
  import { resolveKeyRef } from '../meta.js';
17
17
  /** The X25519 key-agreement verification-method type minimal-cipher expects. */
18
18
  export const KEY_AGREEMENT_TYPE = 'X25519KeyAgreementKey2020';
19
- /**
20
- * Document loader for DID-URL recipient resolution: resolves a bare DID to its
21
- * DID document and dereferences a `did#fragment` URL straight to its
22
- * verification-method node, for both did:key (offline) and did:web (fetched).
23
- * Built once and reused. (Per project convention, DID/JSON-LD resolution goes
24
- * through `@interop/security-document-loader`, never a hand-rolled loader.)
25
- */
26
- const documentLoader = securityLoader().build();
19
+ /** The multibase prefix of an X25519 `publicKeyMultibase`. */
20
+ export const X25519_MULTIBASE_PREFIX = 'z6LS';
27
21
  /**
28
22
  * Construct an X25519 key-agreement key from a verification method or stored
29
23
  * key pair. `didKey: true` defaults a source with no `controller`/`id` to its
@@ -33,7 +27,7 @@ const documentLoader = securityLoader().build();
33
27
  * `type: 'Multikey'` source is normalized via `fromMultikey`. The constructor
34
28
  * validates the multibase header bytes.
35
29
  *
36
- * @param source {Record<string, any>}
30
+ * @param source {VerificationMethodNode}
37
31
  * @returns {Promise<KeyAgreementKey>}
38
32
  */
39
33
  async function keyAgreementKeyFrom(source) {
@@ -61,7 +55,7 @@ function splitFragment({ ref }) {
61
55
  *
62
56
  * @param options {object}
63
57
  * @param options.url {string}
64
- * @returns {Promise<Record<string, any>>}
58
+ * @returns {Promise<VerificationMethodNode>}
65
59
  */
66
60
  async function resolveDidUrl({ url }) {
67
61
  const { document } = (await documentLoader(url));
@@ -98,7 +92,7 @@ function isX25519PublicKey(publicKeyMultibase) {
98
92
  * and construct it.
99
93
  *
100
94
  * @param options {object}
101
- * @param options.method {Record<string, any>}
95
+ * @param options.method {VerificationMethodNode}
102
96
  * @param options.ref {string}
103
97
  * @returns {Promise<KeyAgreementKey>}
104
98
  */
@@ -126,7 +120,7 @@ async function resolveDidRecipient({ ref }) {
126
120
  // A bare DID: pick the single keyAgreement key, dereferencing any entries
127
121
  // that are id references rather than embedded verification methods.
128
122
  const didDocument = await resolveDidUrl({ url: did });
129
- const entries = (didDocument.keyAgreement ?? []);
123
+ const entries = didDocument.keyAgreement ?? [];
130
124
  const methods = [];
131
125
  for (const entry of entries) {
132
126
  methods.push(typeof entry === 'string' ? await resolveDidUrl({ url: entry }) : entry);
@@ -151,7 +145,7 @@ async function resolveDidRecipient({ ref }) {
151
145
  * @returns {Promise<KeyAgreementKey>}
152
146
  */
153
147
  export async function resolveRecipient({ ref }) {
154
- if (ref.startsWith('z6LS')) {
148
+ if (ref.startsWith(X25519_MULTIBASE_PREFIX)) {
155
149
  return toKeyAgreementKey({
156
150
  method: { type: KEY_AGREEMENT_TYPE, publicKeyMultibase: ref },
157
151
  ref
@@ -229,7 +223,10 @@ export async function autoSelectKeyAgreementKey({ jwe }) {
229
223
  const storageIds = await listCollection('keys');
230
224
  const matches = [];
231
225
  for (const storageId of storageIds) {
232
- const stored = await loadFromCollection('keys', storageId);
226
+ const stored = await loadFromCollection({
227
+ collection: 'keys',
228
+ storageId
229
+ });
233
230
  if (stored.type !== KEY_AGREEMENT_TYPE ||
234
231
  !stored.privateKeyMultibase ||
235
232
  !stored.publicKeyMultibase) {
@@ -1 +1 @@
1
- {"version":3,"file":"recipients.js","sourceRoot":"","sources":["../../src/edv/recipients.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"recipients.js","sourceRoot":"","sources":["../../src/edv/recipients.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
- import type { Signer, Verifier } from '@interop/did-method-webvh';
1
+ import type { Signer } from '@interop/did-method-webvh';
2
2
  /**
3
- * Build a did:webvh `Signer` (and `Verifier`) backed by an Ed25519 key pair.
3
+ * Build a did:webvh `Signer` backed by an Ed25519 key pair.
4
4
  *
5
5
  * `keyPair.signer()` requires `keyPair.id` to be set, so the caller must assign
6
6
  * an id before signing; this helper derives the verification method id from the
@@ -8,7 +8,7 @@ import type { Signer, Verifier } from '@interop/did-method-webvh';
8
8
  *
9
9
  * @param options {object}
10
10
  * @param options.keyPair {object} an `@interop/ed25519-verification-key` pair.
11
- * @returns {Signer & Verifier}
11
+ * @returns {Signer}
12
12
  */
13
13
  export declare function makeWebvhSigner({ keyPair }: {
14
14
  keyPair: {
@@ -18,12 +18,6 @@ export declare function makeWebvhSigner({ keyPair }: {
18
18
  data: Uint8Array;
19
19
  }): Promise<Uint8Array>;
20
20
  };
21
- verifier(): {
22
- verify(options: {
23
- data: Uint8Array;
24
- signature: Uint8Array;
25
- }): Promise<boolean>;
26
- };
27
21
  };
28
- }): Signer & Verifier;
22
+ }): Signer;
29
23
  //# sourceMappingURL=webvh-signer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"webvh-signer.d.ts","sourceRoot":"","sources":["../../src/keys/webvh-signer.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAA;AAEjE;;;;;;;;;;GAUG;AACH,wBAAgB,eAAe,CAAC,EAC9B,OAAO,EACR,EAAE;IACD,OAAO,EAAE;QACP,kBAAkB,EAAE,MAAM,CAAA;QAC1B,MAAM,IAAI;YAAE,IAAI,CAAC,OAAO,EAAE;gBAAE,IAAI,EAAE,UAAU,CAAA;aAAE,GAAG,OAAO,CAAC,UAAU,CAAC,CAAA;SAAE,CAAA;QACtE,QAAQ,IAAI;YACV,MAAM,CAAC,OAAO,EAAE;gBACd,IAAI,EAAE,UAAU,CAAA;gBAChB,SAAS,EAAE,UAAU,CAAA;aACtB,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;SACrB,CAAA;KACF,CAAA;CACF,GAAG,MAAM,GAAG,QAAQ,CAiBpB"}
1
+ {"version":3,"file":"webvh-signer.d.ts","sourceRoot":"","sources":["../../src/keys/webvh-signer.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AAEvD;;;;;;;;;;GAUG;AACH,wBAAgB,eAAe,CAAC,EAC9B,OAAO,EACR,EAAE;IACD,OAAO,EAAE;QACP,kBAAkB,EAAE,MAAM,CAAA;QAC1B,MAAM,IAAI;YAAE,IAAI,CAAC,OAAO,EAAE;gBAAE,IAAI,EAAE,UAAU,CAAA;aAAE,GAAG,OAAO,CAAC,UAAU,CAAC,CAAA;SAAE,CAAA;KACvE,CAAA;CACF,GAAG,MAAM,CAcT"}
@@ -1,19 +1,18 @@
1
1
  /**
2
2
  * Bridge between the CLI's `@interop/ed25519-verification-key` key pair and the
3
- * `Signer` / `Verifier` interfaces expected by `@interop/did-method-webvh`, so
4
- * did:webvh reuses the same Ed25519 key class as did:key / did:web rather than
5
- * pulling in a separate signing implementation.
3
+ * `Signer` interface expected by `@interop/did-method-webvh`, so did:webvh
4
+ * reuses the same Ed25519 key class as did:key / did:web rather than pulling in
5
+ * a separate signing implementation.
6
6
  *
7
- * `createDID` both signs the initial log entry and verifies it before
8
- * returning, so the bridge implements both interfaces: `sign({ document,
9
- * proof })` returns a base58btc multibase `proofValue`, and `verify` checks an
10
- * Ed25519 signature. `prepareDataForSigning` produces the bytes to sign (the
11
- * `eddsa-jcs-2022` cryptosuite hash); the key pair's own `signer()` / `verifier()`
12
- * do the cryptography.
7
+ * `sign({ document, proof })` returns a base58btc multibase `proofValue`.
8
+ * `prepareDataForSigning` produces the bytes to sign (the `eddsa-jcs-2022`
9
+ * cryptosuite hash); the key pair's own `signer()` does the cryptography.
10
+ * Verification is left to the library's default log verifier, which recovers
11
+ * each entry's public key from its proof rather than being bound to one key.
13
12
  */
14
13
  import { MultibaseEncoding, multibaseEncode, prepareDataForSigning } from '@interop/did-method-webvh';
15
14
  /**
16
- * Build a did:webvh `Signer` (and `Verifier`) backed by an Ed25519 key pair.
15
+ * Build a did:webvh `Signer` backed by an Ed25519 key pair.
17
16
  *
18
17
  * `keyPair.signer()` requires `keyPair.id` to be set, so the caller must assign
19
18
  * an id before signing; this helper derives the verification method id from the
@@ -21,7 +20,7 @@ import { MultibaseEncoding, multibaseEncode, prepareDataForSigning } from '@inte
21
20
  *
22
21
  * @param options {object}
23
22
  * @param options.keyPair {object} an `@interop/ed25519-verification-key` pair.
24
- * @returns {Signer & Verifier}
23
+ * @returns {Signer}
25
24
  */
26
25
  export function makeWebvhSigner({ keyPair }) {
27
26
  const verificationMethodId = `did:key:${keyPair.publicKeyMultibase}#${keyPair.publicKeyMultibase}`;
@@ -35,9 +34,6 @@ export function makeWebvhSigner({ keyPair }) {
35
34
  },
36
35
  getVerificationMethodId() {
37
36
  return verificationMethodId;
38
- },
39
- async verify(signature, message) {
40
- return keyPair.verifier().verify({ data: message, signature });
41
37
  }
42
38
  };
43
39
  }
@@ -1 +1 @@
1
- {"version":3,"file":"webvh-signer.js","sourceRoot":"","sources":["../../src/keys/webvh-signer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,qBAAqB,EACtB,MAAM,2BAA2B,CAAA;AAGlC;;;;;;;;;;GAUG;AACH,MAAM,UAAU,eAAe,CAAC,EAC9B,OAAO,EAYR;IACC,MAAM,oBAAoB,GAAG,WAAW,OAAO,CAAC,kBAAkB,IAAI,OAAO,CAAC,kBAAkB,EAAE,CAAA;IAClG,OAAO;QACL,KAAK,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE;YAC5B,MAAM,IAAI,GAAG,MAAM,qBAAqB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAA;YACzD,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,CAAA;YACvD,OAAO;gBACL,UAAU,EAAE,eAAe,CAAC,SAAS,EAAE,iBAAiB,CAAC,UAAU,CAAC;aACrE,CAAA;QACH,CAAC;QACD,uBAAuB;YACrB,OAAO,oBAAoB,CAAA;QAC7B,CAAC;QACD,KAAK,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO;YAC7B,OAAO,OAAO,CAAC,QAAQ,EAAE,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAA;QAChE,CAAC;KACF,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"webvh-signer.js","sourceRoot":"","sources":["../../src/keys/webvh-signer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,qBAAqB,EACtB,MAAM,2BAA2B,CAAA;AAGlC;;;;;;;;;;GAUG;AACH,MAAM,UAAU,eAAe,CAAC,EAC9B,OAAO,EAMR;IACC,MAAM,oBAAoB,GAAG,WAAW,OAAO,CAAC,kBAAkB,IAAI,OAAO,CAAC,kBAAkB,EAAE,CAAA;IAClG,OAAO;QACL,KAAK,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE;YAC5B,MAAM,IAAI,GAAG,MAAM,qBAAqB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAA;YACzD,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,CAAA;YACvD,OAAO;gBACL,UAAU,EAAE,eAAe,CAAC,SAAS,EAAE,iBAAiB,CAAC,UAAU,CAAC;aACrE,CAAA;QACH,CAAC;QACD,uBAAuB;YACrB,OAAO,oBAAoB,CAAA;QAC7B,CAAC;KACF,CAAA;AACH,CAAC"}
@@ -25,9 +25,14 @@ export declare function exportUpdateKey(keyPair: Ed25519VerificationKey): Promis
25
25
  * (and reconstructed via `loadUpdateKey` at the next rotation), so the key pair
26
26
  * itself is not returned.
27
27
  *
28
+ * @param [options] {object}
29
+ * @param [options.seed] {Uint8Array} derive the key deterministically from
30
+ * this seed (e.g. for `--with-seed`); generated randomly when omitted.
28
31
  * @returns {Promise<WebvhUpdateKey & { nextKeyHash: string }>}
29
32
  */
30
- export declare function generateStagedKey(): Promise<WebvhUpdateKey & {
33
+ export declare function generateStagedKey({ seed }?: {
34
+ seed?: Uint8Array;
35
+ }): Promise<WebvhUpdateKey & {
31
36
  nextKeyHash: string;
32
37
  }>;
33
38
  //# sourceMappingURL=webvh-update.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"webvh-update.d.ts","sourceRoot":"","sources":["../../src/keys/webvh-update.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAA;AAC1E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAEnD;;;;;;GAMG;AACH,wBAAsB,aAAa,CACjC,GAAG,EAAE,cAAc,GAClB,OAAO,CAAC,sBAAsB,CAAC,CAYjC;AAED;;;;;GAKG;AACH,wBAAsB,eAAe,CACnC,OAAO,EAAE,sBAAsB,GAC9B,OAAO,CAAC;IAAE,kBAAkB,EAAE,MAAM,CAAC;IAAC,kBAAkB,EAAE,MAAM,CAAA;CAAE,CAAC,CAMrE;AAED;;;;;;;;GAQG;AACH,wBAAsB,iBAAiB,IAAI,OAAO,CAChD,cAAc,GAAG;IAAE,WAAW,EAAE,MAAM,CAAA;CAAE,CACzC,CAMA"}
1
+ {"version":3,"file":"webvh-update.d.ts","sourceRoot":"","sources":["../../src/keys/webvh-update.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAA;AAC1E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAEnD;;;;;;GAMG;AACH,wBAAsB,aAAa,CACjC,GAAG,EAAE,cAAc,GAClB,OAAO,CAAC,sBAAsB,CAAC,CAYjC;AAED;;;;;GAKG;AACH,wBAAsB,eAAe,CACnC,OAAO,EAAE,sBAAsB,GAC9B,OAAO,CAAC;IAAE,kBAAkB,EAAE,MAAM,CAAC;IAAC,kBAAkB,EAAE,MAAM,CAAA;CAAE,CAAC,CAMrE;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,iBAAiB,CAAC,EACtC,IAAI,EACL,GAAE;IAAE,IAAI,CAAC,EAAE,UAAU,CAAA;CAAO,GAAG,OAAO,CACrC,cAAc,GAAG;IAAE,WAAW,EAAE,MAAM,CAAA;CAAE,CACzC,CAMA"}
@@ -52,10 +52,13 @@ export async function exportUpdateKey(keyPair) {
52
52
  * (and reconstructed via `loadUpdateKey` at the next rotation), so the key pair
53
53
  * itself is not returned.
54
54
  *
55
+ * @param [options] {object}
56
+ * @param [options.seed] {Uint8Array} derive the key deterministically from
57
+ * this seed (e.g. for `--with-seed`); generated randomly when omitted.
55
58
  * @returns {Promise<WebvhUpdateKey & { nextKeyHash: string }>}
56
59
  */
57
- export async function generateStagedKey() {
58
- const { publicKeyMultibase, secretKeyMultibase } = await exportUpdateKey(await Ed25519VerificationKey.generate());
60
+ export async function generateStagedKey({ seed } = {}) {
61
+ const { publicKeyMultibase, secretKeyMultibase } = await exportUpdateKey(await Ed25519VerificationKey.generate({ seed }));
59
62
  const nextKeyHash = await deriveNextKeyHash(publicKeyMultibase);
60
63
  return { publicKeyMultibase, secretKeyMultibase, nextKeyHash };
61
64
  }
@@ -1 +1 @@
1
- {"version":3,"file":"webvh-update.js","sourceRoot":"","sources":["../../src/keys/webvh-update.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAA;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAA;AAG1E;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,GAAmB;IAEnB,IAAI,CAAC,GAAG,CAAC,kBAAkB,EAAE,CAAC;QAC5B,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAA;IACtE,CAAC;IACD,2EAA2E;IAC3E,6EAA6E;IAC7E,gEAAgE;IAChE,OAAO,sBAAsB,CAAC,IAAI,CAAC;QACjC,IAAI,EAAE,UAAU;QAChB,kBAAkB,EAAE,GAAG,CAAC,kBAAkB;QAC1C,kBAAkB,EAAE,GAAG,CAAC,kBAAkB;KAC3C,CAAC,CAAA;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,OAA+B;IAE/B,MAAM,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC;QACtE,SAAS,EAAE,IAAI;QACf,SAAS,EAAE,IAAI;KAChB,CAAC,CAAA;IACF,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,CAAA;AACnD,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB;IAGrC,MAAM,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,GAAG,MAAM,eAAe,CACtE,MAAM,sBAAsB,CAAC,QAAQ,EAAE,CACxC,CAAA;IACD,MAAM,WAAW,GAAG,MAAM,iBAAiB,CAAC,kBAAkB,CAAC,CAAA;IAC/D,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,WAAW,EAAE,CAAA;AAChE,CAAC"}
1
+ {"version":3,"file":"webvh-update.js","sourceRoot":"","sources":["../../src/keys/webvh-update.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAA;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAA;AAG1E;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,GAAmB;IAEnB,IAAI,CAAC,GAAG,CAAC,kBAAkB,EAAE,CAAC;QAC5B,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAA;IACtE,CAAC;IACD,2EAA2E;IAC3E,6EAA6E;IAC7E,gEAAgE;IAChE,OAAO,sBAAsB,CAAC,IAAI,CAAC;QACjC,IAAI,EAAE,UAAU;QAChB,kBAAkB,EAAE,GAAG,CAAC,kBAAkB;QAC1C,kBAAkB,EAAE,GAAG,CAAC,kBAAkB;KAC3C,CAAC,CAAA;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,OAA+B;IAE/B,MAAM,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC;QACtE,SAAS,EAAE,IAAI;QACf,SAAS,EAAE,IAAI;KAChB,CAAC,CAAA;IACF,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,CAAA;AACnD,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,EACtC,IAAI,KACqB,EAAE;IAG3B,MAAM,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,GAAG,MAAM,eAAe,CACtE,MAAM,sBAAsB,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,CAAC,CAChD,CAAA;IACD,MAAM,WAAW,GAAG,MAAM,iBAAiB,CAAC,kBAAkB,CAAC,CAAA;IAC/D,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,WAAW,EAAE,CAAA;AAChE,CAAC"}
package/dist/meta.d.ts CHANGED
@@ -5,7 +5,7 @@
5
5
  * and resolving user-supplied key, DID, zcap, and credential references
6
6
  * (fingerprint / DID / capability or credential id, or metadata handle).
7
7
  */
8
- import { type KeyMetadata } from './storage.js';
8
+ import { type ItemMetadata, type KeyMetadata, type StoredKeyPair } from './storage.js';
9
9
  /**
10
10
  * Parse a key storage ID of the form `YYYY-MM-DD-<type>[-<curve>]-<rawId>`
11
11
  * into its date, key type, and (for ecdsa) curve components. Returns empty
@@ -61,6 +61,35 @@ export declare function removeKeyDidAssociation({ publicKeyMultibase, did }: {
61
61
  publicKeyMultibase: string;
62
62
  did: string;
63
63
  }): Promise<void>;
64
+ /**
65
+ * Resolve a metadata handle to a single storage id by scanning the `.meta.json`
66
+ * sidecars of a set of items. This is the shared core of every `resolve*Ref`
67
+ * helper: the direct id/fingerprint match stays in each caller, and this
68
+ * collapses the "scan handles, collect matches, complain on ambiguity" tail.
69
+ * Returns undefined when no handle matches; throws when more than one does
70
+ * (handles are not unique).
71
+ *
72
+ * @param options {object}
73
+ * @param options.ref {string} The handle to match.
74
+ * @param options.noun {string} Plural noun for the ambiguity message (e.g. `zcaps`).
75
+ * @param options.alternative {string} The unambiguous identifier to suggest instead.
76
+ * @param options.storageIds {string[]} The storage ids to scan.
77
+ * @param options.loadMeta {(storageId: string) => Promise<MetaType | undefined>}
78
+ * Loads the metadata sidecar for a storage id.
79
+ * @returns {Promise<{storageId: string, meta: MetaType} | undefined>}
80
+ */
81
+ export declare function resolveByHandle<MetaType extends {
82
+ handle?: string;
83
+ }>({ ref, noun, alternative, storageIds, loadMeta }: {
84
+ ref: string;
85
+ noun: string;
86
+ alternative: string;
87
+ storageIds: string[];
88
+ loadMeta: (storageId: string) => Promise<MetaType | undefined>;
89
+ }): Promise<{
90
+ storageId: string;
91
+ meta: MetaType;
92
+ } | undefined>;
64
93
  /**
65
94
  * Resolve a user-supplied DID reference -- a full DID or a metadata handle --
66
95
  * to a stored DID. Anything starting with `did:` is returned as-is; otherwise
@@ -96,14 +125,14 @@ export interface StoredZcap {
96
125
  *
97
126
  * @param options {object}
98
127
  * @param options.ref {string}
99
- * @returns {Promise<{storageId: string, zcap: StoredZcap, meta?: KeyMetadata} | undefined>}
128
+ * @returns {Promise<{storageId: string, zcap: StoredZcap, meta?: ItemMetadata} | undefined>}
100
129
  */
101
130
  export declare function resolveZcapRef({ ref }: {
102
131
  ref: string;
103
132
  }): Promise<{
104
133
  storageId: string;
105
134
  zcap: StoredZcap;
106
- meta?: KeyMetadata;
135
+ meta?: ItemMetadata;
107
136
  } | undefined>;
108
137
  /**
109
138
  * A stored Verifiable Credential, as loaded from wallet storage. Only the
@@ -131,14 +160,14 @@ export interface StoredCredential {
131
160
  *
132
161
  * @param options {object}
133
162
  * @param options.ref {string}
134
- * @returns {Promise<{storageId: string, credential: StoredCredential, meta?: KeyMetadata} | undefined>}
163
+ * @returns {Promise<{storageId: string, credential: StoredCredential, meta?: ItemMetadata} | undefined>}
135
164
  */
136
165
  export declare function resolveCredentialRef({ ref }: {
137
166
  ref: string;
138
167
  }): Promise<{
139
168
  storageId: string;
140
169
  credential: StoredCredential;
141
- meta?: KeyMetadata;
170
+ meta?: ItemMetadata;
142
171
  } | undefined>;
143
172
  /**
144
173
  * Resolve a user-supplied key reference -- a publicKeyMultibase fingerprint
@@ -149,17 +178,13 @@ export declare function resolveCredentialRef({ ref }: {
149
178
  *
150
179
  * @param options {object}
151
180
  * @param options.ref {string}
152
- * @returns {Promise<{storageId: string, key: object, meta?: KeyMetadata} | undefined>}
181
+ * @returns {Promise<{storageId: string, key: StoredKeyPair, meta?: KeyMetadata} | undefined>}
153
182
  */
154
183
  export declare function resolveKeyRef({ ref }: {
155
184
  ref: string;
156
185
  }): Promise<{
157
186
  storageId: string;
158
- key: {
159
- id?: string;
160
- publicKeyMultibase?: string;
161
- secretKeyMultibase?: string;
162
- };
187
+ key: StoredKeyPair;
163
188
  meta?: KeyMetadata;
164
189
  } | undefined>;
165
190
  //# sourceMappingURL=meta.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"meta.d.ts","sourceRoot":"","sources":["../src/meta.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EASL,KAAK,WAAW,EACjB,MAAM,cAAc,CAAA;AAErB;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,SAAS,EAAE,EAAE;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,GAAG;IACvE,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAQA;AAED;;;;;;;;;GASG;AACH,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,CAsB5E;AAED;;;;;;;;;GASG;AACH,wBAAsB,uBAAuB,CAAC,EAC5C,kBAAkB,EAClB,GAAG,EACJ,EAAE;IACD,kBAAkB,EAAE,MAAM,CAAA;IAC1B,GAAG,EAAE,MAAM,CAAA;CACZ,GAAG,OAAO,CAAC,IAAI,CAAC,CAgBhB;AAED;;;;;;;;;GASG;AACH,wBAAsB,uBAAuB,CAAC,EAC5C,kBAAkB,EAClB,GAAG,EACJ,EAAE;IACD,kBAAkB,EAAE,MAAM,CAAA;IAC1B,GAAG,EAAE,MAAM,CAAA;CACZ,GAAG,OAAO,CAAC,IAAI,CAAC,CAwBhB;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,aAAa,CAAC,EAClC,GAAG,EACJ,EAAE;IACD,GAAG,EAAE,MAAM,CAAA;CACZ,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAsB9B;AAED;;;;GAIG;AACH,MAAM,WAAW,UAAU;IACzB,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,cAAc,CAAC,EAAE,GAAG,EAAE,EAAE;IAAE,GAAG,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CACnE;IACE,SAAS,EAAE,MAAM,CAAA;IACjB,IAAI,EAAE,UAAU,CAAA;IAChB,IAAI,CAAC,EAAE,WAAW,CAAA;CACnB,GACD,SAAS,CACZ,CAkCA;AAED;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC/B,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;IACxB,MAAM,CAAC,EAAE,MAAM,GAAG;QAAE,EAAE,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;IACjC,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,cAAc,CAAC,EAAE,MAAM,CAAA;CACxB;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,oBAAoB,CAAC,EAAE,GAAG,EAAE,EAAE;IAAE,GAAG,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CACzE;IACE,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,gBAAgB,CAAA;IAC5B,IAAI,CAAC,EAAE,WAAW,CAAA;CACnB,GACD,SAAS,CACZ,CAmDA;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,aAAa,CAAC,EAAE,GAAG,EAAE,EAAE;IAAE,GAAG,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAClE;IACE,SAAS,EAAE,MAAM,CAAA;IACjB,GAAG,EAAE;QACH,EAAE,CAAC,EAAE,MAAM,CAAA;QACX,kBAAkB,CAAC,EAAE,MAAM,CAAA;QAC3B,kBAAkB,CAAC,EAAE,MAAM,CAAA;KAC5B,CAAA;IACD,IAAI,CAAC,EAAE,WAAW,CAAA;CACnB,GACD,SAAS,CACZ,CAiCA"}
1
+ {"version":3,"file":"meta.d.ts","sourceRoot":"","sources":["../src/meta.ts"],"names":[],"mappings":"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"}