@absolutejs/auth 0.56.1 → 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 (177) hide show
  1. package/dist/cli/migrate.js +39 -13
  2. package/dist/cli/migrate.js.map +4 -4
  3. package/dist/index.d.ts +1 -0
  4. package/dist/index.js +85 -15
  5. package/dist/index.js.map +7 -7
  6. package/dist/oidc/index.js +35 -3
  7. package/dist/oidc/index.js.map +3 -3
  8. package/dist/oidc/postgresStores.d.ts +30 -0
  9. package/dist/server.js +85 -15
  10. package/dist/server.js.map +7 -7
  11. package/package.json +1 -1
  12. package/dist/abuse/captcha.d.ts +0 -11
  13. package/dist/abuse/config.d.ts +0 -29
  14. package/dist/actions.d.ts +0 -27
  15. package/dist/agents/config.d.ts +0 -44
  16. package/dist/agents/context.d.ts +0 -46
  17. package/dist/agents/principal.d.ts +0 -4
  18. package/dist/agents/registration.d.ts +0 -162
  19. package/dist/agents/routes.d.ts +0 -321
  20. package/dist/agents/types.d.ts +0 -129
  21. package/dist/apikeys/config.d.ts +0 -64
  22. package/dist/apikeys/routes.d.ts +0 -83
  23. package/dist/apikeys/types.d.ts +0 -53
  24. package/dist/audit/config.d.ts +0 -9
  25. package/dist/audit/export.d.ts +0 -2
  26. package/dist/audit/inMemoryAuditStore.d.ts +0 -2
  27. package/dist/audit/integrity.d.ts +0 -19
  28. package/dist/audit/postgresAuditStore.d.ts +0 -116
  29. package/dist/audit/siem.d.ts +0 -11
  30. package/dist/audit/types.d.ts +0 -19
  31. package/dist/audit/wrap.d.ts +0 -9
  32. package/dist/authContext.d.ts +0 -193
  33. package/dist/authorization/config.d.ts +0 -19
  34. package/dist/authorization/protectPermission.d.ts +0 -52
  35. package/dist/compliance/cipher.d.ts +0 -11
  36. package/dist/compliance/config.d.ts +0 -18
  37. package/dist/compliance/redaction.d.ts +0 -8
  38. package/dist/compliance/routes.d.ts +0 -89
  39. package/dist/constants.d.ts +0 -10
  40. package/dist/credentials/backgroundOps.d.ts +0 -45
  41. package/dist/credentials/config.d.ts +0 -68
  42. package/dist/credentials/emailValidation.d.ts +0 -9
  43. package/dist/credentials/emailVerification.d.ts +0 -83
  44. package/dist/credentials/import.d.ts +0 -34
  45. package/dist/credentials/inMemoryCredentialStore.d.ts +0 -2
  46. package/dist/credentials/legacyHashers.d.ts +0 -3
  47. package/dist/credentials/login.d.ts +0 -76
  48. package/dist/credentials/passwordPolicy.d.ts +0 -15
  49. package/dist/credentials/passwordReset.d.ts +0 -87
  50. package/dist/credentials/postgresCredentialStore.d.ts +0 -235
  51. package/dist/credentials/register.d.ts +0 -54
  52. package/dist/credentials/routes.d.ts +0 -201
  53. package/dist/credentials/types.d.ts +0 -26
  54. package/dist/crypto.d.ts +0 -32
  55. package/dist/errors.d.ts +0 -12
  56. package/dist/federation/tokenStore.d.ts +0 -29
  57. package/dist/htmx/configuredRoutes.d.ts +0 -542
  58. package/dist/htmx/renderers.d.ts +0 -8
  59. package/dist/htmx/routes.d.ts +0 -514
  60. package/dist/htmx/types.d.ts +0 -129
  61. package/dist/linkedProviders/inMemoryStores.d.ts +0 -9
  62. package/dist/linkedProviders/neonStores.d.ts +0 -484
  63. package/dist/linkedProviders/oauthAccountResolver.d.ts +0 -28
  64. package/dist/linkedProviders/oauthResolver.d.ts +0 -9
  65. package/dist/linkedProviders/resolver.d.ts +0 -22
  66. package/dist/lockout/config.d.ts +0 -17
  67. package/dist/lockout/inMemoryLockoutStore.d.ts +0 -2
  68. package/dist/lockout/postgresLockoutStore.d.ts +0 -71
  69. package/dist/lockout/redisLockoutStore.d.ts +0 -3
  70. package/dist/lockout/types.d.ts +0 -12
  71. package/dist/mfa/backupCodes.d.ts +0 -5
  72. package/dist/mfa/challenge.d.ts +0 -70
  73. package/dist/mfa/config.d.ts +0 -50
  74. package/dist/mfa/gate.d.ts +0 -2
  75. package/dist/mfa/inMemoryMfaStore.d.ts +0 -2
  76. package/dist/mfa/management.d.ts +0 -106
  77. package/dist/mfa/postgresMfaStore.d.ts +0 -206
  78. package/dist/mfa/rotation.d.ts +0 -17
  79. package/dist/mfa/routes.d.ts +0 -234
  80. package/dist/mfa/secret.d.ts +0 -2
  81. package/dist/mfa/sms.d.ts +0 -105
  82. package/dist/mfa/totp.d.ts +0 -91
  83. package/dist/mfa/types.d.ts +0 -23
  84. package/dist/oidc/clientAuth.d.ts +0 -19
  85. package/dist/oidc/config.d.ts +0 -295
  86. package/dist/oidc/dpop.d.ts +0 -23
  87. package/dist/oidc/inMemoryVciStores.d.ts +0 -3
  88. package/dist/oidc/jar.d.ts +0 -14
  89. package/dist/oidc/keys.d.ts +0 -35
  90. package/dist/oidc/logout.d.ts +0 -38
  91. package/dist/oidc/mtls.d.ts +0 -11
  92. package/dist/oidc/par.d.ts +0 -28
  93. package/dist/oidc/registration.d.ts +0 -138
  94. package/dist/oidc/routes.d.ts +0 -568
  95. package/dist/oidc/types.d.ts +0 -143
  96. package/dist/oidc/userinfo.d.ts +0 -21
  97. package/dist/oidc/vci.d.ts +0 -159
  98. package/dist/oidc/vciRoutes.d.ts +0 -92
  99. package/dist/organizations/config.d.ts +0 -46
  100. package/dist/organizations/operations.d.ts +0 -39
  101. package/dist/organizations/routes.d.ts +0 -299
  102. package/dist/organizations/types.d.ts +0 -45
  103. package/dist/passwordless/config.d.ts +0 -43
  104. package/dist/passwordless/routes.d.ts +0 -163
  105. package/dist/passwordless/types.d.ts +0 -9
  106. package/dist/pluginIdentity.d.ts +0 -2
  107. package/dist/portal/config.d.ts +0 -34
  108. package/dist/portal/operations.d.ts +0 -10
  109. package/dist/portal/routes.d.ts +0 -160
  110. package/dist/portal/types.d.ts +0 -16
  111. package/dist/providers/clients.d.ts +0 -1818
  112. package/dist/providersFromEnv.d.ts +0 -19
  113. package/dist/roles/config.d.ts +0 -27
  114. package/dist/roles/operations.d.ts +0 -8
  115. package/dist/roles/routes.d.ts +0 -106
  116. package/dist/roles/types.d.ts +0 -14
  117. package/dist/routes/authorize.d.ts +0 -102
  118. package/dist/routes/callback.d.ts +0 -64
  119. package/dist/routes/profile.d.ts +0 -70
  120. package/dist/routes/protectRoute.d.ts +0 -51
  121. package/dist/routes/refresh.d.ts +0 -74
  122. package/dist/routes/revoke.d.ts +0 -73
  123. package/dist/routes/sessions.d.ts +0 -103
  124. package/dist/routes/signout.d.ts +0 -70
  125. package/dist/routes/stepUp.d.ts +0 -48
  126. package/dist/routes/userStatus.d.ts +0 -72
  127. package/dist/scim/config.d.ts +0 -57
  128. package/dist/scim/extensions.d.ts +0 -30
  129. package/dist/scim/inMemoryScimTokenStore.d.ts +0 -2
  130. package/dist/scim/routes.d.ts +0 -366
  131. package/dist/scim/serialize.d.ts +0 -83
  132. package/dist/scim/types.d.ts +0 -54
  133. package/dist/session/access.d.ts +0 -33
  134. package/dist/session/anonymous.d.ts +0 -12
  135. package/dist/session/cleanup.d.ts +0 -45
  136. package/dist/session/impersonation.d.ts +0 -34
  137. package/dist/session/inMemoryStore.d.ts +0 -7
  138. package/dist/session/multiSession.d.ts +0 -27
  139. package/dist/session/neonStore.d.ts +0 -513
  140. package/dist/session/promote.d.ts +0 -23
  141. package/dist/session/redisStore.d.ts +0 -6
  142. package/dist/session/sessionsConfig.d.ts +0 -9
  143. package/dist/session/state.d.ts +0 -33
  144. package/dist/session/types.d.ts +0 -21
  145. package/dist/session/userSessions.d.ts +0 -19
  146. package/dist/sso/config.d.ts +0 -149
  147. package/dist/sso/discoveryRoute.d.ts +0 -63
  148. package/dist/sso/oidcRoutes.d.ts +0 -98
  149. package/dist/sso/samlRoutes.d.ts +0 -179
  150. package/dist/sso/types.d.ts +0 -53
  151. package/dist/stores/postgres.d.ts +0 -5
  152. package/dist/stores/redis.d.ts +0 -5
  153. package/dist/telemetry/tracing.d.ts +0 -15
  154. package/dist/tenancy.d.ts +0 -9
  155. package/dist/typeGuards.d.ts +0 -6
  156. package/dist/typebox.d.ts +0 -4
  157. package/dist/types.d.ts +0 -421
  158. package/dist/utils.d.ts +0 -45
  159. package/dist/vault/config.d.ts +0 -20
  160. package/dist/vault/inMemoryVaultStore.d.ts +0 -2
  161. package/dist/vault/postgresVaultStore.d.ts +0 -86
  162. package/dist/vault/types.d.ts +0 -14
  163. package/dist/vc/inMemoryVpStores.d.ts +0 -2
  164. package/dist/vc/openid4vp.d.ts +0 -82
  165. package/dist/vc/postgresVcStores.d.ts +0 -300
  166. package/dist/vc/sdJwt.d.ts +0 -37
  167. package/dist/vc/statusList.d.ts +0 -29
  168. package/dist/vc/statusListRoutes.d.ts +0 -63
  169. package/dist/vc/vpRoutes.d.ts +0 -120
  170. package/dist/webauthn/adapter.d.ts +0 -59
  171. package/dist/webauthn/config.d.ts +0 -36
  172. package/dist/webauthn/routes.d.ts +0 -155
  173. package/dist/webauthn/types.d.ts +0 -17
  174. package/dist/webhooks/config.d.ts +0 -34
  175. package/dist/webhooks/dispatcher.d.ts +0 -3
  176. package/dist/webhooks/sign.d.ts +0 -11
  177. package/dist/webhooks/types.d.ts +0 -25
