@suveren/gateway 0.7.4 → 0.8.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 (264) hide show
  1. package/content/integrations/mollie.json +103 -28
  2. package/dist/control-plane/index.mjs +248 -58
  3. package/dist/mcp-server/http.mjs +577 -124
  4. package/dist/ui/assets/index-BFnSVa9N.js +110 -0
  5. package/dist/ui/assets/{index-CkWaRck1.css → index-BYVb_0oG.css} +1 -1
  6. package/dist/ui/index.html +2 -2
  7. package/node_modules/@hap/core/dist/index.d.mts +285 -13
  8. package/node_modules/@hap/core/dist/index.d.ts +285 -13
  9. package/node_modules/@hap/core/dist/index.js +281 -13
  10. package/node_modules/@hap/core/dist/index.mjs +266 -12
  11. package/node_modules/@hap/core/package.json +4 -2
  12. package/node_modules/@hap/core/src/did-key.ts +126 -0
  13. package/node_modules/@hap/core/src/frame.ts +115 -14
  14. package/node_modules/@hap/core/src/gatekeeper.ts +26 -0
  15. package/node_modules/@hap/core/src/identity.ts +21 -5
  16. package/node_modules/@hap/core/src/index.ts +3 -0
  17. package/node_modules/@hap/core/src/mandate.ts +207 -0
  18. package/node_modules/@hap/core/src/receipt.ts +74 -0
  19. package/node_modules/@hap/core/src/types.ts +87 -5
  20. package/node_modules/@modelcontextprotocol/sdk/node_modules/negotiator/lib/accept.js +54 -0
  21. package/node_modules/@modelcontextprotocol/sdk/node_modules/negotiator/lib/charset.js +10 -34
  22. package/node_modules/@modelcontextprotocol/sdk/node_modules/negotiator/lib/encoding.js +9 -30
  23. package/node_modules/@modelcontextprotocol/sdk/node_modules/negotiator/lib/language.js +15 -36
  24. package/node_modules/@modelcontextprotocol/sdk/node_modules/negotiator/lib/mediaType.js +16 -134
  25. package/node_modules/@modelcontextprotocol/sdk/node_modules/negotiator/node_modules/content-type/LICENSE +22 -0
  26. package/node_modules/@modelcontextprotocol/sdk/node_modules/negotiator/node_modules/content-type/README.md +71 -0
  27. package/node_modules/@modelcontextprotocol/sdk/node_modules/negotiator/node_modules/content-type/dist/index.d.ts +46 -0
  28. package/node_modules/@modelcontextprotocol/sdk/node_modules/negotiator/node_modules/content-type/dist/index.js +176 -0
  29. package/node_modules/@modelcontextprotocol/sdk/node_modules/negotiator/node_modules/content-type/dist/index.js.map +1 -0
  30. package/node_modules/@modelcontextprotocol/sdk/node_modules/negotiator/node_modules/content-type/package.json +52 -0
  31. package/node_modules/@modelcontextprotocol/sdk/node_modules/negotiator/package.json +16 -10
  32. package/node_modules/@types/node/README.md +1 -1
  33. package/node_modules/@types/node/buffer.buffer.d.ts +10 -5
  34. package/node_modules/@types/node/crypto.d.ts +2 -4
  35. package/node_modules/@types/node/dgram.d.ts +119 -4
  36. package/node_modules/@types/node/ffi.d.ts +1 -1
  37. package/node_modules/@types/node/fs/promises.d.ts +61 -65
  38. package/node_modules/@types/node/fs.d.ts +86 -76
  39. package/node_modules/@types/node/http.d.ts +17 -1
  40. package/node_modules/@types/node/http2.d.ts +12 -4
  41. package/node_modules/@types/node/index.d.ts +1 -0
  42. package/node_modules/@types/node/inspector.d.ts +2 -1
  43. package/node_modules/@types/node/net.d.ts +108 -16
  44. package/node_modules/@types/node/package.json +2 -2
  45. package/node_modules/@types/node/process.d.ts +52 -0
  46. package/node_modules/@types/node/quic.d.ts +246 -38
  47. package/node_modules/@types/node/sqlite.d.ts +6 -2
  48. package/node_modules/@types/node/stream/iter.d.ts +4 -4
  49. package/node_modules/@types/node/test.d.ts +36 -0
  50. package/node_modules/@types/node/tls.d.ts +24 -0
  51. package/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +5 -0
  52. package/node_modules/@types/node/ts5.6/index.d.ts +1 -0
  53. package/node_modules/@types/node/ts5.7/index.d.ts +1 -0
  54. package/node_modules/@types/node/tty.d.ts +4 -3
  55. package/node_modules/@types/node/vfs.d.ts +210 -0
  56. package/node_modules/@types/node/vm.d.ts +1 -1
  57. package/node_modules/express-rate-limit/dist/index.cjs +6 -3
  58. package/node_modules/express-rate-limit/dist/index.d.cts +11 -0
  59. package/node_modules/express-rate-limit/dist/index.d.mts +11 -0
  60. package/node_modules/express-rate-limit/dist/index.d.ts +11 -0
  61. package/node_modules/express-rate-limit/dist/index.mjs +6 -3
  62. package/node_modules/express-rate-limit/{license.md → license} +7 -6
  63. package/node_modules/express-rate-limit/package.json +5 -5
  64. package/node_modules/express-rate-limit/readme.md +1 -0
  65. package/node_modules/fast-uri/index.js +215 -47
  66. package/node_modules/fast-uri/lib/schemes.js +9 -4
  67. package/node_modules/fast-uri/lib/utils.js +396 -92
  68. package/node_modules/fast-uri/package.json +1 -1
  69. package/node_modules/fast-uri/test/component-safe-serialization.test.js +163 -0
  70. package/node_modules/fast-uri/test/equal.test.js +31 -3
  71. package/node_modules/fast-uri/test/fixtures/uri-js-parse.json +2 -0
  72. package/node_modules/fast-uri/test/ipv6-canonical.test.js +34 -0
  73. package/node_modules/fast-uri/test/ipv6-validation.test.js +124 -0
  74. package/node_modules/fast-uri/test/malformed-percent.test.js +77 -0
  75. package/node_modules/fast-uri/test/malformed-urn.test.js +61 -0
  76. package/node_modules/fast-uri/test/parse.test.js +7 -3
  77. package/node_modules/fast-uri/test/query-fragment-normalization.test.js +33 -0
  78. package/node_modules/fast-uri/test/reserved-path-normalization.test.js +109 -0
  79. package/node_modules/fast-uri/test/scheme-validation.test.js +124 -0
  80. package/node_modules/fast-uri/test/security-normalization.test.js +101 -0
  81. package/node_modules/fast-uri/test/security.test.js +75 -3
  82. package/node_modules/fast-uri/test/urn-full-input.test.js +29 -0
  83. package/node_modules/fast-uri/test/websocket-query-preservation.test.js +24 -0
  84. package/node_modules/hono/dist/cjs/client/client.js +25 -11
  85. package/node_modules/hono/dist/cjs/client/utils.js +4 -1
  86. package/node_modules/hono/dist/cjs/context.js +4 -0
  87. package/node_modules/hono/dist/cjs/helper/accepts/accepts.js +36 -2
  88. package/node_modules/hono/dist/cjs/helper/ssg/ssg.js +1 -1
  89. package/node_modules/hono/dist/cjs/helper/ssg/utils.js +30 -10
  90. package/node_modules/hono/dist/cjs/jsx/dom/render.js +2 -0
  91. package/node_modules/hono/dist/cjs/middleware/cache/index.js +1 -1
  92. package/node_modules/hono/dist/cjs/middleware/cors/index.js +1 -1
  93. package/node_modules/hono/dist/cjs/middleware/csrf/index.js +1 -1
  94. package/node_modules/hono/dist/cjs/middleware/etag/digest.js +1 -1
  95. package/node_modules/hono/dist/cjs/middleware/etag/index.js +3 -3
  96. package/node_modules/hono/dist/cjs/middleware/pretty-json/index.js +3 -1
  97. package/node_modules/hono/dist/cjs/request.js +8 -4
  98. package/node_modules/hono/dist/cjs/router/linear-router/router.js +7 -2
  99. package/node_modules/hono/dist/cjs/router/pattern-router/router.js +3 -9
  100. package/node_modules/hono/dist/cjs/router/reg-exp-router/node.js +10 -3
  101. package/node_modules/hono/dist/cjs/router/reg-exp-router/router.js +47 -83
  102. package/node_modules/hono/dist/cjs/router/reg-exp-router/trie.js +2 -1
  103. package/node_modules/hono/dist/cjs/router/trie-router/node.js +46 -69
  104. package/node_modules/hono/dist/cjs/router/trie-router/router.js +3 -11
  105. package/node_modules/hono/dist/cjs/router/utils.js +27 -0
  106. package/node_modules/hono/dist/cjs/utils/body.js +15 -3
  107. package/node_modules/hono/dist/cjs/utils/cookie.js +1 -1
  108. package/node_modules/hono/dist/cjs/utils/ipaddr.js +5 -3
  109. package/node_modules/hono/dist/cjs/utils/stream.js +7 -1
  110. package/node_modules/hono/dist/cjs/utils/url.js +9 -1
  111. package/node_modules/hono/dist/client/client.js +25 -11
  112. package/node_modules/hono/dist/client/utils.js +4 -1
  113. package/node_modules/hono/dist/context.js +4 -0
  114. package/node_modules/hono/dist/helper/accepts/accepts.js +36 -2
  115. package/node_modules/hono/dist/helper/ssg/ssg.js +1 -1
  116. package/node_modules/hono/dist/helper/ssg/utils.js +30 -10
  117. package/node_modules/hono/dist/jsx/dom/render.js +2 -0
  118. package/node_modules/hono/dist/middleware/cache/index.js +1 -1
  119. package/node_modules/hono/dist/middleware/cors/index.js +1 -1
  120. package/node_modules/hono/dist/middleware/csrf/index.js +1 -1
  121. package/node_modules/hono/dist/middleware/etag/digest.js +1 -1
  122. package/node_modules/hono/dist/middleware/etag/index.js +3 -3
  123. package/node_modules/hono/dist/middleware/pretty-json/index.js +3 -1
  124. package/node_modules/hono/dist/request.js +8 -4
  125. package/node_modules/hono/dist/router/linear-router/router.js +7 -2
  126. package/node_modules/hono/dist/router/pattern-router/router.js +3 -9
  127. package/node_modules/hono/dist/router/reg-exp-router/node.js +6 -2
  128. package/node_modules/hono/dist/router/reg-exp-router/router.js +53 -84
  129. package/node_modules/hono/dist/router/reg-exp-router/trie.js +2 -1
  130. package/node_modules/hono/dist/router/trie-router/node.js +46 -69
  131. package/node_modules/hono/dist/router/trie-router/router.js +3 -11
  132. package/node_modules/hono/dist/router/utils.js +5 -0
  133. package/node_modules/hono/dist/types/context.d.ts +4 -0
  134. package/node_modules/hono/dist/types/router/reg-exp-router/node.d.ts +3 -0
  135. package/node_modules/hono/dist/types/router/trie-router/node.d.ts +1 -2
  136. package/node_modules/hono/dist/types/router/trie-router/router.d.ts +0 -1
  137. package/node_modules/hono/dist/types/router/utils.d.ts +1 -0
  138. package/node_modules/hono/dist/types/utils/url.d.ts +4 -0
  139. package/node_modules/hono/dist/utils/body.js +15 -3
  140. package/node_modules/hono/dist/utils/cookie.js +1 -1
  141. package/node_modules/hono/dist/utils/ipaddr.js +5 -3
  142. package/node_modules/hono/dist/utils/stream.js +7 -1
  143. package/node_modules/hono/dist/utils/url.js +9 -1
  144. package/node_modules/hono/package.json +1 -1
  145. package/node_modules/ip-address/README.md +92 -82
  146. package/node_modules/ip-address/dist/common.d.ts +20 -0
  147. package/node_modules/ip-address/dist/common.js +36 -0
  148. package/node_modules/ip-address/dist/common.js.map +1 -1
  149. package/node_modules/ip-address/dist/ipv4.d.ts +50 -0
  150. package/node_modules/ip-address/dist/ipv4.js +75 -0
  151. package/node_modules/ip-address/dist/ipv4.js.map +1 -1
  152. package/node_modules/ip-address/dist/ipv6.d.ts +79 -10
  153. package/node_modules/ip-address/dist/ipv6.js +120 -30
  154. package/node_modules/ip-address/dist/ipv6.js.map +1 -1
  155. package/node_modules/ip-address/dist/v4/constants.d.ts +12 -0
  156. package/node_modules/ip-address/dist/v4/constants.js +40 -1
  157. package/node_modules/ip-address/dist/v4/constants.js.map +1 -1
  158. package/node_modules/ip-address/dist/v6/constants.d.ts +14 -0
  159. package/node_modules/ip-address/dist/v6/constants.js +47 -1
  160. package/node_modules/ip-address/dist/v6/constants.js.map +1 -1
  161. package/node_modules/ip-address/package.json +1 -1
  162. package/node_modules/is-plain-object/README.md +39 -95
  163. package/node_modules/is-plain-object/dist/is-plain-object.js +0 -2
  164. package/node_modules/is-plain-object/is-plain-object.d.ts +6 -1
  165. package/node_modules/is-plain-object/package.json +8 -34
  166. package/node_modules/jose/dist/types/jwe/compact/decrypt.d.ts +7 -16
  167. package/node_modules/jose/dist/types/jwe/compact/encrypt.d.ts +10 -20
  168. package/node_modules/jose/dist/types/jwe/flattened/decrypt.d.ts +7 -16
  169. package/node_modules/jose/dist/types/jwe/flattened/encrypt.d.ts +16 -38
  170. package/node_modules/jose/dist/types/jwe/general/decrypt.d.ts +7 -16
  171. package/node_modules/jose/dist/types/jwe/general/encrypt.d.ts +19 -38
  172. package/node_modules/jose/dist/types/jwk/embedded.d.ts +3 -8
  173. package/node_modules/jose/dist/types/jwk/thumbprint.d.ts +5 -5
  174. package/node_modules/jose/dist/types/jwks/local.d.ts +6 -10
  175. package/node_modules/jose/dist/types/jwks/remote.d.ts +17 -28
  176. package/node_modules/jose/dist/types/jws/compact/sign.d.ts +5 -10
  177. package/node_modules/jose/dist/types/jws/compact/verify.d.ts +9 -18
  178. package/node_modules/jose/dist/types/jws/flattened/sign.d.ts +7 -16
  179. package/node_modules/jose/dist/types/jws/flattened/verify.d.ts +9 -18
  180. package/node_modules/jose/dist/types/jws/general/sign.d.ts +11 -21
  181. package/node_modules/jose/dist/types/jws/general/verify.d.ts +12 -21
  182. package/node_modules/jose/dist/types/jwt/decrypt.d.ts +10 -20
  183. package/node_modules/jose/dist/types/jwt/encrypt.d.ts +17 -29
  184. package/node_modules/jose/dist/types/jwt/sign.d.ts +12 -19
  185. package/node_modules/jose/dist/types/jwt/unsecured.d.ts +17 -28
  186. package/node_modules/jose/dist/types/jwt/verify.d.ts +9 -19
  187. package/node_modules/jose/dist/types/key/export.d.ts +4 -4
  188. package/node_modules/jose/dist/types/key/generate_key_pair.d.ts +6 -8
  189. package/node_modules/jose/dist/types/key/generate_secret.d.ts +4 -11
  190. package/node_modules/jose/dist/types/key/import.d.ts +10 -17
  191. package/node_modules/jose/dist/types/types.d.ts +48 -86
  192. package/node_modules/jose/dist/types/util/base64url.d.ts +2 -2
  193. package/node_modules/jose/dist/types/util/decode_jwt.d.ts +3 -10
  194. package/node_modules/jose/dist/types/util/decode_protected_header.d.ts +4 -4
  195. package/node_modules/jose/dist/types/util/errors.d.ts +26 -53
  196. package/node_modules/jose/dist/webapi/index.js +70 -32
  197. package/node_modules/jose/dist/webapi/jwe/compact/decrypt.js +7 -8
  198. package/node_modules/jose/dist/webapi/jwe/compact/encrypt.js +42 -26
  199. package/node_modules/jose/dist/webapi/jwe/flattened/decrypt.js +14 -10
  200. package/node_modules/jose/dist/webapi/jwe/flattened/encrypt.js +53 -71
  201. package/node_modules/jose/dist/webapi/jwe/general/decrypt.js +38 -49
  202. package/node_modules/jose/dist/webapi/jwe/general/encrypt.js +121 -158
  203. package/node_modules/jose/dist/webapi/jwk/embedded.js +30 -18
  204. package/node_modules/jose/dist/webapi/jwk/thumbprint.js +54 -64
  205. package/node_modules/jose/dist/webapi/jwks/local.js +49 -74
  206. package/node_modules/jose/dist/webapi/jwks/remote.js +91 -160
  207. package/node_modules/jose/dist/webapi/jws/compact/sign.js +21 -20
  208. package/node_modules/jose/dist/webapi/jws/compact/verify.js +7 -8
  209. package/node_modules/jose/dist/webapi/jws/flattened/sign.js +29 -30
  210. package/node_modules/jose/dist/webapi/jws/flattened/verify.js +21 -23
  211. package/node_modules/jose/dist/webapi/jws/general/sign.js +61 -70
  212. package/node_modules/jose/dist/webapi/jws/general/verify.js +47 -41
  213. package/node_modules/jose/dist/webapi/jwt/decrypt.js +13 -22
  214. package/node_modules/jose/dist/webapi/jwt/encrypt.js +58 -100
  215. package/node_modules/jose/dist/webapi/jwt/sign.js +18 -50
  216. package/node_modules/jose/dist/webapi/jwt/unsecured.js +34 -63
  217. package/node_modules/jose/dist/webapi/jwt/verify.js +12 -14
  218. package/node_modules/jose/dist/webapi/key/export.js +32 -37
  219. package/node_modules/jose/dist/webapi/key/generate_key_pair.js +40 -44
  220. package/node_modules/jose/dist/webapi/key/generate_secret.js +35 -39
  221. package/node_modules/jose/dist/webapi/key/import.js +52 -52
  222. package/node_modules/jose/dist/webapi/lib/asn1.js +130 -164
  223. package/node_modules/jose/dist/webapi/lib/base64.js +18 -20
  224. package/node_modules/jose/dist/webapi/lib/buffer_utils.js +34 -38
  225. package/node_modules/jose/dist/webapi/lib/content_encryption.js +79 -123
  226. package/node_modules/jose/dist/webapi/lib/crypto_key.js +24 -25
  227. package/node_modules/jose/dist/webapi/lib/deflate.js +46 -40
  228. package/node_modules/jose/dist/webapi/lib/helpers.js +40 -37
  229. package/node_modules/jose/dist/webapi/lib/invalid_key_input.js +10 -24
  230. package/node_modules/jose/dist/webapi/lib/is_key_like.js +17 -15
  231. package/node_modules/jose/dist/webapi/lib/jwe_algorithms.js +106 -93
  232. package/node_modules/jose/dist/webapi/lib/jwe_decrypt.js +210 -176
  233. package/node_modules/jose/dist/webapi/lib/jwe_encrypt.js +105 -107
  234. package/node_modules/jose/dist/webapi/lib/jwk_metadata.js +19 -0
  235. package/node_modules/jose/dist/webapi/lib/jwk_to_key.js +9 -16
  236. package/node_modules/jose/dist/webapi/lib/jws_algorithms.js +62 -61
  237. package/node_modules/jose/dist/webapi/lib/jws_sign.js +58 -72
  238. package/node_modules/jose/dist/webapi/lib/jws_verify.js +90 -103
  239. package/node_modules/jose/dist/webapi/lib/jwt_claims_set.js +134 -185
  240. package/node_modules/jose/dist/webapi/lib/key.js +84 -121
  241. package/node_modules/jose/dist/webapi/lib/key_algorithm.js +13 -8
  242. package/node_modules/jose/dist/webapi/lib/key_descriptor.js +8 -6
  243. package/node_modules/jose/dist/webapi/lib/key_management.js +200 -225
  244. package/node_modules/jose/dist/webapi/lib/key_options.js +8 -0
  245. package/node_modules/jose/dist/webapi/lib/options.js +57 -44
  246. package/node_modules/jose/dist/webapi/lib/signing.js +18 -22
  247. package/node_modules/jose/dist/webapi/lib/type_checks.js +28 -33
  248. package/node_modules/jose/dist/webapi/util/base64url.js +26 -35
  249. package/node_modules/jose/dist/webapi/util/decode_jwt.js +32 -31
  250. package/node_modules/jose/dist/webapi/util/decode_protected_header.js +18 -23
  251. package/node_modules/jose/dist/webapi/util/errors.js +94 -84
  252. package/node_modules/jose/package.json +17 -81
  253. package/package.json +2 -2
  254. package/profiles/calendar/0.5.profile.json +190 -0
  255. package/profiles/charge/0.5.profile.json +210 -0
  256. package/profiles/customers/0.7.profile.json +157 -0
  257. package/profiles/deploy/0.9.profile.json +176 -0
  258. package/profiles/email/0.6.profile.json +208 -0
  259. package/profiles/index.json +9 -1
  260. package/profiles/publish/0.5.profile.json +186 -0
  261. package/profiles/purchase/0.5.profile.json +231 -0
  262. package/profiles/records/0.5.profile.json +117 -0
  263. package/dist/ui/assets/index-0Q2eNytX.js +0 -110
  264. package/node_modules/@modelcontextprotocol/sdk/node_modules/negotiator/HISTORY.md +0 -114
