@nocobase/plugin-idp-oauth 2.1.0-alpha.10

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 (451) hide show
  1. package/LICENSE.txt +107 -0
  2. package/README.md +14 -0
  3. package/build.config.ts +46 -0
  4. package/client.d.ts +2 -0
  5. package/client.js +1 -0
  6. package/dist/client/ErrorPage.d.ts +11 -0
  7. package/dist/client/InteractionPage.d.ts +11 -0
  8. package/dist/client/index.d.ts +9 -0
  9. package/dist/client/index.js +10 -0
  10. package/dist/client/locale.d.ts +10 -0
  11. package/dist/client/models/index.d.ts +11 -0
  12. package/dist/client/plugin.d.ts +13 -0
  13. package/dist/externalVersion.js +18 -0
  14. package/dist/index.d.ts +10 -0
  15. package/dist/index.js +48 -0
  16. package/dist/locale/en-US.json +1 -0
  17. package/dist/locale/zh-CN.json +1 -0
  18. package/dist/node_modules/eta/LICENSE +7 -0
  19. package/dist/node_modules/eta/README.md +185 -0
  20. package/dist/node_modules/eta/dist/core.d.ts +179 -0
  21. package/dist/node_modules/eta/dist/core.d.ts.map +1 -0
  22. package/dist/node_modules/eta/dist/core.js +42 -0
  23. package/dist/node_modules/eta/dist/core.js.map +1 -0
  24. package/dist/node_modules/eta/dist/index.cjs +542 -0
  25. package/dist/node_modules/eta/dist/index.cjs.map +1 -0
  26. package/dist/node_modules/eta/dist/index.d.cts +187 -0
  27. package/dist/node_modules/eta/dist/index.d.cts.map +1 -0
  28. package/dist/node_modules/eta/dist/index.d.mts +187 -0
  29. package/dist/node_modules/eta/dist/index.d.mts.map +1 -0
  30. package/dist/node_modules/eta/dist/index.mjs +512 -0
  31. package/dist/node_modules/eta/dist/index.mjs.map +1 -0
  32. package/dist/node_modules/eta/package.json +75 -0
  33. package/dist/node_modules/jose/LICENSE.md +21 -0
  34. package/dist/node_modules/jose/README.md +153 -0
  35. package/dist/node_modules/jose/dist/types/index.d.ts +55 -0
  36. package/dist/node_modules/jose/dist/types/jwe/compact/decrypt.d.ts +31 -0
  37. package/dist/node_modules/jose/dist/types/jwe/compact/encrypt.d.ts +65 -0
  38. package/dist/node_modules/jose/dist/types/jwe/flattened/decrypt.d.ts +31 -0
  39. package/dist/node_modules/jose/dist/types/jwe/flattened/encrypt.d.ts +83 -0
  40. package/dist/node_modules/jose/dist/types/jwe/general/decrypt.d.ts +38 -0
  41. package/dist/node_modules/jose/dist/types/jwe/general/encrypt.d.ts +74 -0
  42. package/dist/node_modules/jose/dist/types/jwk/embedded.d.ts +17 -0
  43. package/dist/node_modules/jose/dist/types/jwk/thumbprint.d.ts +32 -0
  44. package/dist/node_modules/jose/dist/types/jwks/local.d.ts +29 -0
  45. package/dist/node_modules/jose/dist/types/jwks/remote.d.ts +237 -0
  46. package/dist/node_modules/jose/dist/types/jws/compact/sign.d.ts +36 -0
  47. package/dist/node_modules/jose/dist/types/jws/compact/verify.d.ts +33 -0
  48. package/dist/node_modules/jose/dist/types/jws/flattened/sign.d.ts +42 -0
  49. package/dist/node_modules/jose/dist/types/jws/flattened/verify.d.ts +33 -0
  50. package/dist/node_modules/jose/dist/types/jws/general/sign.d.ts +53 -0
  51. package/dist/node_modules/jose/dist/types/jws/general/verify.d.ts +41 -0
  52. package/dist/node_modules/jose/dist/types/jwt/decrypt.d.ts +35 -0
  53. package/dist/node_modules/jose/dist/types/jwt/encrypt.d.ts +91 -0
  54. package/dist/node_modules/jose/dist/types/jwt/sign.d.ts +43 -0
  55. package/dist/node_modules/jose/dist/types/jwt/unsecured.d.ts +43 -0
  56. package/dist/node_modules/jose/dist/types/jwt/verify.d.ts +37 -0
  57. package/dist/node_modules/jose/dist/types/key/export.d.ts +33 -0
  58. package/dist/node_modules/jose/dist/types/key/generate_key_pair.d.ts +47 -0
  59. package/dist/node_modules/jose/dist/types/key/generate_secret.d.ts +35 -0
  60. package/dist/node_modules/jose/dist/types/key/import.d.ts +83 -0
  61. package/dist/node_modules/jose/dist/types/types.d.ts +852 -0
  62. package/dist/node_modules/jose/dist/types/util/base64url.d.ts +9 -0
  63. package/dist/node_modules/jose/dist/types/util/decode_jwt.d.ts +18 -0
  64. package/dist/node_modules/jose/dist/types/util/decode_protected_header.d.ts +17 -0
  65. package/dist/node_modules/jose/dist/types/util/errors.d.ts +213 -0
  66. package/dist/node_modules/jose/dist/webapi/index.js +32 -0
  67. package/dist/node_modules/jose/dist/webapi/jwe/compact/decrypt.js +27 -0
  68. package/dist/node_modules/jose/dist/webapi/jwe/compact/encrypt.js +27 -0
  69. package/dist/node_modules/jose/dist/webapi/jwe/flattened/decrypt.js +155 -0
  70. package/dist/node_modules/jose/dist/webapi/jwe/flattened/encrypt.js +165 -0
  71. package/dist/node_modules/jose/dist/webapi/jwe/general/decrypt.js +31 -0
  72. package/dist/node_modules/jose/dist/webapi/jwe/general/encrypt.js +182 -0
  73. package/dist/node_modules/jose/dist/webapi/jwk/embedded.js +17 -0
  74. package/dist/node_modules/jose/dist/webapi/jwk/thumbprint.js +68 -0
  75. package/dist/node_modules/jose/dist/webapi/jwks/local.js +119 -0
  76. package/dist/node_modules/jose/dist/webapi/jwks/remote.js +179 -0
  77. package/dist/node_modules/jose/dist/webapi/jws/compact/sign.js +18 -0
  78. package/dist/node_modules/jose/dist/webapi/jws/compact/verify.js +21 -0
  79. package/dist/node_modules/jose/dist/webapi/jws/flattened/sign.js +89 -0
  80. package/dist/node_modules/jose/dist/webapi/jws/flattened/verify.js +110 -0
  81. package/dist/node_modules/jose/dist/webapi/jws/general/sign.js +70 -0
  82. package/dist/node_modules/jose/dist/webapi/jws/general/verify.js +24 -0
  83. package/dist/node_modules/jose/dist/webapi/jwt/decrypt.js +23 -0
  84. package/dist/node_modules/jose/dist/webapi/jwt/encrypt.js +101 -0
  85. package/dist/node_modules/jose/dist/webapi/jwt/sign.js +52 -0
  86. package/dist/node_modules/jose/dist/webapi/jwt/unsecured.js +63 -0
  87. package/dist/node_modules/jose/dist/webapi/jwt/verify.js +15 -0
  88. package/dist/node_modules/jose/dist/webapi/key/export.js +11 -0
  89. package/dist/node_modules/jose/dist/webapi/key/generate_key_pair.js +97 -0
  90. package/dist/node_modules/jose/dist/webapi/key/generate_secret.js +40 -0
  91. package/dist/node_modules/jose/dist/webapi/key/import.js +57 -0
  92. package/dist/node_modules/jose/dist/webapi/lib/aesgcmkw.js +15 -0
  93. package/dist/node_modules/jose/dist/webapi/lib/aeskw.js +25 -0
  94. package/dist/node_modules/jose/dist/webapi/lib/asn1.js +243 -0
  95. package/dist/node_modules/jose/dist/webapi/lib/base64.js +22 -0
  96. package/dist/node_modules/jose/dist/webapi/lib/buffer_utils.js +43 -0
  97. package/dist/node_modules/jose/dist/webapi/lib/check_key_type.js +122 -0
  98. package/dist/node_modules/jose/dist/webapi/lib/content_encryption.js +217 -0
  99. package/dist/node_modules/jose/dist/webapi/lib/crypto_key.js +136 -0
  100. package/dist/node_modules/jose/dist/webapi/lib/deflate.js +44 -0
  101. package/dist/node_modules/jose/dist/webapi/lib/ecdhes.js +52 -0
  102. package/dist/node_modules/jose/dist/webapi/lib/helpers.js +19 -0
  103. package/dist/node_modules/jose/dist/webapi/lib/invalid_key_input.js +27 -0
  104. package/dist/node_modules/jose/dist/webapi/lib/is_key_like.js +17 -0
  105. package/dist/node_modules/jose/dist/webapi/lib/jwk_to_key.js +107 -0
  106. package/dist/node_modules/jose/dist/webapi/lib/jwt_claims_set.js +238 -0
  107. package/dist/node_modules/jose/dist/webapi/lib/key_management.js +186 -0
  108. package/dist/node_modules/jose/dist/webapi/lib/key_to_jwk.js +31 -0
  109. package/dist/node_modules/jose/dist/webapi/lib/normalize_key.js +166 -0
  110. package/dist/node_modules/jose/dist/webapi/lib/pbes2kw.js +39 -0
  111. package/dist/node_modules/jose/dist/webapi/lib/rsaes.js +24 -0
  112. package/dist/node_modules/jose/dist/webapi/lib/signing.js +68 -0
  113. package/dist/node_modules/jose/dist/webapi/lib/type_checks.js +40 -0
  114. package/dist/node_modules/jose/dist/webapi/lib/validate_algorithms.js +10 -0
  115. package/dist/node_modules/jose/dist/webapi/lib/validate_crit.js +33 -0
  116. package/dist/node_modules/jose/dist/webapi/util/base64url.js +30 -0
  117. package/dist/node_modules/jose/dist/webapi/util/decode_jwt.js +32 -0
  118. package/dist/node_modules/jose/dist/webapi/util/decode_protected_header.js +34 -0
  119. package/dist/node_modules/jose/dist/webapi/util/errors.js +99 -0
  120. package/dist/node_modules/jose/package.json +200 -0
  121. package/dist/node_modules/light-my-request/.gitattributes +2 -0
  122. package/dist/node_modules/light-my-request/.github/dependabot.yml +13 -0
  123. package/dist/node_modules/light-my-request/.github/stale.yml +21 -0
  124. package/dist/node_modules/light-my-request/.github/workflows/benchmark.yml +30 -0
  125. package/dist/node_modules/light-my-request/.github/workflows/ci.yml +23 -0
  126. package/dist/node_modules/light-my-request/LICENSE +32 -0
  127. package/dist/node_modules/light-my-request/benchmark/benchmark.js +164 -0
  128. package/dist/node_modules/light-my-request/build/build-validation.js +100 -0
  129. package/dist/node_modules/light-my-request/eslint.config.js +9 -0
  130. package/dist/node_modules/light-my-request/index.js +2 -0
  131. package/dist/node_modules/light-my-request/lib/config-validator.js +919 -0
  132. package/dist/node_modules/light-my-request/lib/form-data.js +79 -0
  133. package/dist/node_modules/light-my-request/lib/parse-url.js +47 -0
  134. package/dist/node_modules/light-my-request/lib/request.js +290 -0
  135. package/dist/node_modules/light-my-request/lib/response.js +240 -0
  136. package/dist/node_modules/light-my-request/node_modules/process-warning/.gitattributes +2 -0
  137. package/dist/node_modules/light-my-request/node_modules/process-warning/.github/dependabot.yml +13 -0
  138. package/dist/node_modules/light-my-request/node_modules/process-warning/.github/workflows/ci.yml +24 -0
  139. package/dist/node_modules/light-my-request/node_modules/process-warning/.taprc +2 -0
  140. package/dist/node_modules/light-my-request/node_modules/process-warning/benchmarks/warn.js +25 -0
  141. package/dist/node_modules/light-my-request/node_modules/process-warning/eslint.config.js +6 -0
  142. package/dist/node_modules/light-my-request/node_modules/process-warning/examples/example.js +11 -0
  143. package/dist/node_modules/light-my-request/node_modules/process-warning/index.js +124 -0
  144. package/dist/node_modules/light-my-request/node_modules/process-warning/package.json +73 -0
  145. package/dist/node_modules/light-my-request/node_modules/process-warning/test/emit-interpolated-string.test.js +29 -0
  146. package/dist/node_modules/light-my-request/node_modules/process-warning/test/emit-once-only.test.js +28 -0
  147. package/dist/node_modules/light-my-request/node_modules/process-warning/test/emit-reset.test.js +36 -0
  148. package/dist/node_modules/light-my-request/node_modules/process-warning/test/emit-set.test.js +30 -0
  149. package/dist/node_modules/light-my-request/node_modules/process-warning/test/emit-unlimited.test.js +37 -0
  150. package/dist/node_modules/light-my-request/node_modules/process-warning/test/index.test.js +99 -0
  151. package/dist/node_modules/light-my-request/node_modules/process-warning/test/issue-88.test.js +33 -0
  152. package/dist/node_modules/light-my-request/node_modules/process-warning/test/jest.test.js +22 -0
  153. package/dist/node_modules/light-my-request/node_modules/process-warning/test/no-warnings.test.js +80 -0
  154. package/dist/node_modules/light-my-request/node_modules/process-warning/types/index.d.ts +37 -0
  155. package/dist/node_modules/light-my-request/node_modules/process-warning/types/index.test-d.ts +36 -0
  156. package/dist/node_modules/light-my-request/package.json +1 -0
  157. package/dist/node_modules/light-my-request/test/async-await.test.js +55 -0
  158. package/dist/node_modules/light-my-request/test/index.test.js +2316 -0
  159. package/dist/node_modules/light-my-request/test/request.test.js +16 -0
  160. package/dist/node_modules/light-my-request/test/response.test.js +19 -0
  161. package/dist/node_modules/light-my-request/test/stream.test.js +359 -0
  162. package/dist/node_modules/light-my-request/types/index.d.ts +128 -0
  163. package/dist/node_modules/light-my-request/types/index.test-d.ts +149 -0
  164. package/dist/node_modules/oidc-provider/LICENSE.md +21 -0
  165. package/dist/node_modules/oidc-provider/README.md +174 -0
  166. package/dist/node_modules/oidc-provider/lib/actions/authorization/assign_claims.js +28 -0
  167. package/dist/node_modules/oidc-provider/lib/actions/authorization/assign_defaults.js +17 -0
  168. package/dist/node_modules/oidc-provider/lib/actions/authorization/authenticated_client_id.js +6 -0
  169. package/dist/node_modules/oidc-provider/lib/actions/authorization/backchannel_request_remap_errors.js +17 -0
  170. package/dist/node_modules/oidc-provider/lib/actions/authorization/backchannel_request_response.js +41 -0
  171. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_ciba_context.js +12 -0
  172. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_claims.js +68 -0
  173. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_client.js +21 -0
  174. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_client_grant_type.js +21 -0
  175. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_dpop_jkt.js +35 -0
  176. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_extra_params.js +18 -0
  177. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_id_token_hint.js +23 -0
  178. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_max_age.js +25 -0
  179. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_openid_scope.js +47 -0
  180. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_pkce.js +41 -0
  181. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_prompt.js +25 -0
  182. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_redirect_uri.js +41 -0
  183. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_requested_expiry.js +16 -0
  184. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_response_mode.js +54 -0
  185. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_response_type.js +26 -0
  186. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_scope.js +53 -0
  187. package/dist/node_modules/oidc-provider/lib/actions/authorization/ciba_load_account.js +58 -0
  188. package/dist/node_modules/oidc-provider/lib/actions/authorization/ciba_required.js +13 -0
  189. package/dist/node_modules/oidc-provider/lib/actions/authorization/device_authorization_response.js +31 -0
  190. package/dist/node_modules/oidc-provider/lib/actions/authorization/device_user_flow.js +31 -0
  191. package/dist/node_modules/oidc-provider/lib/actions/authorization/device_user_flow_errors.js +37 -0
  192. package/dist/node_modules/oidc-provider/lib/actions/authorization/device_user_flow_response.js +55 -0
  193. package/dist/node_modules/oidc-provider/lib/actions/authorization/index.js +200 -0
  194. package/dist/node_modules/oidc-provider/lib/actions/authorization/interaction_emit.js +9 -0
  195. package/dist/node_modules/oidc-provider/lib/actions/authorization/interactions.js +149 -0
  196. package/dist/node_modules/oidc-provider/lib/actions/authorization/load_account.js +15 -0
  197. package/dist/node_modules/oidc-provider/lib/actions/authorization/load_grant.js +29 -0
  198. package/dist/node_modules/oidc-provider/lib/actions/authorization/load_pushed_authorization_request.js +36 -0
  199. package/dist/node_modules/oidc-provider/lib/actions/authorization/oauth_required.js +11 -0
  200. package/dist/node_modules/oidc-provider/lib/actions/authorization/oidc_required.js +27 -0
  201. package/dist/node_modules/oidc-provider/lib/actions/authorization/one_redirect_uri_clients.js +20 -0
  202. package/dist/node_modules/oidc-provider/lib/actions/authorization/process_request_object.js +214 -0
  203. package/dist/node_modules/oidc-provider/lib/actions/authorization/pushed_authorization_request_remap_errors.js +17 -0
  204. package/dist/node_modules/oidc-provider/lib/actions/authorization/pushed_authorization_request_response.js +65 -0
  205. package/dist/node_modules/oidc-provider/lib/actions/authorization/reject_registration.js +12 -0
  206. package/dist/node_modules/oidc-provider/lib/actions/authorization/reject_request_and_uri.js +12 -0
  207. package/dist/node_modules/oidc-provider/lib/actions/authorization/reject_unsupported.js +33 -0
  208. package/dist/node_modules/oidc-provider/lib/actions/authorization/respond.js +46 -0
  209. package/dist/node_modules/oidc-provider/lib/actions/authorization/resume.js +111 -0
  210. package/dist/node_modules/oidc-provider/lib/actions/authorization/strip_outside_jar_params.js +19 -0
  211. package/dist/node_modules/oidc-provider/lib/actions/authorization/unsupported_rar.js +9 -0
  212. package/dist/node_modules/oidc-provider/lib/actions/challenge.js +22 -0
  213. package/dist/node_modules/oidc-provider/lib/actions/code_verification.js +122 -0
  214. package/dist/node_modules/oidc-provider/lib/actions/discovery.js +151 -0
  215. package/dist/node_modules/oidc-provider/lib/actions/end_session.js +222 -0
  216. package/dist/node_modules/oidc-provider/lib/actions/grants/authorization_code.js +144 -0
  217. package/dist/node_modules/oidc-provider/lib/actions/grants/ciba.js +127 -0
  218. package/dist/node_modules/oidc-provider/lib/actions/grants/client_credentials.js +79 -0
  219. package/dist/node_modules/oidc-provider/lib/actions/grants/device_code.js +125 -0
  220. package/dist/node_modules/oidc-provider/lib/actions/grants/index.js +7 -0
  221. package/dist/node_modules/oidc-provider/lib/actions/grants/refresh_token.js +229 -0
  222. package/dist/node_modules/oidc-provider/lib/actions/index.js +25 -0
  223. package/dist/node_modules/oidc-provider/lib/actions/interaction.js +150 -0
  224. package/dist/node_modules/oidc-provider/lib/actions/introspection.js +164 -0
  225. package/dist/node_modules/oidc-provider/lib/actions/jwks.js +7 -0
  226. package/dist/node_modules/oidc-provider/lib/actions/registration.js +274 -0
  227. package/dist/node_modules/oidc-provider/lib/actions/revocation.js +81 -0
  228. package/dist/node_modules/oidc-provider/lib/actions/token.js +74 -0
  229. package/dist/node_modules/oidc-provider/lib/actions/userinfo.js +183 -0
  230. package/dist/node_modules/oidc-provider/lib/adapters/memory_adapter.js +95 -0
  231. package/dist/node_modules/oidc-provider/lib/consts/client_attributes.js +211 -0
  232. package/dist/node_modules/oidc-provider/lib/consts/dev_keystore.js +18 -0
  233. package/dist/node_modules/oidc-provider/lib/consts/index.js +13 -0
  234. package/dist/node_modules/oidc-provider/lib/consts/jwa.js +47 -0
  235. package/dist/node_modules/oidc-provider/lib/consts/non_rejectable_claims.js +1 -0
  236. package/dist/node_modules/oidc-provider/lib/consts/param_list.js +23 -0
  237. package/dist/node_modules/oidc-provider/lib/helpers/_/camel_case.js +1 -0
  238. package/dist/node_modules/oidc-provider/lib/helpers/_/defaults.js +28 -0
  239. package/dist/node_modules/oidc-provider/lib/helpers/_/difference.js +1 -0
  240. package/dist/node_modules/oidc-provider/lib/helpers/_/is_plain_object.js +1 -0
  241. package/dist/node_modules/oidc-provider/lib/helpers/_/map_keys.js +9 -0
  242. package/dist/node_modules/oidc-provider/lib/helpers/_/merge.js +25 -0
  243. package/dist/node_modules/oidc-provider/lib/helpers/_/omit_by.js +11 -0
  244. package/dist/node_modules/oidc-provider/lib/helpers/_/pick.js +10 -0
  245. package/dist/node_modules/oidc-provider/lib/helpers/_/pick_by.js +10 -0
  246. package/dist/node_modules/oidc-provider/lib/helpers/_/remove.js +9 -0
  247. package/dist/node_modules/oidc-provider/lib/helpers/_/set.js +18 -0
  248. package/dist/node_modules/oidc-provider/lib/helpers/_/snake_case.js +1 -0
  249. package/dist/node_modules/oidc-provider/lib/helpers/_/upper_first.js +1 -0
  250. package/dist/node_modules/oidc-provider/lib/helpers/account_claims.js +6 -0
  251. package/dist/node_modules/oidc-provider/lib/helpers/add_client.js +14 -0
  252. package/dist/node_modules/oidc-provider/lib/helpers/als.js +3 -0
  253. package/dist/node_modules/oidc-provider/lib/helpers/append_www_authenticate.js +9 -0
  254. package/dist/node_modules/oidc-provider/lib/helpers/attention.js +23 -0
  255. package/dist/node_modules/oidc-provider/lib/helpers/base64url.js +11 -0
  256. package/dist/node_modules/oidc-provider/lib/helpers/certificate_thumbprint.js +15 -0
  257. package/dist/node_modules/oidc-provider/lib/helpers/challenge.js +111 -0
  258. package/dist/node_modules/oidc-provider/lib/helpers/check_attest_binding.js +10 -0
  259. package/dist/node_modules/oidc-provider/lib/helpers/claims.js +79 -0
  260. package/dist/node_modules/oidc-provider/lib/helpers/client_id_metadata_document.js +198 -0
  261. package/dist/node_modules/oidc-provider/lib/helpers/client_schema.js +700 -0
  262. package/dist/node_modules/oidc-provider/lib/helpers/combined_scope.js +17 -0
  263. package/dist/node_modules/oidc-provider/lib/helpers/configuration.js +544 -0
  264. package/dist/node_modules/oidc-provider/lib/helpers/constant_equals.js +20 -0
  265. package/dist/node_modules/oidc-provider/lib/helpers/defaults.js +3510 -0
  266. package/dist/node_modules/oidc-provider/lib/helpers/epoch_time.js +1 -0
  267. package/dist/node_modules/oidc-provider/lib/helpers/err_out.js +17 -0
  268. package/dist/node_modules/oidc-provider/lib/helpers/errors.js +161 -0
  269. package/dist/node_modules/oidc-provider/lib/helpers/features.js +51 -0
  270. package/dist/node_modules/oidc-provider/lib/helpers/fetch_body_check.js +25 -0
  271. package/dist/node_modules/oidc-provider/lib/helpers/fetch_request.js +221 -0
  272. package/dist/node_modules/oidc-provider/lib/helpers/filter_claims.js +16 -0
  273. package/dist/node_modules/oidc-provider/lib/helpers/formatters.js +24 -0
  274. package/dist/node_modules/oidc-provider/lib/helpers/grant_common.js +214 -0
  275. package/dist/node_modules/oidc-provider/lib/helpers/html_safe.js +19 -0
  276. package/dist/node_modules/oidc-provider/lib/helpers/initialize_adapter.js +24 -0
  277. package/dist/node_modules/oidc-provider/lib/helpers/initialize_app.js +243 -0
  278. package/dist/node_modules/oidc-provider/lib/helpers/initialize_clients.js +24 -0
  279. package/dist/node_modules/oidc-provider/lib/helpers/initialize_keystore.js +310 -0
  280. package/dist/node_modules/oidc-provider/lib/helpers/interaction_policy/check.js +21 -0
  281. package/dist/node_modules/oidc-provider/lib/helpers/interaction_policy/index.js +43 -0
  282. package/dist/node_modules/oidc-provider/lib/helpers/interaction_policy/prompt.js +95 -0
  283. package/dist/node_modules/oidc-provider/lib/helpers/interaction_policy/prompts/consent.js +105 -0
  284. package/dist/node_modules/oidc-provider/lib/helpers/interaction_policy/prompts/login.js +162 -0
  285. package/dist/node_modules/oidc-provider/lib/helpers/jwt.js +211 -0
  286. package/dist/node_modules/oidc-provider/lib/helpers/keystore.js +301 -0
  287. package/dist/node_modules/oidc-provider/lib/helpers/nanoid.js +5 -0
  288. package/dist/node_modules/oidc-provider/lib/helpers/oidc_context.js +284 -0
  289. package/dist/node_modules/oidc-provider/lib/helpers/params.js +27 -0
  290. package/dist/node_modules/oidc-provider/lib/helpers/pkce.js +30 -0
  291. package/dist/node_modules/oidc-provider/lib/helpers/pkce_format.js +17 -0
  292. package/dist/node_modules/oidc-provider/lib/helpers/process_response_types.js +202 -0
  293. package/dist/node_modules/oidc-provider/lib/helpers/re_render_errors.js +39 -0
  294. package/dist/node_modules/oidc-provider/lib/helpers/redirect_uri.js +16 -0
  295. package/dist/node_modules/oidc-provider/lib/helpers/resolve_resource.js +33 -0
  296. package/dist/node_modules/oidc-provider/lib/helpers/resolve_response_mode.js +7 -0
  297. package/dist/node_modules/oidc-provider/lib/helpers/resource_server.js +20 -0
  298. package/dist/node_modules/oidc-provider/lib/helpers/revoke.js +27 -0
  299. package/dist/node_modules/oidc-provider/lib/helpers/script_src_sha.js +21 -0
  300. package/dist/node_modules/oidc-provider/lib/helpers/sector_identifier.js +19 -0
  301. package/dist/node_modules/oidc-provider/lib/helpers/sector_validate.js +55 -0
  302. package/dist/node_modules/oidc-provider/lib/helpers/set_rt_bindings.js +21 -0
  303. package/dist/node_modules/oidc-provider/lib/helpers/token_find.js +51 -0
  304. package/dist/node_modules/oidc-provider/lib/helpers/type_validators.js +8 -0
  305. package/dist/node_modules/oidc-provider/lib/helpers/user_code_form.js +19 -0
  306. package/dist/node_modules/oidc-provider/lib/helpers/user_codes.js +38 -0
  307. package/dist/node_modules/oidc-provider/lib/helpers/valid_url.js +8 -0
  308. package/dist/node_modules/oidc-provider/lib/helpers/validate_dpop.js +129 -0
  309. package/dist/node_modules/oidc-provider/lib/helpers/validate_presence.js +17 -0
  310. package/dist/node_modules/oidc-provider/lib/helpers/weak_cache.js +11 -0
  311. package/dist/node_modules/oidc-provider/lib/index.js +21 -0
  312. package/dist/node_modules/oidc-provider/lib/models/access_token.js +31 -0
  313. package/dist/node_modules/oidc-provider/lib/models/authorization_code.js +27 -0
  314. package/dist/node_modules/oidc-provider/lib/models/backchannel_authentication_request.js +26 -0
  315. package/dist/node_modules/oidc-provider/lib/models/base_model.js +141 -0
  316. package/dist/node_modules/oidc-provider/lib/models/base_token.js +86 -0
  317. package/dist/node_modules/oidc-provider/lib/models/client.js +593 -0
  318. package/dist/node_modules/oidc-provider/lib/models/client_credentials.js +19 -0
  319. package/dist/node_modules/oidc-provider/lib/models/device_code.js +44 -0
  320. package/dist/node_modules/oidc-provider/lib/models/formats/dynamic.js +21 -0
  321. package/dist/node_modules/oidc-provider/lib/models/formats/index.js +14 -0
  322. package/dist/node_modules/oidc-provider/lib/models/formats/jwt.js +198 -0
  323. package/dist/node_modules/oidc-provider/lib/models/formats/opaque.js +58 -0
  324. package/dist/node_modules/oidc-provider/lib/models/grant.js +243 -0
  325. package/dist/node_modules/oidc-provider/lib/models/id_token.js +271 -0
  326. package/dist/node_modules/oidc-provider/lib/models/index.js +37 -0
  327. package/dist/node_modules/oidc-provider/lib/models/initial_access_token.js +12 -0
  328. package/dist/node_modules/oidc-provider/lib/models/interaction.js +73 -0
  329. package/dist/node_modules/oidc-provider/lib/models/mixins/apply.js +4 -0
  330. package/dist/node_modules/oidc-provider/lib/models/mixins/consumable.js +17 -0
  331. package/dist/node_modules/oidc-provider/lib/models/mixins/has_format.js +46 -0
  332. package/dist/node_modules/oidc-provider/lib/models/mixins/has_grant_id.js +12 -0
  333. package/dist/node_modules/oidc-provider/lib/models/mixins/has_grant_type.js +8 -0
  334. package/dist/node_modules/oidc-provider/lib/models/mixins/has_policies.js +38 -0
  335. package/dist/node_modules/oidc-provider/lib/models/mixins/is_attestation_constrained.js +15 -0
  336. package/dist/node_modules/oidc-provider/lib/models/mixins/is_sender_constrained.js +50 -0
  337. package/dist/node_modules/oidc-provider/lib/models/mixins/is_session_bound.js +38 -0
  338. package/dist/node_modules/oidc-provider/lib/models/mixins/set_audience.js +21 -0
  339. package/dist/node_modules/oidc-provider/lib/models/mixins/stores_auth.js +16 -0
  340. package/dist/node_modules/oidc-provider/lib/models/mixins/stores_pkce.js +9 -0
  341. package/dist/node_modules/oidc-provider/lib/models/pushed_authorization_request.js +21 -0
  342. package/dist/node_modules/oidc-provider/lib/models/refresh_token.js +47 -0
  343. package/dist/node_modules/oidc-provider/lib/models/registration_access_token.js +8 -0
  344. package/dist/node_modules/oidc-provider/lib/models/replay_detection.js +31 -0
  345. package/dist/node_modules/oidc-provider/lib/models/session.js +192 -0
  346. package/dist/node_modules/oidc-provider/lib/provider.js +453 -0
  347. package/dist/node_modules/oidc-provider/lib/response_modes/form_post.js +36 -0
  348. package/dist/node_modules/oidc-provider/lib/response_modes/fragment.js +7 -0
  349. package/dist/node_modules/oidc-provider/lib/response_modes/index.js +15 -0
  350. package/dist/node_modules/oidc-provider/lib/response_modes/jwt.js +43 -0
  351. package/dist/node_modules/oidc-provider/lib/response_modes/query.js +7 -0
  352. package/dist/node_modules/oidc-provider/lib/response_modes/web_message.js +55 -0
  353. package/dist/node_modules/oidc-provider/lib/shared/assemble_params.js +7 -0
  354. package/dist/node_modules/oidc-provider/lib/shared/attest_client_auth.js +111 -0
  355. package/dist/node_modules/oidc-provider/lib/shared/authorization_error_handler.js +104 -0
  356. package/dist/node_modules/oidc-provider/lib/shared/check_rar.js +75 -0
  357. package/dist/node_modules/oidc-provider/lib/shared/check_resource.js +77 -0
  358. package/dist/node_modules/oidc-provider/lib/shared/client_auth.js +263 -0
  359. package/dist/node_modules/oidc-provider/lib/shared/conditional_body.js +9 -0
  360. package/dist/node_modules/oidc-provider/lib/shared/cors.js +49 -0
  361. package/dist/node_modules/oidc-provider/lib/shared/error_handler.js +59 -0
  362. package/dist/node_modules/oidc-provider/lib/shared/jwt_client_auth.js +79 -0
  363. package/dist/node_modules/oidc-provider/lib/shared/no_cache.js +4 -0
  364. package/dist/node_modules/oidc-provider/lib/shared/reject_dupes.js +45 -0
  365. package/dist/node_modules/oidc-provider/lib/shared/reject_structured_tokens.js +18 -0
  366. package/dist/node_modules/oidc-provider/lib/shared/selective_body.js +60 -0
  367. package/dist/node_modules/oidc-provider/lib/shared/session.js +68 -0
  368. package/dist/node_modules/oidc-provider/lib/shared/set_www_authenticate_header.js +52 -0
  369. package/dist/node_modules/oidc-provider/lib/views/index.js +22 -0
  370. package/dist/node_modules/oidc-provider/lib/views/interaction.js +171 -0
  371. package/dist/node_modules/oidc-provider/lib/views/layout.js +237 -0
  372. package/dist/node_modules/oidc-provider/lib/views/login.js +43 -0
  373. package/dist/node_modules/oidc-provider/node_modules/@koa/router/LICENSE +21 -0
  374. package/dist/node_modules/oidc-provider/node_modules/@koa/router/README.md +1370 -0
  375. package/dist/node_modules/oidc-provider/node_modules/@koa/router/dist/index.d.mts +1003 -0
  376. package/dist/node_modules/oidc-provider/node_modules/@koa/router/dist/index.d.ts +1003 -0
  377. package/dist/node_modules/oidc-provider/node_modules/@koa/router/dist/index.js +1616 -0
  378. package/dist/node_modules/oidc-provider/node_modules/@koa/router/dist/index.mjs +1573 -0
  379. package/dist/node_modules/oidc-provider/node_modules/@koa/router/package.json +122 -0
  380. package/dist/node_modules/oidc-provider/node_modules/debug/LICENSE +20 -0
  381. package/dist/node_modules/oidc-provider/node_modules/debug/README.md +481 -0
  382. package/dist/node_modules/oidc-provider/node_modules/debug/package.json +64 -0
  383. package/dist/node_modules/oidc-provider/node_modules/debug/src/browser.js +272 -0
  384. package/dist/node_modules/oidc-provider/node_modules/debug/src/common.js +292 -0
  385. package/dist/node_modules/oidc-provider/node_modules/debug/src/index.js +10 -0
  386. package/dist/node_modules/oidc-provider/node_modules/debug/src/node.js +263 -0
  387. package/dist/node_modules/oidc-provider/node_modules/http-errors/HISTORY.md +186 -0
  388. package/dist/node_modules/oidc-provider/node_modules/http-errors/LICENSE +23 -0
  389. package/dist/node_modules/oidc-provider/node_modules/http-errors/README.md +169 -0
  390. package/dist/node_modules/oidc-provider/node_modules/http-errors/index.js +290 -0
  391. package/dist/node_modules/oidc-provider/node_modules/http-errors/package.json +54 -0
  392. package/dist/node_modules/oidc-provider/node_modules/jsesc/LICENSE-MIT.txt +20 -0
  393. package/dist/node_modules/oidc-provider/node_modules/jsesc/README.md +422 -0
  394. package/dist/node_modules/oidc-provider/node_modules/jsesc/bin/jsesc +148 -0
  395. package/dist/node_modules/oidc-provider/node_modules/jsesc/jsesc.js +337 -0
  396. package/dist/node_modules/oidc-provider/node_modules/jsesc/man/jsesc.1 +94 -0
  397. package/dist/node_modules/oidc-provider/node_modules/jsesc/package.json +56 -0
  398. package/dist/node_modules/oidc-provider/node_modules/nanoid/LICENSE +20 -0
  399. package/dist/node_modules/oidc-provider/node_modules/nanoid/README.md +38 -0
  400. package/dist/node_modules/oidc-provider/node_modules/nanoid/bin/nanoid.js +55 -0
  401. package/dist/node_modules/oidc-provider/node_modules/nanoid/index.browser.js +29 -0
  402. package/dist/node_modules/oidc-provider/node_modules/nanoid/index.d.ts +106 -0
  403. package/dist/node_modules/oidc-provider/node_modules/nanoid/index.js +47 -0
  404. package/dist/node_modules/oidc-provider/node_modules/nanoid/nanoid.js +1 -0
  405. package/dist/node_modules/oidc-provider/node_modules/nanoid/non-secure/index.d.ts +48 -0
  406. package/dist/node_modules/oidc-provider/node_modules/nanoid/non-secure/index.js +21 -0
  407. package/dist/node_modules/oidc-provider/node_modules/nanoid/package.json +46 -0
  408. package/dist/node_modules/oidc-provider/node_modules/nanoid/url-alphabet/index.js +2 -0
  409. package/dist/node_modules/oidc-provider/node_modules/path-to-regexp/LICENSE +21 -0
  410. package/dist/node_modules/oidc-provider/node_modules/path-to-regexp/Readme.md +224 -0
  411. package/dist/node_modules/oidc-provider/node_modules/path-to-regexp/dist/index.d.ts +144 -0
  412. package/dist/node_modules/oidc-provider/node_modules/path-to-regexp/dist/index.js +409 -0
  413. package/dist/node_modules/oidc-provider/node_modules/path-to-regexp/dist/index.js.map +1 -0
  414. package/dist/node_modules/oidc-provider/node_modules/path-to-regexp/package.json +64 -0
  415. package/dist/node_modules/oidc-provider/node_modules/statuses/HISTORY.md +87 -0
  416. package/dist/node_modules/oidc-provider/node_modules/statuses/LICENSE +23 -0
  417. package/dist/node_modules/oidc-provider/node_modules/statuses/README.md +139 -0
  418. package/dist/node_modules/oidc-provider/node_modules/statuses/codes.json +65 -0
  419. package/dist/node_modules/oidc-provider/node_modules/statuses/index.js +146 -0
  420. package/dist/node_modules/oidc-provider/node_modules/statuses/package.json +49 -0
  421. package/dist/node_modules/oidc-provider/package.json +95 -0
  422. package/dist/node_modules/quick-lru/index.d.ts +178 -0
  423. package/dist/node_modules/quick-lru/index.js +329 -0
  424. package/dist/node_modules/quick-lru/license +9 -0
  425. package/dist/node_modules/quick-lru/package.json +54 -0
  426. package/dist/node_modules/quick-lru/readme.md +236 -0
  427. package/dist/node_modules/statuses/HISTORY.md +65 -0
  428. package/dist/node_modules/statuses/LICENSE +23 -0
  429. package/dist/node_modules/statuses/README.md +127 -0
  430. package/dist/node_modules/statuses/codes.json +66 -0
  431. package/dist/node_modules/statuses/index.js +113 -0
  432. package/dist/node_modules/statuses/package.json +48 -0
  433. package/dist/server/cache-adapter.d.ts +33 -0
  434. package/dist/server/cache-adapter.js +159 -0
  435. package/dist/server/index.d.ts +10 -0
  436. package/dist/server/index.js +48 -0
  437. package/dist/server/interaction.d.ts +26 -0
  438. package/dist/server/interaction.js +172 -0
  439. package/dist/server/paths.d.ts +19 -0
  440. package/dist/server/paths.js +64 -0
  441. package/dist/server/plugin.d.ts +16 -0
  442. package/dist/server/plugin.js +108 -0
  443. package/dist/server/provider-dispatch.d.ts +32 -0
  444. package/dist/server/provider-dispatch.js +252 -0
  445. package/dist/server/service.d.ts +63 -0
  446. package/dist/server/service.js +540 -0
  447. package/dist/server/utils.d.ts +12 -0
  448. package/dist/server/utils.js +58 -0
  449. package/package.json +24 -0
  450. package/server.d.ts +2 -0
  451. package/server.js +1 -0
