@renown/sdk 6.0.0-dev.7 → 6.0.0-dev.77

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 (220) hide show
  1. package/dist/src/common.d.ts +16 -8
  2. package/dist/src/common.d.ts.map +1 -1
  3. package/dist/src/common.js +78 -38
  4. package/dist/src/common.js.map +1 -1
  5. package/dist/src/crypto/browser-key-storage.d.ts +4 -2
  6. package/dist/src/crypto/browser-key-storage.d.ts.map +1 -1
  7. package/dist/src/crypto/browser-key-storage.js +54 -51
  8. package/dist/src/crypto/browser-key-storage.js.map +1 -1
  9. package/dist/src/crypto/common.d.ts +6 -0
  10. package/dist/src/crypto/common.d.ts.map +1 -0
  11. package/dist/src/crypto/common.js +8 -0
  12. package/dist/src/crypto/common.js.map +1 -0
  13. package/dist/src/crypto/index.d.ts +1 -34
  14. package/dist/src/crypto/index.d.ts.map +1 -1
  15. package/dist/src/crypto/index.js +1 -128
  16. package/dist/src/crypto/index.js.map +1 -1
  17. package/dist/src/crypto/memory-key-storage.d.ts +9 -0
  18. package/dist/src/crypto/memory-key-storage.d.ts.map +1 -0
  19. package/dist/src/crypto/memory-key-storage.js +18 -0
  20. package/dist/src/crypto/memory-key-storage.js.map +1 -0
  21. package/dist/src/crypto/node-key-storage.d.ts +16 -3
  22. package/dist/src/crypto/node-key-storage.d.ts.map +1 -1
  23. package/dist/src/crypto/node-key-storage.js +82 -42
  24. package/dist/src/crypto/node-key-storage.js.map +1 -1
  25. package/dist/src/crypto/node.d.ts +1 -0
  26. package/dist/src/crypto/node.d.ts.map +1 -1
  27. package/dist/src/crypto/node.js +1 -1
  28. package/dist/src/crypto/node.js.map +1 -1
  29. package/dist/src/crypto/renown-crypto-builder.d.ts +11 -0
  30. package/dist/src/crypto/renown-crypto-builder.d.ts.map +1 -0
  31. package/dist/src/crypto/renown-crypto-builder.js +34 -0
  32. package/dist/src/crypto/renown-crypto-builder.js.map +1 -0
  33. package/dist/src/crypto/renown-crypto.d.ts +26 -0
  34. package/dist/src/crypto/renown-crypto.d.ts.map +1 -0
  35. package/dist/src/crypto/renown-crypto.js +56 -0
  36. package/dist/src/crypto/renown-crypto.js.map +1 -0
  37. package/dist/src/crypto/signer.d.ts +61 -8
  38. package/dist/src/crypto/signer.d.ts.map +1 -1
  39. package/dist/src/crypto/signer.js +98 -28
  40. package/dist/src/crypto/signer.js.map +1 -1
  41. package/dist/src/crypto/types.d.ts +27 -0
  42. package/dist/src/crypto/types.d.ts.map +1 -0
  43. package/dist/src/crypto/types.js +2 -0
  44. package/dist/src/crypto/types.js.map +1 -0
  45. package/dist/src/crypto/utils.d.ts +13 -0
  46. package/dist/src/crypto/utils.d.ts.map +1 -0
  47. package/dist/src/crypto/utils.js +39 -0
  48. package/dist/src/crypto/utils.js.map +1 -0
  49. package/dist/src/event/event.browser.d.ts.map +1 -1
  50. package/dist/src/event/event.node.d.ts.map +1 -1
  51. package/dist/src/event/memory.d.ts +8 -0
  52. package/dist/src/event/memory.d.ts.map +1 -0
  53. package/dist/src/event/memory.js +16 -0
  54. package/dist/src/event/memory.js.map +1 -0
  55. package/dist/src/index.d.ts +4 -9
  56. package/dist/src/index.d.ts.map +1 -1
  57. package/dist/src/index.js +4 -9
  58. package/dist/src/index.js.map +1 -1
  59. package/dist/src/init.browser.d.ts +51 -2
  60. package/dist/src/init.browser.d.ts.map +1 -1
  61. package/dist/src/init.browser.js +62 -3
  62. package/dist/src/init.browser.js.map +1 -1
  63. package/dist/src/init.node.d.ts +28 -2
  64. package/dist/src/init.node.d.ts.map +1 -1
  65. package/dist/src/init.node.js +26 -4
  66. package/dist/src/init.node.js.map +1 -1
  67. package/dist/src/node.d.ts +7 -3
  68. package/dist/src/node.d.ts.map +1 -1
  69. package/dist/src/node.js +7 -3
  70. package/dist/src/node.js.map +1 -1
  71. package/dist/src/profile.d.ts +3 -0
  72. package/dist/src/profile.d.ts.map +1 -0
  73. package/dist/src/profile.js +22 -0
  74. package/dist/src/profile.js.map +1 -0
  75. package/dist/src/renown-builder.d.ts +68 -0
  76. package/dist/src/renown-builder.d.ts.map +1 -0
  77. package/dist/src/renown-builder.js +130 -0
  78. package/dist/src/renown-builder.js.map +1 -0
  79. package/dist/src/storage/common.d.ts +14 -10
  80. package/dist/src/storage/common.d.ts.map +1 -1
  81. package/dist/src/storage/common.js +16 -3
  82. package/dist/src/storage/common.js.map +1 -1
  83. package/dist/src/storage/storage.browser.d.ts +1 -0
  84. package/dist/src/storage/storage.browser.d.ts.map +1 -1
  85. package/dist/src/storage/storage.browser.js +3 -1
  86. package/dist/src/storage/storage.browser.js.map +1 -1
  87. package/dist/src/storage/storage.node.d.ts +1 -1
  88. package/dist/src/storage/storage.node.d.ts.map +1 -1
  89. package/dist/src/storage/storage.node.js +7 -5
  90. package/dist/src/storage/storage.node.js.map +1 -1
  91. package/dist/src/types.d.ts +51 -5
  92. package/dist/src/types.d.ts.map +1 -1
  93. package/dist/src/utils.d.ts +17 -10
  94. package/dist/src/utils.d.ts.map +1 -1
  95. package/dist/src/utils.js +14 -0
  96. package/dist/src/utils.js.map +1 -1
  97. package/dist/{tests → test}/auth.test.d.ts.map +1 -1
  98. package/dist/test/auth.test.js.map +1 -0
  99. package/dist/test/crypto/signer.test.d.ts +2 -0
  100. package/dist/test/crypto/signer.test.d.ts.map +1 -0
  101. package/dist/test/crypto/signer.test.js +184 -0
  102. package/dist/test/crypto/signer.test.js.map +1 -0
  103. package/dist/test/renown.test.d.ts +2 -0
  104. package/dist/test/renown.test.d.ts.map +1 -0
  105. package/dist/test/renown.test.js +287 -0
  106. package/dist/test/renown.test.js.map +1 -0
  107. package/dist/test/storage.node.test.d.ts +2 -0
  108. package/dist/test/storage.node.test.d.ts.map +1 -0
  109. package/dist/test/storage.node.test.js +66 -0
  110. package/dist/test/storage.node.test.js.map +1 -0
  111. package/dist/tsconfig.tsbuildinfo +1 -1
  112. package/dist/{e2e/fixtures/vite.config.d.ts → vitest.config.d.ts} +1 -1
  113. package/dist/vitest.config.d.ts.map +1 -0
  114. package/dist/vitest.config.js +7 -0
  115. package/dist/vitest.config.js.map +1 -0
  116. package/package.json +4 -28
  117. package/dist/e2e/fixtures/main.d.ts +0 -2
  118. package/dist/e2e/fixtures/main.d.ts.map +0 -1
  119. package/dist/e2e/fixtures/main.js +0 -97
  120. package/dist/e2e/fixtures/main.js.map +0 -1
  121. package/dist/e2e/fixtures/vite.config.d.ts.map +0 -1
  122. package/dist/e2e/fixtures/vite.config.js +0 -10
  123. package/dist/e2e/fixtures/vite.config.js.map +0 -1
  124. package/dist/e2e/renown-components.spec.d.ts +0 -2
  125. package/dist/e2e/renown-components.spec.d.ts.map +0 -1
  126. package/dist/e2e/renown-components.spec.js +0 -155
  127. package/dist/e2e/renown-components.spec.js.map +0 -1
  128. package/dist/playwright.config.d.ts +0 -3
  129. package/dist/playwright.config.d.ts.map +0 -1
  130. package/dist/playwright.config.js +0 -25
  131. package/dist/playwright.config.js.map +0 -1
  132. package/dist/src/assets/assets.d.ts +0 -19
  133. package/dist/src/assets/renown-hover.svg +0 -17
  134. package/dist/src/assets/renown-light.svg +0 -15
  135. package/dist/src/assets/renown-short-hover.png +0 -0
  136. package/dist/src/assets/renown-short.png +0 -0
  137. package/dist/src/assets/renown.svg +0 -16
  138. package/dist/src/components/RenownAuthButton.d.ts +0 -62
  139. package/dist/src/components/RenownAuthButton.d.ts.map +0 -1
  140. package/dist/src/components/RenownAuthButton.js +0 -82
  141. package/dist/src/components/RenownAuthButton.js.map +0 -1
  142. package/dist/src/components/RenownLoginButton.d.ts +0 -48
  143. package/dist/src/components/RenownLoginButton.d.ts.map +0 -1
  144. package/dist/src/components/RenownLoginButton.js +0 -175
  145. package/dist/src/components/RenownLoginButton.js.map +0 -1
  146. package/dist/src/components/RenownUserButton.d.ts +0 -66
  147. package/dist/src/components/RenownUserButton.d.ts.map +0 -1
  148. package/dist/src/components/RenownUserButton.js +0 -216
  149. package/dist/src/components/RenownUserButton.js.map +0 -1
  150. package/dist/src/components/icons.d.ts +0 -25
  151. package/dist/src/components/icons.d.ts.map +0 -1
  152. package/dist/src/components/icons.js +0 -24
  153. package/dist/src/components/icons.js.map +0 -1
  154. package/dist/src/components/image-data.d.ts +0 -3
  155. package/dist/src/components/image-data.d.ts.map +0 -1
  156. package/dist/src/components/image-data.js +0 -4
  157. package/dist/src/components/image-data.js.map +0 -1
  158. package/dist/src/components/index.d.ts +0 -8
  159. package/dist/src/components/index.d.ts.map +0 -1
  160. package/dist/src/components/index.js +0 -5
  161. package/dist/src/components/index.js.map +0 -1
  162. package/dist/src/hooks/index.d.ts +0 -2
  163. package/dist/src/hooks/index.d.ts.map +0 -1
  164. package/dist/src/hooks/index.js +0 -2
  165. package/dist/src/hooks/index.js.map +0 -1
  166. package/dist/src/hooks/use-user.d.ts +0 -21
  167. package/dist/src/hooks/use-user.d.ts.map +0 -1
  168. package/dist/src/hooks/use-user.js +0 -30
  169. package/dist/src/hooks/use-user.js.map +0 -1
  170. package/dist/src/index.browser.d.ts +0 -4
  171. package/dist/src/index.browser.d.ts.map +0 -1
  172. package/dist/src/index.browser.js +0 -4
  173. package/dist/src/index.browser.js.map +0 -1
  174. package/dist/src/index.node.d.ts +0 -4
  175. package/dist/src/index.node.d.ts.map +0 -1
  176. package/dist/src/index.node.js +0 -4
  177. package/dist/src/index.node.js.map +0 -1
  178. package/dist/src/lib/crypto/browser.d.ts +0 -8
  179. package/dist/src/lib/crypto/browser.d.ts.map +0 -1
  180. package/dist/src/lib/crypto/browser.js +0 -73
  181. package/dist/src/lib/crypto/browser.js.map +0 -1
  182. package/dist/src/lib/crypto/index.d.ts +0 -36
  183. package/dist/src/lib/crypto/index.d.ts.map +0 -1
  184. package/dist/src/lib/crypto/index.js +0 -150
  185. package/dist/src/lib/crypto/index.js.map +0 -1
  186. package/dist/src/lib/crypto/node.d.ts +0 -8
  187. package/dist/src/lib/crypto/node.d.ts.map +0 -1
  188. package/dist/src/lib/crypto/node.js +0 -67
  189. package/dist/src/lib/crypto/node.js.map +0 -1
  190. package/dist/src/lib/renown/constants.d.ts +0 -130
  191. package/dist/src/lib/renown/constants.d.ts.map +0 -1
  192. package/dist/src/lib/renown/constants.js +0 -40
  193. package/dist/src/lib/renown/constants.js.map +0 -1
  194. package/dist/src/lib/renown/did-parser.d.ts +0 -28
  195. package/dist/src/lib/renown/did-parser.d.ts.map +0 -1
  196. package/dist/src/lib/renown/did-parser.js +0 -57
  197. package/dist/src/lib/renown/did-parser.js.map +0 -1
  198. package/dist/src/lib/renown/index.d.ts +0 -4
  199. package/dist/src/lib/renown/index.d.ts.map +0 -1
  200. package/dist/src/lib/renown/index.js +0 -4
  201. package/dist/src/lib/renown/index.js.map +0 -1
  202. package/dist/src/lib/renown/utils.d.ts +0 -33
  203. package/dist/src/lib/renown/utils.d.ts.map +0 -1
  204. package/dist/src/lib/renown/utils.js +0 -207
  205. package/dist/src/lib/renown/utils.js.map +0 -1
  206. package/dist/src/lib/session-storage.d.ts +0 -40
  207. package/dist/src/lib/session-storage.d.ts.map +0 -1
  208. package/dist/src/lib/session-storage.js +0 -107
  209. package/dist/src/lib/session-storage.js.map +0 -1
  210. package/dist/src/providers/index.d.ts +0 -3
  211. package/dist/src/providers/index.d.ts.map +0 -1
  212. package/dist/src/providers/index.js +0 -2
  213. package/dist/src/providers/index.js.map +0 -1
  214. package/dist/src/providers/renown-user-provider.d.ts +0 -72
  215. package/dist/src/providers/renown-user-provider.d.ts.map +0 -1
  216. package/dist/src/providers/renown-user-provider.js +0 -171
  217. package/dist/src/providers/renown-user-provider.js.map +0 -1
  218. package/dist/tests/auth.test.js.map +0 -1
  219. /package/dist/{tests → test}/auth.test.d.ts +0 -0
  220. /package/dist/{tests → test}/auth.test.js +0 -0
