@absolutejs/auth 0.55.5 → 0.55.7

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 (219) hide show
  1. package/README.md +6 -1
  2. package/dist/agents/index.js +36 -6
  3. package/dist/agents/index.js.map +6 -5
  4. package/dist/index.d.ts +3400 -8
  5. package/dist/index.js +777 -522
  6. package/dist/index.js.map +17 -13
  7. package/dist/server.d.ts +6 -6
  8. package/dist/server.js +775 -522
  9. package/dist/server.js.map +18 -14
  10. package/package.json +1 -1
  11. package/dist/abuse/captcha.d.ts +0 -11
  12. package/dist/abuse/config.d.ts +0 -29
  13. package/dist/actions.d.ts +0 -27
  14. package/dist/adaptive/config.d.ts +0 -34
  15. package/dist/adaptive/fingerprint.d.ts +0 -2
  16. package/dist/adaptive/inMemoryStores.d.ts +0 -3
  17. package/dist/adaptive/postgresStores.d.ts +0 -245
  18. package/dist/adaptive/types.d.ts +0 -62
  19. package/dist/agents/config.d.ts +0 -44
  20. package/dist/agents/context.d.ts +0 -46
  21. package/dist/agents/idJag.d.ts +0 -49
  22. package/dist/agents/inMemoryStores.d.ts +0 -4
  23. package/dist/agents/oidcAdapter.d.ts +0 -12
  24. package/dist/agents/postgresStores.d.ts +0 -569
  25. package/dist/agents/principal.d.ts +0 -4
  26. package/dist/agents/registration.d.ts +0 -162
  27. package/dist/agents/registrationClient.d.ts +0 -50
  28. package/dist/agents/routes.d.ts +0 -214
  29. package/dist/agents/types.d.ts +0 -129
  30. package/dist/apikeys/config.d.ts +0 -64
  31. package/dist/apikeys/inMemoryStores.d.ts +0 -4
  32. package/dist/apikeys/postgresStores.d.ts +0 -359
  33. package/dist/apikeys/routes.d.ts +0 -83
  34. package/dist/apikeys/types.d.ts +0 -53
  35. package/dist/audit/config.d.ts +0 -9
  36. package/dist/audit/export.d.ts +0 -2
  37. package/dist/audit/inMemoryAuditStore.d.ts +0 -2
  38. package/dist/audit/integrity.d.ts +0 -19
  39. package/dist/audit/postgresAuditStore.d.ts +0 -116
  40. package/dist/audit/siem.d.ts +0 -11
  41. package/dist/audit/types.d.ts +0 -19
  42. package/dist/audit/wrap.d.ts +0 -9
  43. package/dist/authInstance.d.ts +0 -7
  44. package/dist/authorization/config.d.ts +0 -19
  45. package/dist/authorization/protectPermission.d.ts +0 -52
  46. package/dist/compliance/cipher.d.ts +0 -5
  47. package/dist/compliance/config.d.ts +0 -18
  48. package/dist/compliance/redaction.d.ts +0 -8
  49. package/dist/compliance/routes.d.ts +0 -89
  50. package/dist/constants.d.ts +0 -10
  51. package/dist/credentials/backgroundOps.d.ts +0 -45
  52. package/dist/credentials/config.d.ts +0 -68
  53. package/dist/credentials/emailValidation.d.ts +0 -9
  54. package/dist/credentials/emailVerification.d.ts +0 -83
  55. package/dist/credentials/import.d.ts +0 -34
  56. package/dist/credentials/inMemoryCredentialStore.d.ts +0 -2
  57. package/dist/credentials/legacyHashers.d.ts +0 -3
  58. package/dist/credentials/login.d.ts +0 -76
  59. package/dist/credentials/passwordPolicy.d.ts +0 -15
  60. package/dist/credentials/passwordReset.d.ts +0 -87
  61. package/dist/credentials/postgresCredentialStore.d.ts +0 -235
  62. package/dist/credentials/register.d.ts +0 -54
  63. package/dist/credentials/routes.d.ts +0 -201
  64. package/dist/credentials/types.d.ts +0 -26
  65. package/dist/crypto.d.ts +0 -32
  66. package/dist/errors.d.ts +0 -12
  67. package/dist/federation/tokenStore.d.ts +0 -29
  68. package/dist/fga/config.d.ts +0 -53
  69. package/dist/fga/inMemoryStores.d.ts +0 -3
  70. package/dist/fga/postgresStores.d.ts +0 -116
  71. package/dist/fga/redisCheckCache.d.ts +0 -11
  72. package/dist/fga/schema.d.ts +0 -2
  73. package/dist/fga/types.d.ts +0 -28
  74. package/dist/htmx/renderers.d.ts +0 -8
  75. package/dist/htmx/routes.d.ts +0 -514
  76. package/dist/htmx/types.d.ts +0 -129
  77. package/dist/linkedProviders/inMemoryStores.d.ts +0 -9
  78. package/dist/linkedProviders/neonStores.d.ts +0 -484
  79. package/dist/linkedProviders/oauthResolver.d.ts +0 -9
  80. package/dist/linkedProviders/resolver.d.ts +0 -22
  81. package/dist/lockout/config.d.ts +0 -17
  82. package/dist/lockout/inMemoryLockoutStore.d.ts +0 -2
  83. package/dist/lockout/postgresLockoutStore.d.ts +0 -71
  84. package/dist/lockout/redisLockoutStore.d.ts +0 -3
  85. package/dist/lockout/types.d.ts +0 -12
  86. package/dist/mfa/backupCodes.d.ts +0 -5
  87. package/dist/mfa/challenge.d.ts +0 -70
  88. package/dist/mfa/config.d.ts +0 -50
  89. package/dist/mfa/gate.d.ts +0 -2
  90. package/dist/mfa/inMemoryMfaStore.d.ts +0 -2
  91. package/dist/mfa/management.d.ts +0 -106
  92. package/dist/mfa/postgresMfaStore.d.ts +0 -206
  93. package/dist/mfa/rotation.d.ts +0 -17
  94. package/dist/mfa/routes.d.ts +0 -234
  95. package/dist/mfa/secret.d.ts +0 -2
  96. package/dist/mfa/sms.d.ts +0 -105
  97. package/dist/mfa/totp.d.ts +0 -91
  98. package/dist/mfa/types.d.ts +0 -23
  99. package/dist/migrations/generate.d.ts +0 -2
  100. package/dist/migrations/index.d.ts +0 -5
  101. package/dist/migrations/runner.d.ts +0 -13
  102. package/dist/migrations/types.d.ts +0 -14
  103. package/dist/oidc/clientAuth.d.ts +0 -19
  104. package/dist/oidc/clientIdMetadata.d.ts +0 -32
  105. package/dist/oidc/config.d.ts +0 -295
  106. package/dist/oidc/dpop.d.ts +0 -23
  107. package/dist/oidc/inMemoryStores.d.ts +0 -11
  108. package/dist/oidc/inMemoryVciStores.d.ts +0 -3
  109. package/dist/oidc/jar.d.ts +0 -14
  110. package/dist/oidc/keys.d.ts +0 -25
  111. package/dist/oidc/logout.d.ts +0 -38
  112. package/dist/oidc/mtls.d.ts +0 -11
  113. package/dist/oidc/par.d.ts +0 -28
  114. package/dist/oidc/postgresStores.d.ts +0 -1187
  115. package/dist/oidc/registration.d.ts +0 -138
  116. package/dist/oidc/routes.d.ts +0 -568
  117. package/dist/oidc/types.d.ts +0 -143
  118. package/dist/oidc/userinfo.d.ts +0 -21
  119. package/dist/oidc/vci.d.ts +0 -159
  120. package/dist/oidc/vciRoutes.d.ts +0 -92
  121. package/dist/organizations/config.d.ts +0 -46
  122. package/dist/organizations/inMemoryOrganizationStore.d.ts +0 -2
  123. package/dist/organizations/operations.d.ts +0 -39
  124. package/dist/organizations/postgresOrganizationStore.d.ts +0 -340
  125. package/dist/organizations/routes.d.ts +0 -298
  126. package/dist/organizations/types.d.ts +0 -45
  127. package/dist/passwordless/config.d.ts +0 -43
  128. package/dist/passwordless/inMemoryPasswordlessTokenStore.d.ts +0 -2
  129. package/dist/passwordless/postgresPasswordlessTokenStore.d.ts +0 -56
  130. package/dist/passwordless/routes.d.ts +0 -162
  131. package/dist/passwordless/types.d.ts +0 -9
  132. package/dist/portal/config.d.ts +0 -34
  133. package/dist/portal/inMemorySetupSessionStore.d.ts +0 -2
  134. package/dist/portal/operations.d.ts +0 -10
  135. package/dist/portal/postgresSetupSessionStore.d.ts +0 -116
  136. package/dist/portal/routes.d.ts +0 -160
  137. package/dist/portal/types.d.ts +0 -16
  138. package/dist/providers/clients.d.ts +0 -1818
  139. package/dist/providersFromEnv.d.ts +0 -19
  140. package/dist/roles/config.d.ts +0 -27
  141. package/dist/roles/inMemoryRoleStore.d.ts +0 -2
  142. package/dist/roles/operations.d.ts +0 -8
  143. package/dist/roles/postgresRoleStore.d.ts +0 -86
  144. package/dist/roles/resolver.d.ts +0 -17
  145. package/dist/roles/routes.d.ts +0 -105
  146. package/dist/roles/types.d.ts +0 -14
  147. package/dist/routes/authorize.d.ts +0 -102
  148. package/dist/routes/callback.d.ts +0 -64
  149. package/dist/routes/profile.d.ts +0 -70
  150. package/dist/routes/protectRoute.d.ts +0 -51
  151. package/dist/routes/refresh.d.ts +0 -74
  152. package/dist/routes/revoke.d.ts +0 -73
  153. package/dist/routes/sessions.d.ts +0 -103
  154. package/dist/routes/signout.d.ts +0 -70
  155. package/dist/routes/stepUp.d.ts +0 -48
  156. package/dist/routes/userStatus.d.ts +0 -72
  157. package/dist/scim/config.d.ts +0 -57
  158. package/dist/scim/extensions.d.ts +0 -30
  159. package/dist/scim/inMemoryScimTokenStore.d.ts +0 -2
  160. package/dist/scim/postgresScimTokenStore.d.ts +0 -86
  161. package/dist/scim/routes.d.ts +0 -366
  162. package/dist/scim/serialize.d.ts +0 -83
  163. package/dist/scim/types.d.ts +0 -54
  164. package/dist/serverConfig.d.ts +0 -10
  165. package/dist/session/access.d.ts +0 -33
  166. package/dist/session/anonymous.d.ts +0 -12
  167. package/dist/session/cleanup.d.ts +0 -45
  168. package/dist/session/impersonation.d.ts +0 -34
  169. package/dist/session/inMemoryStore.d.ts +0 -7
  170. package/dist/session/internalData.d.ts +0 -34
  171. package/dist/session/multiSession.d.ts +0 -27
  172. package/dist/session/neonStore.d.ts +0 -513
  173. package/dist/session/promote.d.ts +0 -23
  174. package/dist/session/redisStore.d.ts +0 -6
  175. package/dist/session/sessionsConfig.d.ts +0 -9
  176. package/dist/session/state.d.ts +0 -33
  177. package/dist/session/types.d.ts +0 -20
  178. package/dist/session/userSessions.d.ts +0 -19
  179. package/dist/sso/config.d.ts +0 -149
  180. package/dist/sso/discoveryRoute.d.ts +0 -63
  181. package/dist/sso/inMemorySamlServiceProviderStore.d.ts +0 -2
  182. package/dist/sso/inMemorySsoConnectionStore.d.ts +0 -2
  183. package/dist/sso/oidcRoutes.d.ts +0 -98
  184. package/dist/sso/postgresSamlServiceProviderStore.d.ts +0 -101
  185. package/dist/sso/postgresSsoConnectionStore.d.ts +0 -116
  186. package/dist/sso/samlIdpRoutes.d.ts +0 -139
  187. package/dist/sso/samlRoutes.d.ts +0 -178
  188. package/dist/sso/types.d.ts +0 -53
  189. package/dist/stores/postgres.d.ts +0 -5
  190. package/dist/stores/redis.d.ts +0 -5
  191. package/dist/telemetry/tracing.d.ts +0 -15
  192. package/dist/tenancy.d.ts +0 -9
  193. package/dist/typeGuards.d.ts +0 -6
  194. package/dist/typebox.d.ts +0 -4
  195. package/dist/types.d.ts +0 -421
  196. package/dist/utils.d.ts +0 -45
  197. package/dist/vault/config.d.ts +0 -20
  198. package/dist/vault/inMemoryVaultStore.d.ts +0 -2
  199. package/dist/vault/postgresVaultStore.d.ts +0 -86
  200. package/dist/vault/types.d.ts +0 -14
  201. package/dist/vc/inMemoryVpStores.d.ts +0 -2
  202. package/dist/vc/openid4vp.d.ts +0 -82
  203. package/dist/vc/postgresVcStores.d.ts +0 -300
  204. package/dist/vc/sdJwt.d.ts +0 -37
  205. package/dist/vc/statusList.d.ts +0 -29
  206. package/dist/vc/statusListRoutes.d.ts +0 -63
  207. package/dist/vc/vpRoutes.d.ts +0 -120
  208. package/dist/webauthn/adapter.d.ts +0 -59
  209. package/dist/webauthn/config.d.ts +0 -36
  210. package/dist/webauthn/inMemoryWebAuthnCredentialStore.d.ts +0 -2
  211. package/dist/webauthn/postgresWebAuthnCredentialStore.d.ts +0 -146
  212. package/dist/webauthn/routes.d.ts +0 -155
  213. package/dist/webauthn/types.d.ts +0 -17
  214. package/dist/webhooks/config.d.ts +0 -34
  215. package/dist/webhooks/dispatcher.d.ts +0 -3
  216. package/dist/webhooks/inMemoryStore.d.ts +0 -2
  217. package/dist/webhooks/postgresStore.d.ts +0 -116
  218. package/dist/webhooks/sign.d.ts +0 -11
  219. package/dist/webhooks/types.d.ts +0 -25
