@absolutejs/auth 0.65.0 → 0.65.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (264) hide show
  1. package/dist/index.js +7 -3
  2. package/dist/index.js.map +3 -3
  3. package/dist/server.js +7 -3
  4. package/dist/server.js.map +3 -3
  5. package/package.json +1 -1
  6. package/dist/abuse/captcha.d.ts +0 -11
  7. package/dist/abuse/config.d.ts +0 -29
  8. package/dist/actions.d.ts +0 -27
  9. package/dist/adaptive/config.d.ts +0 -34
  10. package/dist/adaptive/fingerprint.d.ts +0 -2
  11. package/dist/adaptive/inMemoryStores.d.ts +0 -3
  12. package/dist/adaptive/postgresStores.d.ts +0 -245
  13. package/dist/adaptive/types.d.ts +0 -62
  14. package/dist/agents/config.d.ts +0 -49
  15. package/dist/agents/context.d.ts +0 -46
  16. package/dist/agents/idJag.d.ts +0 -49
  17. package/dist/agents/inMemoryStores.d.ts +0 -4
  18. package/dist/agents/index.d.ts +0 -13
  19. package/dist/agents/oauthGuide.d.ts +0 -18
  20. package/dist/agents/oidcAdapter.d.ts +0 -20
  21. package/dist/agents/postgresStores.d.ts +0 -1176
  22. package/dist/agents/principal.d.ts +0 -4
  23. package/dist/agents/registration.d.ts +0 -162
  24. package/dist/agents/registrationClient.d.ts +0 -50
  25. package/dist/agents/routes.d.ts +0 -256
  26. package/dist/agents/types.d.ts +0 -129
  27. package/dist/apikeys/config.d.ts +0 -64
  28. package/dist/apikeys/inMemoryStores.d.ts +0 -4
  29. package/dist/apikeys/postgresStores.d.ts +0 -359
  30. package/dist/apikeys/routes.d.ts +0 -83
  31. package/dist/apikeys/types.d.ts +0 -53
  32. package/dist/audit/config.d.ts +0 -9
  33. package/dist/audit/export.d.ts +0 -2
  34. package/dist/audit/inMemoryAuditStore.d.ts +0 -2
  35. package/dist/audit/integrity.d.ts +0 -19
  36. package/dist/audit/postgresAuditStore.d.ts +0 -116
  37. package/dist/audit/siem.d.ts +0 -11
  38. package/dist/audit/types.d.ts +0 -21
  39. package/dist/audit/wrap.d.ts +0 -11
  40. package/dist/authContext.d.ts +0 -193
  41. package/dist/authorization/config.d.ts +0 -19
  42. package/dist/authorization/protectPermission.d.ts +0 -52
  43. package/dist/cli/import/auth0.d.ts +0 -2
  44. package/dist/cli/import/clerk.d.ts +0 -2
  45. package/dist/cli/import/index.d.ts +0 -10
  46. package/dist/cli/import/lucia.d.ts +0 -2
  47. package/dist/cli/import/nextauth.d.ts +0 -2
  48. package/dist/cli/import/supabase.d.ts +0 -2
  49. package/dist/cli/import/types.d.ts +0 -27
  50. package/dist/cli/migrate.d.ts +0 -2
  51. package/dist/client/components/react/SignIn.d.ts +0 -32
  52. package/dist/client/components/react/SignUp.d.ts +0 -29
  53. package/dist/client/components/react/UserButton.d.ts +0 -36
  54. package/dist/client/createAuthClient.d.ts +0 -285
  55. package/dist/client/index.d.ts +0 -4
  56. package/dist/client/passkeyHelpers.d.ts +0 -19
  57. package/dist/client/react.d.ts +0 -87
  58. package/dist/client/sessionExpiry.d.ts +0 -37
  59. package/dist/client/solid.d.ts +0 -86
  60. package/dist/client/svelte.d.ts +0 -86
  61. package/dist/client/vue.d.ts +0 -88
  62. package/dist/compliance/cipher.d.ts +0 -11
  63. package/dist/compliance/config.d.ts +0 -18
  64. package/dist/compliance/redaction.d.ts +0 -8
  65. package/dist/compliance/routes.d.ts +0 -89
  66. package/dist/constants.d.ts +0 -10
  67. package/dist/credentials/backgroundOps.d.ts +0 -45
  68. package/dist/credentials/config.d.ts +0 -94
  69. package/dist/credentials/emailValidation.d.ts +0 -9
  70. package/dist/credentials/emailVerification.d.ts +0 -83
  71. package/dist/credentials/import.d.ts +0 -49
  72. package/dist/credentials/inMemoryCredentialStore.d.ts +0 -2
  73. package/dist/credentials/legacyHashers.d.ts +0 -3
  74. package/dist/credentials/login.d.ts +0 -76
  75. package/dist/credentials/passwordPolicy.d.ts +0 -15
  76. package/dist/credentials/passwordReset.d.ts +0 -87
  77. package/dist/credentials/postgresCredentialStore.d.ts +0 -235
  78. package/dist/credentials/register.d.ts +0 -54
  79. package/dist/credentials/routes.d.ts +0 -201
  80. package/dist/credentials/types.d.ts +0 -26
  81. package/dist/crypto.d.ts +0 -32
  82. package/dist/csrf.d.ts +0 -10
  83. package/dist/errors.d.ts +0 -12
  84. package/dist/federation/tokenStore.d.ts +0 -29
  85. package/dist/fga/config.d.ts +0 -53
  86. package/dist/fga/inMemoryStores.d.ts +0 -3
  87. package/dist/fga/postgresStores.d.ts +0 -116
  88. package/dist/fga/redisCheckCache.d.ts +0 -11
  89. package/dist/fga/schema.d.ts +0 -2
  90. package/dist/fga/types.d.ts +0 -28
  91. package/dist/fingerprint-client/index.d.ts +0 -26
  92. package/dist/htmx/configuredRoutes.d.ts +0 -542
  93. package/dist/htmx/index.d.ts +0 -2
  94. package/dist/htmx/renderers.d.ts +0 -8
  95. package/dist/htmx/routes.d.ts +0 -514
  96. package/dist/htmx/types.d.ts +0 -129
  97. package/dist/index.d.ts +0 -3647
  98. package/dist/linkedProviders/inMemoryStores.d.ts +0 -9
  99. package/dist/linkedProviders/index.d.ts +0 -3
  100. package/dist/linkedProviders/neonStores.d.ts +0 -484
  101. package/dist/linkedProviders/oauthAccountResolver.d.ts +0 -28
  102. package/dist/linkedProviders/oauthResolver.d.ts +0 -9
  103. package/dist/linkedProviders/resolver.d.ts +0 -22
  104. package/dist/lockout/config.d.ts +0 -17
  105. package/dist/lockout/inMemoryLockoutStore.d.ts +0 -2
  106. package/dist/lockout/postgresLockoutStore.d.ts +0 -71
  107. package/dist/lockout/redisLockoutStore.d.ts +0 -3
  108. package/dist/lockout/types.d.ts +0 -12
  109. package/dist/manifest.d.ts +0 -18
  110. package/dist/manifest.json +0 -373
  111. package/dist/mfa/backupCodes.d.ts +0 -5
  112. package/dist/mfa/challenge.d.ts +0 -72
  113. package/dist/mfa/config.d.ts +0 -59
  114. package/dist/mfa/gate.d.ts +0 -2
  115. package/dist/mfa/inMemoryMfaStore.d.ts +0 -2
  116. package/dist/mfa/management.d.ts +0 -106
  117. package/dist/mfa/postgresMfaStore.d.ts +0 -266
  118. package/dist/mfa/recentAuth.d.ts +0 -2
  119. package/dist/mfa/rotation.d.ts +0 -17
  120. package/dist/mfa/routes.d.ts +0 -239
  121. package/dist/mfa/secret.d.ts +0 -2
  122. package/dist/mfa/sms.d.ts +0 -143
  123. package/dist/mfa/totp.d.ts +0 -91
  124. package/dist/mfa/types.d.ts +0 -58
  125. package/dist/migrations/generate.d.ts +0 -2
  126. package/dist/migrations/index.d.ts +0 -6
  127. package/dist/migrations/runner.d.ts +0 -22
  128. package/dist/migrations/types.d.ts +0 -14
  129. package/dist/oidc/clientAuth.d.ts +0 -19
  130. package/dist/oidc/clientIdMetadata.d.ts +0 -28
  131. package/dist/oidc/config.d.ts +0 -307
  132. package/dist/oidc/dpop.d.ts +0 -23
  133. package/dist/oidc/inMemoryStores.d.ts +0 -11
  134. package/dist/oidc/inMemoryVciStores.d.ts +0 -3
  135. package/dist/oidc/index.d.ts +0 -12
  136. package/dist/oidc/jar.d.ts +0 -14
  137. package/dist/oidc/keys.d.ts +0 -50
  138. package/dist/oidc/logout.d.ts +0 -38
  139. package/dist/oidc/mtls.d.ts +0 -11
  140. package/dist/oidc/operator.d.ts +0 -14
  141. package/dist/oidc/par.d.ts +0 -28
  142. package/dist/oidc/postgresStores.d.ts +0 -1217
  143. package/dist/oidc/registration.d.ts +0 -138
  144. package/dist/oidc/routes.d.ts +0 -569
  145. package/dist/oidc/types.d.ts +0 -157
  146. package/dist/oidc/userinfo.d.ts +0 -21
  147. package/dist/oidc/vci.d.ts +0 -159
  148. package/dist/oidc/vciRoutes.d.ts +0 -92
  149. package/dist/organizations/config.d.ts +0 -46
  150. package/dist/organizations/inMemoryOrganizationStore.d.ts +0 -2
  151. package/dist/organizations/operations.d.ts +0 -39
  152. package/dist/organizations/postgresOrganizationStore.d.ts +0 -340
  153. package/dist/organizations/routes.d.ts +0 -299
  154. package/dist/organizations/types.d.ts +0 -45
  155. package/dist/passwordless/config.d.ts +0 -43
  156. package/dist/passwordless/inMemoryPasswordlessTokenStore.d.ts +0 -2
  157. package/dist/passwordless/postgresPasswordlessTokenStore.d.ts +0 -56
  158. package/dist/passwordless/routes.d.ts +0 -163
  159. package/dist/passwordless/types.d.ts +0 -9
  160. package/dist/pluginIdentity.d.ts +0 -2
  161. package/dist/plugins/denyDisposableEmail.d.ts +0 -7
  162. package/dist/plugins/discordAlert.d.ts +0 -7
  163. package/dist/plugins/geoBlock.d.ts +0 -8
  164. package/dist/plugins/index.d.ts +0 -12
  165. package/dist/plugins/pagerdutyAlert.d.ts +0 -9
  166. package/dist/plugins/posthogIdentify.d.ts +0 -7
  167. package/dist/plugins/slackAlert.d.ts +0 -7
  168. package/dist/portal/config.d.ts +0 -34
  169. package/dist/portal/inMemorySetupSessionStore.d.ts +0 -2
  170. package/dist/portal/operations.d.ts +0 -10
  171. package/dist/portal/postgresSetupSessionStore.d.ts +0 -116
  172. package/dist/portal/routes.d.ts +0 -160
  173. package/dist/portal/types.d.ts +0 -16
  174. package/dist/providers/clients.d.ts +0 -1831
  175. package/dist/providers/index.d.ts +0 -2
  176. package/dist/providersFromEnv.d.ts +0 -19
  177. package/dist/redirect.d.ts +0 -2
  178. package/dist/roles/config.d.ts +0 -27
  179. package/dist/roles/inMemoryRoleStore.d.ts +0 -2
  180. package/dist/roles/operations.d.ts +0 -8
  181. package/dist/roles/postgresRoleStore.d.ts +0 -86
  182. package/dist/roles/resolver.d.ts +0 -17
  183. package/dist/roles/routes.d.ts +0 -106
  184. package/dist/roles/types.d.ts +0 -14
  185. package/dist/routes/authorize.d.ts +0 -102
  186. package/dist/routes/callback.d.ts +0 -64
  187. package/dist/routes/profile.d.ts +0 -73
  188. package/dist/routes/protectRoute.d.ts +0 -51
  189. package/dist/routes/refresh.d.ts +0 -74
  190. package/dist/routes/requireAuth.d.ts +0 -43
  191. package/dist/routes/revoke.d.ts +0 -73
  192. package/dist/routes/sessions.d.ts +0 -103
  193. package/dist/routes/signout.d.ts +0 -70
  194. package/dist/routes/stepUp.d.ts +0 -48
  195. package/dist/routes/userStatus.d.ts +0 -72
  196. package/dist/saml.d.ts +0 -1
  197. package/dist/scim/config.d.ts +0 -57
  198. package/dist/scim/extensions.d.ts +0 -30
  199. package/dist/scim/inMemoryScimTokenStore.d.ts +0 -2
  200. package/dist/scim/postgresScimTokenStore.d.ts +0 -86
  201. package/dist/scim/routes.d.ts +0 -366
  202. package/dist/scim/serialize.d.ts +0 -83
  203. package/dist/scim/types.d.ts +0 -54
  204. package/dist/server.d.ts +0 -34
  205. package/dist/session/access.d.ts +0 -33
  206. package/dist/session/anonymous.d.ts +0 -12
  207. package/dist/session/cleanup.d.ts +0 -45
  208. package/dist/session/cookieReader.d.ts +0 -10
  209. package/dist/session/impersonation.d.ts +0 -34
  210. package/dist/session/inMemoryStore.d.ts +0 -7
  211. package/dist/session/multiSession.d.ts +0 -27
  212. package/dist/session/neonStore.d.ts +0 -573
  213. package/dist/session/promote.d.ts +0 -23
  214. package/dist/session/redisStore.d.ts +0 -6
  215. package/dist/session/sessionsConfig.d.ts +0 -9
  216. package/dist/session/state.d.ts +0 -33
  217. package/dist/session/types.d.ts +0 -23
  218. package/dist/session/userSessions.d.ts +0 -19
  219. package/dist/sso/config.d.ts +0 -149
  220. package/dist/sso/discoveryRoute.d.ts +0 -63
  221. package/dist/sso/inMemorySamlServiceProviderStore.d.ts +0 -2
  222. package/dist/sso/inMemorySsoConnectionStore.d.ts +0 -2
  223. package/dist/sso/nodeSamlAdapter.d.ts +0 -8
  224. package/dist/sso/oidcRoutes.d.ts +0 -98
  225. package/dist/sso/postgresSamlServiceProviderStore.d.ts +0 -101
  226. package/dist/sso/postgresSsoConnectionStore.d.ts +0 -117
  227. package/dist/sso/samlIdpRoutes.d.ts +0 -139
  228. package/dist/sso/samlRoutes.d.ts +0 -179
  229. package/dist/sso/types.d.ts +0 -53
  230. package/dist/stores/postgres.d.ts +0 -5
  231. package/dist/stores/redis.d.ts +0 -5
  232. package/dist/telemetry/tracing.d.ts +0 -15
  233. package/dist/tenancy.d.ts +0 -9
  234. package/dist/typeGuards.d.ts +0 -6
  235. package/dist/typebox.d.ts +0 -4
  236. package/dist/types.d.ts +0 -431
  237. package/dist/utils.d.ts +0 -45
  238. package/dist/vault/config.d.ts +0 -20
  239. package/dist/vault/inMemoryVaultStore.d.ts +0 -2
  240. package/dist/vault/index.d.ts +0 -5
  241. package/dist/vault/postgresVaultStore.d.ts +0 -86
  242. package/dist/vault/types.d.ts +0 -14
  243. package/dist/vc/inMemoryVpStores.d.ts +0 -2
  244. package/dist/vc/openid4vp.d.ts +0 -82
  245. package/dist/vc/postgresVcStores.d.ts +0 -300
  246. package/dist/vc/sdJwt.d.ts +0 -37
  247. package/dist/vc/statusList.d.ts +0 -29
  248. package/dist/vc/statusListRoutes.d.ts +0 -63
  249. package/dist/vc/vpRoutes.d.ts +0 -120
  250. package/dist/verification/types.d.ts +0 -58
  251. package/dist/webauthn/adapter.d.ts +0 -59
  252. package/dist/webauthn/config.d.ts +0 -36
  253. package/dist/webauthn/inMemoryWebAuthnCredentialStore.d.ts +0 -2
  254. package/dist/webauthn/postgresWebAuthnCredentialStore.d.ts +0 -146
  255. package/dist/webauthn/routes.d.ts +0 -155
  256. package/dist/webauthn/simpleWebAuthnAdapter.d.ts +0 -3
  257. package/dist/webauthn/types.d.ts +0 -17
  258. package/dist/webauthn.d.ts +0 -1
  259. package/dist/webhooks/config.d.ts +0 -34
  260. package/dist/webhooks/dispatcher.d.ts +0 -3
  261. package/dist/webhooks/inMemoryStore.d.ts +0 -2
  262. package/dist/webhooks/postgresStore.d.ts +0 -116
  263. package/dist/webhooks/sign.d.ts +0 -11
  264. package/dist/webhooks/types.d.ts +0 -25
