@absolutejs/auth 0.56.2 → 0.56.3

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 (174) hide show
  1. package/dist/cli/migrate.js.map +1 -1
  2. package/dist/index.js +15 -1
  3. package/dist/index.js.map +4 -4
  4. package/dist/oidc/index.js +5 -1
  5. package/dist/oidc/index.js.map +3 -3
  6. package/dist/server.js +15 -1
  7. package/dist/server.js.map +4 -4
  8. package/package.json +1 -1
  9. package/dist/abuse/captcha.d.ts +0 -11
  10. package/dist/abuse/config.d.ts +0 -29
  11. package/dist/actions.d.ts +0 -27
  12. package/dist/agents/config.d.ts +0 -44
  13. package/dist/agents/context.d.ts +0 -46
  14. package/dist/agents/principal.d.ts +0 -4
  15. package/dist/agents/registration.d.ts +0 -162
  16. package/dist/agents/routes.d.ts +0 -321
  17. package/dist/agents/types.d.ts +0 -129
  18. package/dist/apikeys/config.d.ts +0 -64
  19. package/dist/apikeys/routes.d.ts +0 -83
  20. package/dist/apikeys/types.d.ts +0 -53
  21. package/dist/audit/config.d.ts +0 -9
  22. package/dist/audit/export.d.ts +0 -2
  23. package/dist/audit/inMemoryAuditStore.d.ts +0 -2
  24. package/dist/audit/integrity.d.ts +0 -19
  25. package/dist/audit/postgresAuditStore.d.ts +0 -116
  26. package/dist/audit/siem.d.ts +0 -11
  27. package/dist/audit/types.d.ts +0 -19
  28. package/dist/audit/wrap.d.ts +0 -9
  29. package/dist/authContext.d.ts +0 -193
  30. package/dist/authorization/config.d.ts +0 -19
  31. package/dist/authorization/protectPermission.d.ts +0 -52
  32. package/dist/compliance/cipher.d.ts +0 -11
  33. package/dist/compliance/config.d.ts +0 -18
  34. package/dist/compliance/redaction.d.ts +0 -8
  35. package/dist/compliance/routes.d.ts +0 -89
  36. package/dist/constants.d.ts +0 -10
  37. package/dist/credentials/backgroundOps.d.ts +0 -45
  38. package/dist/credentials/config.d.ts +0 -68
  39. package/dist/credentials/emailValidation.d.ts +0 -9
  40. package/dist/credentials/emailVerification.d.ts +0 -83
  41. package/dist/credentials/import.d.ts +0 -34
  42. package/dist/credentials/inMemoryCredentialStore.d.ts +0 -2
  43. package/dist/credentials/legacyHashers.d.ts +0 -3
  44. package/dist/credentials/login.d.ts +0 -76
  45. package/dist/credentials/passwordPolicy.d.ts +0 -15
  46. package/dist/credentials/passwordReset.d.ts +0 -87
  47. package/dist/credentials/postgresCredentialStore.d.ts +0 -235
  48. package/dist/credentials/register.d.ts +0 -54
  49. package/dist/credentials/routes.d.ts +0 -201
  50. package/dist/credentials/types.d.ts +0 -26
  51. package/dist/crypto.d.ts +0 -32
  52. package/dist/errors.d.ts +0 -12
  53. package/dist/federation/tokenStore.d.ts +0 -29
  54. package/dist/htmx/configuredRoutes.d.ts +0 -542
  55. package/dist/htmx/renderers.d.ts +0 -8
  56. package/dist/htmx/routes.d.ts +0 -514
  57. package/dist/htmx/types.d.ts +0 -129
  58. package/dist/linkedProviders/inMemoryStores.d.ts +0 -9
  59. package/dist/linkedProviders/neonStores.d.ts +0 -484
  60. package/dist/linkedProviders/oauthAccountResolver.d.ts +0 -28
  61. package/dist/linkedProviders/oauthResolver.d.ts +0 -9
  62. package/dist/linkedProviders/resolver.d.ts +0 -22
  63. package/dist/lockout/config.d.ts +0 -17
  64. package/dist/lockout/inMemoryLockoutStore.d.ts +0 -2
  65. package/dist/lockout/postgresLockoutStore.d.ts +0 -71
  66. package/dist/lockout/redisLockoutStore.d.ts +0 -3
  67. package/dist/lockout/types.d.ts +0 -12
  68. package/dist/mfa/backupCodes.d.ts +0 -5
  69. package/dist/mfa/challenge.d.ts +0 -70
  70. package/dist/mfa/config.d.ts +0 -50
  71. package/dist/mfa/gate.d.ts +0 -2
  72. package/dist/mfa/inMemoryMfaStore.d.ts +0 -2
  73. package/dist/mfa/management.d.ts +0 -106
  74. package/dist/mfa/postgresMfaStore.d.ts +0 -206
  75. package/dist/mfa/rotation.d.ts +0 -17
  76. package/dist/mfa/routes.d.ts +0 -234
  77. package/dist/mfa/secret.d.ts +0 -2
  78. package/dist/mfa/sms.d.ts +0 -105
  79. package/dist/mfa/totp.d.ts +0 -91
  80. package/dist/mfa/types.d.ts +0 -23
  81. package/dist/oidc/clientAuth.d.ts +0 -19
  82. package/dist/oidc/config.d.ts +0 -296
  83. package/dist/oidc/dpop.d.ts +0 -23
  84. package/dist/oidc/inMemoryVciStores.d.ts +0 -3
  85. package/dist/oidc/jar.d.ts +0 -14
  86. package/dist/oidc/keys.d.ts +0 -35
  87. package/dist/oidc/logout.d.ts +0 -38
  88. package/dist/oidc/mtls.d.ts +0 -11
  89. package/dist/oidc/par.d.ts +0 -28
  90. package/dist/oidc/registration.d.ts +0 -138
  91. package/dist/oidc/routes.d.ts +0 -569
  92. package/dist/oidc/types.d.ts +0 -145
  93. package/dist/oidc/userinfo.d.ts +0 -21
  94. package/dist/oidc/vci.d.ts +0 -159
  95. package/dist/oidc/vciRoutes.d.ts +0 -92
  96. package/dist/organizations/config.d.ts +0 -46
  97. package/dist/organizations/operations.d.ts +0 -39
  98. package/dist/organizations/routes.d.ts +0 -299
  99. package/dist/organizations/types.d.ts +0 -45
  100. package/dist/passwordless/config.d.ts +0 -43
  101. package/dist/passwordless/routes.d.ts +0 -163
  102. package/dist/passwordless/types.d.ts +0 -9
  103. package/dist/pluginIdentity.d.ts +0 -2
  104. package/dist/portal/config.d.ts +0 -34
  105. package/dist/portal/operations.d.ts +0 -10
  106. package/dist/portal/routes.d.ts +0 -160
  107. package/dist/portal/types.d.ts +0 -16
  108. package/dist/providers/clients.d.ts +0 -1818
  109. package/dist/providersFromEnv.d.ts +0 -19
  110. package/dist/roles/config.d.ts +0 -27
  111. package/dist/roles/operations.d.ts +0 -8
  112. package/dist/roles/routes.d.ts +0 -106
  113. package/dist/roles/types.d.ts +0 -14
  114. package/dist/routes/authorize.d.ts +0 -102
  115. package/dist/routes/callback.d.ts +0 -64
  116. package/dist/routes/profile.d.ts +0 -70
  117. package/dist/routes/protectRoute.d.ts +0 -51
  118. package/dist/routes/refresh.d.ts +0 -74
  119. package/dist/routes/revoke.d.ts +0 -73
  120. package/dist/routes/sessions.d.ts +0 -103
  121. package/dist/routes/signout.d.ts +0 -70
  122. package/dist/routes/stepUp.d.ts +0 -48
  123. package/dist/routes/userStatus.d.ts +0 -72
  124. package/dist/scim/config.d.ts +0 -57
  125. package/dist/scim/extensions.d.ts +0 -30
  126. package/dist/scim/inMemoryScimTokenStore.d.ts +0 -2
  127. package/dist/scim/routes.d.ts +0 -366
  128. package/dist/scim/serialize.d.ts +0 -83
  129. package/dist/scim/types.d.ts +0 -54
  130. package/dist/session/access.d.ts +0 -33
  131. package/dist/session/anonymous.d.ts +0 -12
  132. package/dist/session/cleanup.d.ts +0 -45
  133. package/dist/session/impersonation.d.ts +0 -34
  134. package/dist/session/inMemoryStore.d.ts +0 -7
  135. package/dist/session/multiSession.d.ts +0 -27
  136. package/dist/session/neonStore.d.ts +0 -513
  137. package/dist/session/promote.d.ts +0 -23
  138. package/dist/session/redisStore.d.ts +0 -6
  139. package/dist/session/sessionsConfig.d.ts +0 -9
  140. package/dist/session/state.d.ts +0 -33
  141. package/dist/session/types.d.ts +0 -21
  142. package/dist/session/userSessions.d.ts +0 -19
  143. package/dist/sso/config.d.ts +0 -149
  144. package/dist/sso/discoveryRoute.d.ts +0 -63
  145. package/dist/sso/oidcRoutes.d.ts +0 -98
  146. package/dist/sso/samlRoutes.d.ts +0 -179
  147. package/dist/sso/types.d.ts +0 -53
  148. package/dist/stores/postgres.d.ts +0 -5
  149. package/dist/stores/redis.d.ts +0 -5
  150. package/dist/telemetry/tracing.d.ts +0 -15
  151. package/dist/tenancy.d.ts +0 -9
  152. package/dist/typeGuards.d.ts +0 -6
  153. package/dist/typebox.d.ts +0 -4
  154. package/dist/types.d.ts +0 -421
  155. package/dist/utils.d.ts +0 -45
  156. package/dist/vault/config.d.ts +0 -20
  157. package/dist/vault/inMemoryVaultStore.d.ts +0 -2
  158. package/dist/vault/postgresVaultStore.d.ts +0 -86
  159. package/dist/vault/types.d.ts +0 -14
  160. package/dist/vc/inMemoryVpStores.d.ts +0 -2
  161. package/dist/vc/openid4vp.d.ts +0 -82
  162. package/dist/vc/postgresVcStores.d.ts +0 -300
  163. package/dist/vc/sdJwt.d.ts +0 -37
  164. package/dist/vc/statusList.d.ts +0 -29
  165. package/dist/vc/statusListRoutes.d.ts +0 -63
  166. package/dist/vc/vpRoutes.d.ts +0 -120
  167. package/dist/webauthn/adapter.d.ts +0 -59
  168. package/dist/webauthn/config.d.ts +0 -36
  169. package/dist/webauthn/routes.d.ts +0 -155
  170. package/dist/webauthn/types.d.ts +0 -17
  171. package/dist/webhooks/config.d.ts +0 -34
  172. package/dist/webhooks/dispatcher.d.ts +0 -3
  173. package/dist/webhooks/sign.d.ts +0 -11
  174. package/dist/webhooks/types.d.ts +0 -25