@@ -1,234 +0,0 @@
1
- import { Elysia } from 'elysia';
2
- import type { MfaRouteProps } from './config';
3
- export declare const mfaRoutes: <UserType>(config: MfaRouteProps<UserType>) => Elysia<"", {
4
- decorator: {};
5
- store: {
6
- session: import("../session/internalData").InternalSessionRecord<UserType>;
7
- unregisteredSession: import("../session/internalData").InternalUnregisteredSessionRecord;
8
- };
9
- derive: {};
10
- resolve: {};
11
- }, {
12
- typebox: {};
13
- error: {};
14
- }, {
15
- schema: {};
16
- standaloneSchema: {};
17
- macro: {};
18
- macroFn: {};
19
- parser: {};
20
- response: {};
21
- }, {
22
- [x: string]: {
23
- get: {
24
- body: unknown;
25
- params: {};
26
- query: unknown;
27
- headers: unknown;
28
- response: {
29
- 401: "Authentication required";
30
- 200: {
31
- backupCodesRemaining: number;
32
- enabled: boolean;
33
- smsBackup: {
34
- enabled: boolean;
35
- phone: string | null;
36
- };
37
- totp: {
38
- enabled: boolean;
39
- };
40
- };
41
- 422: {
42
- type: "validation";
43
- on: string;
44
- summary?: string;
45
- message?: string;
46
- found?: unknown;
47
- property?: string;
48
- expected?: string;
49
- };
50
- };
51
- };
52
- };
53
- } & {
54
- [x: string]: {
55
- delete: {
56
- body: unknown;
57
- params: {};
58
- query: unknown;
59
- headers: unknown;
60
- response: {
61
- 401: "Authentication required";
62
- 200: {
63
- readonly status: "disabled";
64
- };
65
- 422: {
66
- type: "validation";
67
- on: string;
68
- summary?: string;
69
- message?: string;
70
- found?: unknown;
71
- property?: string;
72
- expected?: string;
73
- };
74
- };
75
- };
76
- };
77
- } & {
78
- [x: string]: {
79
- post: {
80
- body: unknown;
81
- params: {};
82
- query: unknown;
83
- headers: unknown;
84
- response: {
85
- 401: "Authentication required";
86
- 200: {
87
- readonly secret: string;
88
- readonly uri: string;
89
- };
90
- 422: {
91
- type: "validation";
92
- on: string;
93
- summary?: string;
94
- message?: string;
95
- found?: unknown;
96
- property?: string;
97
- expected?: string;
98
- };
99
- };
100
- };
101
- };
102
- } & {
103
- [x: string]: {
104
- post: {
105
- body: {
106
- code: string;
107
- };
108
- params: {};
109
- query: unknown;
110
- headers: unknown;
111
- response: {
112
- 400: "No TOTP enrollment in progress" | "Invalid TOTP code";
113
- 401: "Authentication required";
114
- 200: {
115
- readonly backupCodes: string[];
116
- };
117
- 422: {
118
- type: "validation";
119
- on: string;
120
- summary?: string;
121
- message?: string;
122
- found?: unknown;
123
- property?: string;
124
- expected?: string;
125
- };
126
- };
127
- };
128
- };
129
- } & {
130
- [x: string]: {
131
- post: {
132
- body: {
133
- phone: string;
134
- };
135
- params: {};
136
- query: unknown;
137
- headers: unknown;
138
- response: {
139
- 400: "Phone must be in E.164 format";
140
- 401: "Authentication required";
141
- 200: {
142
- readonly phone: string;
143
- };
144
- 501: "SMS MFA is not configured";
145
- 422: {
146
- type: "validation";
147
- on: string;
148
- summary?: string;
149
- message?: string;
150
- found?: unknown;
151
- property?: string;
152
- expected?: string;
153
- };
154
- };
155
- };
156
- };
157
- } & {
158
- [x: string]: {
159
- post: {
160
- body: {
161
- code: string;
162
- };
163
- params: {};
164
- query: unknown;
165
- headers: unknown;
166
- response: {
167
- 400: "No SMS enrollment in progress" | "SMS code expired" | "Invalid SMS code";
168
- 401: "Authentication required";
169
- 200: {
170
- readonly status: "enrolled";
171
- };
172
- 429: "Too many attempts";
173
- 422: {
174
- type: "validation";
175
- on: string;
176
- summary?: string;
177
- message?: string;
178
- found?: unknown;
179
- property?: string;
180
- expected?: string;
181
- };
182
- };
183
- };
184
- };
185
- } & {
186
- [x: string]: {
187
- post: {
188
- body: {
189
- code?: string | undefined;
190
- action?: "verify" | "send" | undefined;
191
- factor?: "sms" | undefined;
192
- };
193
- params: {};
194
- query: unknown;
195
- headers: unknown;
196
- response: {
197
- 400: "SMS code required" | "No SMS code in progress";
198
- 401: "SMS code expired" | "Too many attempts" | "No MFA challenge in progress" | "Invalid MFA code";
199
- 200: {
200
- readonly status: "sent";
201
- } | {
202
- readonly status: "authenticated";
203
- };
204
- 422: {
205
- type: "validation";
206
- on: string;
207
- summary?: string;
208
- message?: string;
209
- found?: unknown;
210
- property?: string;
211
- expected?: string;
212
- };
213
- };
214
- };
215
- };
216
- }, {
217
- derive: {};
218
- resolve: {};
219
- schema: {};
220
- standaloneSchema: {};
221
- response: {};
222
- }, {
223
- derive: {};
224
- resolve: {};
225
- schema: {};
226
- standaloneSchema: {};
227
- response: {};
228
- } & {
229
- derive: {};
230
- resolve: {};
231
- schema: {};
232
- standaloneSchema: {};
233
- response: {};
234
- }>;
@@ -1,2 +0,0 @@
1
- export declare const decryptTotpSecret: (ciphertext: string, encryptionKey?: string) => Promise<string>;
2
- export declare const encryptTotpSecret: (secret: string, encryptionKey?: string) => Promise<string>;
package/dist/mfa/sms.d.ts DELETED
@@ -1,105 +0,0 @@
1
- import { Elysia } from 'elysia';
2
- import { type MfaRouteProps, type SmsCodeMessage } from './config';
3
- import type { MfaEnrollment, MFAStore } from './types';
4
- export declare const isE164Phone: (phone: string) => boolean;
5
- export declare const issueAndStoreSmsCode: ({ codeLength, enrollment, mfaStore, onSendSmsCode, ttlMs }: {
6
- codeLength: number;
7
- enrollment: MfaEnrollment;
8
- mfaStore: MFAStore;
9
- onSendSmsCode?: (message: SmsCodeMessage) => void | Promise<void>;
10
- ttlMs: number;
11
- }) => Promise<number | undefined>;
12
- export declare const maskPhone: (phone: string) => string;
13
- export declare const mfaSmsRoutes: <UserType>({ authSessionStore, getUserId, mfaStore, onMfaEnrolled, onSendSmsCode, smsCodeLength, smsCodeTtlMs, smsMaxAttempts, smsSetupRoute, smsVerifyRoute }: MfaRouteProps<UserType>) => Elysia<"", {
14
- decorator: {};
15
- store: {
16
- session: import("../session/internalData").InternalSessionRecord<UserType>;
17
- unregisteredSession: import("../session/internalData").InternalUnregisteredSessionRecord;
18
- };
19
- derive: {};
20
- resolve: {};
21
- }, {
22
- typebox: {};
23
- error: {};
24
- }, {
25
- schema: {};
26
- standaloneSchema: {};
27
- macro: {};
28
- macroFn: {};
29
- parser: {};
30
- response: {};
31
- }, {
32
- [x: string]: {
33
- post: {
34
- body: {
35
- phone: string;
36
- };
37
- params: {};
38
- query: unknown;
39
- headers: unknown;
40
- response: {
41
- 400: "Phone must be in E.164 format";
42
- 401: "Authentication required";
43
- 200: {
44
- readonly phone: string;
45
- };
46
- 501: "SMS MFA is not configured";
47
- 422: {
48
- type: "validation";
49
- on: string;
50
- summary?: string;
51
- message?: string;
52
- found?: unknown;
53
- property?: string;
54
- expected?: string;
55
- };
56
- };
57
- };
58
- };
59
- } & {
60
- [x: string]: {
61
- post: {
62
- body: {
63
- code: string;
64
- };
65
- params: {};
66
- query: unknown;
67
- headers: unknown;
68
- response: {
69
- 400: "No SMS enrollment in progress" | "SMS code expired" | "Invalid SMS code";
70
- 401: "Authentication required";
71
- 200: {
72
- readonly status: "enrolled";
73
- };
74
- 429: "Too many attempts";
75
- 422: {
76
- type: "validation";
77
- on: string;
78
- summary?: string;
79
- message?: string;
80
- found?: unknown;
81
- property?: string;
82
- expected?: string;
83
- };
84
- };
85
- };
86
- };
87
- }, {
88
- derive: {};
89
- resolve: {};
90
- schema: {};
91
- standaloneSchema: {};
92
- response: {};
93
- }, {
94
- derive: {};
95
- resolve: {};
96
- schema: {};
97
- standaloneSchema: {};
98
- response: {};
99
- } & {
100
- derive: {};
101
- resolve: {};
102
- schema: {};
103
- standaloneSchema: {};
104
- response: {};
105
- }>;
@@ -1,91 +0,0 @@
1
- import { Elysia } from 'elysia';
2
- import { type MfaRouteProps } from './config';
3
- export declare const mfaTotpRoutes: <UserType>({ authSessionStore, backupCodeCount, encryptionKey, getUserId, issuer, mfaStore, onMfaEnrolled, totpSetupRoute, totpVerifyRoute }: MfaRouteProps<UserType>) => Elysia<"", {
4
- decorator: {};
5
- store: {
6
- session: import("../session/internalData").InternalSessionRecord<UserType>;
7
- unregisteredSession: import("../session/internalData").InternalUnregisteredSessionRecord;
8
- };
9
- derive: {};
10
- resolve: {};
11
- }, {
12
- typebox: {};
13
- error: {};
14
- }, {
15
- schema: {};
16
- standaloneSchema: {};
17
- macro: {};
18
- macroFn: {};
19
- parser: {};
20
- response: {};
21
- }, {
22
- [x: string]: {
23
- post: {
24
- body: unknown;
25
- params: {};
26
- query: unknown;
27
- headers: unknown;
28
- response: {
29
- 401: "Authentication required";
30
- 200: {
31
- readonly secret: string;
32
- readonly uri: string;
33
- };
34
- 422: {
35
- type: "validation";
36
- on: string;
37
- summary?: string;
38
- message?: string;
39
- found?: unknown;
40
- property?: string;
41
- expected?: string;
42
- };
43
- };
44
- };
45
- };
46
- } & {
47
- [x: string]: {
48
- post: {
49
- body: {
50
- code: string;
51
- };
52
- params: {};
53
- query: unknown;
54
- headers: unknown;
55
- response: {
56
- 400: "No TOTP enrollment in progress" | "Invalid TOTP code";
57
- 401: "Authentication required";
58
- 200: {
59
- readonly backupCodes: string[];
60
- };
61
- 422: {
62
- type: "validation";
63
- on: string;
64
- summary?: string;
65
- message?: string;
66
- found?: unknown;
67
- property?: string;
68
- expected?: string;
69
- };
70
- };
71
- };
72
- };
73
- }, {
74
- derive: {};
75
- resolve: {};
76
- schema: {};
77
- standaloneSchema: {};
78
- response: {};
79
- }, {
80
- derive: {};
81
- resolve: {};
82
- schema: {};
83
- standaloneSchema: {};
84
- response: {};
85
- } & {
86
- derive: {};
87
- resolve: {};
88
- schema: {};
89
- standaloneSchema: {};
90
- response: {};
91
- }>;
@@ -1,23 +0,0 @@
1
- export type MfaFactorType = 'backup_codes' | 'sms' | 'totp';
2
- export type MfaEnrollment = {
3
- backupCodeHashes: string[];
4
- createdAt: number;
5
- lastUsedAt?: number;
6
- smsFailedAttempts?: number;
7
- smsPendingCodeHash?: string;
8
- smsPendingCodeExpiresAt?: number;
9
- smsPhone?: string;
10
- smsVerified: boolean;
11
- totpFailedAttempts?: number;
12
- totpSecretCiphertext?: string;
13
- totpVerified: boolean;
14
- updatedAt: number;
15
- userId: string;
16
- };
17
- export type MFAStore = {
18
- getEnrollment: (userId: string) => Promise<MfaEnrollment | undefined>;
19
- listEnrollments: () => Promise<MfaEnrollment[]>;
20
- removeEnrollment: (userId: string) => Promise<void>;
21
- saveEnrollment: (enrollment: MfaEnrollment) => Promise<void>;
22
- };
23
- export declare const isMfaEnrolled: (enrollment: MfaEnrollment | undefined) => boolean;
@@ -1,2 +0,0 @@
1
- import { type PgTable } from 'drizzle-orm/pg-core';
2
- export declare const tablesToInitSql: (tables: PgTable[]) => string;
@@ -1,5 +0,0 @@
1
- import type { BlockMigrations } from './types';
2
- export type BlockName = 'adaptive' | 'agents' | 'apikeys' | 'audit' | 'credentials' | 'fga' | 'linkedProviders' | 'lockout' | 'mfa' | 'oidc' | 'organizations' | 'passwordless' | 'portal' | 'roles' | 'scim' | 'sessions' | 'sso' | 'vault' | 'vc' | 'webauthn' | 'webhooks';
3
- export declare const blockMigrations: Record<BlockName, BlockMigrations>;
4
- export { runMigrations } from './runner';
5
- export type { Migration, BlockMigrations } from './types';
@@ -1,13 +0,0 @@
1
- import { type BlockName } from './index';
2
- export type RunMigrationsOptions = {
3
- databaseUrl: string;
4
- /** Subset of blocks to apply. Omit to apply every block the package ships. */
5
- blocks?: BlockName[];
6
- /** Optional logger; defaults to console.log. Pass `() => undefined` for silent mode. */
7
- log?: (message: string) => void;
8
- };
9
- export type MigrationRunResult = {
10
- applied: string[];
11
- skipped: string[];
12
- };
13
- export declare const runMigrations: ({ blocks, databaseUrl, log }: RunMigrationsOptions) => Promise<MigrationRunResult>;
@@ -1,14 +0,0 @@
1
- export type Migration = {
2
- /** Stable identifier — stored in `auth_migrations` to track applied state. Must be
3
- * monotonically ordered within a block (e.g. `0001_init`, `0002_add_foo_column`). */
4
- id: string;
5
- /** Idempotent SQL. Use `CREATE TABLE IF NOT EXISTS` so re-running is a no-op even if
6
- * the consumer wired the tables by hand before adopting the migration runner. */
7
- sql: string;
8
- };
9
- export type BlockMigrations = {
10
- /** Block name as used in the CLI's `--blocks` flag and in `runMigrations({ blocks })`.
11
- * Convention: same string as the `src/<block>/` directory. */
12
- block: string;
13
- migrations: Migration[];
14
- };
@@ -1,19 +0,0 @@
1
- import type { ClientAssertionJtiStore, OAuthClient } from './types';
2
- export declare const CLIENT_ASSERTION_TYPE = "urn:ietf:params:oauth:client-assertion-type:jwt-bearer";
3
- export declare const verifyClientAssertion: ({ assertion, expectedAudience, jtiStore, resolveClient }: {
4
- assertion: string;
5
- expectedAudience: string;
6
- jtiStore?: ClientAssertionJtiStore;
7
- resolveClient: (clientId: string) => Promise<OAuthClient | undefined>;
8
- }) => Promise<OAuthClient | undefined>;
9
- export declare const verifyJwtSignedByClient: ({ jwt, client }: {
10
- client: OAuthClient;
11
- jwt: string;
12
- }) => Promise<{
13
- header: {
14
- [k: string]: any;
15
- };
16
- payload: {
17
- [k: string]: any;
18
- };
19
- } | undefined>;
@@ -1,32 +0,0 @@
1
- import type { OAuthClient } from './types';
2
- export type ClientIdMetadataDocument = {
3
- client_id: string;
4
- client_name?: string;
5
- redirect_uris: string[];
6
- grant_types?: string[];
7
- response_types?: string[];
8
- token_endpoint_auth_method?: 'none' | 'private_key_jwt' | 'self_signed_tls_client_auth';
9
- application_type?: 'native' | 'web';
10
- client_uri?: string;
11
- logo_uri?: string;
12
- policy_uri?: string;
13
- tos_uri?: string;
14
- jwks_uri?: string;
15
- jwks?: {
16
- keys: JsonWebKey[];
17
- };
18
- scope?: string;
19
- };
20
- export declare const validateClientIdMetadataDocument: (document: ClientIdMetadataDocument, expectedClientId: string) => string[];
21
- export declare const clientIdMetadataToOAuthClient: (document: ClientIdMetadataDocument) => OAuthClient;
22
- /** Resolve an HTTPS URL client_id into OAuth client metadata without prior
23
- registration. Network access is injected so callers can enforce DNS/IP/redirect
24
- policy with @absolutejs/egress. Redirects are forbidden and documents are capped
25
- at 5 KiB per the IETF Client ID Metadata Document security guidance. */
26
- export declare const createClientIdMetadataResolver: ({ fetch: fetcher, allow, cacheTtlMs, maxBytes, now }: {
27
- fetch: (input: string | URL, init?: RequestInit) => Promise<Response>;
28
- allow?: (clientId: string) => boolean | Promise<boolean>;
29
- cacheTtlMs?: number;
30
- maxBytes?: number;
31
- now?: () => number;
32
- }) => (clientId: string) => Promise<OAuthClient | undefined>;