@@ -1,43 +0,0 @@
1
- import type { AuditEmitter } from '../audit/config';
2
- import type { AuthSessionStore } from '../session/types';
3
- import type { RouteString, UserSessionId } from '../types';
4
- import type { PasswordlessTokenStore } from './types';
5
- export declare const DEFAULT_MAGIC_LINK_TTL_MS: number;
6
- export declare const DEFAULT_OTP_LENGTH = 6;
7
- export declare const DEFAULT_OTP_TTL_MS: number;
8
- export declare const DEFAULT_PASSWORDLESS_ROUTE: RouteString;
9
- export declare const DEFAULT_PASSWORDLESS_SESSION_TTL_MS: number;
10
- export type MagicLinkMessage = {
11
- email: string;
12
- expiresAt: number;
13
- token: string;
14
- };
15
- export type PasswordlessOtpMessage = {
16
- code: string;
17
- email: string;
18
- expiresAt: number;
19
- };
20
- export type PasswordlessConfig<UserType> = {
21
- getUserByEmail: (email: string) => Promise<UserType | null | undefined> | UserType | null | undefined;
22
- passwordlessTokenStore: PasswordlessTokenStore;
23
- getUserId?: (user: UserType) => string;
24
- magicLinkTokenDurationMs?: number;
25
- onCreateUser?: (context: {
26
- email: string;
27
- }) => Promise<UserType> | UserType;
28
- onPasswordlessLogin?: (context: {
29
- user: UserType;
30
- userSessionId: UserSessionId;
31
- }) => void | Promise<void>;
32
- onSendMagicLink?: (message: MagicLinkMessage) => void | Promise<void>;
33
- onSendOtp?: (message: PasswordlessOtpMessage) => void | Promise<void>;
34
- otpDurationMs?: number;
35
- otpLength?: number;
36
- passwordlessRoute?: RouteString;
37
- sessionDurationMs?: number;
38
- };
39
- export type PasswordlessRouteProps<UserType> = PasswordlessConfig<UserType> & {
40
- authSessionStore?: AuthSessionStore<UserType>;
41
- cookieSecure?: boolean;
42
- emit?: AuditEmitter;
43
- };
@@ -1,2 +0,0 @@
1
- import type { PasswordlessTokenStore } from './types';
2
- export declare const createInMemoryPasswordlessTokenStore: () => PasswordlessTokenStore;
@@ -1,56 +0,0 @@
1
- import { type AnyPgDatabase } from '../stores/postgres';
2
- import type { PasswordlessTokenStore } from './types';
3
- export declare const passwordlessTokensTable: import("drizzle-orm/pg-core").PgTableWithColumns<{
4
- name: "auth_passwordless_tokens";
5
- schema: undefined;
6
- columns: {
7
- email: import("drizzle-orm/pg-core").PgBuildColumn<"auth_passwordless_tokens", import("drizzle-orm/pg-core").SetNotNull<import("drizzle-orm/pg-core").PgVarcharBuilder<[string, ...string[]]>>, {
8
- name: string;
9
- tableName: "auth_passwordless_tokens";
10
- dataType: "string";
11
- data: string;
12
- driverParam: string;
13
- notNull: true;
14
- hasDefault: false;
15
- isPrimaryKey: false;
16
- isAutoincrement: false;
17
- hasRuntimeDefault: false;
18
- enumValues: undefined;
19
- identity: undefined;
20
- generated: undefined;
21
- }>;
22
- expires_at_ms: import("drizzle-orm/pg-core").PgBuildColumn<"auth_passwordless_tokens", import("drizzle-orm/pg-core").SetNotNull<import("drizzle-orm/pg-core").PgBigInt53Builder>, {
23
- name: string;
24
- tableName: "auth_passwordless_tokens";
25
- dataType: "number int53";
26
- data: number;
27
- driverParam: string | number;
28
- notNull: true;
29
- hasDefault: false;
30
- isPrimaryKey: false;
31
- isAutoincrement: false;
32
- hasRuntimeDefault: false;
33
- enumValues: undefined;
34
- identity: undefined;
35
- generated: undefined;
36
- }>;
37
- token_hash: import("drizzle-orm/pg-core").PgBuildColumn<"auth_passwordless_tokens", import("drizzle-orm/pg-core").SetIsPrimaryKey<import("drizzle-orm/pg-core").PgVarcharBuilder<[string, ...string[]]>>, {
38
- name: string;
39
- tableName: "auth_passwordless_tokens";
40
- dataType: "string";
41
- data: string;
42
- driverParam: string;
43
- notNull: true;
44
- hasDefault: false;
45
- isPrimaryKey: false;
46
- isAutoincrement: false;
47
- hasRuntimeDefault: false;
48
- enumValues: undefined;
49
- identity: undefined;
50
- generated: undefined;
51
- }>;
52
- };
53
- dialect: "pg";
54
- }>;
55
- export declare const createNeonPasswordlessTokenStore: (databaseUrl: string) => PasswordlessTokenStore;
56
- export declare const createPostgresPasswordlessTokenStore: <DB extends AnyPgDatabase>(db: DB) => PasswordlessTokenStore;
@@ -1,163 +0,0 @@
1
- import { Elysia } from 'elysia';
2
- import type { SessionRecord } from '../types';
3
- import { type PasswordlessRouteProps } from './config';
4
- export declare const passwordlessRoutes: <UserType>({ authSessionStore, cookieSecure, emit, getUserByEmail, getUserId, magicLinkTokenDurationMs, onCreateUser, onPasswordlessLogin, onSendMagicLink, onSendOtp, otpDurationMs, otpLength, passwordlessRoute, passwordlessTokenStore, sessionDurationMs }: PasswordlessRouteProps<UserType>) => Elysia<"", {
5
- decorator: {};
6
- store: {} | {
7
- session: SessionRecord<UserType>;
8
- unregisteredSession: import("..").UnregisteredSessionRecord;
9
- } | {
10
- session: SessionRecord<UserType>;
11
- unregisteredSession: import("..").UnregisteredSessionRecord;
12
- } | {
13
- session: SessionRecord<UserType>;
14
- unregisteredSession: import("..").UnregisteredSessionRecord;
15
- };
16
- derive: {};
17
- resolve: {};
18
- }, {
19
- typebox: {};
20
- error: {};
21
- }, {
22
- schema: {};
23
- standaloneSchema: {};
24
- macro: {};
25
- macroFn: {};
26
- parser: {};
27
- response: {};
28
- }, ({} | ({
29
- [x: string]: {
30
- "magic-link": {
31
- post: {
32
- body: {
33
- email: string;
34
- };
35
- params: {};
36
- query: unknown;
37
- headers: unknown;
38
- response: {
39
- 200: {
40
- readonly status: "magic_link_sent";
41
- };
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
- };
52
- };
53
- };
54
- };
55
- } & {
56
- [x: string]: {
57
- "magic-link": {
58
- verify: {
59
- post: {
60
- body: {
61
- token: string;
62
- };
63
- params: {};
64
- query: unknown;
65
- headers: unknown;
66
- response: {
67
- 400: "Invalid or expired link";
68
- 401: "No account for this email";
69
- 200: {
70
- readonly status: "authenticated";
71
- };
72
- 422: {
73
- type: "validation";
74
- on: string;
75
- summary?: string;
76
- message?: string;
77
- found?: unknown;
78
- property?: string;
79
- expected?: string;
80
- };
81
- };
82
- };
83
- };
84
- };
85
- };
86
- })) & ({} | ({
87
- [x: string]: {
88
- otp: {
89
- post: {
90
- body: {
91
- email: string;
92
- };
93
- params: {};
94
- query: unknown;
95
- headers: unknown;
96
- response: {
97
- 200: {
98
- readonly status: "otp_sent";
99
- };
100
- 422: {
101
- type: "validation";
102
- on: string;
103
- summary?: string;
104
- message?: string;
105
- found?: unknown;
106
- property?: string;
107
- expected?: string;
108
- };
109
- };
110
- };
111
- };
112
- };
113
- } & {
114
- [x: string]: {
115
- otp: {
116
- verify: {
117
- post: {
118
- body: {
119
- email: string;
120
- code: string;
121
- };
122
- params: {};
123
- query: unknown;
124
- headers: unknown;
125
- response: {
126
- 400: "Invalid or expired code";
127
- 401: "No account for this email";
128
- 200: {
129
- readonly status: "authenticated";
130
- };
131
- 422: {
132
- type: "validation";
133
- on: string;
134
- summary?: string;
135
- message?: string;
136
- found?: unknown;
137
- property?: string;
138
- expected?: string;
139
- };
140
- };
141
- };
142
- };
143
- };
144
- };
145
- })), {
146
- derive: {};
147
- resolve: {};
148
- schema: {};
149
- standaloneSchema: {};
150
- response: {};
151
- }, {
152
- derive: {};
153
- resolve: {};
154
- schema: {};
155
- standaloneSchema: {};
156
- response: {};
157
- } & {
158
- derive: {};
159
- resolve: {};
160
- schema: {};
161
- standaloneSchema: {};
162
- response: {};
163
- }>;
@@ -1,9 +0,0 @@
1
- export type PasswordlessToken = {
2
- email: string;
3
- expiresAt: number;
4
- tokenHash: string;
5
- };
6
- export type PasswordlessTokenStore = {
7
- consumeToken: (tokenHash: string) => Promise<PasswordlessToken | undefined>;
8
- saveToken: (token: PasswordlessToken) => Promise<void>;
9
- };
@@ -1,2 +0,0 @@
1
- /** Stable process-local seed for configured Elysia dependencies. */
2
- export declare const pluginDependencySeed: (dependency?: object) => number | "default";
@@ -1,7 +0,0 @@
1
- export type DenyDisposableEmailDecision = {
2
- allow: false;
3
- reason: string;
4
- } | {
5
- allow: true;
6
- };
7
- export declare const denyDisposableEmailPlugin: (email: string) => Promise<DenyDisposableEmailDecision>;
@@ -1,7 +0,0 @@
1
- import type { AuditEvent, AuditEventType, AuditSink } from '../audit/types';
2
- export type DiscordAlertOptions = {
3
- events?: readonly AuditEventType[];
4
- formatContent?: (event: AuditEvent) => string;
5
- webhookUrl: string;
6
- };
7
- export declare const discordAlertPlugin: ({ events, formatContent, webhookUrl }: DiscordAlertOptions) => AuditSink;
@@ -1,8 +0,0 @@
1
- export type GeoBlockOptions = {
2
- allowCountries: readonly string[];
3
- denyCountries?: never;
4
- } | {
5
- allowCountries?: never;
6
- denyCountries: readonly string[];
7
- };
8
- export declare const geoBlockPlugin: (options: GeoBlockOptions) => (headers: Record<string, string | undefined>) => boolean;
@@ -1,12 +0,0 @@
1
- export { denyDisposableEmailPlugin } from './denyDisposableEmail';
2
- export type { DenyDisposableEmailDecision } from './denyDisposableEmail';
3
- export { discordAlertPlugin } from './discordAlert';
4
- export type { DiscordAlertOptions } from './discordAlert';
5
- export { geoBlockPlugin } from './geoBlock';
6
- export type { GeoBlockOptions } from './geoBlock';
7
- export { pagerdutyAlertPlugin } from './pagerdutyAlert';
8
- export type { PagerDutyAlertOptions, PagerDutySeverity } from './pagerdutyAlert';
9
- export { posthogIdentifyPlugin } from './posthogIdentify';
10
- export type { PosthogIdentifyOptions } from './posthogIdentify';
11
- export { slackAlertPlugin } from './slackAlert';
12
- export type { SlackAlertOptions } from './slackAlert';
@@ -1,9 +0,0 @@
1
- import type { AuditEventType, AuditSink } from '../audit/types';
2
- export type PagerDutySeverity = 'critical' | 'error' | 'info' | 'warning';
3
- export type PagerDutyAlertOptions = {
4
- events?: readonly AuditEventType[];
5
- routingKey: string;
6
- severity?: PagerDutySeverity;
7
- source?: string;
8
- };
9
- export declare const pagerdutyAlertPlugin: ({ events, routingKey, severity, source }: PagerDutyAlertOptions) => AuditSink;
@@ -1,7 +0,0 @@
1
- import type { AuditEvent, AuditSink } from '../audit/types';
2
- export type PosthogIdentifyOptions = {
3
- host?: string;
4
- projectApiKey: string;
5
- properties?: (event: AuditEvent) => Record<string, unknown>;
6
- };
7
- export declare const posthogIdentifyPlugin: ({ host, projectApiKey, properties }: PosthogIdentifyOptions) => AuditSink;
@@ -1,7 +0,0 @@
1
- import type { AuditEvent, AuditEventType, AuditSink } from '../audit/types';
2
- export type SlackAlertOptions = {
3
- events?: readonly AuditEventType[];
4
- formatMessage?: (event: AuditEvent) => string;
5
- webhookUrl: string;
6
- };
7
- export declare const slackAlertPlugin: ({ events, formatMessage, webhookUrl }: SlackAlertOptions) => AuditSink;
@@ -1,34 +0,0 @@
1
- import type { AuditEmitter } from '../audit/config';
2
- import type { ScimTokenStore } from '../scim/types';
3
- import type { SSOConnectionStore, SSOConnectionType } from '../sso/types';
4
- import type { OrganizationId } from '../tenancy';
5
- import type { RouteString } from '../types';
6
- import type { SetupCapability, SetupSessionStore } from './types';
7
- export declare const DEFAULT_PORTAL_ROUTE: RouteString;
8
- export declare const DEFAULT_SETUP_SESSION_TTL_MS: number;
9
- export type PortalConfig = {
10
- setupSessionStore: SetupSessionStore;
11
- onScimTokenCreated?: (context: {
12
- organizationId: OrganizationId;
13
- tokenId: string;
14
- }) => void | Promise<void>;
15
- onSsoConnectionConfigured?: (context: {
16
- organizationId: OrganizationId;
17
- type: SSOConnectionType;
18
- }) => void | Promise<void>;
19
- portalRoute?: RouteString;
20
- scimRoute?: RouteString;
21
- scimTokenStore?: ScimTokenStore;
22
- ssoConnectionStore?: SSOConnectionStore;
23
- ssoRoute?: RouteString;
24
- };
25
- export type PortalRouteProps = PortalConfig & {
26
- emit?: AuditEmitter;
27
- };
28
- export type SetupSessionRequest = {
29
- capabilities: SetupCapability[];
30
- createdBy?: string;
31
- organizationId: OrganizationId;
32
- setupSessionDurationMs?: number;
33
- setupSessionStore: SetupSessionStore;
34
- };
@@ -1,2 +0,0 @@
1
- import type { SetupSessionStore } from './types';
2
- export declare const createInMemorySetupSessionStore: () => SetupSessionStore;
@@ -1,10 +0,0 @@
1
- import { type SetupSessionRequest } from './config';
2
- import type { SetupSession, SetupSessionStore } from './types';
3
- export declare const createSetupSession: ({ capabilities, createdBy, organizationId, setupSessionDurationMs, setupSessionStore }: SetupSessionRequest) => Promise<{
4
- setupSession: SetupSession;
5
- token: string;
6
- }>;
7
- export declare const resolveSetupSession: ({ authorization, setupSessionStore }: {
8
- authorization: string | undefined;
9
- setupSessionStore: SetupSessionStore;
10
- }) => Promise<SetupSession | undefined>;
@@ -1,116 +0,0 @@
1
- import { type AnyPgDatabase } from '../stores/postgres';
2
- import type { SetupCapability, SetupSessionStore } from './types';
3
- export declare const setupSessionsTable: import("drizzle-orm/pg-core").PgTableWithColumns<{
4
- name: "auth_setup_sessions";
5
- schema: undefined;
6
- columns: {
7
- capabilities: import("drizzle-orm/pg-core").PgBuildColumn<"auth_setup_sessions", import("drizzle-orm/pg-core").SetHasDefault<import("drizzle-orm/pg-core").SetNotNull<import("drizzle-orm/pg-core").Set$Type<import("drizzle-orm/pg-core").PgJsonbBuilder, SetupCapability[]>>>, {
8
- name: string;
9
- tableName: "auth_setup_sessions";
10
- dataType: "object json";
11
- data: SetupCapability[];
12
- driverParam: unknown;
13
- notNull: true;
14
- hasDefault: true;
15
- isPrimaryKey: false;
16
- isAutoincrement: false;
17
- hasRuntimeDefault: false;
18
- enumValues: undefined;
19
- identity: undefined;
20
- generated: undefined;
21
- }>;
22
- created_at_ms: import("drizzle-orm/pg-core").PgBuildColumn<"auth_setup_sessions", import("drizzle-orm/pg-core").SetNotNull<import("drizzle-orm/pg-core").PgBigInt53Builder>, {
23
- name: string;
24
- tableName: "auth_setup_sessions";
25
- dataType: "number int53";
26
- data: number;
27
- driverParam: string | number;
28
- notNull: true;
29
- hasDefault: false;
30
- isPrimaryKey: false;
31
- isAutoincrement: false;
32
- hasRuntimeDefault: false;
33
- enumValues: undefined;
34
- identity: undefined;
35
- generated: undefined;
36
- }>;
37
- created_by: import("drizzle-orm/pg-core").PgBuildColumn<"auth_setup_sessions", import("drizzle-orm/pg-core").PgVarcharBuilder<[string, ...string[]]>, {
38
- name: string;
39
- tableName: "auth_setup_sessions";
40
- dataType: "string";
41
- data: string;
42
- driverParam: string;
43
- notNull: false;
44
- hasDefault: false;
45
- isPrimaryKey: false;
46
- isAutoincrement: false;
47
- hasRuntimeDefault: false;
48
- enumValues: undefined;
49
- identity: undefined;
50
- generated: undefined;
51
- }>;
52
- expires_at_ms: import("drizzle-orm/pg-core").PgBuildColumn<"auth_setup_sessions", import("drizzle-orm/pg-core").SetNotNull<import("drizzle-orm/pg-core").PgBigInt53Builder>, {
53
- name: string;
54
- tableName: "auth_setup_sessions";
55
- dataType: "number int53";
56
- data: number;
57
- driverParam: string | number;
58
- notNull: true;
59
- hasDefault: false;
60
- isPrimaryKey: false;
61
- isAutoincrement: false;
62
- hasRuntimeDefault: false;
63
- enumValues: undefined;
64
- identity: undefined;
65
- generated: undefined;
66
- }>;
67
- organization_id: import("drizzle-orm/pg-core").PgBuildColumn<"auth_setup_sessions", import("drizzle-orm/pg-core").SetNotNull<import("drizzle-orm/pg-core").PgVarcharBuilder<[string, ...string[]]>>, {
68
- name: string;
69
- tableName: "auth_setup_sessions";
70
- dataType: "string";
71
- data: string;
72
- driverParam: string;
73
- notNull: true;
74
- hasDefault: false;
75
- isPrimaryKey: false;
76
- isAutoincrement: false;
77
- hasRuntimeDefault: false;
78
- enumValues: undefined;
79
- identity: undefined;
80
- generated: undefined;
81
- }>;
82
- setup_session_id: import("drizzle-orm/pg-core").PgBuildColumn<"auth_setup_sessions", import("drizzle-orm/pg-core").SetIsPrimaryKey<import("drizzle-orm/pg-core").PgVarcharBuilder<[string, ...string[]]>>, {
83
- name: string;
84
- tableName: "auth_setup_sessions";
85
- dataType: "string";
86
- data: string;
87
- driverParam: string;
88
- notNull: true;
89
- hasDefault: false;
90
- isPrimaryKey: false;
91
- isAutoincrement: false;
92
- hasRuntimeDefault: false;
93
- enumValues: undefined;
94
- identity: undefined;
95
- generated: undefined;
96
- }>;
97
- token_hash: import("drizzle-orm/pg-core").PgBuildColumn<"auth_setup_sessions", import("drizzle-orm/pg-core").SetNotNull<import("drizzle-orm/pg-core").PgVarcharBuilder<[string, ...string[]]>>, {
98
- name: string;
99
- tableName: "auth_setup_sessions";
100
- dataType: "string";
101
- data: string;
102
- driverParam: string;
103
- notNull: true;
104
- hasDefault: false;
105
- isPrimaryKey: false;
106
- isAutoincrement: false;
107
- hasRuntimeDefault: false;
108
- enumValues: undefined;
109
- identity: undefined;
110
- generated: undefined;
111
- }>;
112
- };
113
- dialect: "pg";
114
- }>;
115
- export declare const createNeonSetupSessionStore: (databaseUrl: string) => SetupSessionStore;
116
- export declare const createPostgresSetupSessionStore: <DB extends AnyPgDatabase>(db: DB) => SetupSessionStore;
@@ -1,160 +0,0 @@
1
- import { Elysia } from 'elysia';
2
- import { type PortalRouteProps } from './config';
3
- export declare const portalRoutes: ({ emit, onScimTokenCreated, onSsoConnectionConfigured, portalRoute, scimRoute, scimTokenStore, setupSessionStore, ssoConnectionStore, ssoRoute }: PortalRouteProps) => 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
- session: {
21
- get: {
22
- body: unknown;
23
- params: {};
24
- query: unknown;
25
- headers: unknown;
26
- response: {
27
- 401: "Invalid or expired setup link";
28
- 200: {
29
- readonly capabilities: import("./types").SetupCapability[];
30
- readonly configured: {
31
- readonly oidc: boolean;
32
- readonly saml: boolean;
33
- };
34
- readonly expiresAt: number;
35
- readonly oidc: {
36
- redirectUri: string;
37
- } | undefined;
38
- readonly organizationId: string;
39
- readonly saml: {
40
- acsUrl: string;
41
- entityId: string;
42
- metadataUrl: string;
43
- } | undefined;
44
- readonly scim: {
45
- baseUrl: string;
46
- } | undefined;
47
- };
48
- };
49
- };
50
- };
51
- };
52
- } & {
53
- [x: string]: {
54
- connection: {
55
- saml: {
56
- put: {
57
- body: {
58
- idpSloUrl?: string | undefined;
59
- idpEntityId: string;
60
- idpSsoUrl: string;
61
- idpX509Cert: string;
62
- };
63
- params: {};
64
- query: unknown;
65
- headers: unknown;
66
- response: {
67
- 401: "Invalid or expired setup link";
68
- 403: "This setup link cannot configure SAML";
69
- 501: "SSO is not configured";
70
- 200: {
71
- readonly configured: true;
72
- readonly type: "saml";
73
- };
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
- };
84
- };
85
- };
86
- };
87
- };
88
- } & {
89
- [x: string]: {
90
- connection: {
91
- oidc: {
92
- put: {
93
- body: {
94
- scopes?: string[] | undefined;
95
- redirectUri?: string | undefined;
96
- issuer: string;
97
- clientId: string;
98
- clientSecret: string;
99
- };
100
- params: {};
101
- query: unknown;
102
- headers: unknown;
103
- response: {
104
- 401: "Invalid or expired setup link";
105
- 403: "This setup link cannot configure OIDC";
106
- 501: "SSO is not configured";
107
- 200: {
108
- readonly configured: true;
109
- readonly type: "oidc";
110
- };
111
- 422: {
112
- type: "validation";
113
- on: string;
114
- summary?: string;
115
- message?: string;
116
- found?: unknown;
117
- property?: string;
118
- expected?: string;
119
- };
120
- };
121
- };
122
- };
123
- };
124
- };
125
- } & {
126
- [x: string]: {
127
- scim: {
128
- token: {
129
- post: {
130
- body: unknown;
131
- params: {};
132
- query: unknown;
133
- headers: unknown;
134
- response: {
135
- 401: "Invalid or expired setup link";
136
- 403: "This setup link cannot configure SCIM";
137
- 501: "SCIM is not configured";
138
- 200: {
139
- readonly baseUrl: `${string}/${string}`;
140
- readonly token: string;
141
- readonly tokenId: string;
142
- };
143
- };
144
- };
145
- };
146
- };
147
- };
148
- }, {
149
- derive: {};
150
- resolve: {};
151
- schema: {};
152
- standaloneSchema: {};
153
- response: {};
154
- }, {
155
- derive: {};
156
- resolve: {};
157
- schema: {};
158
- standaloneSchema: {};
159
- response: {};
160
- }>;