@@ -1,366 +0,0 @@
1
- import { Elysia } from 'elysia';
2
- import { type ScimConfig } from './config';
3
- export declare const scimRoutes: ({ customAttributes, getScimGroup, getScimUser, listScimGroups, listScimUsers, onScimGroupCreate, onScimGroupDelete, onScimGroupReplace, onScimUserCreate, onScimUserDeactivate, onScimUserReplace, scimRoute, scimTokenStore }: ScimConfig) => Elysia<"", {
4
- decorator: {};
5
- store: {};
6
- derive: {};
7
- resolve: {};
8
- }, {
9
- typebox: {};
10
- error: {};
11
- }, {
12
- schema: {};
13
- standaloneSchema: {};
14
- macro: {};
15
- macroFn: {};
16
- parser: {};
17
- response: {};
18
- }, {
19
- [x: string]: {
20
- get: {
21
- body: unknown;
22
- params: {};
23
- query: unknown;
24
- headers: unknown;
25
- response: {
26
- 200: Response;
27
- };
28
- };
29
- };
30
- } & {
31
- [x: string]: {
32
- post: {
33
- body: unknown;
34
- params: {};
35
- query: unknown;
36
- headers: unknown;
37
- response: {
38
- 200: Response;
39
- };
40
- };
41
- };
42
- } & {
43
- [x: string]: {
44
- get: {
45
- body: unknown;
46
- params: {};
47
- query: {
48
- filter?: string | undefined;
49
- };
50
- headers: unknown;
51
- response: {
52
- 200: Response;
53
- 422: {
54
- type: "validation";
55
- on: string;
56
- summary?: string;
57
- message?: string;
58
- found?: unknown;
59
- property?: string;
60
- expected?: string;
61
- };
62
- };
63
- };
64
- };
65
- } & {
66
- [x: string]: {
67
- get: {
68
- body: unknown;
69
- params: {
70
- id: string;
71
- };
72
- query: unknown;
73
- headers: unknown;
74
- response: {
75
- 200: Response;
76
- 422: {
77
- type: "validation";
78
- on: string;
79
- summary?: string;
80
- message?: string;
81
- found?: unknown;
82
- property?: string;
83
- expected?: string;
84
- };
85
- };
86
- };
87
- };
88
- } & {
89
- [x: string]: {
90
- put: {
91
- body: unknown;
92
- params: {
93
- id: string;
94
- };
95
- query: unknown;
96
- headers: unknown;
97
- response: {
98
- 200: Response;
99
- 422: {
100
- type: "validation";
101
- on: string;
102
- summary?: string;
103
- message?: string;
104
- found?: unknown;
105
- property?: string;
106
- expected?: string;
107
- };
108
- };
109
- };
110
- };
111
- } & {
112
- [x: string]: {
113
- patch: {
114
- body: unknown;
115
- params: {
116
- id: string;
117
- };
118
- query: unknown;
119
- headers: unknown;
120
- response: {
121
- 200: Response;
122
- 422: {
123
- type: "validation";
124
- on: string;
125
- summary?: string;
126
- message?: string;
127
- found?: unknown;
128
- property?: string;
129
- expected?: string;
130
- };
131
- };
132
- };
133
- };
134
- } & {
135
- [x: string]: {
136
- delete: {
137
- body: unknown;
138
- params: {
139
- id: string;
140
- };
141
- query: unknown;
142
- headers: unknown;
143
- response: {
144
- 200: Response;
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: unknown;
161
- params: {};
162
- query: unknown;
163
- headers: unknown;
164
- response: {
165
- 200: Response;
166
- };
167
- };
168
- };
169
- } & {
170
- [x: string]: {
171
- get: {
172
- body: unknown;
173
- params: {};
174
- query: {
175
- filter?: string | undefined;
176
- };
177
- headers: unknown;
178
- response: {
179
- 200: Response;
180
- 422: {
181
- type: "validation";
182
- on: string;
183
- summary?: string;
184
- message?: string;
185
- found?: unknown;
186
- property?: string;
187
- expected?: string;
188
- };
189
- };
190
- };
191
- };
192
- } & {
193
- [x: string]: {
194
- get: {
195
- body: unknown;
196
- params: {
197
- id: string;
198
- };
199
- query: unknown;
200
- headers: unknown;
201
- response: {
202
- 200: Response;
203
- 422: {
204
- type: "validation";
205
- on: string;
206
- summary?: string;
207
- message?: string;
208
- found?: unknown;
209
- property?: string;
210
- expected?: string;
211
- };
212
- };
213
- };
214
- };
215
- } & {
216
- [x: string]: {
217
- put: {
218
- body: unknown;
219
- params: {
220
- id: string;
221
- };
222
- query: unknown;
223
- headers: unknown;
224
- response: {
225
- 200: Response;
226
- 422: {
227
- type: "validation";
228
- on: string;
229
- summary?: string;
230
- message?: string;
231
- found?: unknown;
232
- property?: string;
233
- expected?: string;
234
- };
235
- };
236
- };
237
- };
238
- } & {
239
- [x: string]: {
240
- patch: {
241
- body: unknown;
242
- params: {
243
- id: string;
244
- };
245
- query: unknown;
246
- headers: unknown;
247
- response: {
248
- 200: Response;
249
- 422: {
250
- type: "validation";
251
- on: string;
252
- summary?: string;
253
- message?: string;
254
- found?: unknown;
255
- property?: string;
256
- expected?: string;
257
- };
258
- };
259
- };
260
- };
261
- } & {
262
- [x: string]: {
263
- delete: {
264
- body: unknown;
265
- params: {
266
- id: string;
267
- };
268
- query: unknown;
269
- headers: unknown;
270
- response: {
271
- 200: Response;
272
- 422: {
273
- type: "validation";
274
- on: string;
275
- summary?: string;
276
- message?: string;
277
- found?: unknown;
278
- property?: string;
279
- expected?: string;
280
- };
281
- };
282
- };
283
- };
284
- } & {
285
- [x: string]: {
286
- get: {
287
- body: unknown;
288
- params: {};
289
- query: unknown;
290
- headers: unknown;
291
- response: {
292
- 200: Response;
293
- };
294
- };
295
- };
296
- } & {
297
- [x: string]: {
298
- get: {
299
- body: unknown;
300
- params: {
301
- id: string;
302
- };
303
- query: unknown;
304
- headers: unknown;
305
- response: {
306
- 200: Response;
307
- 422: {
308
- type: "validation";
309
- on: string;
310
- summary?: string;
311
- message?: string;
312
- found?: unknown;
313
- property?: string;
314
- expected?: string;
315
- };
316
- };
317
- };
318
- };
319
- } & {
320
- [x: string]: {
321
- get: {
322
- body: unknown;
323
- params: {};
324
- query: unknown;
325
- headers: unknown;
326
- response: {
327
- 200: Response;
328
- };
329
- };
330
- };
331
- } & {
332
- [x: string]: {
333
- get: {
334
- body: unknown;
335
- params: {
336
- id: string;
337
- };
338
- query: unknown;
339
- headers: unknown;
340
- response: {
341
- 200: Response;
342
- 422: {
343
- type: "validation";
344
- on: string;
345
- summary?: string;
346
- message?: string;
347
- found?: unknown;
348
- property?: string;
349
- expected?: string;
350
- };
351
- };
352
- };
353
- };
354
- }, {
355
- derive: {};
356
- resolve: {};
357
- schema: {};
358
- standaloneSchema: {};
359
- response: {};
360
- }, {
361
- derive: {};
362
- resolve: {};
363
- schema: {};
364
- standaloneSchema: {};
365
- response: {};
366
- }>;
@@ -1,83 +0,0 @@
1
- import type { ScimAttributeMap, ScimSchemaDefinition } from './extensions';
2
- import type { ScimFilter, ScimGroup, ScimGroupInput, ScimUser, ScimUserInput } from './types';
3
- declare const SCHEMA_SCHEMA = "urn:ietf:params:scim:schemas:core:2.0:Schema";
4
- declare const RESOURCE_TYPE_SCHEMA = "urn:ietf:params:scim:schemas:core:2.0:ResourceType";
5
- export declare const toUserResource: (user: ScimUser, location: string, map?: ScimAttributeMap) => Record<string, unknown>;
6
- export declare const parseUserInput: (body: unknown, map?: ScimAttributeMap) => ScimUserInput | undefined;
7
- export declare const applyPatch: (user: ScimUser, body: unknown) => ScimUserInput;
8
- export declare const listResponse: (resources: Record<string, unknown>[]) => {
9
- itemsPerPage: number;
10
- Resources: Record<string, unknown>[];
11
- schemas: string[];
12
- startIndex: number;
13
- totalResults: number;
14
- };
15
- export declare const parseFilter: (filter: string | undefined) => ScimFilter | undefined;
16
- export declare const scimError: (httpStatus: number, detail: string, scimType?: string) => Response;
17
- export declare const scimJson: (resource: unknown, httpStatus: number) => Response;
18
- export declare const serviceProviderConfig: (location: string) => {
19
- authenticationSchemes: {
20
- description: string;
21
- name: string;
22
- primary: boolean;
23
- specUri: string;
24
- type: string;
25
- }[];
26
- bulk: {
27
- maxOperations: number;
28
- maxPayloadSize: number;
29
- supported: boolean;
30
- };
31
- changePassword: {
32
- supported: boolean;
33
- };
34
- etag: {
35
- supported: boolean;
36
- };
37
- filter: {
38
- maxResults: number;
39
- supported: boolean;
40
- };
41
- meta: {
42
- location: string;
43
- resourceType: string;
44
- };
45
- patch: {
46
- supported: boolean;
47
- };
48
- schemas: string[];
49
- sort: {
50
- supported: boolean;
51
- };
52
- };
53
- export declare const schemaList: (location: string, extras?: ScimSchemaDefinition[]) => {
54
- itemsPerPage: number;
55
- Resources: Record<string, unknown>[];
56
- schemas: string[];
57
- startIndex: number;
58
- totalResults: number;
59
- };
60
- export declare const schemaOne: (location: string, id: string, extras?: ScimSchemaDefinition[]) => Record<string, unknown> | undefined;
61
- export declare const resourceTypeList: (location: string, usersEndpoint: string, groupsEndpoint: string, extras?: ScimSchemaDefinition[]) => {
62
- itemsPerPage: number;
63
- Resources: Record<string, unknown>[];
64
- schemas: string[];
65
- startIndex: number;
66
- totalResults: number;
67
- };
68
- export declare const resourceTypeOne: (location: string, id: string, usersEndpoint: string, groupsEndpoint: string, extras?: ScimSchemaDefinition[]) => {
69
- description: string;
70
- endpoint: string;
71
- id: string;
72
- meta: {
73
- location: string;
74
- resourceType: string;
75
- };
76
- name: string;
77
- schema: string;
78
- schemas: string[];
79
- } | undefined;
80
- export { RESOURCE_TYPE_SCHEMA, SCHEMA_SCHEMA };
81
- export declare const applyGroupPatch: (group: ScimGroup, body: unknown) => ScimGroupInput;
82
- export declare const parseGroupInput: (body: unknown) => ScimGroupInput | undefined;
83
- export declare const toGroupResource: (group: ScimGroup, location: string) => Record<string, unknown>;
@@ -1,54 +0,0 @@
1
- import type { OrganizationId } from '../tenancy';
2
- export type ScimToken = {
3
- createdAt: number;
4
- hashedToken: string;
5
- lastUsedAt?: number;
6
- organizationId: OrganizationId;
7
- tokenId: string;
8
- };
9
- export type ScimTokenStore = {
10
- deleteToken: (tokenId: string) => Promise<void>;
11
- findByHashedToken: (hashedToken: string) => Promise<ScimToken | undefined>;
12
- listTokens: (organizationId: OrganizationId) => Promise<ScimToken[]>;
13
- saveToken: (token: ScimToken) => Promise<void>;
14
- };
15
- export type ScimUser = {
16
- active: boolean;
17
- custom?: Record<string, unknown>;
18
- displayName?: string;
19
- email?: string;
20
- externalId?: string;
21
- familyName?: string;
22
- givenName?: string;
23
- id: string;
24
- userName: string;
25
- };
26
- export type ScimUserInput = {
27
- active: boolean;
28
- custom?: Record<string, unknown>;
29
- displayName?: string;
30
- email?: string;
31
- externalId?: string;
32
- familyName?: string;
33
- givenName?: string;
34
- userName: string;
35
- };
36
- export type ScimGroupMember = {
37
- display?: string;
38
- value: string;
39
- };
40
- export type ScimGroup = {
41
- displayName: string;
42
- externalId?: string;
43
- id: string;
44
- members: ScimGroupMember[];
45
- };
46
- export type ScimGroupInput = {
47
- displayName: string;
48
- externalId?: string;
49
- members: ScimGroupMember[];
50
- };
51
- export type ScimFilter = {
52
- attribute: string;
53
- value: string;
54
- };
@@ -1,33 +0,0 @@
1
- import type { Cookie } from 'elysia';
2
- import type { SessionData, SessionRecord, UnregisteredSessionRecord, UserSessionId } from '../types';
3
- import type { AuthSessionSource, AuthSessionStore } from './types';
4
- export declare const createSessionCompatibilityLayer: <UserType>({ authSessionStore, userSessionId }: {
5
- authSessionStore?: AuthSessionStore<UserType>;
6
- userSessionId?: UserSessionId;
7
- }) => Promise<{
8
- session: SessionRecord<UserType>;
9
- unregisteredSession: UnregisteredSessionRecord;
10
- persist: () => Promise<void>;
11
- }>;
12
- export declare const getStatusFromSource: <UserType>({ authSessionStore, session, user_session_id }: {
13
- authSessionStore?: AuthSessionSource<UserType>;
14
- session?: SessionRecord<UserType>;
15
- user_session_id: Cookie<UserSessionId | undefined>;
16
- }) => Promise<{
17
- error: {
18
- readonly code: "Bad Request";
19
- readonly message: "Cookies are missing";
20
- };
21
- user: null;
22
- impersonator?: undefined;
23
- } | {
24
- error: null;
25
- impersonator: import("..").Impersonator | undefined;
26
- user: NonNullable<UserType> | null;
27
- }>;
28
- export declare const loadSessionFromSource: <UserType>({ authSessionStore, session, userSessionId, removeExpired }: {
29
- authSessionStore?: AuthSessionSource<UserType>;
30
- session?: SessionRecord<UserType>;
31
- userSessionId?: UserSessionId;
32
- removeExpired?: boolean;
33
- }) => Promise<SessionData<UserType> | undefined>;
@@ -1,12 +0,0 @@
1
- import type { Cookie } from 'elysia';
2
- import type { SessionData, SessionRecord, UserSessionId } from '../types';
3
- import type { AuthSessionStore } from './types';
4
- export declare const createAnonymousSession: <UserType>({ authSessionStore, cookie, cookieSecure, guestUser, inMemorySession, sessionDurationMs }: {
5
- authSessionStore?: AuthSessionStore<UserType>;
6
- cookie: Cookie<UserSessionId | undefined>;
7
- cookieSecure?: boolean;
8
- guestUser: UserType;
9
- inMemorySession: SessionRecord<UserType>;
10
- sessionDurationMs?: number;
11
- }) => Promise<`${string}-${string}-${string}-${string}-${string}`>;
12
- export declare const isAnonymousSession: <UserType>(session: SessionData<UserType> | undefined) => boolean;
@@ -1,45 +0,0 @@
1
- import { Elysia } from 'elysia';
2
- import type { OnSessionCleanup, SessionRecord, UnregisteredSessionRecord } from '../types';
3
- import type { AuthSessionStore } from './types';
4
- type SessionCleanupProps<UserType> = {
5
- authSessionStore?: AuthSessionStore<UserType>;
6
- cleanupIntervalMs?: number;
7
- maxSessions?: number;
8
- onSessionCleanup?: OnSessionCleanup<UserType>;
9
- };
10
- export declare const sessionCleanup: <UserType>({ authSessionStore, cleanupIntervalMs, maxSessions, onSessionCleanup }: SessionCleanupProps<UserType>) => Elysia<"", {
11
- decorator: {};
12
- store: {
13
- session: SessionRecord<UserType>;
14
- unregisteredSession: UnregisteredSessionRecord;
15
- };
16
- derive: {
17
- readonly cleanupSessions: () => Promise<void>;
18
- };
19
- resolve: {};
20
- }, {
21
- typebox: {};
22
- error: {};
23
- }, {
24
- schema: {};
25
- standaloneSchema: {};
26
- macro: {};
27
- macroFn: {};
28
- parser: {};
29
- response: import("elysia").ExtractErrorFromHandle<{
30
- readonly cleanupSessions: () => Promise<void>;
31
- }>;
32
- }, {}, {
33
- derive: {};
34
- resolve: {};
35
- schema: {};
36
- standaloneSchema: {};
37
- response: {};
38
- }, {
39
- derive: {};
40
- resolve: {};
41
- schema: {};
42
- standaloneSchema: {};
43
- response: {};
44
- }>;
45
- export {};
@@ -1,34 +0,0 @@
1
- import type { Cookie } from 'elysia';
2
- import type { AuditEvent } from '../audit/types';
3
- import type { SessionData, SessionRecord, UserSessionId } from '../types';
4
- import type { AuthSessionStore } from './types';
5
- type Emit = (event: AuditEvent) => Promise<void> | void;
6
- export declare const endImpersonation: <UserType>({ authSessionStore, cookie, cookieSecure, emit, inMemorySession }: {
7
- authSessionStore?: AuthSessionStore<UserType>;
8
- cookie: Cookie<UserSessionId | undefined>;
9
- cookieSecure?: boolean;
10
- emit?: Emit;
11
- inMemorySession: SessionRecord<UserType>;
12
- }) => Promise<{
13
- restored: boolean;
14
- }>;
15
- export declare const isImpersonating: <UserType>(session: SessionData<UserType> | undefined) => boolean;
16
- export declare const startImpersonation: <UserType>({ allowNested, authSessionStore, cookie, cookieSecure, emit, getUserId, impersonator, inMemorySession, sessionDurationMs, user }: {
17
- allowNested?: boolean;
18
- authSessionStore?: AuthSessionStore<UserType>;
19
- cookie: Cookie<UserSessionId | undefined>;
20
- cookieSecure?: boolean;
21
- emit?: Emit;
22
- getUserId?: (user: UserType) => string;
23
- impersonator: {
24
- actorEmail?: string;
25
- actorId: string;
26
- readOnly?: boolean;
27
- reason: string;
28
- suppressSideEffects?: boolean;
29
- };
30
- inMemorySession: SessionRecord<UserType>;
31
- sessionDurationMs?: number;
32
- user: UserType;
33
- }) => Promise<`${string}-${string}-${string}-${string}-${string}`>;
34
- export {};
@@ -1,7 +0,0 @@
1
- import type { SessionData, UnregisteredSessionData, UserSessionId } from '../types';
2
- import type { AuthSessionStore } from './types';
3
- export type CreateInMemoryAuthSessionStoreOptions<UserType> = {
4
- sessions?: Record<UserSessionId, SessionData<UserType>>;
5
- unregisteredSessions?: Record<UserSessionId, UnregisteredSessionData>;
6
- };
7
- export declare const createInMemoryAuthSessionStore: <UserType>(input?: CreateInMemoryAuthSessionStoreOptions<UserType>) => AuthSessionStore<UserType>;
@@ -1,27 +0,0 @@
1
- import type { Cookie } from 'elysia';
2
- import type { SessionRecord, UserSessionId } from '../types';
3
- import type { AuthSessionStore } from './types';
4
- export declare const addToSessionRing: (ring: Cookie<string | undefined>, sessionId: UserSessionId, cookieSecure?: boolean) => Cookie<string | undefined>;
5
- export declare const listRingSessions: <UserType>({ authSessionStore, inMemorySession, ring }: {
6
- authSessionStore?: AuthSessionStore<UserType>;
7
- inMemorySession?: SessionRecord<UserType>;
8
- ring: Cookie<string | undefined>;
9
- }) => Promise<{
10
- sessionId: UserSessionId;
11
- user: UserType;
12
- }[]>;
13
- export declare const readSessionRing: (ring: Cookie<string | undefined>) => `${string}-${string}-${string}-${string}-${string}`[];
14
- export declare const removeFromSessionRing: <UserType>({ activeCookie, authSessionStore, cookieSecure, inMemorySession, ring, sessionId }: {
15
- activeCookie?: Cookie<UserSessionId | undefined>;
16
- authSessionStore?: AuthSessionStore<UserType>;
17
- cookieSecure?: boolean;
18
- inMemorySession?: SessionRecord<UserType>;
19
- ring: Cookie<string | undefined>;
20
- sessionId: UserSessionId;
21
- }) => Promise<void>;
22
- export declare const switchActiveSession: ({ activeCookie, cookieSecure, ring, sessionId }: {
23
- activeCookie: Cookie<UserSessionId | undefined>;
24
- cookieSecure?: boolean;
25
- ring: Cookie<string | undefined>;
26
- sessionId: UserSessionId;
27
- }) => boolean;