@@ -1,19 +0,0 @@
1
- import type { OAuth2ConfigurationOptions } from './types';
2
- export type ProviderSelection = Record<string, {
3
- scope?: string[];
4
- searchParams?: [string, string][];
5
- }>;
6
- /**
7
- * Build `providersConfiguration` from a serializable provider selection plus
8
- * environment credentials, by convention: `<PROVIDER>_CLIENT_ID` and
9
- * `<PROVIDER>_CLIENT_SECRET` (e.g. `GOOGLE_CLIENT_ID`). This is the bridge
10
- * between no-code/manifest-driven configuration (which must never contain
11
- * secrets) and `auth()`'s credential-bearing provider entries — the host app
12
- * wires env → config, the selection stays serializable.
13
- *
14
- * Covers providers whose citra credentials are the standard
15
- * clientId/clientSecret pair. Providers with richer credential shapes
16
- * (e.g. Apple's team/key ids) should be configured directly in
17
- * `providersConfiguration`.
18
- */
19
- export declare const providersFromEnv: (selection: ProviderSelection, env?: Record<string, string | undefined>) => OAuth2ConfigurationOptions;
@@ -1,27 +0,0 @@
1
- import type { AuditEmitter } from '../audit/config';
2
- import type { OrganizationMembership, OrganizationStore } from '../organizations/types';
3
- import type { AuthSessionStore } from '../session/types';
4
- import type { OrganizationId } from '../tenancy';
5
- import type { RouteString } from '../types';
6
- import type { RoleStore } from './types';
7
- export declare const DEFAULT_ROLES_ROUTE: RouteString;
8
- export type RolesConfig<UserType> = {
9
- getUserId: (user: UserType) => string;
10
- organizationStore: OrganizationStore;
11
- roleStore: RoleStore;
12
- canManageRoles?: (context: {
13
- membership?: OrganizationMembership;
14
- organizationId: OrganizationId;
15
- user: UserType;
16
- }) => boolean | Promise<boolean>;
17
- onRolesAssigned?: (context: {
18
- organizationId: OrganizationId;
19
- roles: string[];
20
- userId: string;
21
- }) => void | Promise<void>;
22
- rolesRoute?: RouteString;
23
- };
24
- export type RolesRouteProps<UserType> = RolesConfig<UserType> & {
25
- authSessionStore?: AuthSessionStore<UserType>;
26
- emit?: AuditEmitter;
27
- };
@@ -1,8 +0,0 @@
1
- import type { OrganizationMembership, OrganizationStore } from '../organizations/types';
2
- import type { OrganizationId } from '../tenancy';
3
- export declare const setMemberRoles: ({ organizationId, organizationStore, roles, userId }: {
4
- organizationId: OrganizationId;
5
- organizationStore: OrganizationStore;
6
- roles: string[];
7
- userId: string;
8
- }) => Promise<OrganizationMembership | undefined>;
@@ -1,106 +0,0 @@
1
- import { Elysia } from 'elysia';
2
- import type { SessionRecord } from '../types';
3
- import { type RolesRouteProps } from './config';
4
- export declare const roleRoutes: <UserType>({ authSessionStore, canManageRoles, emit, getUserId, onRolesAssigned, organizationStore, roleStore, rolesRoute }: RolesRouteProps<UserType>) => Elysia<"", {
5
- decorator: {};
6
- store: {
7
- session: SessionRecord<UserType>;
8
- unregisteredSession: import("..").UnregisteredSessionRecord;
9
- };
10
- derive: {};
11
- resolve: {};
12
- }, {
13
- typebox: {};
14
- error: {};
15
- }, {
16
- schema: {};
17
- standaloneSchema: {};
18
- macro: {};
19
- macroFn: {};
20
- parser: {};
21
- response: {};
22
- }, {
23
- [x: string]: {
24
- ":organizationId": {
25
- get: {
26
- body: unknown;
27
- params: {
28
- organizationId: string;
29
- };
30
- query: unknown;
31
- headers: unknown;
32
- response: {
33
- 401: "Authentication required";
34
- 403: "Cannot manage roles";
35
- 200: {
36
- readonly roles: readonly import("./types").Role[];
37
- };
38
- 422: {
39
- type: "validation";
40
- on: string;
41
- summary?: string;
42
- message?: string;
43
- found?: unknown;
44
- property?: string;
45
- expected?: string;
46
- };
47
- };
48
- };
49
- };
50
- };
51
- } & {
52
- [x: string]: {
53
- ":organizationId": {
54
- members: {
55
- ":userId": {
56
- put: {
57
- body: {
58
- roles: string[];
59
- };
60
- params: {
61
- userId: string;
62
- organizationId: string;
63
- };
64
- query: unknown;
65
- headers: unknown;
66
- response: {
67
- 401: "Authentication required";
68
- 403: "Cannot manage roles";
69
- 404: "Membership not found";
70
- 200: {
71
- readonly roles: string[];
72
- };
73
- 422: {
74
- type: "validation";
75
- on: string;
76
- summary?: string;
77
- message?: string;
78
- found?: unknown;
79
- property?: string;
80
- expected?: string;
81
- };
82
- };
83
- };
84
- };
85
- };
86
- };
87
- };
88
- }, {
89
- derive: {};
90
- resolve: {};
91
- schema: {};
92
- standaloneSchema: {};
93
- response: {};
94
- }, {
95
- derive: {};
96
- resolve: {};
97
- schema: {};
98
- standaloneSchema: {};
99
- response: {};
100
- } & {
101
- derive: {};
102
- resolve: {};
103
- schema: {};
104
- standaloneSchema: {};
105
- response: {};
106
- }>;
@@ -1,14 +0,0 @@
1
- import type { OrganizationId } from '../tenancy';
2
- export type Role = {
3
- createdAt: number;
4
- organizationId?: OrganizationId;
5
- permissions: string[];
6
- slug: string;
7
- updatedAt: number;
8
- };
9
- export type RoleStore = {
10
- deleteRole: (slug: string, organizationId?: OrganizationId) => Promise<void>;
11
- getRole: (slug: string, organizationId?: OrganizationId) => Promise<Role | undefined>;
12
- listRoles: (organizationId?: OrganizationId) => Promise<Role[]>;
13
- saveRole: (role: Role) => Promise<void>;
14
- };
@@ -1,102 +0,0 @@
1
- import { Elysia } from 'elysia';
2
- import { AuthorizeRoute, ClientProviders, OnAuthorizeError, OnAuthorizeSuccess } from '../types';
3
- type AuthorizeProps = {
4
- clientProviders: ClientProviders;
5
- authorizeRoute?: AuthorizeRoute;
6
- cookieSecure?: boolean;
7
- onAuthorizeSuccess: OnAuthorizeSuccess;
8
- onAuthorizeError: OnAuthorizeError;
9
- };
10
- export declare const authorize: ({ clientProviders, authorizeRoute, cookieSecure, onAuthorizeSuccess, onAuthorizeError }: AuthorizeProps) => Elysia<"", {
11
- decorator: {};
12
- store: {};
13
- derive: {};
14
- resolve: {};
15
- }, {
16
- typebox: {};
17
- error: {};
18
- }, {
19
- schema: {};
20
- standaloneSchema: {};
21
- macro: {};
22
- macroFn: {};
23
- parser: {};
24
- response: {};
25
- }, {
26
- [x: string]: {
27
- ":provider": {
28
- get: {
29
- body: unknown;
30
- params: {
31
- provider: string;
32
- };
33
- query: {
34
- client?: string | undefined;
35
- intent?: "login" | "link_identity" | "link_connector" | undefined;
36
- };
37
- headers: unknown;
38
- response: {
39
- 400: "Cookies are missing" | "Provider is required";
40
- 401: "Provider is required" | "Client provider not found" | "Client variant is required" | "Client variant not found";
41
- 200: Response;
42
- 422: {
43
- type: "validation";
44
- on: string;
45
- summary?: string;
46
- message?: string;
47
- found?: unknown;
48
- property?: string;
49
- expected?: string;
50
- };
51
- 500: "Failed to create authorization URL";
52
- };
53
- };
54
- };
55
- };
56
- } | {
57
- [x: string]: {
58
- ":provider": {
59
- [x: string]: {
60
- get: {
61
- body: unknown;
62
- params: {
63
- provider: string;
64
- };
65
- query: {
66
- client?: string | undefined;
67
- intent?: "login" | "link_identity" | "link_connector" | undefined;
68
- };
69
- headers: unknown;
70
- response: {
71
- 400: "Cookies are missing" | "Provider is required";
72
- 401: "Provider is required" | "Client provider not found" | "Client variant is required" | "Client variant not found";
73
- 200: Response;
74
- 422: {
75
- type: "validation";
76
- on: string;
77
- summary?: string;
78
- message?: string;
79
- found?: unknown;
80
- property?: string;
81
- expected?: string;
82
- };
83
- 500: "Failed to create authorization URL";
84
- };
85
- };
86
- };
87
- };
88
- };
89
- }, {
90
- derive: {};
91
- resolve: {};
92
- schema: {};
93
- standaloneSchema: {};
94
- response: {};
95
- }, {
96
- derive: {};
97
- resolve: {};
98
- schema: {};
99
- standaloneSchema: {};
100
- response: {};
101
- }>;
102
- export {};
@@ -1,64 +0,0 @@
1
- import { Elysia } from 'elysia';
2
- import type { AuthSessionStore } from '../session/types';
3
- import { ClientProviders, OnCallbackError, OnCallbackSuccess, OnLinkConnector, OnLinkIdentity, OnLinkIdentityConflict, ResolveAuthIntent, RouteString } from '../types';
4
- type CallbackProps<UserType> = {
5
- authSessionStore?: AuthSessionStore<UserType>;
6
- clientProviders: ClientProviders;
7
- callbackRoute?: RouteString;
8
- resolveAuthIntent?: ResolveAuthIntent<UserType>;
9
- onCallbackSuccess: OnCallbackSuccess<UserType>;
10
- onLinkIdentity?: OnLinkIdentity<UserType>;
11
- onLinkIdentityConflict?: OnLinkIdentityConflict<UserType>;
12
- onLinkConnector?: OnLinkConnector<UserType>;
13
- onCallbackError: OnCallbackError;
14
- };
15
- export declare const callback: <UserType>({ authSessionStore, clientProviders, callbackRoute, resolveAuthIntent, onCallbackSuccess, onLinkIdentity, onLinkIdentityConflict, onLinkConnector, onCallbackError }: CallbackProps<UserType>) => Elysia<"", {
16
- decorator: {};
17
- store: {
18
- session: import("..").SessionRecord<UserType>;
19
- unregisteredSession: import("..").UnregisteredSessionRecord;
20
- };
21
- derive: {};
22
- resolve: {};
23
- }, {
24
- typebox: {};
25
- error: {};
26
- }, {
27
- schema: {};
28
- standaloneSchema: {};
29
- macro: {};
30
- macroFn: {};
31
- parser: {};
32
- response: {};
33
- }, {
34
- [x: string]: {
35
- get: {
36
- body: unknown;
37
- params: {};
38
- query: unknown;
39
- headers: unknown;
40
- response: {
41
- [x: string]: any;
42
- };
43
- };
44
- };
45
- }, {
46
- derive: {};
47
- resolve: {};
48
- schema: {};
49
- standaloneSchema: {};
50
- response: {};
51
- }, {
52
- derive: {};
53
- resolve: {};
54
- schema: {};
55
- standaloneSchema: {};
56
- response: {};
57
- } & {
58
- derive: {};
59
- resolve: {};
60
- schema: {};
61
- standaloneSchema: {};
62
- response: {};
63
- }>;
64
- export {};
@@ -1,70 +0,0 @@
1
- import { Elysia } from 'elysia';
2
- import { ClientProviders, OnProfileError, OnProfileSuccess, RouteString } from '../types';
3
- type ProfileProps = {
4
- clientProviders: ClientProviders;
5
- profileRoute?: RouteString;
6
- onProfileSuccess: OnProfileSuccess;
7
- onProfileError: OnProfileError;
8
- };
9
- export declare const profile: <UserType>({ clientProviders, profileRoute, onProfileSuccess, onProfileError }: ProfileProps) => Elysia<"", {
10
- decorator: {};
11
- store: {
12
- session: import("..").SessionRecord<UserType>;
13
- unregisteredSession: import("..").UnregisteredSessionRecord;
14
- };
15
- derive: {};
16
- resolve: {};
17
- }, {
18
- typebox: {};
19
- error: {};
20
- }, {
21
- schema: {};
22
- standaloneSchema: {};
23
- macro: {};
24
- macroFn: {};
25
- parser: {};
26
- response: {};
27
- }, {
28
- [x: string]: {
29
- get: {
30
- body: unknown;
31
- params: {};
32
- query: unknown;
33
- headers: unknown;
34
- response: {
35
- 400: "Cookies are missing" | "Session has no access token to fetch a profile";
36
- 401: "Provider is required" | "Client provider not found" | "Client variant is required" | "Client variant not found" | "No auth provider found" | "Invalid provider" | "No user session found";
37
- 200: Response;
38
- 422: {
39
- type: "validation";
40
- on: string;
41
- summary?: string;
42
- message?: string;
43
- found?: unknown;
44
- property?: string;
45
- expected?: string;
46
- };
47
- 500: `${string} - ${string}` | `Failed to validate authorization code: Unknown status: ${string}`;
48
- };
49
- };
50
- };
51
- }, {
52
- derive: {};
53
- resolve: {};
54
- schema: {};
55
- standaloneSchema: {};
56
- response: {};
57
- }, {
58
- derive: {};
59
- resolve: {};
60
- schema: {};
61
- standaloneSchema: {};
62
- response: {};
63
- } & {
64
- derive: {};
65
- resolve: {};
66
- schema: {};
67
- standaloneSchema: {};
68
- response: {};
69
- }>;
70
- export {};
@@ -1,51 +0,0 @@
1
- import { Elysia } from 'elysia';
2
- import type { AuthSessionSource } from '../session/types';
3
- type AuthFailError = {
4
- readonly code: 'Bad Request';
5
- readonly message: 'Cookies are missing';
6
- } | {
7
- readonly code: 'Unauthorized';
8
- readonly message: 'User is not authenticated';
9
- };
10
- export declare const protectRoutePlugin: <UserType>({ authSessionStore }?: {
11
- authSessionStore?: AuthSessionSource<UserType>;
12
- }) => Elysia<"", {
13
- decorator: {};
14
- store: {
15
- session: import("..").SessionRecord<UserType>;
16
- unregisteredSession: import("..").UnregisteredSessionRecord;
17
- };
18
- derive: {
19
- readonly protectRoute: <AuthReturn, AuthFailReturn>(handleAuth: (user: UserType) => AuthReturn | Promise<AuthReturn>, handleAuthFail?: (error: AuthFailError) => AuthFailReturn) => Promise<import("elysia").ElysiaCustomStatusResponse<"Bad Request", "Cookies are missing", 400> | import("elysia").ElysiaCustomStatusResponse<"Unauthorized", "User is not authenticated", 401> | AuthReturn | NonNullable<AuthFailReturn>>;
20
- };
21
- resolve: {};
22
- }, {
23
- typebox: {};
24
- error: {};
25
- }, {
26
- schema: import("elysia").UnwrapRoute<{
27
- cookie: import("@sinclair/typebox").TObject<{
28
- user_session_id: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TTemplateLiteralSyntax<"${string}-${string}-${string}-${string}-${string}">>;
29
- }>;
30
- }, {}, "">;
31
- standaloneSchema: {};
32
- macro: {};
33
- macroFn: {};
34
- parser: {};
35
- response: import("elysia").ExtractErrorFromHandle<{
36
- readonly protectRoute: <AuthReturn, AuthFailReturn>(handleAuth: (user: UserType) => AuthReturn | Promise<AuthReturn>, handleAuthFail?: (error: AuthFailError) => AuthFailReturn) => Promise<import("elysia").ElysiaCustomStatusResponse<"Bad Request", "Cookies are missing", 400> | import("elysia").ElysiaCustomStatusResponse<"Unauthorized", "User is not authenticated", 401> | AuthReturn | NonNullable<AuthFailReturn>>;
37
- }>;
38
- }, {}, {
39
- derive: {};
40
- resolve: {};
41
- schema: {};
42
- standaloneSchema: {};
43
- response: {};
44
- }, {
45
- derive: {};
46
- resolve: {};
47
- schema: {};
48
- standaloneSchema: {};
49
- response: {};
50
- }>;
51
- export {};
@@ -1,74 +0,0 @@
1
- import { Elysia } from 'elysia';
2
- import type { AuthSessionStore } from '../session/types';
3
- import { ClientProviders, OnRefreshError, OnRefreshSuccess, RouteString } from '../types';
4
- type RefreshProps<UserType> = {
5
- authSessionStore?: AuthSessionStore<UserType>;
6
- clientProviders: ClientProviders;
7
- refreshRoute?: RouteString;
8
- onRefreshSuccess: OnRefreshSuccess;
9
- onRefreshError: OnRefreshError;
10
- sessionDurationMs?: number;
11
- };
12
- export declare const refresh: <UserType>({ authSessionStore, clientProviders, refreshRoute, onRefreshSuccess, onRefreshError, sessionDurationMs }: RefreshProps<UserType>) => Elysia<"", {
13
- decorator: {};
14
- store: {
15
- session: import("..").SessionRecord<UserType>;
16
- unregisteredSession: import("..").UnregisteredSessionRecord;
17
- };
18
- derive: {};
19
- resolve: {};
20
- }, {
21
- typebox: {};
22
- error: {};
23
- }, {
24
- schema: {};
25
- standaloneSchema: {};
26
- macro: {};
27
- macroFn: {};
28
- parser: {};
29
- response: {};
30
- }, {
31
- [x: string]: {
32
- post: {
33
- body: unknown;
34
- params: {};
35
- query: unknown;
36
- headers: unknown;
37
- response: {
38
- 400: "Cookies are missing" | "Invalid provider" | "No refresh token found";
39
- 401: "Provider is required" | "Client provider not found" | "Client variant is required" | "Client variant not found" | "No auth provider found" | "No user session found";
40
- 501: "Provider is not refreshable";
41
- 200: Response;
42
- 422: {
43
- type: "validation";
44
- on: string;
45
- summary?: string;
46
- message?: string;
47
- found?: unknown;
48
- property?: string;
49
- expected?: string;
50
- };
51
- 500: "Failed to refresh token";
52
- };
53
- };
54
- };
55
- }, {
56
- derive: {};
57
- resolve: {};
58
- schema: {};
59
- standaloneSchema: {};
60
- response: {};
61
- }, {
62
- derive: {};
63
- resolve: {};
64
- schema: {};
65
- standaloneSchema: {};
66
- response: {};
67
- } & {
68
- derive: {};
69
- resolve: {};
70
- schema: {};
71
- standaloneSchema: {};
72
- response: {};
73
- }>;
74
- export {};
@@ -1,73 +0,0 @@
1
- import { Elysia } from 'elysia';
2
- import type { AuthSessionStore } from '../session/types';
3
- import { ClientProviders, OnRevocationError, OnRevocationSuccess, RouteString } from '../types';
4
- type RevokeProps<UserType> = {
5
- authSessionStore?: AuthSessionStore<UserType>;
6
- clientProviders: ClientProviders;
7
- revokeRoute?: RouteString;
8
- onRevocationSuccess: OnRevocationSuccess;
9
- onRevocationError: OnRevocationError;
10
- };
11
- export declare const revoke: <UserType>({ authSessionStore, clientProviders, revokeRoute, onRevocationSuccess, onRevocationError }: RevokeProps<UserType>) => Elysia<"", {
12
- decorator: {};
13
- store: {
14
- session: import("..").SessionRecord<UserType>;
15
- unregisteredSession: import("..").UnregisteredSessionRecord;
16
- };
17
- derive: {};
18
- resolve: {};
19
- }, {
20
- typebox: {};
21
- error: {};
22
- }, {
23
- schema: {};
24
- standaloneSchema: {};
25
- macro: {};
26
- macroFn: {};
27
- parser: {};
28
- response: {};
29
- }, {
30
- [x: string]: {
31
- post: {
32
- body: unknown;
33
- params: {};
34
- query: unknown;
35
- headers: unknown;
36
- response: {
37
- 400: "Cookies are missing" | "Invalid provider" | "Session has no access token to revoke";
38
- 401: "Provider is required" | "Client provider not found" | "Client variant is required" | "Client variant not found" | "No auth provider found" | "No user session found";
39
- 501: "Provider does not support revocation";
40
- 200: Response;
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
- 500: "Failed to revoke token";
51
- };
52
- };
53
- };
54
- }, {
55
- derive: {};
56
- resolve: {};
57
- schema: {};
58
- standaloneSchema: {};
59
- response: {};
60
- }, {
61
- derive: {};
62
- resolve: {};
63
- schema: {};
64
- standaloneSchema: {};
65
- response: {};
66
- } & {
67
- derive: {};
68
- resolve: {};
69
- schema: {};
70
- standaloneSchema: {};
71
- response: {};
72
- }>;
73
- export {};