@@ -1,51 +1,78 @@
1
- export class ConnectCryptoSigner {
2
- connectCrypto;
3
- cachedPublicKey;
4
- constructor(connectCrypto) {
5
- this.connectCrypto = connectCrypto;
6
- }
7
- async publicKey() {
8
- if (!this.cachedPublicKey) {
9
- const did = await this.connectCrypto.did();
10
- const keyData = extractKeyFromDid(did);
11
- const cryptoKey = await crypto.subtle.importKey("raw", keyData.buffer, { name: "ECDSA", namedCurve: "P-256" }, true, ["verify"]);
12
- this.cachedPublicKey = await crypto.subtle.exportKey("jwk", cryptoKey);
13
- }
14
- return this.cachedPublicKey;
1
+ export class InvalidSignatureError extends Error {
2
+ constructor() {
3
+ super("Invalid signature");
4
+ }
5
+ }
6
+ export class RenownCryptoSigner {
7
+ crypto;
8
+ appName;
9
+ user;
10
+ app;
11
+ constructor(crypto, appName, user) {
12
+ this.crypto = crypto;
13
+ this.appName = appName;
14
+ this.user = user;
15
+ this.app = {
16
+ key: this.crypto.did,
17
+ name: this.appName,
18
+ };
19
+ }
20
+ get publicKey() {
21
+ return this.crypto.publicKey;
15
22
  }
16
23
  async sign(data) {
17
- return this.connectCrypto.sign(data);
24
+ return this.crypto.sign(data);
18
25
  }
19
26
  async verify(data, signature) {
20
- const did = await this.connectCrypto.did();
21
- const cryptoKey = await importPublicKey(did);
22
- const isValid = await crypto.subtle.verify({ name: "ECDSA", hash: "SHA-256" }, cryptoKey, signature.buffer, data.buffer);
27
+ const isValid = await this.crypto.verify(data, signature);
23
28
  if (!isValid) {
24
- throw new Error("invalid signature");
29
+ throw new InvalidSignatureError();
25
30
  }
26
31
  }
27
32
  async signAction(action, abortSignal) {
33
+ const hashField = action.context?.prevOpHash ?? "";
34
+ return this._signAction(action, hashField, abortSignal);
35
+ }
36
+ /**
37
+ * Signs an action including a predicted resulting state hash.
38
+ *
39
+ * The resulting hash is packed into the signature tuple's 4th element (index 3)
40
+ * using the format: `${prevStateHash}:${resultingStateHash}`
41
+ *
42
+ * This allows offline verification of documents without reducer logic:
43
+ * - Verifier can check that the signature is valid for the claimed resulting state
44
+ * - Verifier can compare claimed resulting state to actual operation.hash
45
+ *
46
+ * @param action - The action to sign
47
+ * @param resultingStateHash - The predicted hash of document state AFTER this action runs
48
+ * @param abortSignal - Optional abort signal
49
+ * @returns A Signature tuple with the resulting hash encoded in element [3]
50
+ */
51
+ async signActionWithResultingState(action, resultingStateHash, abortSignal) {
52
+ const prevStateHash = action.context?.prevOpHash ?? "";
53
+ const hashField = `${prevStateHash}:${resultingStateHash}`;
54
+ return this._signAction(action, hashField, abortSignal);
55
+ }
56
+ /**
57
+ * Internal signing implementation shared by signAction and signActionWithResultingState.
58
+ */
59
+ async _signAction(action, hashField, abortSignal) {
28
60
  if (abortSignal?.aborted) {
29
61
  throw new Error("Signing aborted");
30
62
  }
31
63
  const timestamp = (new Date().getTime() / 1000).toFixed(0);
32
- const did = await this.connectCrypto.did();
33
- if (abortSignal?.aborted) {
34
- throw new Error("Signing aborted");
35
- }
36
64
  const hash = await this.hashAction(action);
37
65
  if (abortSignal?.aborted) {
38
66
  throw new Error("Signing aborted");
39
67
  }
40
- const prevStateHash = action.context?.prevOpHash ?? "";
41
68
  const params = [
42
69
  timestamp,
43
- did,
70
+ this.crypto.did,
44
71
  hash,
45
- prevStateHash,
72
+ hashField,
46
73
  ];
47
74
  const message = this.buildSignatureMessage(params);
48
- const signatureBytes = await this.connectCrypto.sign(message);
75
+ const signatureBytes = await this.crypto.sign(message);
49
76
  const signatureHex = `0x${this.arrayBufferToHex(signatureBytes)}`;
50
77
  if (abortSignal?.aborted) {
51
78
  throw new Error("Signing aborted");
@@ -86,7 +113,7 @@ export class ConnectCryptoSigner {
86
113
  }
87
114
  /**
88
115
  * Creates a signature verification handler that verifies signatures using the Web Crypto API.
89
- * The verification uses ECDSA with P-256 curve and SHA-256 hash, matching the ConnectCrypto signing algorithm.
116
+ * The verification uses ECDSA with P-256 curve and SHA-256 hash, matching the RenownCrypto signing algorithm.
90
117
  */
91
118
  export function createSignatureVerifier() {
92
119
  return async (operation, publicKey) => {
@@ -233,4 +260,47 @@ function bigIntToBytes(n, length) {
233
260
  }
234
261
  return bytes;
235
262
  }
263
+ /**
264
+ * Parses the hash field (element [3]) from a signature tuple.
265
+ *
266
+ * Supports two formats:
267
+ * - Old format: just `prevStateHash` (no colon)
268
+ * - New format: `prevStateHash:resultingStateHash` (colon-separated)
269
+ *
270
+ * @param hashField - The 4th element of a Signature tuple
271
+ * @returns Object with prevStateHash and optional resultingStateHash
272
+ */
273
+ export function parseSignatureHashField(hashField) {
274
+ const colonIndex = hashField.indexOf(":");
275
+ if (colonIndex === -1) {
276
+ return {
277
+ prevStateHash: hashField,
278
+ resultingStateHash: undefined,
279
+ };
280
+ }
281
+ return {
282
+ prevStateHash: hashField.substring(0, colonIndex),
283
+ resultingStateHash: hashField.substring(colonIndex + 1),
284
+ };
285
+ }
286
+ /**
287
+ * Extracts the resulting state hash from a signature, if present.
288
+ *
289
+ * @param signature - A Signature tuple
290
+ * @returns The resulting state hash, or undefined if not present
291
+ */
292
+ export function extractResultingHashFromSignature(signature) {
293
+ const hashField = signature[3];
294
+ const { resultingStateHash } = parseSignatureHashField(hashField);
295
+ return resultingStateHash;
296
+ }
297
+ /**
298
+ * Checks if a signature includes a resulting state hash.
299
+ *
300
+ * @param signature - A Signature tuple
301
+ * @returns true if the signature includes a resulting state hash
302
+ */
303
+ export function signatureHasResultingHash(signature) {
304
+ return extractResultingHashFromSignature(signature) !== undefined;
305
+ }
236
306
  //# sourceMappingURL=signer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"signer.js","sourceRoot":"","sources":["../../../src/crypto/signer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"signer.js","sourceRoot":"","sources":["../../../src/crypto/signer.ts"],"names":[],"mappings":"AAWA,MAAM,OAAO,qBAAsB,SAAQ,KAAK;IAC9C;QACE,KAAK,CAAC,mBAAmB,CAAC,CAAC;IAC7B,CAAC;CACF;AAED,MAAM,OAAO,kBAAkB;IAIV;IACA;IACV;IALA,GAAG,CAAkB;IAE9B,YACmB,MAAqB,EACrB,OAAe,EACzB,IAAuB;QAFb,WAAM,GAAN,MAAM,CAAe;QACrB,YAAO,GAAP,OAAO,CAAQ;QACzB,SAAI,GAAJ,IAAI,CAAmB;QAE9B,IAAI,CAAC,GAAG,GAAG;YACT,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG;YACpB,IAAI,EAAE,IAAI,CAAC,OAAO;SACnB,CAAC;IACJ,CAAC;IAED,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;IAC/B,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,IAAgB;QACzB,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,IAAgB,EAAE,SAAqB;QAClD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QAC1D,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,qBAAqB,EAAE,CAAC;QACpC,CAAC;IACH,CAAC;IAED,KAAK,CAAC,UAAU,CACd,MAAc,EACd,WAAyB;QAEzB,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,EAAE,UAAU,IAAI,EAAE,CAAC;QACnD,OAAO,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;IAC1D,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,KAAK,CAAC,4BAA4B,CAChC,MAAc,EACd,kBAA0B,EAC1B,WAAyB;QAEzB,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO,EAAE,UAAU,IAAI,EAAE,CAAC;QACvD,MAAM,SAAS,GAAG,GAAG,aAAa,IAAI,kBAAkB,EAAE,CAAC;QAC3D,OAAO,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;IAC1D,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,WAAW,CACvB,MAAc,EACd,SAAiB,EACjB,WAAyB;QAEzB,IAAI,WAAW,EAAE,OAAO,EAAE,CAAC;YACzB,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;QACrC,CAAC;QAED,MAAM,SAAS,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3D,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAE3C,IAAI,WAAW,EAAE,OAAO,EAAE,CAAC;YACzB,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;QACrC,CAAC;QAED,MAAM,MAAM,GAAqC;YAC/C,SAAS;YACT,IAAI,CAAC,MAAM,CAAC,GAAG;YACf,IAAI;YACJ,SAAS;SACV,CAAC;QACF,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;QACnD,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACvD,MAAM,YAAY,GAAG,KAAK,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC,EAAE,CAAC;QAElE,IAAI,WAAW,EAAE,OAAO,EAAE,CAAC;YACzB,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;QACrC,CAAC;QAED,OAAO,CAAC,GAAG,MAAM,EAAE,YAAY,CAAC,CAAC;IACnC,CAAC;IAEO,KAAK,CAAC,UAAU,CAAC,MAAc;QACrC,MAAM,OAAO,GAAG;YACd,MAAM,CAAC,KAAK;YACZ,MAAM,CAAC,IAAI;YACX,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC;SAC7B,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACX,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC;QAClC,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACrC,MAAM,UAAU,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QAC/D,OAAO,IAAI,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC;IAC9C,CAAC;IAEO,qBAAqB,CAC3B,MAAwC;QAExC,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAChC,MAAM,MAAM,GAAG,yBAAyB,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;QACrE,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC;QAClC,OAAO,OAAO,CAAC,MAAM,CAAC,MAAM,GAAG,OAAO,CAAC,CAAC;IAC1C,CAAC;IAEO,gBAAgB,CAAC,MAAgC;QACvD,MAAM,KAAK,GACT,MAAM,YAAY,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;QACjE,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC;aACrB,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;aACjD,IAAI,CAAC,EAAE,CAAC,CAAC;IACd,CAAC;IAEO,mBAAmB,CAAC,MAAmB;QAC7C,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;QACrC,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACtC,MAAM,IAAI,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1C,CAAC;QACD,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC;IACtB,CAAC;CACF;AAED;;;GAGG;AACH,MAAM,UAAU,uBAAuB;IACrC,OAAO,KAAK,EAAE,SAAoB,EAAE,SAAiB,EAAoB,EAAE;QACzE,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC;QAChD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;QACrC,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5B,OAAO,KAAK,CAAC;QACf,CAAC;QAED,MAAM,SAAS,GAAG,UAAU,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACpD,MAAM,CAAC,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,aAAa,EAAE,YAAY,CAAC,GAAG,SAAS,CAAC;QAE5E,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAC5B,OAAO,KAAK,CAAC;QACf,CAAC;QAED,MAAM,MAAM,GAAqC;YAC/C,SAAS;YACT,SAAS;YACT,IAAI;YACJ,aAAa;SACd,CAAC;QACF,MAAM,OAAO,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAC;QAC9C,MAAM,cAAc,GAAG,eAAe,CAAC,YAAY,CAAC,CAAC;QAErD,MAAM,SAAS,GAAG,MAAM,eAAe,CAAC,SAAS,CAAC,CAAC;QAEnD,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,CACxC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,EAClC,SAAS,EACT,cAAc,CAAC,MAAqB,EACpC,OAAO,CAAC,MAAqB,CAC9B,CAAC;QAEF,OAAO,OAAO,CAAC;IACjB,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,qBAAqB,CAC5B,MAAwC;IAExC,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAChC,MAAM,MAAM,GAAG,yBAAyB,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;IACrE,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC;IAClC,OAAO,OAAO,CAAC,MAAM,CAAC,MAAM,GAAG,OAAO,CAAC,CAAC;AAC1C,CAAC;AAED,SAAS,eAAe,CAAC,GAAW;IAClC,MAAM,QAAQ,GAAG,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;IAC3D,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAClD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QAC5C,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAC5D,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,KAAK,UAAU,eAAe,CAAC,GAAW;IACxC,MAAM,OAAO,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC;IACvC,OAAO,MAAM,CAAC,MAAM,CAAC,SAAS,CAC5B,KAAK,EACL,OAAO,CAAC,MAAqB,EAC7B,EAAE,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,EACtC,IAAI,EACJ,CAAC,QAAQ,CAAC,CACX,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CAAC,GAAW;IACpC,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC7B,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,KAAK,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,KAAK,EAAE,CAAC;QACjE,MAAM,IAAI,KAAK,CAAC,uBAAuB,GAAG,EAAE,CAAC,CAAC;IAChD,CAAC;IAED,MAAM,YAAY,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IAC9B,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QAClC,MAAM,IAAI,KAAK,CAAC,mCAAmC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IACxE,CAAC;IAED,MAAM,OAAO,GAAG,YAAY,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAEpD,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QAC/C,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;IACvD,CAAC;IAED,MAAM,aAAa,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACvC,OAAO,uBAAuB,CAAC,aAAa,CAAC,CAAC;AAChD,CAAC;AAED,SAAS,YAAY,CAAC,KAAa;IACjC,MAAM,QAAQ,GAAG,4DAA4D,CAAC;IAC9E,MAAM,YAAY,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC/C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACzC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACnC,CAAC;IAED,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC;IAC3B,CAAC;IAED,MAAM,KAAK,GAAa,CAAC,CAAC,CAAC,CAAC;IAC5B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,KAAK,GAAG,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACrC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CAAC,6BAA6B,IAAI,EAAE,CAAC,CAAC;QACvD,CAAC;QAED,IAAI,KAAK,GAAG,KAAK,CAAC;QAClB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACtC,KAAK,IAAI,KAAK,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;YACvB,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC;YACxB,KAAK,KAAK,CAAC,CAAC;QACd,CAAC;QAED,OAAO,KAAK,GAAG,CAAC,EAAE,CAAC;YACjB,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;YACzB,KAAK,KAAK,CAAC,CAAC;QACd,CAAC;IACH,CAAC;IAED,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,IAAI,KAAK,GAAG;YAAE,MAAM;QACxB,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAChB,CAAC;IAED,OAAO,IAAI,UAAU,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;AACzC,CAAC;AAED,SAAS,uBAAuB,CAAC,UAAsB;IACrD,IAAI,UAAU,CAAC,MAAM,KAAK,EAAE,EAAE,CAAC;QAC7B,MAAM,IAAI,KAAK,CAAC,kCAAkC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC;IACzE,CAAC;IAED,MAAM,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;IAC7B,IAAI,MAAM,KAAK,IAAI,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QACvC,MAAM,IAAI,KAAK,CAAC,+BAA+B,MAAM,EAAE,CAAC,CAAC;IAC3D,CAAC;IAED,MAAM,CAAC,GAAG,MAAM,CACd,oEAAoE,CACrE,CAAC;IACF,MAAM,CAAC,GAAG,MAAM,CACd,oEAAoE,CACrE,CAAC;IACF,MAAM,CAAC,GAAG,MAAM,CACd,oEAAoE,CACrE,CAAC;IAEF,IAAI,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IAClB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3C,CAAC,GAAG,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/C,CAAC;IAED,MAAM,QAAQ,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;IAC3D,IAAI,CAAC,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAEzD,MAAM,OAAO,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC;IAC5C,MAAM,YAAY,GAAG,MAAM,KAAK,IAAI,CAAC;IACrC,IAAI,OAAO,KAAK,YAAY,EAAE,CAAC;QAC7B,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACZ,CAAC;IAED,MAAM,YAAY,GAAG,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC;IACxC,YAAY,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IAEvB,MAAM,MAAM,GAAG,aAAa,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACpC,MAAM,MAAM,GAAG,aAAa,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAEpC,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAC5B,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAE7B,OAAO,YAAY,CAAC;AACtB,CAAC;AAED,SAAS,MAAM,CAAC,IAAY,EAAE,GAAW,EAAE,GAAW;IACpD,IAAI,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IACvB,IAAI,GAAG,IAAI,GAAG,GAAG,CAAC;IAClB,OAAO,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;QACvB,IAAI,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;YAClC,MAAM,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;QACjC,CAAC;QACD,GAAG,GAAG,GAAG,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC;QACvB,IAAI,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IAC7B,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,aAAa,CAAC,CAAS,EAAE,MAAc;IAC9C,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;IACrC,KAAK,IAAI,CAAC,GAAG,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,KAAK,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;QACpC,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC;IACrB,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,uBAAuB,CAAC,SAAiB;IAIvD,MAAM,UAAU,GAAG,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAE1C,IAAI,UAAU,KAAK,CAAC,CAAC,EAAE,CAAC;QACtB,OAAO;YACL,aAAa,EAAE,SAAS;YACxB,kBAAkB,EAAE,SAAS;SAC9B,CAAC;IACJ,CAAC;IAED,OAAO;QACL,aAAa,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC,EAAE,UAAU,CAAC;QACjD,kBAAkB,EAAE,SAAS,CAAC,SAAS,CAAC,UAAU,GAAG,CAAC,CAAC;KACxD,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,iCAAiC,CAC/C,SAAoB;IAEpB,MAAM,SAAS,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;IAC/B,MAAM,EAAE,kBAAkB,EAAE,GAAG,uBAAuB,CAAC,SAAS,CAAC,CAAC;IAClE,OAAO,kBAAkB,CAAC;AAC5B,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,yBAAyB,CAAC,SAAoB;IAC5D,OAAO,iCAAiC,CAAC,SAAS,CAAC,KAAK,SAAS,CAAC;AACpE,CAAC"}
@@ -0,0 +1,27 @@
1
+ import type { Issuer } from "did-jwt-vc";
2
+ import type { CreateBearerTokenOptions } from "../types.js";
3
+ export type JwkKeyPair = {
4
+ publicKey: JsonWebKey;
5
+ privateKey: JsonWebKey;
6
+ };
7
+ export interface JsonWebKeyPairStorage {
8
+ loadKeyPair(): Promise<JwkKeyPair | undefined>;
9
+ saveKeyPair(keyPair: JwkKeyPair): Promise<void>;
10
+ removeKeyPair(): Promise<void>;
11
+ }
12
+ export type DID = `did:${string}`;
13
+ export interface IRenownCrypto {
14
+ did: DID;
15
+ publicKey: CryptoKey;
16
+ removeDid(): Promise<void>;
17
+ sign: (data: Uint8Array) => Promise<Uint8Array>;
18
+ verify: (data: Uint8Array, signature: Uint8Array) => Promise<boolean>;
19
+ issuer: Issuer;
20
+ getBearerToken: (address: string | undefined, options?: CreateBearerTokenOptions) => Promise<string>;
21
+ }
22
+ /**
23
+ * @deprecated Use IRenownCrypto instead
24
+ */
25
+ export interface IConnectCrypto extends IRenownCrypto {
26
+ }
27
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/crypto/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AAE5D,MAAM,MAAM,UAAU,GAAG;IACvB,SAAS,EAAE,UAAU,CAAC;IACtB,UAAU,EAAE,UAAU,CAAC;CACxB,CAAC;AAEF,MAAM,WAAW,qBAAqB;IACpC,WAAW,IAAI,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC,CAAC;IAC/C,WAAW,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAChD,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAChC;AAED,MAAM,MAAM,GAAG,GAAG,OAAO,MAAM,EAAE,CAAC;AAElC,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,GAAG,CAAC;IACT,SAAS,EAAE,SAAS,CAAC;IACrB,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3B,IAAI,EAAE,CAAC,IAAI,EAAE,UAAU,KAAK,OAAO,CAAC,UAAU,CAAC,CAAC;IAChD,MAAM,EAAE,CAAC,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IACtE,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,EAAE,CACd,OAAO,EAAE,MAAM,GAAG,SAAS,EAC3B,OAAO,CAAC,EAAE,wBAAwB,KAC/B,OAAO,CAAC,MAAM,CAAC,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,cAAe,SAAQ,aAAa;CAAG"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/crypto/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,13 @@
1
+ import type { DID, JwkKeyPair } from "./types.js";
2
+ export declare const ECDSA_ALGORITHM: EcKeyAlgorithm;
3
+ export declare const ECDSA_SIGN_ALGORITHM: {
4
+ name: string;
5
+ namedCurve: string;
6
+ hash: string;
7
+ };
8
+ export declare function ab2hex(ab: ArrayBuffer): string;
9
+ export declare function parseDid(keyPair: CryptoKeyPair, subtleCrypto: SubtleCrypto): Promise<DID>;
10
+ export declare function exportKeyPair(keyPair: CryptoKeyPair, subtleCrypto: SubtleCrypto): Promise<JwkKeyPair>;
11
+ export declare function importKeyPair(jwkKeyPair: JwkKeyPair, subtleCrypto: SubtleCrypto, algorithm?: EcKeyAlgorithm): Promise<CryptoKeyPair>;
12
+ export declare function generateKeyPair(subtleCrypto: SubtleCrypto, algorithm?: EcKeyAlgorithm): Promise<CryptoKeyPair>;
13
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/crypto/utils.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAElD,eAAO,MAAM,eAAe,EAAE,cAG7B,CAAC;AAEF,eAAO,MAAM,oBAAoB;;;;CAIhC,CAAC;AAEF,wBAAgB,MAAM,CAAC,EAAE,EAAE,WAAW,GAAG,MAAM,CAI9C;AAED,wBAAsB,QAAQ,CAC5B,OAAO,EAAE,aAAa,EACtB,YAAY,EAAE,YAAY,GACzB,OAAO,CAAC,GAAG,CAAC,CAOd;AAED,wBAAsB,aAAa,CACjC,OAAO,EAAE,aAAa,EACtB,YAAY,EAAE,YAAY,GACzB,OAAO,CAAC,UAAU,CAAC,CAKrB;AAED,wBAAsB,aAAa,CACjC,UAAU,EAAE,UAAU,EACtB,YAAY,EAAE,YAAY,EAC1B,SAAS,GAAE,cAAgC,GAC1C,OAAO,CAAC,aAAa,CAAC,CAiBxB;AAED,wBAAsB,eAAe,CACnC,YAAY,EAAE,YAAY,EAC1B,SAAS,GAAE,cAAgC,GAC1C,OAAO,CAAC,aAAa,CAAC,CAExB"}
@@ -0,0 +1,39 @@
1
+ import { compressedKeyInHexfromRaw, encodeDIDfromHexString, rawKeyInHexfromUncompressed, } from "did-key-creator";
2
+ export const ECDSA_ALGORITHM = {
3
+ name: "ECDSA",
4
+ namedCurve: "P-256",
5
+ };
6
+ export const ECDSA_SIGN_ALGORITHM = {
7
+ name: "ECDSA",
8
+ namedCurve: "P-256",
9
+ hash: "SHA-256",
10
+ };
11
+ export function ab2hex(ab) {
12
+ return Array.prototype.map
13
+ .call(new Uint8Array(ab), (x) => ("00" + x.toString(16)).slice(-2))
14
+ .join("");
15
+ }
16
+ export async function parseDid(keyPair, subtleCrypto) {
17
+ const publicKeyRaw = await subtleCrypto.exportKey("raw", keyPair.publicKey);
18
+ const multicodecName = "p256-pub";
19
+ const rawKey = rawKeyInHexfromUncompressed(ab2hex(publicKeyRaw));
20
+ const compressedKey = compressedKeyInHexfromRaw(rawKey);
21
+ const did = encodeDIDfromHexString(multicodecName, compressedKey);
22
+ return did;
23
+ }
24
+ export async function exportKeyPair(keyPair, subtleCrypto) {
25
+ return {
26
+ publicKey: await subtleCrypto.exportKey("jwk", keyPair.publicKey),
27
+ privateKey: await subtleCrypto.exportKey("jwk", keyPair.privateKey),
28
+ };
29
+ }
30
+ export async function importKeyPair(jwkKeyPair, subtleCrypto, algorithm = ECDSA_ALGORITHM) {
31
+ return {
32
+ publicKey: await subtleCrypto.importKey("jwk", jwkKeyPair.publicKey, algorithm, true, ["verify"]),
33
+ privateKey: await subtleCrypto.importKey("jwk", jwkKeyPair.privateKey, algorithm, true, ["sign"]),
34
+ };
35
+ }
36
+ export async function generateKeyPair(subtleCrypto, algorithm = ECDSA_ALGORITHM) {
37
+ return subtleCrypto.generateKey(algorithm, true, ["sign", "verify"]);
38
+ }
39
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/crypto/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,yBAAyB,EACzB,sBAAsB,EACtB,2BAA2B,GAC5B,MAAM,iBAAiB,CAAC;AAGzB,MAAM,CAAC,MAAM,eAAe,GAAmB;IAC7C,IAAI,EAAE,OAAO;IACb,UAAU,EAAE,OAAO;CACpB,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,IAAI,EAAE,OAAO;IACb,UAAU,EAAE,OAAO;IACnB,IAAI,EAAE,SAAS;CAChB,CAAC;AAEF,MAAM,UAAU,MAAM,CAAC,EAAe;IACpC,OAAO,KAAK,CAAC,SAAS,CAAC,GAAG;SACvB,IAAI,CAAC,IAAI,UAAU,CAAC,EAAE,CAAC,EAAE,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;SAC1E,IAAI,CAAC,EAAE,CAAC,CAAC;AACd,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,QAAQ,CAC5B,OAAsB,EACtB,YAA0B;IAE1B,MAAM,YAAY,GAAG,MAAM,YAAY,CAAC,SAAS,CAAC,KAAK,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;IAC5E,MAAM,cAAc,GAAG,UAAU,CAAC;IAClC,MAAM,MAAM,GAAG,2BAA2B,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC;IACjE,MAAM,aAAa,GAAG,yBAAyB,CAAC,MAAM,CAAC,CAAC;IACxD,MAAM,GAAG,GAAG,sBAAsB,CAAC,cAAc,EAAE,aAAa,CAAC,CAAC;IAClE,OAAO,GAAU,CAAC;AACpB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,OAAsB,EACtB,YAA0B;IAE1B,OAAO;QACL,SAAS,EAAE,MAAM,YAAY,CAAC,SAAS,CAAC,KAAK,EAAE,OAAO,CAAC,SAAS,CAAC;QACjE,UAAU,EAAE,MAAM,YAAY,CAAC,SAAS,CAAC,KAAK,EAAE,OAAO,CAAC,UAAU,CAAC;KACpE,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,UAAsB,EACtB,YAA0B,EAC1B,YAA4B,eAAe;IAE3C,OAAO;QACL,SAAS,EAAE,MAAM,YAAY,CAAC,SAAS,CACrC,KAAK,EACL,UAAU,CAAC,SAAS,EACpB,SAAS,EACT,IAAI,EACJ,CAAC,QAAQ,CAAC,CACX;QACD,UAAU,EAAE,MAAM,YAAY,CAAC,SAAS,CACtC,KAAK,EACL,UAAU,CAAC,UAAU,EACrB,SAAS,EACT,IAAI,EACJ,CAAC,MAAM,CAAC,CACT;KACF,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,YAA0B,EAC1B,YAA4B,eAAe;IAE3C,OAAO,YAAY,CAAC,WAAW,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;AACvE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"event.browser.d.ts","sourceRoot":"","sources":["../../../src/event/event.browser.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD,qBAAa,gBAAgB,CAAC,CAAC,CAAE,SAAQ,WAAW,CAAC,CAAC,CAAC;gBACzC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;CAGrC;AAED,qBAAa,mBAAmB,CAAC,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CACrE,YAAW,aAAa,CAAC,MAAM,CAAC;;IAIhC,EAAE,CAAC,CAAC,SAAS,MAAM,MAAM,EACvB,KAAK,EAAE,CAAC,EACR,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,IAAI,GAClC,MAAM,IAAI;IAab,IAAI,CAAC,CAAC,SAAS,MAAM,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI;CAI9D"}
1
+ {"version":3,"file":"event.browser.d.ts","sourceRoot":"","sources":["../../../src/event/event.browser.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD,qBAAa,gBAAgB,CAAC,CAAC,CAAE,SAAQ,WAAW,CAAC,CAAC,CAAC;gBACzC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;CAGrC;AAED,qBAAa,mBAAmB,CAC9B,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CACtC,YAAW,aAAa,CAAC,MAAM,CAAC;;IAGhC,EAAE,CAAC,CAAC,SAAS,MAAM,MAAM,EACvB,KAAK,EAAE,CAAC,EACR,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,IAAI,GAClC,MAAM,IAAI;IAab,IAAI,CAAC,CAAC,SAAS,MAAM,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI;CAI9D"}
@@ -1 +1 @@
1
- {"version":3,"file":"event.node.d.ts","sourceRoot":"","sources":["../../../src/event/event.node.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD,qBAAa,gBAAgB,CAAC,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAClE,YAAW,aAAa,CAAC,MAAM,CAAC;;;IAQhC,EAAE,CAAC,CAAC,SAAS,MAAM,MAAM,EACvB,KAAK,EAAE,CAAC,EACR,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,IAAI,GAClC,MAAM,IAAI;IAOb,IAAI,CAAC,CAAC,SAAS,MAAM,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI;CAG9D"}
1
+ {"version":3,"file":"event.node.d.ts","sourceRoot":"","sources":["../../../src/event/event.node.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD,qBAAa,gBAAgB,CAC3B,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CACtC,YAAW,aAAa,CAAC,MAAM,CAAC;;;IAOhC,EAAE,CAAC,CAAC,SAAS,MAAM,MAAM,EACvB,KAAK,EAAE,CAAC,EACR,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,IAAI,GAClC,MAAM,IAAI;IAOb,IAAI,CAAC,CAAC,SAAS,MAAM,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI;CAG9D"}
@@ -0,0 +1,8 @@
1
+ import type { RenownEvents } from "../types.js";
2
+ import type { IEventEmitter } from "./types.js";
3
+ export declare class MemoryEventEmitter implements IEventEmitter<RenownEvents> {
4
+ #private;
5
+ on<K extends keyof RenownEvents>(event: K, listener: (data: RenownEvents[K]) => void): () => void;
6
+ emit<K extends keyof RenownEvents>(event: K, data: RenownEvents[K]): void;
7
+ }
8
+ //# sourceMappingURL=memory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memory.d.ts","sourceRoot":"","sources":["../../../src/event/memory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD,qBAAa,kBAAmB,YAAW,aAAa,CAAC,YAAY,CAAC;;IAGpE,EAAE,CAAC,CAAC,SAAS,MAAM,YAAY,EAC7B,KAAK,EAAE,CAAC,EACR,QAAQ,EAAE,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,KAAK,IAAI,GACxC,MAAM,IAAI;IAUb,IAAI,CAAC,CAAC,SAAS,MAAM,YAAY,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,IAAI;CAG1E"}
@@ -0,0 +1,16 @@
1
+ export class MemoryEventEmitter {
2
+ #listeners = new Map();
3
+ on(event, listener) {
4
+ if (!this.#listeners.has(event)) {
5
+ this.#listeners.set(event, new Set());
6
+ }
7
+ this.#listeners.get(event).add(listener);
8
+ return () => {
9
+ this.#listeners.get(event)?.delete(listener);
10
+ };
11
+ }
12
+ emit(event, data) {
13
+ this.#listeners.get(event)?.forEach((listener) => listener(data));
14
+ }
15
+ }
16
+ //# sourceMappingURL=memory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memory.js","sourceRoot":"","sources":["../../../src/event/memory.ts"],"names":[],"mappings":"AAGA,MAAM,OAAO,kBAAkB;IAC7B,UAAU,GAAG,IAAI,GAAG,EAAoD,CAAC;IAEzE,EAAE,CACA,KAAQ,EACR,QAAyC;QAEzC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YAChC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;QACxC,CAAC;QACD,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAE,CAAC,GAAG,CAAC,QAAmC,CAAC,CAAC;QACrE,OAAO,GAAG,EAAE;YACV,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,QAAmC,CAAC,CAAC;QAC1E,CAAC,CAAC;IACJ,CAAC;IAED,IAAI,CAA+B,KAAQ,EAAE,IAAqB;QAChE,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;IACpE,CAAC;CACF"}
@@ -1,13 +1,8 @@
1
- export * from "./components/index.js";
1
+ export * from "./common.js";
2
2
  export * from "./crypto/index.js";
3
- export * from "./hooks/index.js";
4
- export { initRenown } from "./init.browser.js";
5
- export * from "./providers/index.js";
3
+ export * from "./init.browser.js";
4
+ export * from "./profile.js";
5
+ export * from "./renown-builder.js";
6
6
  export * from "./types.js";
7
7
  export * from "./utils.js";
8
- export { RENOWN_CHAIN_ID, RENOWN_NETWORK_ID, RENOWN_URL, } from "./lib/renown/constants.js";
9
- export { extractEthAddressFromDid } from "./lib/renown/did-parser.js";
10
- export { fetchProfileDataForUser, handleRenownReturn, login, logout, openRenown, reauthenticateFromSession, } from "./lib/renown/utils.js";
11
- export type { LoginStatus, User as SimpleUser } from "./lib/renown/utils.js";
12
- export { SessionStorageManager } from "./lib/session-storage.js";
13
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,cAAc,sBAAsB,CAAC;AACrC,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAE3B,OAAO,EACL,eAAe,EACf,iBAAiB,EACjB,UAAU,GACX,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EACL,uBAAuB,EACvB,kBAAkB,EAClB,KAAK,EACL,MAAM,EACN,UAAU,EACV,yBAAyB,GAC1B,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EAAE,WAAW,EAAE,IAAI,IAAI,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAC7E,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC;AAC7B,cAAc,qBAAqB,CAAC;AACpC,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC"}
package/dist/src/index.js CHANGED
@@ -1,13 +1,8 @@
1
- export * from "./components/index.js";
1
+ export * from "./common.js";
2
2
  export * from "./crypto/index.js";
3
- export * from "./hooks/index.js";
4
- export { initRenown } from "./init.browser.js";
5
- export * from "./providers/index.js";
3
+ export * from "./init.browser.js";
4
+ export * from "./profile.js";
5
+ export * from "./renown-builder.js";
6
6
  export * from "./types.js";
7
7
  export * from "./utils.js";
8
- // Export specific items from lib/renown to avoid conflicts
9
- export { RENOWN_CHAIN_ID, RENOWN_NETWORK_ID, RENOWN_URL, } from "./lib/renown/constants.js";
10
- export { extractEthAddressFromDid } from "./lib/renown/did-parser.js";
11
- export { fetchProfileDataForUser, handleRenownReturn, login, logout, openRenown, reauthenticateFromSession, } from "./lib/renown/utils.js";
12
- export { SessionStorageManager } from "./lib/session-storage.js";
13
8
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,cAAc,sBAAsB,CAAC;AACrC,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,2DAA2D;AAC3D,OAAO,EACL,eAAe,EACf,iBAAiB,EACjB,UAAU,GACX,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EACL,uBAAuB,EACvB,kBAAkB,EAClB,KAAK,EACL,MAAM,EACN,UAAU,EACV,yBAAyB,GAC1B,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC;AAC7B,cAAc,qBAAqB,CAAC;AACpC,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC"}
@@ -1,3 +1,52 @@
1
- import type { IRenown } from "./types.js";
2
- export declare function initRenown(connectId: string, basename: string | undefined, baseUrl?: string): IRenown;
1
+ import type { Renown } from "./common.js";
2
+ import { BrowserEventEmitter } from "./event/event.browser.js";
3
+ import { BaseRenownBuilder } from "./renown-builder.js";
4
+ import { BrowserStorage } from "./storage/storage.browser.js";
5
+ import type { RenownEvents, RenownStorageMap } from "./types.js";
6
+ export declare class BrowserRenownStorage extends BrowserStorage<RenownStorageMap> {
7
+ }
8
+ export declare class BrowserRenownEventEmitter extends BrowserEventEmitter<RenownEvents> {
9
+ }
10
+ export interface BrowserRenownBuilderOptions {
11
+ /** Base path for storage keys (e.g., "/app" for multi-tenant apps) */
12
+ basename?: string;
13
+ /** Renown server URL. Defaults to https://www.renown.id */
14
+ baseUrl?: string;
15
+ /** IndexedDB database name for key storage. Defaults to "renownKeyDB" */
16
+ keyDbName?: string;
17
+ }
18
+ /**
19
+ * Browser-specific Renown builder with pre-configured defaults.
20
+ * Uses localStorage for user data and IndexedDB for key storage.
21
+ */
22
+ export declare class RenownBuilder extends BaseRenownBuilder {
23
+ #private;
24
+ /**
25
+ * @param appName - Application name used for signing context
26
+ * @param options - Browser-specific configuration options
27
+ */
28
+ constructor(appName: string, options?: BrowserRenownBuilderOptions);
29
+ /**
30
+ * Set base path for storage keys (e.g., "/app" for multi-tenant apps).
31
+ */
32
+ withBasename(basename: string): this;
33
+ /**
34
+ * Set IndexedDB database name for key storage.
35
+ * Defaults to "renownKeyDB".
36
+ */
37
+ withKeyDbName(keyDbName: string): this;
38
+ /**
39
+ * Build and initialize the Renown instance.
40
+ * Initializes IndexedDB for key storage before building.
41
+ */
42
+ build(): Promise<Renown>;
43
+ }
44
+ /**
45
+ * @deprecated Use RenownBuilder directly instead.
46
+ * Initialize a browser-specific Renown instance.
47
+ * @param appName - Application name used for signing context
48
+ * @param options - Browser-specific configuration options
49
+ * @returns Initialized Renown instance
50
+ */
51
+ export declare function initRenown(appName: string, options?: BrowserRenownBuilderOptions): Promise<Renown>;
3
52
  //# sourceMappingURL=init.browser.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"init.browser.d.ts","sourceRoot":"","sources":["../../src/init.browser.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAkC,MAAM,YAAY,CAAC;AAE1E,wBAAgB,UAAU,CACxB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAOT"}
1
+ {"version":3,"file":"init.browser.d.ts","sourceRoot":"","sources":["../../src/init.browser.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAE1C,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,KAAK,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEjE,qBAAa,oBAAqB,SAAQ,cAAc,CAAC,gBAAgB,CAAC;CAAG;AAC7E,qBAAa,yBAA0B,SAAQ,mBAAmB,CAAC,YAAY,CAAC;CAAG;AAEnF,MAAM,WAAW,2BAA2B;IAC1C,sEAAsE;IACtE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,2DAA2D;IAC3D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,yEAAyE;IACzE,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;GAGG;AACH,qBAAa,aAAc,SAAQ,iBAAiB;;IAIlD;;;OAGG;gBACS,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,2BAAgC;IAWtE;;OAEG;IACH,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAMpC;;;OAGG;IACH,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAKtC;;;OAGG;IACG,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC;CAK/B;AAED;;;;;;GAMG;AACH,wBAAgB,UAAU,CACxB,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,2BAAgC,mBAG1C"}
@@ -1,7 +1,66 @@
1
- import { Renown } from "./common.js";
1
+ import { BrowserKeyStorage } from "./crypto/browser-key-storage.js";
2
2
  import { BrowserEventEmitter } from "./event/event.browser.js";
3
+ import { BaseRenownBuilder } from "./renown-builder.js";
3
4
  import { BrowserStorage } from "./storage/storage.browser.js";
4
- export function initRenown(connectId, basename, baseUrl) {
5
- return new Renown(new BrowserStorage("renown", basename), new BrowserEventEmitter(), connectId, baseUrl);
5
+ export class BrowserRenownStorage extends BrowserStorage {
6
+ }
7
+ export class BrowserRenownEventEmitter extends BrowserEventEmitter {
8
+ }
9
+ /**
10
+ * Browser-specific Renown builder with pre-configured defaults.
11
+ * Uses localStorage for user data and IndexedDB for key storage.
12
+ */
13
+ export class RenownBuilder extends BaseRenownBuilder {
14
+ #basename;
15
+ #keyDbName;
16
+ /**
17
+ * @param appName - Application name used for signing context
18
+ * @param options - Browser-specific configuration options
19
+ */
20
+ constructor(appName, options = {}) {
21
+ super(appName);
22
+ this.#basename = options.basename;
23
+ this.#keyDbName = options.keyDbName;
24
+ this.withStorage(new BrowserRenownStorage("renown", this.#basename));
25
+ this.withEventEmitter(new BrowserRenownEventEmitter());
26
+ if (options.baseUrl) {
27
+ this.withBaseUrl(options.baseUrl);
28
+ }
29
+ }
30
+ /**
31
+ * Set base path for storage keys (e.g., "/app" for multi-tenant apps).
32
+ */
33
+ withBasename(basename) {
34
+ this.#basename = basename;
35
+ this.withStorage(new BrowserRenownStorage("renown", this.#basename));
36
+ return this;
37
+ }
38
+ /**
39
+ * Set IndexedDB database name for key storage.
40
+ * Defaults to "renownKeyDB".
41
+ */
42
+ withKeyDbName(keyDbName) {
43
+ this.#keyDbName = keyDbName;
44
+ return this;
45
+ }
46
+ /**
47
+ * Build and initialize the Renown instance.
48
+ * Initializes IndexedDB for key storage before building.
49
+ */
50
+ async build() {
51
+ const keyStorage = await BrowserKeyStorage.create(this.#keyDbName);
52
+ this.withKeyPairStorage(keyStorage);
53
+ return super.build();
54
+ }
55
+ }
56
+ /**
57
+ * @deprecated Use RenownBuilder directly instead.
58
+ * Initialize a browser-specific Renown instance.
59
+ * @param appName - Application name used for signing context
60
+ * @param options - Browser-specific configuration options
61
+ * @returns Initialized Renown instance
62
+ */
63
+ export function initRenown(appName, options = {}) {
64
+ return new RenownBuilder(appName, options).build();
6
65
  }
7
66
  //# sourceMappingURL=init.browser.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"init.browser.js","sourceRoot":"","sources":["../../src/init.browser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAG9D,MAAM,UAAU,UAAU,CACxB,SAAiB,EACjB,QAA4B,EAC5B,OAAgB;IAEhB,OAAO,IAAI,MAAM,CACf,IAAI,cAAc,CAAmB,QAAQ,EAAE,QAAQ,CAAC,EACxD,IAAI,mBAAmB,EAAgB,EACvC,SAAS,EACT,OAAO,CACR,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"init.browser.js","sourceRoot":"","sources":["../../src/init.browser.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAG9D,MAAM,OAAO,oBAAqB,SAAQ,cAAgC;CAAG;AAC7E,MAAM,OAAO,yBAA0B,SAAQ,mBAAiC;CAAG;AAWnF;;;GAGG;AACH,MAAM,OAAO,aAAc,SAAQ,iBAAiB;IAClD,SAAS,CAAU;IACnB,UAAU,CAAU;IAEpB;;;OAGG;IACH,YAAY,OAAe,EAAE,UAAuC,EAAE;QACpE,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC;QAClC,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,SAAS,CAAC;QACpC,IAAI,CAAC,WAAW,CAAC,IAAI,oBAAoB,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;QACrE,IAAI,CAAC,gBAAgB,CAAC,IAAI,yBAAyB,EAAE,CAAC,CAAC;QACvD,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YACpB,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACpC,CAAC;IACH,CAAC;IAED;;OAEG;IACH,YAAY,CAAC,QAAgB;QAC3B,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC1B,IAAI,CAAC,WAAW,CAAC,IAAI,oBAAoB,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;QACrE,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;OAGG;IACH,aAAa,CAAC,SAAiB;QAC7B,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAC5B,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,KAAK;QACT,MAAM,UAAU,GAAG,MAAM,iBAAiB,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACnE,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;QACpC,OAAO,KAAK,CAAC,KAAK,EAAE,CAAC;IACvB,CAAC;CACF;AAED;;;;;;GAMG;AACH,MAAM,UAAU,UAAU,CACxB,OAAe,EACf,UAAuC,EAAE;IAEzC,OAAO,IAAI,aAAa,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,KAAK,EAAE,CAAC;AACrD,CAAC"}
@@ -1,3 +1,29 @@
1
- import { Renown } from "./common.js";
2
- export declare function initRenown(connectId: string, filePath: string, namespace: string, baseUrl?: string): Renown;
1
+ import { NodeEventEmitter } from "./event/event.node.js";
2
+ import { BaseRenownBuilder } from "./renown-builder.js";
3
+ import { NodeStorage } from "./storage/storage.node.js";
4
+ import type { RenownEvents, RenownStorageMap } from "./types.js";
5
+ export declare class NodeRenownEventEmitter extends NodeEventEmitter<RenownEvents> {
6
+ }
7
+ export declare class NodeRenownStorage extends NodeStorage<RenownStorageMap> {
8
+ }
9
+ export declare const DEFAULT_RENOWN_STORAGE_PATH = "./.ph/.renown.json";
10
+ export interface NodeRenownBuilderOptions {
11
+ /** File path for user storage. Defaults to ".ph/.renown.json" in cwd */
12
+ storagePath?: string;
13
+ /** File path for keypair storage. Defaults to ".ph/.keypair.json" in cwd */
14
+ keyPath?: string;
15
+ /** Renown server URL. Defaults to https://www.renown.id */
16
+ baseUrl?: string;
17
+ }
18
+ /**
19
+ * Node.js-specific Renown builder with pre-configured defaults.
20
+ * Uses file-based storage for both user data and key storage.
21
+ */
22
+ export declare class RenownBuilder extends BaseRenownBuilder {
23
+ /**
24
+ * @param appName - Application name used for signing context
25
+ * @param options - Node.js-specific configuration options
26
+ */
27
+ constructor(appName: string, options?: NodeRenownBuilderOptions);
28
+ }
3
29
  //# sourceMappingURL=init.node.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"init.node.d.ts","sourceRoot":"","sources":["../../src/init.node.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAKrC,wBAAgB,UAAU,CACxB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,MAAM,UASjB"}
1
+ {"version":3,"file":"init.node.d.ts","sourceRoot":"","sources":["../../src/init.node.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,KAAK,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEjE,qBAAa,sBAAuB,SAAQ,gBAAgB,CAAC,YAAY,CAAC;CAAG;AAC7E,qBAAa,iBAAkB,SAAQ,WAAW,CAAC,gBAAgB,CAAC;CAAG;AAEvE,eAAO,MAAM,2BAA2B,uBAAuB,CAAC;AAEhE,MAAM,WAAW,wBAAwB;IACvC,wEAAwE;IACxE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,4EAA4E;IAC5E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,2DAA2D;IAC3D,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;GAGG;AACH,qBAAa,aAAc,SAAQ,iBAAiB;IAClD;;;OAGG;gBACS,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,wBAA6B;CAgBpE"}
@@ -1,8 +1,30 @@
1
- import { Renown } from "./common.js";
1
+ import { NodeKeyStorage } from "./crypto/node-key-storage.js";
2
2
  import { NodeEventEmitter } from "./event/event.node.js";
3
+ import { BaseRenownBuilder } from "./renown-builder.js";
3
4
  import { NodeStorage } from "./storage/storage.node.js";
4
- export function initRenown(connectId, filePath, namespace, baseUrl) {
5
- const storage = new NodeStorage(filePath, namespace);
6
- return new Renown(storage, new NodeEventEmitter(), connectId, baseUrl);
5
+ export class NodeRenownEventEmitter extends NodeEventEmitter {
6
+ }
7
+ export class NodeRenownStorage extends NodeStorage {
8
+ }
9
+ export const DEFAULT_RENOWN_STORAGE_PATH = "./.ph/.renown.json";
10
+ /**
11
+ * Node.js-specific Renown builder with pre-configured defaults.
12
+ * Uses file-based storage for both user data and key storage.
13
+ */
14
+ export class RenownBuilder extends BaseRenownBuilder {
15
+ /**
16
+ * @param appName - Application name used for signing context
17
+ * @param options - Node.js-specific configuration options
18
+ */
19
+ constructor(appName, options = {}) {
20
+ super(appName);
21
+ const { storagePath = DEFAULT_RENOWN_STORAGE_PATH, keyPath, baseUrl, } = options;
22
+ this.withKeyPairStorage(new NodeKeyStorage(keyPath));
23
+ this.withStorage(new NodeRenownStorage(storagePath));
24
+ this.withEventEmitter(new NodeRenownEventEmitter());
25
+ if (baseUrl) {
26
+ this.withBaseUrl(baseUrl);
27
+ }
28
+ }
7
29
  }
8
30
  //# sourceMappingURL=init.node.js.map