@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,23 +0,0 @@
1
- import type { SessionData, UnregisteredSessionData, UserSessionId } from '../types';
2
- export type SessionUserDecoder<UserType> = (value: unknown) => UserType;
3
- export declare const decodeSessionUserRecord: (value: unknown) => object;
4
- export type AuthSessionStore<UserType> = {
5
- getSession: (id: UserSessionId) => Promise<SessionData<UserType> | undefined>;
6
- setSession: (id: UserSessionId, value: SessionData<UserType>) => Promise<void>;
7
- removeSession: (id: UserSessionId) => Promise<void>;
8
- getUnregisteredSession: (id: UserSessionId) => Promise<UnregisteredSessionData | undefined>;
9
- setUnregisteredSession: (id: UserSessionId, value: UnregisteredSessionData) => Promise<void>;
10
- removeUnregisteredSession: (id: UserSessionId) => Promise<void>;
11
- listSessionIds?: () => Promise<UserSessionId[]>;
12
- listUnregisteredSessionIds?: () => Promise<UserSessionId[]>;
13
- /**
14
- * Optional fast-path the periodic cleanup prefers over loading every session
15
- * to check expiry: a backing store (e.g. SQL) deletes all rows past their
16
- * expiry in one indexed statement and returns how many it removed. When a
17
- * store provides this, cleanup skips the `listSessionIds` + per-id load
18
- * storm entirely. (Per-user session caps stay a creation-time concern.)
19
- */
20
- deleteExpired?: () => Promise<number>;
21
- deleteExpiredUnregistered?: () => Promise<number>;
22
- };
23
- export type AuthSessionSource<UserType> = Pick<AuthSessionStore<UserType>, 'getSession' | 'removeSession'>;
@@ -1,19 +0,0 @@
1
- import type { SessionData, UserSessionId } from '../types';
2
- import type { AuthSessionStore } from './types';
3
- export type UserSession<UserType> = {
4
- id: UserSessionId;
5
- session: SessionData<UserType>;
6
- };
7
- type ListUserSessionsProps<UserType> = {
8
- authSessionStore: AuthSessionStore<UserType>;
9
- getUserId: (user: UserType) => string;
10
- userId: string;
11
- };
12
- export declare const listUserSessions: <UserType>({ authSessionStore, getUserId, userId }: ListUserSessionsProps<UserType>) => Promise<UserSession<UserType>[]>;
13
- export declare const refreshUserSessions: <UserType>({ authSessionStore, getUserId, user, userId }: ListUserSessionsProps<UserType> & {
14
- user: UserType;
15
- }) => Promise<number>;
16
- export declare const revokeUserSessions: <UserType>({ authSessionStore, exceptSessionId, getUserId, userId }: ListUserSessionsProps<UserType> & {
17
- exceptSessionId?: UserSessionId;
18
- }) => Promise<number>;
19
- export {};
@@ -1,149 +0,0 @@
1
- import type { OAuth2TokenResponse, OIDCIdTokenClaims } from 'citra';
2
- import type { OrganizationId } from '../tenancy';
3
- import type { RouteString, UserSessionId } from '../types';
4
- import type { OidcConnection, SamlConnection, SSOConnectionStore } from './types';
5
- export declare const DEFAULT_SSO_ROUTE = "/sso";
6
- export declare const DEFAULT_SSO_SESSION_TTL_MS: number;
7
- export type SamlProfile = {
8
- attributes: Record<string, unknown>;
9
- email?: string;
10
- nameId: string;
11
- sessionIndex?: string;
12
- };
13
- type SamlAuthorizeRequest = {
14
- acsUrl: string;
15
- connection: SamlConnection;
16
- relayState?: string;
17
- };
18
- type SamlAssertionRequest = {
19
- acsUrl: string;
20
- connection: SamlConnection;
21
- relayState?: string;
22
- samlResponse: string;
23
- };
24
- type SamlMetadataRequest = {
25
- acsUrl: string;
26
- connection: SamlConnection;
27
- sloUrl?: string;
28
- };
29
- type SamlLogoutRequest = {
30
- connection: SamlConnection;
31
- nameId: string;
32
- relayState?: string;
33
- sessionIndex?: string;
34
- sloUrl: string;
35
- };
36
- type SamlLogoutResponseRequest = {
37
- connection: SamlConnection;
38
- relayState?: string;
39
- samlResponse: string;
40
- signature?: string;
41
- signatureAlgorithm?: string;
42
- signedQueryString?: string;
43
- sloUrl: string;
44
- };
45
- type SamlIdpLogoutRequest = {
46
- connection: SamlConnection;
47
- relayState?: string;
48
- samlRequest: string;
49
- signature?: string;
50
- signatureAlgorithm?: string;
51
- signedQueryString?: string;
52
- sloUrl: string;
53
- };
54
- type SamlLogoutResponseAck = {
55
- connection: SamlConnection;
56
- inResponseTo?: string;
57
- nameId?: string;
58
- relayState?: string;
59
- sloUrl: string;
60
- };
61
- export type SamlLogoutInfo = {
62
- nameId?: string;
63
- relayState?: string;
64
- requestId?: string;
65
- sessionIndex?: string;
66
- };
67
- export type SamlAuthnRequestInfo = {
68
- acsUrl?: string;
69
- forceAuthn?: boolean;
70
- id: string;
71
- issuer: string;
72
- relayState?: string;
73
- };
74
- export type SamlIdpResponseRequest = {
75
- acsUrl: string;
76
- attributes?: Record<string, unknown>;
77
- audience: string;
78
- idpEntityId: string;
79
- inResponseTo?: string;
80
- nameId: string;
81
- nameIdFormat?: string;
82
- relayState?: string;
83
- sessionIndex: string;
84
- };
85
- export type SamlIdpAdapter = {
86
- buildAutoPostForm: (input: {
87
- acsUrl: string;
88
- relayState?: string;
89
- samlResponse: string;
90
- }) => string;
91
- createSamlResponse: (request: SamlIdpResponseRequest) => Promise<string> | string;
92
- getIdpMetadata: (input: {
93
- entityId: string;
94
- ssoUrl: string;
95
- }) => Promise<string> | string;
96
- parseAuthnRequest: (input: {
97
- binding: 'POST' | 'Redirect';
98
- samlRequest: string;
99
- serviceProvider?: import('./types').SamlServiceProvider;
100
- signature?: string;
101
- signatureAlgorithm?: string;
102
- signedQueryString?: string;
103
- }) => Promise<SamlAuthnRequestInfo> | SamlAuthnRequestInfo;
104
- };
105
- export type SamlAdapter = {
106
- createAuthorizationUrl: (request: SamlAuthorizeRequest) => Promise<string> | string;
107
- createLogoutRequestUrl?: (request: SamlLogoutRequest) => Promise<string> | string;
108
- createLogoutResponseUrl?: (request: SamlLogoutResponseAck) => Promise<string> | string;
109
- getServiceProviderMetadata: (request: SamlMetadataRequest) => Promise<string> | string;
110
- validateAssertion: (request: SamlAssertionRequest) => Promise<SamlProfile>;
111
- validateLogoutRequest?: (request: SamlIdpLogoutRequest) => Promise<SamlLogoutInfo> | SamlLogoutInfo;
112
- validateLogoutResponse?: (request: SamlLogoutResponseRequest) => Promise<void> | void;
113
- };
114
- type SsoIdentityBase = {
115
- email?: string;
116
- organizationId: OrganizationId;
117
- sub: string;
118
- };
119
- export type OidcSsoIdentity = SsoIdentityBase & {
120
- claims: OIDCIdTokenClaims;
121
- connection: OidcConnection;
122
- protocol: 'oidc';
123
- tokenResponse: OAuth2TokenResponse;
124
- };
125
- export type SamlSsoIdentity = SsoIdentityBase & {
126
- attributes: Record<string, unknown>;
127
- connection: SamlConnection;
128
- protocol: 'saml';
129
- sessionIndex?: string;
130
- };
131
- export type SsoIdentity = OidcSsoIdentity | SamlSsoIdentity;
132
- export type SSOConfig<UserType> = {
133
- getOrganizationByEmailDomain?: (domain: string) => OrganizationId | undefined | Promise<OrganizationId | undefined>;
134
- getSsoUser: (identity: SsoIdentity) => Promise<UserType> | UserType;
135
- onSsoCallbackError?: (context: {
136
- error: unknown;
137
- organizationId: string;
138
- }) => void | Promise<void>;
139
- onSsoCallbackSuccess?: (context: {
140
- identity: SsoIdentity;
141
- user: UserType;
142
- userSessionId: UserSessionId;
143
- }) => void | Promise<void>;
144
- samlAdapter?: SamlAdapter;
145
- sessionDurationMs?: number;
146
- ssoConnectionStore: SSOConnectionStore;
147
- ssoRoute?: RouteString;
148
- };
149
- export {};
@@ -1,63 +0,0 @@
1
- import { Elysia } from 'elysia';
2
- import type { OrganizationId } from '../tenancy';
3
- import type { RouteString } from '../types';
4
- import type { SSOConnectionStore } from './types';
5
- type SsoDiscoveryProps = {
6
- getOrganizationByEmailDomain: (domain: string) => OrganizationId | undefined | Promise<OrganizationId | undefined>;
7
- ssoConnectionStore: SSOConnectionStore;
8
- ssoRoute?: RouteString;
9
- };
10
- export declare const ssoDiscoveryRoute: ({ getOrganizationByEmailDomain, ssoConnectionStore, ssoRoute }: SsoDiscoveryProps) => 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
- get: {
28
- body: unknown;
29
- params: {};
30
- query: {
31
- email?: string | undefined;
32
- };
33
- headers: unknown;
34
- response: {
35
- 400: "An \"email\" query parameter is required" | "A valid email address is required";
36
- 404: "No SSO organization is configured for this email domain" | "No SSO connection is configured for this organization";
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
- };
48
- };
49
- };
50
- }, {
51
- derive: {};
52
- resolve: {};
53
- schema: {};
54
- standaloneSchema: {};
55
- response: {};
56
- }, {
57
- derive: {};
58
- resolve: {};
59
- schema: {};
60
- standaloneSchema: {};
61
- response: {};
62
- }>;
63
- export {};
@@ -1,2 +0,0 @@
1
- import type { SamlServiceProviderStore } from './types';
2
- export declare const createInMemorySamlServiceProviderStore: () => SamlServiceProviderStore;
@@ -1,2 +0,0 @@
1
- import type { SSOConnectionStore } from './types';
2
- export declare const createInMemorySsoConnectionStore: () => SSOConnectionStore;
@@ -1,8 +0,0 @@
1
- import 'reflect-metadata';
2
- import type { SamlAdapter } from './config';
3
- export type NodeSamlAdapterOptions = {
4
- spPrivateKey?: string;
5
- spCertificate?: string;
6
- signatureAlgorithm?: 'sha1' | 'sha256' | 'sha512';
7
- };
8
- export declare const createNodeSamlAdapter: (options?: NodeSamlAdapterOptions) => Promise<SamlAdapter>;
@@ -1,98 +0,0 @@
1
- import { Elysia } from 'elysia';
2
- import type { AuthSessionStore } from '../session/types';
3
- import { type SSOConfig } from './config';
4
- type OidcRoutesProps<UserType> = SSOConfig<UserType> & {
5
- authSessionStore?: AuthSessionStore<UserType>;
6
- cookieSecure?: boolean;
7
- };
8
- export declare const oidcSsoRoutes: <UserType>({ authSessionStore, cookieSecure, getSsoUser, onSsoCallbackError, onSsoCallbackSuccess, sessionDurationMs, ssoConnectionStore, ssoRoute }: OidcRoutesProps<UserType>) => Elysia<"", {
9
- decorator: {};
10
- store: {
11
- session: import("..").SessionRecord<UserType>;
12
- unregisteredSession: import("..").UnregisteredSessionRecord;
13
- };
14
- derive: {};
15
- resolve: {};
16
- }, {
17
- typebox: {};
18
- error: {};
19
- }, {
20
- schema: {};
21
- standaloneSchema: {};
22
- macro: {};
23
- macroFn: {};
24
- parser: {};
25
- response: {};
26
- }, {
27
- [x: string]: {
28
- get: {
29
- body: unknown;
30
- params: {
31
- organizationId: string;
32
- };
33
- query: unknown;
34
- headers: unknown;
35
- response: {
36
- 404: "No OIDC connection is configured for this organization";
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
- };
48
- };
49
- };
50
- } & {
51
- [x: string]: {
52
- get: {
53
- body: unknown;
54
- params: {
55
- organizationId: string;
56
- };
57
- query: {
58
- code?: string | undefined;
59
- state?: string | undefined;
60
- };
61
- headers: unknown;
62
- response: {
63
- 400: "SSO session cookies are missing" | "Invalid SSO callback request" | "SSO organization mismatch" | "OIDC token response is missing an id_token";
64
- 404: "No OIDC connection is configured for this organization";
65
- 200: Response;
66
- 422: {
67
- type: "validation";
68
- on: string;
69
- summary?: string;
70
- message?: string;
71
- found?: unknown;
72
- property?: string;
73
- expected?: string;
74
- };
75
- 500: "OIDC sign-in failed";
76
- };
77
- };
78
- };
79
- }, {
80
- derive: {};
81
- resolve: {};
82
- schema: {};
83
- standaloneSchema: {};
84
- response: {};
85
- }, {
86
- derive: {};
87
- resolve: {};
88
- schema: {};
89
- standaloneSchema: {};
90
- response: {};
91
- } & {
92
- derive: {};
93
- resolve: {};
94
- schema: {};
95
- standaloneSchema: {};
96
- response: {};
97
- }>;
98
- export {};
@@ -1,101 +0,0 @@
1
- import { type AnyPgDatabase } from '../stores/postgres';
2
- import type { SamlServiceProviderStore } from './types';
3
- export declare const samlServiceProvidersTable: import("drizzle-orm/pg-core").PgTableWithColumns<{
4
- name: "auth_saml_service_providers";
5
- schema: undefined;
6
- columns: {
7
- acs_url: import("drizzle-orm/pg-core").PgBuildColumn<"auth_saml_service_providers", import("drizzle-orm/pg-core").SetNotNull<import("drizzle-orm/pg-core").PgVarcharBuilder<[string, ...string[]]>>, {
8
- name: string;
9
- tableName: "auth_saml_service_providers";
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
- created_at_ms: import("drizzle-orm/pg-core").PgBuildColumn<"auth_saml_service_providers", import("drizzle-orm/pg-core").SetNotNull<import("drizzle-orm/pg-core").PgBigInt53Builder>, {
23
- name: string;
24
- tableName: "auth_saml_service_providers";
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
- entity_id: import("drizzle-orm/pg-core").PgBuildColumn<"auth_saml_service_providers", import("drizzle-orm/pg-core").SetIsPrimaryKey<import("drizzle-orm/pg-core").PgVarcharBuilder<[string, ...string[]]>>, {
38
- name: string;
39
- tableName: "auth_saml_service_providers";
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
- name_id_format: import("drizzle-orm/pg-core").PgBuildColumn<"auth_saml_service_providers", import("drizzle-orm/pg-core").PgVarcharBuilder<[string, ...string[]]>, {
53
- name: string;
54
- tableName: "auth_saml_service_providers";
55
- dataType: "string";
56
- data: string;
57
- driverParam: string;
58
- notNull: false;
59
- hasDefault: false;
60
- isPrimaryKey: false;
61
- isAutoincrement: false;
62
- hasRuntimeDefault: false;
63
- enumValues: undefined;
64
- identity: undefined;
65
- generated: undefined;
66
- }>;
67
- signing_cert: import("drizzle-orm/pg-core").PgBuildColumn<"auth_saml_service_providers", import("drizzle-orm/pg-core").PgTextBuilder<[string, ...string[]]>, {
68
- name: string;
69
- tableName: "auth_saml_service_providers";
70
- dataType: "string";
71
- data: string;
72
- driverParam: string;
73
- notNull: false;
74
- hasDefault: false;
75
- isPrimaryKey: false;
76
- isAutoincrement: false;
77
- hasRuntimeDefault: false;
78
- enumValues: undefined;
79
- identity: undefined;
80
- generated: undefined;
81
- }>;
82
- updated_at_ms: import("drizzle-orm/pg-core").PgBuildColumn<"auth_saml_service_providers", import("drizzle-orm/pg-core").SetNotNull<import("drizzle-orm/pg-core").PgBigInt53Builder>, {
83
- name: string;
84
- tableName: "auth_saml_service_providers";
85
- dataType: "number int53";
86
- data: number;
87
- driverParam: string | number;
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
- };
98
- dialect: "pg";
99
- }>;
100
- export declare const createNeonSamlServiceProviderStore: (databaseUrl: string) => SamlServiceProviderStore;
101
- export declare const createPostgresSamlServiceProviderStore: <DB extends AnyPgDatabase>(db: DB) => SamlServiceProviderStore;
@@ -1,117 +0,0 @@
1
- import { type AnyPgDatabase } from '../stores/postgres';
2
- import type { SecretCipher } from '../compliance/cipher';
3
- import type { OidcConnectionConfig, SamlConnectionConfig, SSOConnectionStore, SSOConnectionType } from './types';
4
- export declare const ssoConnectionsTable: import("drizzle-orm/pg-core").PgTableWithColumns<{
5
- name: "auth_sso_connections";
6
- schema: undefined;
7
- columns: {
8
- config: import("drizzle-orm/pg-core").PgBuildColumn<"auth_sso_connections", import("drizzle-orm/pg-core").SetNotNull<import("drizzle-orm/pg-core").Set$Type<import("drizzle-orm/pg-core").PgJsonbBuilder, OidcConnectionConfig | SamlConnectionConfig>>, {
9
- name: string;
10
- tableName: "auth_sso_connections";
11
- dataType: "object json";
12
- data: OidcConnectionConfig | SamlConnectionConfig;
13
- driverParam: unknown;
14
- notNull: true;
15
- hasDefault: false;
16
- isPrimaryKey: false;
17
- isAutoincrement: false;
18
- hasRuntimeDefault: false;
19
- enumValues: undefined;
20
- identity: undefined;
21
- generated: undefined;
22
- }>;
23
- connection_id: import("drizzle-orm/pg-core").PgBuildColumn<"auth_sso_connections", import("drizzle-orm/pg-core").SetIsPrimaryKey<import("drizzle-orm/pg-core").PgVarcharBuilder<[string, ...string[]]>>, {
24
- name: string;
25
- tableName: "auth_sso_connections";
26
- dataType: "string";
27
- data: string;
28
- driverParam: string;
29
- notNull: true;
30
- hasDefault: false;
31
- isPrimaryKey: false;
32
- isAutoincrement: false;
33
- hasRuntimeDefault: false;
34
- enumValues: undefined;
35
- identity: undefined;
36
- generated: undefined;
37
- }>;
38
- created_at_ms: import("drizzle-orm/pg-core").PgBuildColumn<"auth_sso_connections", import("drizzle-orm/pg-core").SetNotNull<import("drizzle-orm/pg-core").PgBigInt53Builder>, {
39
- name: string;
40
- tableName: "auth_sso_connections";
41
- dataType: "number int53";
42
- data: number;
43
- driverParam: string | number;
44
- notNull: true;
45
- hasDefault: false;
46
- isPrimaryKey: false;
47
- isAutoincrement: false;
48
- hasRuntimeDefault: false;
49
- enumValues: undefined;
50
- identity: undefined;
51
- generated: undefined;
52
- }>;
53
- enabled: import("drizzle-orm/pg-core").PgBuildColumn<"auth_sso_connections", import("drizzle-orm/pg-core").SetHasDefault<import("drizzle-orm/pg-core").SetNotNull<import("drizzle-orm/pg-core").PgBooleanBuilder>>, {
54
- name: string;
55
- tableName: "auth_sso_connections";
56
- dataType: "boolean";
57
- data: boolean;
58
- driverParam: boolean;
59
- notNull: true;
60
- hasDefault: true;
61
- isPrimaryKey: false;
62
- isAutoincrement: false;
63
- hasRuntimeDefault: false;
64
- enumValues: undefined;
65
- identity: undefined;
66
- generated: undefined;
67
- }>;
68
- organization_id: import("drizzle-orm/pg-core").PgBuildColumn<"auth_sso_connections", import("drizzle-orm/pg-core").SetNotNull<import("drizzle-orm/pg-core").PgVarcharBuilder<[string, ...string[]]>>, {
69
- name: string;
70
- tableName: "auth_sso_connections";
71
- dataType: "string";
72
- data: string;
73
- driverParam: string;
74
- notNull: true;
75
- hasDefault: false;
76
- isPrimaryKey: false;
77
- isAutoincrement: false;
78
- hasRuntimeDefault: false;
79
- enumValues: undefined;
80
- identity: undefined;
81
- generated: undefined;
82
- }>;
83
- type: import("drizzle-orm/pg-core").PgBuildColumn<"auth_sso_connections", import("drizzle-orm/pg-core").SetNotNull<import("drizzle-orm/pg-core").Set$Type<import("drizzle-orm/pg-core").PgVarcharBuilder<[string, ...string[]]>, SSOConnectionType>>, {
84
- name: string;
85
- tableName: "auth_sso_connections";
86
- dataType: "string";
87
- data: SSOConnectionType;
88
- driverParam: string;
89
- notNull: true;
90
- hasDefault: false;
91
- isPrimaryKey: false;
92
- isAutoincrement: false;
93
- hasRuntimeDefault: false;
94
- enumValues: undefined;
95
- identity: undefined;
96
- generated: undefined;
97
- }>;
98
- updated_at_ms: import("drizzle-orm/pg-core").PgBuildColumn<"auth_sso_connections", import("drizzle-orm/pg-core").SetNotNull<import("drizzle-orm/pg-core").PgBigInt53Builder>, {
99
- name: string;
100
- tableName: "auth_sso_connections";
101
- dataType: "number int53";
102
- data: number;
103
- driverParam: string | number;
104
- notNull: true;
105
- hasDefault: false;
106
- isPrimaryKey: false;
107
- isAutoincrement: false;
108
- hasRuntimeDefault: false;
109
- enumValues: undefined;
110
- identity: undefined;
111
- generated: undefined;
112
- }>;
113
- };
114
- dialect: "pg";
115
- }>;
116
- export declare const createNeonSsoConnectionStore: (databaseUrl: string) => SSOConnectionStore;
117
- export declare const createPostgresSsoConnectionStore: <DB extends AnyPgDatabase>(db: DB, cipher?: SecretCipher) => SSOConnectionStore;