@@ -1,43 +1,33 @@
1
- import type * as types from '../types.d.ts';
2
- /** The EncryptJWT class is used to build and encrypt Compact JWE formatted JSON Web Tokens. */
3
- export declare class EncryptJWT implements types.ProduceJWT {
1
+ import type * as t from '../types.d.ts';
2
+ /**
3
+ * EncryptJWT constructor
4
+ *
5
+ * @param payload The JWT Claims Set object. Defaults to an empty object.
6
+ */
7
+ declare const EncryptJWT_base: new (payload?: t.JWTPayload) => t.ProduceJWT;
8
+ /** Builds and encrypts Compact JWE-formatted JSON Web Tokens. */
9
+ export declare class EncryptJWT extends EncryptJWT_base {
4
10
  #private;
5
- /**
6
- * {@link EncryptJWT} constructor
7
- *
8
- * @param payload The JWT Claims Set object. Defaults to an empty object.
9
- */
10
- constructor(payload?: types.JWTPayload);
11
- setIssuer(issuer: string): this;
12
- setSubject(subject: string): this;
13
- setAudience(audience: string | string[]): this;
14
- setJti(jwtId: string): this;
15
- setNotBefore(input: number | string | Date): this;
16
- setExpirationTime(input: number | string | Date): this;
17
- setIssuedAt(input?: number | string | Date): this;
18
11
  /**
19
12
  * Sets the JWE Protected Header on the EncryptJWT object.
20
13
  *
21
14
  * @param protectedHeader JWE Protected Header. Must contain an "alg" (JWE Algorithm) and "enc"
22
15
  * (JWE Encryption Algorithm) properties.
23
16
  */
24
- setProtectedHeader(protectedHeader: types.CompactJWEHeaderParameters): this;
17
+ setProtectedHeader(protectedHeader: t.CompactJWEHeaderParameters): this;
25
18
  /**
26
- * Sets the JWE Key Management parameters to be used when encrypting. For ECDH based algorithms,
27
- * use this method to set the "apu" (Agreement PartyUInfo) or "apv" (Agreement PartyVInfo)
28
- * parameters.
29
- *
30
- * @param parameters JWE Key Management parameters.
19
+ * Sets the JWE Key Management parameters to be used when encrypting. Use this method instead of
20
+ * the header setters to configure algorithm inputs such as ECDH-ES "apu" (Agreement PartyUInfo)
21
+ * and "apv" (Agreement PartyVInfo), or PBES2 "p2c" (PBES2 Count). The parameters are added to the
22
+ * appropriate JOSE Header.
31
23
  */
32
- setKeyManagementParameters(parameters: types.JWEKeyManagementHeaderParameters): this;
24
+ setKeyManagementParameters(parameters: t.JWEKeyManagementHeaderParameters): this;
33
25
  /**
34
26
  * Sets a content encryption key to use, by default a random suitable one is generated for the JWE
35
27
  * "enc" (Encryption Algorithm) Header Parameter.
36
28
  *
37
29
  * @deprecated You should not use this method. It is only really intended for test and vector
38
30
  * validation purposes.
39
- *
40
- * @param cek JWE Content Encryption Key.
41
31
  */
42
32
  setContentEncryptionKey(cek: Uint8Array): this;
43
33
  /**
@@ -46,8 +36,6 @@ export declare class EncryptJWT implements types.ProduceJWT {
46
36
  *
47
37
  * @deprecated You should not use this method. It is only really intended for test and vector
48
38
  * validation purposes.
49
- *
50
- * @param iv JWE Initialization Vector.
51
39
  */
52
40
  setInitializationVector(iv: Uint8Array): this;
53
41
  /** Replicates the "iss" (Issuer) Claim as a JWE Protected Header Parameter. */
@@ -61,7 +49,7 @@ export declare class EncryptJWT implements types.ProduceJWT {
61
49
  *
62
50
  * @param key Public Key or Secret to encrypt the JWT with. See
63
51
  * {@link https://github.com/panva/jose/issues/210#jwe-alg Algorithm Key Requirements}.
64
- * @param options JWE Encryption options.
65
52
  */
66
- encrypt(key: types.KeyInput, options?: types.EncryptOptions): Promise<string>;
53
+ encrypt(key: t.KeyInput, options?: t.EncryptOptions): Promise<string>;
67
54
  }
55
+ export {};
@@ -1,32 +1,25 @@
1
- import type * as types from '../types.d.ts';
2
- /** The SignJWT class is used to build and sign Compact JWS formatted JSON Web Tokens. */
3
- export declare class SignJWT implements types.ProduceJWT {
1
+ import type * as t from '../types.d.ts';
2
+ /**
3
+ * SignJWT constructor
4
+ *
5
+ * @param payload The JWT Claims Set object. Defaults to an empty object.
6
+ */
7
+ declare const SignJWT_base: new (payload?: t.JWTPayload) => t.ProduceJWT;
8
+ /** Builds and signs Compact JWS-formatted JSON Web Tokens. */
9
+ export declare class SignJWT extends SignJWT_base {
4
10
  #private;
5
- /**
6
- * {@link SignJWT} constructor
7
- *
8
- * @param payload The JWT Claims Set object. Defaults to an empty object.
9
- */
10
- constructor(payload?: types.JWTPayload);
11
- setIssuer(issuer: string): this;
12
- setSubject(subject: string): this;
13
- setAudience(audience: string | string[]): this;
14
- setJti(jwtId: string): this;
15
- setNotBefore(input: number | string | Date): this;
16
- setExpirationTime(input: number | string | Date): this;
17
- setIssuedAt(input?: number | string | Date): this;
18
11
  /**
19
12
  * Sets the JWS Protected Header on the SignJWT object.
20
13
  *
21
14
  * @param protectedHeader JWS Protected Header. Must contain an "alg" (JWS Algorithm) property.
22
15
  */
23
- setProtectedHeader(protectedHeader: types.JWTHeaderParameters): this;
16
+ setProtectedHeader(protectedHeader: t.JWTHeaderParameters): this;
24
17
  /**
25
18
  * Signs and returns the JWT.
26
19
  *
27
20
  * @param key Private Key or Secret to sign the JWT with. See
28
21
  * {@link https://github.com/panva/jose/issues/210#jws-alg Algorithm Key Requirements}.
29
- * @param options JWT Sign options.
30
22
  */
31
- sign(key: types.KeyInput, options?: types.SignOptions): Promise<string>;
23
+ sign(key: t.KeyInput, options?: t.SignOptions): Promise<string>;
32
24
  }
25
+ export {};
@@ -1,34 +1,23 @@
1
- import type * as types from '../types.d.ts';
2
- /** Result of decoding an Unsecured JWT. */
3
- export interface UnsecuredResult<PayloadType = types.JWTPayload> {
1
+ import type * as t from '../types.d.ts';
2
+ /** Decoded Unsecured JWT. */
3
+ export interface UnsecuredResult<PayloadType = t.JWTPayload> {
4
4
  /** JWT Claims Set. */
5
- payload: PayloadType & types.JWTPayload & ([PayloadType] extends [object] ? unknown : unknown extends PayloadType ? unknown : never);
5
+ payload: PayloadType & t.JWTPayload & ([PayloadType] extends [object] ? unknown : unknown extends PayloadType ? unknown : never);
6
6
  /** The decoded JOSE Header; always `{ "alg": "none" }` for an Unsecured JWT. */
7
- header: types.JWSHeaderParameters;
7
+ header: t.JWSHeaderParameters;
8
8
  }
9
- /** The UnsecuredJWT class is a utility for dealing with `{ "alg": "none" }` Unsecured JWTs. */
10
- export declare class UnsecuredJWT implements types.ProduceJWT {
11
- #private;
12
- /**
13
- * {@link UnsecuredJWT} constructor
14
- *
15
- * @param payload The JWT Claims Set object. Defaults to an empty object.
16
- */
17
- constructor(payload?: types.JWTPayload);
9
+ /**
10
+ * UnsecuredJWT constructor
11
+ *
12
+ * @param payload The JWT Claims Set object. Defaults to an empty object.
13
+ */
14
+ declare const UnsecuredJWT_base: new (payload?: t.JWTPayload) => t.ProduceJWT;
15
+ /** Encodes and decodes `{ "alg": "none" }` Unsecured JWTs. */
16
+ export declare class UnsecuredJWT extends UnsecuredJWT_base {
17
+ private jwt;
18
18
  /** Encodes the Unsecured JWT. */
19
19
  encode(): string;
20
- setIssuer(issuer: string): this;
21
- setSubject(subject: string): this;
22
- setAudience(audience: string | string[]): this;
23
- setJti(jwtId: string): this;
24
- setNotBefore(input: number | string | Date): this;
25
- setExpirationTime(input: number | string | Date): this;
26
- setIssuedAt(input?: number | string | Date): this;
27
- /**
28
- * Decodes an unsecured JWT.
29
- *
30
- * @param jwt Unsecured JWT to decode the payload of.
31
- * @param options JWT Claims Set validation options.
32
- */
33
- static decode<PayloadType = types.JWTPayload>(jwt: string, options?: types.JWTClaimVerificationOptions): UnsecuredResult<PayloadType>;
20
+ /** Decodes an unsecured JWT. */
21
+ static decode<PayloadType = t.JWTPayload>(jwt: string, options?: t.JWTClaimVerificationOptions): UnsecuredResult<PayloadType>;
34
22
  }
23
+ export {};
@@ -1,38 +1,28 @@
1
- import type * as types from '../types.d.ts';
2
- /** Combination of JWS Verification options and JWT Claims Set verification options. */
3
- export interface JWTVerifyOptions extends types.VerifyOptions, types.JWTClaimVerificationOptions {
1
+ import type * as t from '../types.d.ts';
2
+ /** JWS verification and JWT Claims Set validation options. */
3
+ export interface JWTVerifyOptions extends t.VerifyOptions, t.JWTClaimVerificationOptions {
4
4
  }
5
- /**
6
- * Interface for JWT Verification dynamic key resolution. No token components have been verified at
7
- * the time of this function call.
8
- */
9
- export interface JWTVerifyGetKey<KeyType extends types.CryptoKey | Uint8Array = types.CryptoKey | Uint8Array> extends types.GetKeyFunction<types.CompactJWSHeaderParameters, types.FlattenedJWSInput, KeyType | types.KeyObject | types.JWK> {
5
+ /** Dynamic key resolver for JWT verification. */
6
+ export interface JWTVerifyGetKey<KeyType extends t.CryptoKey | Uint8Array = t.CryptoKey | Uint8Array> extends t.GetKeyFunction<t.CompactJWSHeaderParameters, t.FlattenedJWSInput, KeyType | t.KeyObject | t.JWK> {
10
7
  }
11
8
  /**
12
- * Verifies the JWT format (to be a JWS Compact format), verifies the JWS signature, validates the
13
- * JWT Claims Set.
9
+ * Verifies a Compact JWS-formatted JWT and validates its Claims Set.
14
10
  *
15
- * @param jwt JSON Web Token value (encoded as JWS).
16
11
  * @param key Key to verify the JWT with. See
17
12
  * {@link https://github.com/panva/jose/issues/210#jws-alg Algorithm Key Requirements}.
18
- * @param options JWT Decryption and JWT Claims Set validation options.
19
13
  */
20
- export declare function jwtVerify<PayloadType = types.JWTPayload>(jwt: string | Uint8Array, key: types.KeyInput, options?: JWTVerifyOptions): Promise<types.JWTVerifyResult<PayloadType>>;
14
+ export declare function jwtVerify<PayloadType = t.JWTPayload>(jwt: string | Uint8Array, key: t.KeyInput, options?: JWTVerifyOptions): Promise<t.JWTVerifyResult<PayloadType>>;
21
15
  /**
22
- * @param jwt JSON Web Token value (encoded as JWS).
23
16
  * @param getKey Function resolving a key to verify the JWT with. See
24
17
  * {@link https://github.com/panva/jose/issues/210#jws-alg Algorithm Key Requirements}.
25
- * @param options JWT Decryption and JWT Claims Set validation options.
26
18
  */
27
- export declare function jwtVerify<PayloadType = types.JWTPayload, KeyType extends types.CryptoKey | Uint8Array = types.CryptoKey | Uint8Array>(jwt: string | Uint8Array, getKey: JWTVerifyGetKey<KeyType>, options?: JWTVerifyOptions): Promise<types.JWTVerifyResult<PayloadType> & types.ResolvedKey<KeyType>>;
19
+ export declare function jwtVerify<PayloadType = t.JWTPayload, KeyType extends t.CryptoKey | Uint8Array = t.CryptoKey | Uint8Array>(jwt: string | Uint8Array, getKey: JWTVerifyGetKey<KeyType>, options?: JWTVerifyOptions): Promise<t.JWTVerifyResult<PayloadType> & t.ResolvedKey<KeyType>>;
28
20
  /**
29
21
  * Accepts either form of the `key` argument. Use this overload when forwarding a value that may be
30
22
  * either a key or a key resolution function; `key` is present on the result only when a resolution
31
23
  * function was used.
32
24
  *
33
- * @param jwt JSON Web Token value (encoded as JWS).
34
25
  * @param key Key, or function resolving a key, to verify the JWT with. See
35
26
  * {@link https://github.com/panva/jose/issues/210#jws-alg Algorithm Key Requirements}.
36
- * @param options JWT Decryption and JWT Claims Set validation options.
37
27
  */
38
- export declare function jwtVerify<PayloadType = types.JWTPayload>(jwt: string | Uint8Array, key: types.KeyInput | JWTVerifyGetKey, options?: JWTVerifyOptions): Promise<types.JWTVerifyResult<PayloadType> & Partial<types.ResolvedKey>>;
28
+ export declare function jwtVerify<PayloadType = t.JWTPayload>(jwt: string | Uint8Array, key: t.KeyInput | JWTVerifyGetKey, options?: JWTVerifyOptions): Promise<t.JWTVerifyResult<PayloadType> & Partial<t.ResolvedKey>>;
@@ -1,19 +1,19 @@
1
- import type * as types from '../types.d.ts';
1
+ import type * as t from '../types.d.ts';
2
2
  /**
3
3
  * Exports a public {@link !CryptoKey} or {@link !KeyObject} to a PEM-encoded SPKI string format.
4
4
  *
5
5
  * @param key Key to export to a PEM-encoded SPKI string format.
6
6
  */
7
- export declare function exportSPKI(key: types.CryptoKey | types.KeyObject): Promise<string>;
7
+ export declare function exportSPKI(key: t.CryptoKey | t.KeyObject): Promise<string>;
8
8
  /**
9
9
  * Exports a private {@link !CryptoKey} or {@link !KeyObject} to a PEM-encoded PKCS8 string format.
10
10
  *
11
11
  * @param key Key to export to a PEM-encoded PKCS8 string format.
12
12
  */
13
- export declare function exportPKCS8(key: types.CryptoKey | types.KeyObject): Promise<string>;
13
+ export declare function exportPKCS8(key: t.CryptoKey | t.KeyObject): Promise<string>;
14
14
  /**
15
15
  * Exports a {@link !CryptoKey}, {@link !KeyObject}, or {@link !Uint8Array} to a JWK.
16
16
  *
17
17
  * @param key Key to export as JWK.
18
18
  */
19
- export declare function exportJWK(key: types.CryptoKey | types.KeyObject | Uint8Array): Promise<types.JWK>;
19
+ export declare function exportJWK(key: t.CryptoKey | t.KeyObject | Uint8Array): Promise<t.JWK>;
@@ -1,17 +1,17 @@
1
- import type * as types from '../types.d.ts';
1
+ import type * as t from '../types.d.ts';
2
2
  /**
3
3
  * JWA Algorithm Identifiers that {@link generateKeyPair} is able to generate a key pair for, subject
4
4
  * to runtime support.
5
5
  */
6
6
  export type GenerateKeyPairAlgorithm = 'PS256' | 'PS384' | 'PS512' | 'RS256' | 'RS384' | 'RS512' | 'RSA-OAEP' | 'RSA-OAEP-256' | 'RSA-OAEP-384' | 'RSA-OAEP-512' | 'ES256' | 'ES384' | 'ES512' | 'Ed25519' | 'EdDSA' | 'ML-DSA-44' | 'ML-DSA-65' | 'ML-DSA-87' | 'ECDH-ES' | 'ECDH-ES+A128KW' | 'ECDH-ES+A192KW' | 'ECDH-ES+A256KW' | (string & {});
7
- /** Asymmetric key pair generation function result. */
7
+ /** Generated asymmetric key pair. */
8
8
  export interface GenerateKeyPairResult {
9
9
  /** The generated Private Key. */
10
- privateKey: types.CryptoKey;
10
+ privateKey: t.CryptoKey;
11
11
  /** Public Key corresponding to the generated Private Key. */
12
- publicKey: types.CryptoKey;
12
+ publicKey: t.CryptoKey;
13
13
  }
14
- /** Asymmetric key pair generation function options. */
14
+ /** Asymmetric key pair generation options. */
15
15
  export interface GenerateKeyPairOptions {
16
16
  /**
17
17
  * The EC "crv" (Curve) or OKP "crv" (Subtype of Key Pair) value to generate. The curve must be
@@ -27,14 +27,12 @@ export interface GenerateKeyPairOptions {
27
27
  extractable?: boolean;
28
28
  }
29
29
  /**
30
- * Generates a private and a public key for a given JWA algorithm identifier. This can only generate
31
- * asymmetric key pairs. For symmetric secrets use the `generateSecret` function.
30
+ * Generates an asymmetric key pair for a JWA algorithm identifier.
32
31
  *
33
32
  * > Note: The `privateKey` is generated with `extractable` set to `false` by default. See
34
33
  * > {@link GenerateKeyPairOptions.extractable} to generate an extractable `privateKey`.
35
34
  *
36
35
  * @param alg JWA Algorithm Identifier to be used with the generated key pair. See
37
36
  * {@link https://github.com/panva/jose/issues/210 Algorithm Key Requirements}.
38
- * @param options Additional options passed down to the key pair generation.
39
37
  */
40
38
  export declare function generateKeyPair(alg: GenerateKeyPairAlgorithm, options?: GenerateKeyPairOptions): Promise<GenerateKeyPairResult>;
@@ -1,18 +1,12 @@
1
- import type * as types from '../types.d.ts';
1
+ import type * as t from '../types.d.ts';
2
2
  /**
3
3
  * JWA Algorithm Identifiers that {@link generateSecret} is able to generate a secret for, subject to
4
4
  * runtime support.
5
5
  */
6
6
  export type GenerateSecretAlgorithm = 'HS256' | 'HS384' | 'HS512' | 'A128CBC-HS256' | 'A192CBC-HS384' | 'A256CBC-HS512' | 'A128KW' | 'A192KW' | 'A256KW' | 'A128GCMKW' | 'A192GCMKW' | 'A256GCMKW' | 'A128GCM' | 'A192GCM' | 'A256GCM' | (string & {});
7
- /**
8
- * Resolves what {@link generateSecret} returns for a given JWA Algorithm Identifier. The
9
- * AES_CBC_HMAC_SHA2 content encryption algorithms have no {@link !CryptoKey} representation, so they
10
- * yield a {@link !Uint8Array}; every other supported identifier yields a
11
- * {@link types.CryptoKey CryptoKey}. When the identifier is not statically known this resolves to
12
- * their union.
13
- */
14
- export type GeneratedSecret<Alg extends string> = Alg extends 'A128CBC-HS256' | 'A192CBC-HS384' | 'A256CBC-HS512' ? Uint8Array : string extends Alg ? types.CryptoKey | Uint8Array : types.CryptoKey;
15
- /** Secret generation function options. */
7
+ /** Maps a JWA algorithm identifier to the value returned by {@link generateSecret}. */
8
+ export type GeneratedSecret<Alg extends string> = Alg extends 'A128CBC-HS256' | 'A192CBC-HS384' | 'A256CBC-HS512' ? Uint8Array : string extends Alg ? t.CryptoKey | Uint8Array : t.CryptoKey;
9
+ /** Secret generation options. */
16
10
  export interface GenerateSecretOptions {
17
11
  /**
18
12
  * The value to use as {@link !SubtleCrypto.generateKey} `extractable` argument. Default is false.
@@ -32,6 +26,5 @@ export interface GenerateSecretOptions {
32
26
  *
33
27
  * @param alg JWA Algorithm Identifier to be used with the generated secret. See
34
28
  * {@link https://github.com/panva/jose/issues/210 Algorithm Key Requirements}.
35
- * @param options Additional options passed down to the secret generation.
36
29
  */
37
30
  export declare function generateSecret<Alg extends GenerateSecretAlgorithm>(alg: Alg, options?: GenerateSecretOptions): Promise<GeneratedSecret<Alg>>;
@@ -1,17 +1,11 @@
1
- import type * as types from '../types.d.ts';
2
- /**
3
- * Resolves what {@link importJWK} returns for a given JWK type. The "kty" (Key Type) Parameter fully
4
- * determines the outcome at runtime: `"oct"` yields a {@link !Uint8Array} secret, every other
5
- * supported key type yields a {@link types.CryptoKey CryptoKey}. When "kty" is not statically known
6
- * — the usual case for a JWK parsed from JSON, or for a value typed as {@link types.JWK JWK} — this
7
- * resolves to their union.
8
- */
9
- export type ImportedJWK<JWKType extends types.JWK> = JWKType extends {
1
+ import type * as t from '../types.d.ts';
2
+ /** Maps a JWK key type to the value returned by {@link importJWK}. */
3
+ export type ImportedJWK<JWKType extends t.JWK> = JWKType extends {
10
4
  kty: 'oct';
11
5
  } ? Uint8Array : JWKType extends {
12
6
  kty: 'AKP' | 'EC' | 'OKP' | 'RSA';
13
- } ? types.CryptoKey : types.CryptoKey | Uint8Array;
14
- /** Key Import Function options. */
7
+ } ? t.CryptoKey : t.CryptoKey | Uint8Array;
8
+ /** Key import options. */
15
9
  export interface KeyImportOptions {
16
10
  /**
17
11
  * The value to use as {@link !SubtleCrypto.importKey} `extractable` argument. Default is false for
@@ -30,7 +24,7 @@ export interface KeyImportOptions {
30
24
  * @param alg JSON Web Algorithm identifier to be used with the imported key. See
31
25
  * {@link https://github.com/panva/jose/issues/210 Algorithm Key Requirements}.
32
26
  */
33
- export declare function importSPKI(spki: string, alg: string, options?: KeyImportOptions): Promise<types.CryptoKey>;
27
+ export declare function importSPKI(spki: string, alg: string, options?: KeyImportOptions): Promise<t.CryptoKey>;
34
28
  /**
35
29
  * Imports the SPKI from an X.509 string certificate as a {@link !CryptoKey}.
36
30
  *
@@ -42,7 +36,7 @@ export declare function importSPKI(spki: string, alg: string, options?: KeyImpor
42
36
  * @param alg JSON Web Algorithm identifier to be used with the imported key. See
43
37
  * {@link https://github.com/panva/jose/issues/210 Algorithm Key Requirements}.
44
38
  */
45
- export declare function importX509(x509: string, alg: string, options?: KeyImportOptions): Promise<types.CryptoKey>;
39
+ export declare function importX509(x509: string, alg: string, options?: KeyImportOptions): Promise<t.CryptoKey>;
46
40
  /**
47
41
  * Imports a PEM-encoded PKCS#8 string as a {@link !CryptoKey}.
48
42
  *
@@ -54,10 +48,9 @@ export declare function importX509(x509: string, alg: string, options?: KeyImpor
54
48
  * @param alg JSON Web Algorithm identifier to be used with the imported key. See
55
49
  * {@link https://github.com/panva/jose/issues/210 Algorithm Key Requirements}.
56
50
  */
57
- export declare function importPKCS8(pkcs8: string, alg: string, options?: KeyImportOptions): Promise<types.CryptoKey>;
51
+ export declare function importPKCS8(pkcs8: string, alg: string, options?: KeyImportOptions): Promise<t.CryptoKey>;
58
52
  /**
59
- * Imports a JWK to a {@link !CryptoKey}. Either the JWK "alg" (Algorithm) Parameter, or the optional
60
- * "alg" argument, must be present for asymmetric JSON Web Key imports.
53
+ * Imports a JWK as a {@link !CryptoKey} or {@link !Uint8Array}.
61
54
  *
62
55
  * > Note: The JSON Web Key parameters "key_ops" and "ext" are also used in the {@link !CryptoKey} import
63
56
  * > process.
@@ -70,4 +63,4 @@ export declare function importPKCS8(pkcs8: string, alg: string, options?: KeyImp
70
63
  * property on the JWK. See
71
64
  * {@link https://github.com/panva/jose/issues/210 Algorithm Key Requirements}.
72
65
  */
73
- export declare function importJWK<JWKType extends types.JWK>(jwk: JWKType, alg?: string, options?: KeyImportOptions): Promise<ImportedJWK<JWKType>>;
66
+ export declare function importJWK<JWKType extends t.JWK>(jwk: JWKType, alg?: string, options?: KeyImportOptions): Promise<ImportedJWK<JWKType>>;