@@ -0,0 +1,852 @@
1
+ /** Generic JSON Web Key Parameters. */
2
+ export interface JWKParameters {
3
+ /** JWK "kty" (Key Type) Parameter */
4
+ kty?: string
5
+ /**
6
+ * JWK "alg" (Algorithm) Parameter
7
+ *
8
+ * @see {@link https://github.com/panva/jose/issues/210 Algorithm Key Requirements}
9
+ */
10
+ alg?: string
11
+ /** JWK "key_ops" (Key Operations) Parameter */
12
+ key_ops?: string[]
13
+ /** JWK "ext" (Extractable) Parameter */
14
+ ext?: boolean
15
+ /** JWK "use" (Public Key Use) Parameter */
16
+ use?: string
17
+ /** JWK "x5c" (X.509 Certificate Chain) Parameter */
18
+ x5c?: string[]
19
+ /** JWK "x5t" (X.509 Certificate SHA-1 Thumbprint) Parameter */
20
+ x5t?: string
21
+ /** JWK "x5t#S256" (X.509 Certificate SHA-256 Thumbprint) Parameter */
22
+ 'x5t#S256'?: string
23
+ /** JWK "x5u" (X.509 URL) Parameter */
24
+ x5u?: string
25
+ /** JWK "kid" (Key ID) Parameter */
26
+ kid?: string
27
+ }
28
+
29
+ /** Convenience interface for Public OKP JSON Web Keys */
30
+ export interface JWK_OKP_Public extends JWKParameters {
31
+ /** OKP JWK "crv" (The Subtype of Key Pair) Parameter */
32
+ crv: string
33
+ /** OKP JWK "x" (The public key) Parameter */
34
+ x: string
35
+ }
36
+
37
+ /** Convenience interface for Private OKP JSON Web Keys */
38
+ export interface JWK_OKP_Private extends JWK_OKP_Public {
39
+ /** OKP JWK "d" (The Private Key) Parameter */
40
+ d: string
41
+ }
42
+
43
+ /** Convenience interface for Public AKP JSON Web Keys */
44
+ export interface JWK_AKP_Public extends JWKParameters {
45
+ /** JWK "alg" (Algorithm) Parameter */
46
+ alg: string
47
+ /** AKP JWK "pub" (The Public key) Parameter */
48
+ pub: string
49
+ }
50
+
51
+ /** Convenience interface for Private AKP JSON Web Keys */
52
+ export interface JWK_AKP_Private extends JWK_AKP_Public {
53
+ /** AKP JWK "priv" (The Private Key) Parameter */
54
+ priv: string
55
+ }
56
+
57
+ /** Convenience interface for Public EC JSON Web Keys */
58
+ export interface JWK_EC_Public extends JWKParameters {
59
+ /** EC JWK "crv" (Curve) Parameter */
60
+ crv: string
61
+ /** EC JWK "x" (X Coordinate) Parameter */
62
+ x: string
63
+ /** EC JWK "y" (Y Coordinate) Parameter */
64
+ y: string
65
+ }
66
+
67
+ /** Convenience interface for Private EC JSON Web Keys */
68
+ export interface JWK_EC_Private extends JWK_EC_Public {
69
+ /** EC JWK "d" (ECC Private Key) Parameter */
70
+ d: string
71
+ }
72
+
73
+ /** Convenience interface for Public RSA JSON Web Keys */
74
+ export interface JWK_RSA_Public extends JWKParameters {
75
+ /** RSA JWK "e" (Exponent) Parameter */
76
+ e: string
77
+ /** RSA JWK "n" (Modulus) Parameter */
78
+ n: string
79
+ }
80
+
81
+ /** Convenience interface for Private RSA JSON Web Keys */
82
+ export interface JWK_RSA_Private extends JWK_RSA_Public {
83
+ /** RSA JWK "d" (Private Exponent) Parameter */
84
+ d: string
85
+ /** RSA JWK "dp" (First Factor CRT Exponent) Parameter */
86
+ dp: string
87
+ /** RSA JWK "dq" (Second Factor CRT Exponent) Parameter */
88
+ dq: string
89
+ /** RSA JWK "p" (First Prime Factor) Parameter */
90
+ p: string
91
+ /** RSA JWK "q" (Second Prime Factor) Parameter */
92
+ q: string
93
+ /** RSA JWK "qi" (First CRT Coefficient) Parameter */
94
+ qi: string
95
+ }
96
+
97
+ /** Convenience interface for oct JSON Web Keys */
98
+ export interface JWK_oct extends JWKParameters {
99
+ /** Oct JWK "k" (Key Value) Parameter */
100
+ k: string
101
+ }
102
+
103
+ /**
104
+ * JSON Web Key ({@link https://www.rfc-editor.org/rfc/rfc7517 JWK}). "RSA", "EC", "OKP", "AKP", and
105
+ * "oct" key types are supported.
106
+ *
107
+ * @see {@link JWK_AKP_Public}
108
+ * @see {@link JWK_AKP_Private}
109
+ * @see {@link JWK_OKP_Public}
110
+ * @see {@link JWK_OKP_Private}
111
+ * @see {@link JWK_EC_Public}
112
+ * @see {@link JWK_EC_Private}
113
+ * @see {@link JWK_RSA_Public}
114
+ * @see {@link JWK_RSA_Private}
115
+ * @see {@link JWK_oct}
116
+ */
117
+ export interface JWK extends JWKParameters {
118
+ /**
119
+ * - EC JWK "crv" (Curve) Parameter
120
+ * - OKP JWK "crv" (The Subtype of Key Pair) Parameter
121
+ */
122
+ crv?: string
123
+ /**
124
+ * - Private RSA JWK "d" (Private Exponent) Parameter
125
+ * - Private EC JWK "d" (ECC Private Key) Parameter
126
+ * - Private OKP JWK "d" (The Private Key) Parameter
127
+ */
128
+ d?: string
129
+ /** Private RSA JWK "dp" (First Factor CRT Exponent) Parameter */
130
+ dp?: string
131
+ /** Private RSA JWK "dq" (Second Factor CRT Exponent) Parameter */
132
+ dq?: string
133
+ /** RSA JWK "e" (Exponent) Parameter */
134
+ e?: string
135
+ /** Oct JWK "k" (Key Value) Parameter */
136
+ k?: string
137
+ /** RSA JWK "n" (Modulus) Parameter */
138
+ n?: string
139
+ /** Private RSA JWK "p" (First Prime Factor) Parameter */
140
+ p?: string
141
+ /** Private RSA JWK "q" (Second Prime Factor) Parameter */
142
+ q?: string
143
+ /** Private RSA JWK "qi" (First CRT Coefficient) Parameter */
144
+ qi?: string
145
+ /**
146
+ * - EC JWK "x" (X Coordinate) Parameter
147
+ * - OKP JWK "x" (The public key) Parameter
148
+ */
149
+ x?: string
150
+ /** EC JWK "y" (Y Coordinate) Parameter */
151
+ y?: string
152
+ /** AKP JWK "pub" (Public Key) Parameter */
153
+ pub?: string
154
+ /** AKP JWK "priv" (Private key) Parameter */
155
+ priv?: string
156
+ }
157
+
158
+ /**
159
+ * @private
160
+ *
161
+ * @internal
162
+ */
163
+ export interface GenericGetKeyFunction<IProtectedHeader, IToken, ReturnKeyTypes> {
164
+ /**
165
+ * Dynamic key resolution function. No token components have been verified at the time of this
166
+ * function call.
167
+ *
168
+ * If a suitable key for the token cannot be matched, throw an error instead.
169
+ *
170
+ * @param protectedHeader JWE or JWS Protected Header.
171
+ * @param token The consumed JWE or JWS token.
172
+ */
173
+ (protectedHeader: IProtectedHeader, token: IToken): Promise<ReturnKeyTypes> | ReturnKeyTypes
174
+ }
175
+
176
+ /**
177
+ * Generic Interface for consuming operations dynamic key resolution.
178
+ *
179
+ * @param IProtectedHeader Type definition of the JWE or JWS Protected Header.
180
+ * @param IToken Type definition of the consumed JWE or JWS token.
181
+ */
182
+ export interface GetKeyFunction<IProtectedHeader, IToken> extends GenericGetKeyFunction<
183
+ IProtectedHeader,
184
+ IToken,
185
+ CryptoKey | KeyObject | JWK | Uint8Array
186
+ > {}
187
+
188
+ /**
189
+ * Flattened JWS definition for verify function inputs, allows payload as {@link !Uint8Array} for
190
+ * detached signature validation.
191
+ */
192
+ export interface FlattenedJWSInput {
193
+ /**
194
+ * The "header" member MUST be present and contain the value JWS Unprotected Header when the JWS
195
+ * Unprotected Header value is non- empty; otherwise, it MUST be absent. This value is represented
196
+ * as an unencoded JSON object, rather than as a string. These Header Parameter values are not
197
+ * integrity protected.
198
+ */
199
+ header?: JWSHeaderParameters
200
+
201
+ /**
202
+ * The "payload" member MUST be present and contain the value BASE64URL(JWS Payload). When RFC7797
203
+ * "b64": false is used the value passed may also be a {@link !Uint8Array}.
204
+ */
205
+ payload: string | Uint8Array
206
+
207
+ /**
208
+ * The "protected" member MUST be present and contain the value BASE64URL(UTF8(JWS Protected
209
+ * Header)) when the JWS Protected Header value is non-empty; otherwise, it MUST be absent. These
210
+ * Header Parameter values are integrity protected.
211
+ */
212
+ protected?: string
213
+
214
+ /** The "signature" member MUST be present and contain the value BASE64URL(JWS Signature). */
215
+ signature: string
216
+ }
217
+
218
+ /**
219
+ * General JWS definition for verify function inputs, allows payload as {@link !Uint8Array} for
220
+ * detached signature validation.
221
+ */
222
+ export interface GeneralJWSInput {
223
+ /**
224
+ * The "payload" member MUST be present and contain the value BASE64URL(JWS Payload). When when
225
+ * JWS Unencoded Payload ({@link https://www.rfc-editor.org/rfc/rfc7797 RFC7797}) "b64": false is
226
+ * used the value passed may also be a {@link !Uint8Array}.
227
+ */
228
+ payload: string | Uint8Array
229
+
230
+ /**
231
+ * The "signatures" member value MUST be an array of JSON objects. Each object represents a
232
+ * signature or MAC over the JWS Payload and the JWS Protected Header.
233
+ */
234
+ signatures: Omit<FlattenedJWSInput, 'payload'>[]
235
+ }
236
+
237
+ /**
238
+ * Flattened JWS JSON Serialization Syntax token. Payload is returned as an empty string when JWS
239
+ * Unencoded Payload ({@link https://www.rfc-editor.org/rfc/rfc7797 RFC7797}) is used.
240
+ */
241
+ export interface FlattenedJWS extends Partial<FlattenedJWSInput> {
242
+ payload: string
243
+ signature: string
244
+ }
245
+
246
+ /**
247
+ * General JWS JSON Serialization Syntax token. Payload is returned as an empty string when JWS
248
+ * Unencoded Payload ({@link https://www.rfc-editor.org/rfc/rfc7797 RFC7797}) is used.
249
+ */
250
+ export interface GeneralJWS {
251
+ payload: string
252
+ signatures: Omit<FlattenedJWSInput, 'payload'>[]
253
+ }
254
+
255
+ /** Header Parameters common to JWE and JWS */
256
+ export interface JoseHeaderParameters {
257
+ /** "kid" (Key ID) Header Parameter */
258
+ kid?: string
259
+
260
+ /** "x5t" (X.509 Certificate SHA-1 Thumbprint) Header Parameter */
261
+ x5t?: string
262
+
263
+ /** "x5c" (X.509 Certificate Chain) Header Parameter */
264
+ x5c?: string[]
265
+
266
+ /** "x5u" (X.509 URL) Header Parameter */
267
+ x5u?: string
268
+
269
+ /** "jku" (JWK Set URL) Header Parameter */
270
+ jku?: string
271
+
272
+ /** "jwk" (JSON Web Key) Header Parameter */
273
+ jwk?: Pick<JWK, 'kty' | 'crv' | 'x' | 'y' | 'e' | 'n' | 'alg' | 'pub'>
274
+
275
+ /** "typ" (Type) Header Parameter */
276
+ typ?: string
277
+
278
+ /** "cty" (Content Type) Header Parameter */
279
+ cty?: string
280
+ }
281
+
282
+ /** Recognized JWS Header Parameters, any other Header Members may also be present. */
283
+ export interface JWSHeaderParameters extends JoseHeaderParameters {
284
+ /**
285
+ * JWS "alg" (Algorithm) Header Parameter
286
+ *
287
+ * @see {@link https://github.com/panva/jose/issues/210#jws-alg Algorithm Key Requirements}
288
+ */
289
+ alg?: string
290
+
291
+ /**
292
+ * This JWS Extension Header Parameter modifies the JWS Payload representation and the JWS Signing
293
+ * Input computation as per {@link https://www.rfc-editor.org/rfc/rfc7797 RFC7797}.
294
+ */
295
+ b64?: boolean
296
+
297
+ /** JWS "crit" (Critical) Header Parameter */
298
+ crit?: string[]
299
+
300
+ /** Any other JWS Header member. */
301
+ [propName: string]: unknown
302
+ }
303
+
304
+ /** Recognized JWE Key Management-related Header Parameters. */
305
+ export interface JWEKeyManagementHeaderParameters {
306
+ /**
307
+ * ECDH-ES "apu" (Agreement PartyUInfo). This will be used as a JOSE Header Parameter and will be
308
+ * used in ECDH's ConcatKDF.
309
+ */
310
+ apu?: Uint8Array
311
+
312
+ /**
313
+ * ECDH-ES "apv" (Agreement PartyVInfo). This will be used as a JOSE Header Parameter and will be
314
+ * used in ECDH's ConcatKDF.
315
+ */
316
+ apv?: Uint8Array
317
+ /**
318
+ * @deprecated You should not use this parameter. It is only intended for testing and vector
319
+ * validation purposes.
320
+ */
321
+ p2c?: number
322
+ /**
323
+ * @deprecated You should not use this parameter. It is only intended for testing and vector
324
+ * validation purposes.
325
+ */
326
+ p2s?: Uint8Array
327
+ /**
328
+ * @deprecated You should not use this parameter. It is only intended for testing and vector
329
+ * validation purposes.
330
+ */
331
+ iv?: Uint8Array
332
+ /**
333
+ * @deprecated You should not use this parameter. It is only intended for testing and vector
334
+ * validation purposes.
335
+ */
336
+ epk?: CryptoKey | KeyObject
337
+ }
338
+
339
+ /** Flattened JWE JSON Serialization Syntax token. */
340
+ export interface FlattenedJWE {
341
+ /**
342
+ * The "aad" member MUST be present and contain the value BASE64URL(JWE AAD)) when the JWE AAD
343
+ * value is non-empty; otherwise, it MUST be absent. A JWE AAD value can be included to supply a
344
+ * base64url-encoded value to be integrity protected but not encrypted.
345
+ */
346
+ aad?: string
347
+
348
+ /** The "ciphertext" member MUST be present and contain the value BASE64URL(JWE Ciphertext). */
349
+ ciphertext: string
350
+
351
+ /**
352
+ * The "encrypted_key" member MUST be present and contain the value BASE64URL(JWE Encrypted Key)
353
+ * when the JWE Encrypted Key value is non-empty; otherwise, it MUST be absent.
354
+ */
355
+ encrypted_key?: string
356
+
357
+ /**
358
+ * The "header" member MUST be present and contain the value JWE Per- Recipient Unprotected Header
359
+ * when the JWE Per-Recipient Unprotected Header value is non-empty; otherwise, it MUST be absent.
360
+ * This value is represented as an unencoded JSON object, rather than as a string. These Header
361
+ * Parameter values are not integrity protected.
362
+ */
363
+ header?: JWEHeaderParameters
364
+
365
+ /**
366
+ * The "iv" member MUST be present and contain the value BASE64URL(JWE Initialization Vector) when
367
+ * the JWE Initialization Vector value is non-empty; otherwise, it MUST be absent.
368
+ */
369
+ iv?: string
370
+
371
+ /**
372
+ * The "protected" member MUST be present and contain the value BASE64URL(UTF8(JWE Protected
373
+ * Header)) when the JWE Protected Header value is non-empty; otherwise, it MUST be absent. These
374
+ * Header Parameter values are integrity protected.
375
+ */
376
+ protected?: string
377
+
378
+ /**
379
+ * The "tag" member MUST be present and contain the value BASE64URL(JWE Authentication Tag) when
380
+ * the JWE Authentication Tag value is non-empty; otherwise, it MUST be absent.
381
+ */
382
+ tag?: string
383
+
384
+ /**
385
+ * The "unprotected" member MUST be present and contain the value JWE Shared Unprotected Header
386
+ * when the JWE Shared Unprotected Header value is non-empty; otherwise, it MUST be absent. This
387
+ * value is represented as an unencoded JSON object, rather than as a string. These Header
388
+ * Parameter values are not integrity protected.
389
+ */
390
+ unprotected?: JWEHeaderParameters
391
+ }
392
+
393
+ /** General JWE JSON Serialization Syntax token. */
394
+ export interface GeneralJWE extends Omit<FlattenedJWE, 'encrypted_key' | 'header'> {
395
+ recipients: Pick<FlattenedJWE, 'encrypted_key' | 'header'>[]
396
+ }
397
+
398
+ /** Recognized JWE Header Parameters, any other Header members may also be present. */
399
+ export interface JWEHeaderParameters extends JoseHeaderParameters {
400
+ /**
401
+ * JWE "alg" (Algorithm) Header Parameter
402
+ *
403
+ * @see {@link https://github.com/panva/jose/issues/210#jwe-alg Algorithm Key Requirements}
404
+ */
405
+ alg?: string
406
+
407
+ /**
408
+ * JWE "enc" (Encryption Algorithm) Header Parameter
409
+ *
410
+ * @see {@link https://github.com/panva/jose/issues/210#jwe-alg Algorithm Key Requirements}
411
+ */
412
+ enc?: string
413
+
414
+ /** JWE "crit" (Critical) Header Parameter */
415
+ crit?: string[]
416
+
417
+ /**
418
+ * JWE "zip" (Compression Algorithm) Header Parameter.
419
+ *
420
+ * The only supported value is `"DEF"` (DEFLATE). Requires the `CompressionStream` /
421
+ * `DecompressionStream` APIs to be available in the runtime.
422
+ *
423
+ * @see {@link https://www.rfc-editor.org/rfc/rfc7516#section-4.1.3 JWE "zip" Header Parameter}
424
+ */
425
+ zip?: string
426
+
427
+ /** Any other JWE Header member. */
428
+ [propName: string]: unknown
429
+ }
430
+
431
+ /** Shared Interface with a "crit" property for all sign, verify, encrypt and decrypt operations. */
432
+ export interface CritOption {
433
+ /**
434
+ * An object with keys representing recognized "crit" (Critical) Header Parameter names. The value
435
+ * for those is either `true` or `false`. `true` when the Header Parameter MUST be integrity
436
+ * protected, `false` when it's irrelevant.
437
+ *
438
+ * This makes the "Extension Header Parameter "..." is not recognized" error go away.
439
+ *
440
+ * Use this when a given JWS/JWT/JWE profile requires the use of proprietary non-registered "crit"
441
+ * (Critical) Header Parameters. This will only make sure the Header Parameter is syntactically
442
+ * correct when provided and that it is optionally integrity protected. It will not process the
443
+ * Header Parameter in any way or reject the operation if it is missing. You MUST still verify the
444
+ * Header Parameter was present and process it according to the profile's validation steps after
445
+ * the operation succeeds.
446
+ *
447
+ * The JWS extension Header Parameter `b64` is always recognized and processed properly. No other
448
+ * registered Header Parameters that need this kind of default built-in treatment are currently
449
+ * available.
450
+ */
451
+ crit?: {
452
+ [propName: string]: boolean
453
+ }
454
+ }
455
+
456
+ /** JWE Decryption options. */
457
+ export interface DecryptOptions extends CritOption {
458
+ /**
459
+ * A list of accepted JWE "alg" (Algorithm) Header Parameter values. By default all "alg"
460
+ * (Algorithm) Header Parameter values applicable for the used key/secret are allowed except for
461
+ * all PBES2 Key Management Algorithms, these need to be explicitly allowed using this option.
462
+ */
463
+ keyManagementAlgorithms?: string[]
464
+
465
+ /**
466
+ * A list of accepted JWE "enc" (Encryption Algorithm) Header Parameter values. By default all
467
+ * "enc" (Encryption Algorithm) values applicable for the used key/secret are allowed.
468
+ */
469
+ contentEncryptionAlgorithms?: string[]
470
+
471
+ /**
472
+ * (PBES2 Key Management Algorithms only) Maximum allowed "p2c" (PBES2 Count) Header Parameter
473
+ * value. The PBKDF2 iteration count defines the algorithm's computational expense. By default
474
+ * this value is set to 10000.
475
+ */
476
+ maxPBES2Count?: number
477
+
478
+ /**
479
+ * Maximum allowed size (in bytes) of the decompressed plaintext when the JWE `"zip"` (Compression
480
+ * Algorithm) Header Parameter is present. By default this value is set to 250000 (250 KB). The
481
+ * value must be `0`, a positive safe integer, or `Infinity`.
482
+ *
483
+ * Set to `0` to reject all compressed JWEs during decryption.
484
+ *
485
+ * Set to `Infinity` to disable the decompressed size limit.
486
+ */
487
+ maxDecompressedLength?: number
488
+ }
489
+
490
+ /** JWE Encryption options. */
491
+ export interface EncryptOptions extends CritOption {}
492
+
493
+ /** JWT Claims Set verification options. */
494
+ export interface JWTClaimVerificationOptions {
495
+ /**
496
+ * Expected JWT "aud" (Audience) Claim value(s).
497
+ *
498
+ * This option makes the JWT "aud" (Audience) Claim presence required.
499
+ */
500
+ audience?: string | string[]
501
+
502
+ /**
503
+ * Clock skew tolerance
504
+ *
505
+ * - In seconds when number (e.g. 5)
506
+ * - Resolved into a number of seconds when a string (e.g. "5 seconds", "10 minutes", "2 hours").
507
+ *
508
+ * Used when validating the JWT "nbf" (Not Before) and "exp" (Expiration Time) claims, and when
509
+ * validating the "iat" (Issued At) claim if the {@link maxTokenAge `maxTokenAge` option} is set.
510
+ */
511
+ clockTolerance?: string | number
512
+
513
+ /**
514
+ * Expected JWT "iss" (Issuer) Claim value(s).
515
+ *
516
+ * This option makes the JWT "iss" (Issuer) Claim presence required.
517
+ */
518
+ issuer?: string | string[]
519
+
520
+ /**
521
+ * Maximum time elapsed (in seconds) from the JWT "iat" (Issued At) Claim value.
522
+ *
523
+ * - In seconds when number (e.g. 5)
524
+ * - Resolved into a number of seconds when a string (e.g. "5 seconds", "10 minutes", "2 hours").
525
+ *
526
+ * This option makes the JWT "iat" (Issued At) Claim presence required.
527
+ */
528
+ maxTokenAge?: string | number
529
+
530
+ /**
531
+ * Expected JWT "sub" (Subject) Claim value.
532
+ *
533
+ * This option makes the JWT "sub" (Subject) Claim presence required.
534
+ */
535
+ subject?: string
536
+
537
+ /**
538
+ * Expected JWT "typ" (Type) Header Parameter value.
539
+ *
540
+ * This option makes the JWT "typ" (Type) Header Parameter presence required.
541
+ */
542
+ typ?: string
543
+
544
+ /** Date to use when comparing NumericDate claims, defaults to `new Date()`. */
545
+ currentDate?: Date
546
+
547
+ /**
548
+ * Array of required Claim Names that must be present in the JWT Claims Set. Default is that: if
549
+ * the {@link issuer `issuer` option} is set, then JWT "iss" (Issuer) Claim must be present; if the
550
+ * {@link audience `audience` option} is set, then JWT "aud" (Audience) Claim must be present; if
551
+ * the {@link subject `subject` option} is set, then JWT "sub" (Subject) Claim must be present; if
552
+ * the {@link maxTokenAge `maxTokenAge` option} is set, then JWT "iat" (Issued At) Claim must be
553
+ * present.
554
+ */
555
+ requiredClaims?: string[]
556
+ }
557
+
558
+ /** JWS Verification options. */
559
+ export interface VerifyOptions extends CritOption {
560
+ /**
561
+ * A list of accepted JWS "alg" (Algorithm) Header Parameter values. By default all "alg"
562
+ * (Algorithm) values applicable for the used key/secret are allowed.
563
+ *
564
+ * > [!NOTE]\
565
+ * > Unsecured JWTs (`{ "alg": "none" }`) are never accepted by this API.
566
+ */
567
+ algorithms?: string[]
568
+ }
569
+
570
+ /** JWS Signing options. */
571
+ export interface SignOptions extends CritOption {}
572
+
573
+ /** Recognized JWT Claims Set members, any other members may also be present. */
574
+ export interface JWTPayload {
575
+ /**
576
+ * JWT Issuer
577
+ *
578
+ * @see {@link https://www.rfc-editor.org/rfc/rfc7519#section-4.1.1 RFC7519#section-4.1.1}
579
+ */
580
+ iss?: string
581
+
582
+ /**
583
+ * JWT Subject
584
+ *
585
+ * @see {@link https://www.rfc-editor.org/rfc/rfc7519#section-4.1.2 RFC7519#section-4.1.2}
586
+ */
587
+ sub?: string
588
+
589
+ /**
590
+ * JWT Audience
591
+ *
592
+ * @see {@link https://www.rfc-editor.org/rfc/rfc7519#section-4.1.3 RFC7519#section-4.1.3}
593
+ */
594
+ aud?: string | string[]
595
+
596
+ /**
597
+ * JWT ID
598
+ *
599
+ * @see {@link https://www.rfc-editor.org/rfc/rfc7519#section-4.1.7 RFC7519#section-4.1.7}
600
+ */
601
+ jti?: string
602
+
603
+ /**
604
+ * JWT Not Before
605
+ *
606
+ * @see {@link https://www.rfc-editor.org/rfc/rfc7519#section-4.1.5 RFC7519#section-4.1.5}
607
+ */
608
+ nbf?: number
609
+
610
+ /**
611
+ * JWT Expiration Time
612
+ *
613
+ * @see {@link https://www.rfc-editor.org/rfc/rfc7519#section-4.1.4 RFC7519#section-4.1.4}
614
+ */
615
+ exp?: number
616
+
617
+ /**
618
+ * JWT Issued At
619
+ *
620
+ * @see {@link https://www.rfc-editor.org/rfc/rfc7519#section-4.1.6 RFC7519#section-4.1.6}
621
+ */
622
+ iat?: number
623
+
624
+ /** Any other JWT Claim Set member. */
625
+ [propName: string]: unknown
626
+ }
627
+
628
+ /** Flattened JWE JSON Serialization Syntax decryption result */
629
+ export interface FlattenedDecryptResult {
630
+ /** JWE AAD. */
631
+ additionalAuthenticatedData?: Uint8Array
632
+
633
+ /** Plaintext. */
634
+ plaintext: Uint8Array
635
+
636
+ /** JWE Protected Header. */
637
+ protectedHeader?: JWEHeaderParameters
638
+
639
+ /** JWE Shared Unprotected Header. */
640
+ sharedUnprotectedHeader?: JWEHeaderParameters
641
+
642
+ /** JWE Per-Recipient Unprotected Header. */
643
+ unprotectedHeader?: JWEHeaderParameters
644
+ }
645
+
646
+ /** General JWE JSON Serialization Syntax decryption result */
647
+ export interface GeneralDecryptResult extends FlattenedDecryptResult {}
648
+
649
+ /** Compact JWE decryption result */
650
+ export interface CompactDecryptResult {
651
+ /** Plaintext. */
652
+ plaintext: Uint8Array
653
+
654
+ /** JWE Protected Header. */
655
+ protectedHeader: CompactJWEHeaderParameters
656
+ }
657
+
658
+ /** Flattened JWS JSON Serialization Syntax verification result */
659
+ export interface FlattenedVerifyResult {
660
+ /** JWS Payload. */
661
+ payload: Uint8Array
662
+
663
+ /** JWS Protected Header. */
664
+ protectedHeader?: JWSHeaderParameters
665
+
666
+ /** JWS Unprotected Header. */
667
+ unprotectedHeader?: JWSHeaderParameters
668
+ }
669
+
670
+ /** General JWS JSON Serialization Syntax verification result */
671
+ export interface GeneralVerifyResult extends FlattenedVerifyResult {}
672
+
673
+ /** Compact JWS verification result */
674
+ export interface CompactVerifyResult {
675
+ /** JWS Payload. */
676
+ payload: Uint8Array
677
+
678
+ /** JWS Protected Header. */
679
+ protectedHeader: CompactJWSHeaderParameters
680
+ }
681
+
682
+ /** Signed JSON Web Token (JWT) verification result */
683
+ export interface JWTVerifyResult<PayloadType = JWTPayload> {
684
+ /** JWT Claims Set. */
685
+ payload: PayloadType & JWTPayload
686
+
687
+ /** JWS Protected Header. */
688
+ protectedHeader: JWTHeaderParameters
689
+ }
690
+
691
+ /** Encrypted JSON Web Token (JWT) decryption result */
692
+ export interface JWTDecryptResult<PayloadType = JWTPayload> {
693
+ /** JWT Claims Set. */
694
+ payload: PayloadType & JWTPayload
695
+
696
+ /** JWE Protected Header. */
697
+ protectedHeader: CompactJWEHeaderParameters
698
+ }
699
+
700
+ /** When key resolver functions are used this becomes part of successful resolves */
701
+ export interface ResolvedKey {
702
+ /** Key resolved from the key resolver function. */
703
+ key: CryptoKey | Uint8Array
704
+ }
705
+
706
+ /** Recognized Compact JWS Header Parameters, any other Header Members may also be present. */
707
+ export interface CompactJWSHeaderParameters extends JWSHeaderParameters {
708
+ alg: string
709
+ }
710
+
711
+ /** Recognized Signed JWT Header Parameters, any other Header Members may also be present. */
712
+ export interface JWTHeaderParameters extends CompactJWSHeaderParameters {
713
+ b64?: true
714
+ }
715
+
716
+ /** Recognized Compact JWE Header Parameters, any other Header Members may also be present. */
717
+ export interface CompactJWEHeaderParameters extends JWEHeaderParameters {
718
+ alg: string
719
+ enc: string
720
+ }
721
+
722
+ /** JSON Web Key Set */
723
+ export interface JSONWebKeySet {
724
+ keys: JWK[]
725
+ }
726
+
727
+ /**
728
+ * {@link !KeyObject} is a representation of a key/secret available in the Node.js runtime. You may
729
+ * use the Node.js runtime APIs {@link !createPublicKey}, {@link !createPrivateKey}, and
730
+ * {@link !createSecretKey} to obtain a {@link !KeyObject} from your existing key material.
731
+ */
732
+ export interface KeyObject {
733
+ type: string
734
+ }
735
+
736
+ /**
737
+ * {@link !CryptoKey} is a representation of a key/secret available in all supported runtimes. In
738
+ * addition to the {@link key/import Key Import Functions} you may use the
739
+ * {@link !SubtleCrypto.importKey} API to obtain a {@link !CryptoKey} from your existing key
740
+ * material.
741
+ */
742
+ export type CryptoKey = Extract<
743
+ Awaited<ReturnType<typeof crypto.subtle.generateKey>>,
744
+ { type: string }
745
+ >
746
+
747
+ /** Generic interface for JWT producing classes. */
748
+ export interface ProduceJWT {
749
+ /**
750
+ * Set the "iss" (Issuer) Claim.
751
+ *
752
+ * @param issuer "Issuer" Claim value to set on the JWT Claims Set.
753
+ */
754
+ setIssuer(issuer: string): this
755
+
756
+ /**
757
+ * Set the "sub" (Subject) Claim.
758
+ *
759
+ * @param subject "sub" (Subject) Claim value to set on the JWT Claims Set.
760
+ */
761
+ setSubject(subject: string): this
762
+
763
+ /**
764
+ * Set the "aud" (Audience) Claim.
765
+ *
766
+ * @param audience "aud" (Audience) Claim value to set on the JWT Claims Set.
767
+ */
768
+ setAudience(audience: string | string[]): this
769
+
770
+ /**
771
+ * Set the "jti" (JWT ID) Claim.
772
+ *
773
+ * @param jwtId "jti" (JWT ID) Claim value to set on the JWT Claims Set.
774
+ */
775
+ setJti(jwtId: string): this
776
+
777
+ /**
778
+ * Set the "nbf" (Not Before) Claim.
779
+ *
780
+ * - If a `number` is passed as an argument it is used as the claim directly.
781
+ * - If a `Date` instance is passed as an argument it is converted to unix timestamp and used as the
782
+ * claim.
783
+ * - If a `string` is passed as an argument it is resolved to a time span, and then added to the
784
+ * current unix timestamp and used as the claim.
785
+ *
786
+ * Format used for time span should be a number followed by a unit, such as "5 minutes" or "1
787
+ * day".
788
+ *
789
+ * Valid units are: "sec", "secs", "second", "seconds", "s", "minute", "minutes", "min", "mins",
790
+ * "m", "hour", "hours", "hr", "hrs", "h", "day", "days", "d", "week", "weeks", "w", "year",
791
+ * "years", "yr", "yrs", and "y". It is not possible to specify months. 365.25 days is used as an
792
+ * alias for a year.
793
+ *
794
+ * If the string is suffixed with "ago", or prefixed with a "-", the resulting time span gets
795
+ * subtracted from the current unix timestamp. A "from now" suffix can also be used for
796
+ * readability when adding to the current unix timestamp.
797
+ *
798
+ * @param input "nbf" (Not Before) Claim value to set on the JWT Claims Set.
799
+ */
800
+ setNotBefore(input: number | string | Date): this
801
+
802
+ /**
803
+ * Set the "exp" (Expiration Time) Claim.
804
+ *
805
+ * - If a `number` is passed as an argument it is used as the claim directly.
806
+ * - If a `Date` instance is passed as an argument it is converted to unix timestamp and used as the
807
+ * claim.
808
+ * - If a `string` is passed as an argument it is resolved to a time span, and then added to the
809
+ * current unix timestamp and used as the claim.
810
+ *
811
+ * Format used for time span should be a number followed by a unit, such as "5 minutes" or "1
812
+ * day".
813
+ *
814
+ * Valid units are: "sec", "secs", "second", "seconds", "s", "minute", "minutes", "min", "mins",
815
+ * "m", "hour", "hours", "hr", "hrs", "h", "day", "days", "d", "week", "weeks", "w", "year",
816
+ * "years", "yr", "yrs", and "y". It is not possible to specify months. 365.25 days is used as an
817
+ * alias for a year.
818
+ *
819
+ * If the string is suffixed with "ago", or prefixed with a "-", the resulting time span gets
820
+ * subtracted from the current unix timestamp. A "from now" suffix can also be used for
821
+ * readability when adding to the current unix timestamp.
822
+ *
823
+ * @param input "exp" (Expiration Time) Claim value to set on the JWT Claims Set.
824
+ */
825
+ setExpirationTime(input: number | string | Date): this
826
+
827
+ /**
828
+ * Set the "iat" (Issued At) Claim.
829
+ *
830
+ * - If no argument is used the current unix timestamp is used as the claim.
831
+ * - If a `number` is passed as an argument it is used as the claim directly.
832
+ * - If a `Date` instance is passed as an argument it is converted to unix timestamp and used as the
833
+ * claim.
834
+ * - If a `string` is passed as an argument it is resolved to a time span, and then added to the
835
+ * current unix timestamp and used as the claim.
836
+ *
837
+ * Format used for time span should be a number followed by a unit, such as "5 minutes" or "1
838
+ * day".
839
+ *
840
+ * Valid units are: "sec", "secs", "second", "seconds", "s", "minute", "minutes", "min", "mins",
841
+ * "m", "hour", "hours", "hr", "hrs", "h", "day", "days", "d", "week", "weeks", "w", "year",
842
+ * "years", "yr", "yrs", and "y". It is not possible to specify months. 365.25 days is used as an
843
+ * alias for a year.
844
+ *
845
+ * If the string is suffixed with "ago", or prefixed with a "-", the resulting time span gets
846
+ * subtracted from the current unix timestamp. A "from now" suffix can also be used for
847
+ * readability when adding to the current unix timestamp.
848
+ *
849
+ * @param input "iat" (Expiration Time) Claim value to set on the JWT Claims Set.
850
+ */
851
+ setIssuedAt(input?: number | string | Date): this
852
+ }