@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,2 +0,0 @@
1
- export type { CredentialsFor, OAuth2Client, OAuth2TokenResponse, OIDCProvider, PKCEProvider, ProviderConfiguration, ProviderOption, ProvidersMap, RefreshableProvider, RevocableProvider, ScopeRequiredProvider } from 'citra';
2
- export { decodeJWT, extractPropFromIdentity, isOIDCProviderOption, isPKCEProviderOption, isRefreshableOAuth2Client, isRefreshableProviderOption, isRevocableOAuth2Client, isRevocableProviderOption, isValidProviderOption, oidcProviderOptions, pkceProviderOptions, providerOptions, providers, refreshableProviderOptions, revocableProviderOptions, scopeRequiredProviderOptions } from 'citra';
@@ -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,2 +0,0 @@
1
- export declare const isSafeLocalPath: (value: string) => boolean;
2
- export declare const toSafeLocalPath: (value: string | undefined, fallback?: string) => string;
@@ -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,2 +0,0 @@
1
- import type { RoleStore } from './types';
2
- export declare const createInMemoryRoleStore: () => RoleStore;
@@ -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,86 +0,0 @@
1
- import { type AnyPgDatabase } from '../stores/postgres';
2
- import type { RoleStore } from './types';
3
- export declare const rolesTable: import("drizzle-orm/pg-core").PgTableWithColumns<{
4
- name: "auth_roles";
5
- schema: undefined;
6
- columns: {
7
- created_at_ms: import("drizzle-orm/pg-core").PgBuildColumn<"auth_roles", import("drizzle-orm/pg-core").SetNotNull<import("drizzle-orm/pg-core").PgBigInt53Builder>, {
8
- name: string;
9
- tableName: "auth_roles";
10
- dataType: "number int53";
11
- data: number;
12
- driverParam: string | number;
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
- organization_id: import("drizzle-orm/pg-core").PgBuildColumn<"auth_roles", import("drizzle-orm/pg-core").SetHasDefault<import("drizzle-orm/pg-core").SetNotNull<import("drizzle-orm/pg-core").PgVarcharBuilder<[string, ...string[]]>>>, {
23
- name: string;
24
- tableName: "auth_roles";
25
- dataType: "string";
26
- data: string;
27
- driverParam: string;
28
- notNull: true;
29
- hasDefault: true;
30
- isPrimaryKey: false;
31
- isAutoincrement: false;
32
- hasRuntimeDefault: false;
33
- enumValues: undefined;
34
- identity: undefined;
35
- generated: undefined;
36
- }>;
37
- permissions: import("drizzle-orm/pg-core").PgBuildColumn<"auth_roles", 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, string[]>>>, {
38
- name: string;
39
- tableName: "auth_roles";
40
- dataType: "object json";
41
- data: string[];
42
- driverParam: unknown;
43
- notNull: true;
44
- hasDefault: true;
45
- isPrimaryKey: false;
46
- isAutoincrement: false;
47
- hasRuntimeDefault: false;
48
- enumValues: undefined;
49
- identity: undefined;
50
- generated: undefined;
51
- }>;
52
- slug: import("drizzle-orm/pg-core").PgBuildColumn<"auth_roles", import("drizzle-orm/pg-core").SetNotNull<import("drizzle-orm/pg-core").PgVarcharBuilder<[string, ...string[]]>>, {
53
- name: string;
54
- tableName: "auth_roles";
55
- dataType: "string";
56
- data: string;
57
- driverParam: string;
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
- updated_at_ms: import("drizzle-orm/pg-core").PgBuildColumn<"auth_roles", import("drizzle-orm/pg-core").SetNotNull<import("drizzle-orm/pg-core").PgBigInt53Builder>, {
68
- name: string;
69
- tableName: "auth_roles";
70
- dataType: "number int53";
71
- data: number;
72
- driverParam: string | number;
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
- };
83
- dialect: "pg";
84
- }>;
85
- export declare const createNeonRoleStore: (databaseUrl: string) => RoleStore;
86
- export declare const createPostgresRoleStore: <DB extends AnyPgDatabase>(db: DB) => RoleStore;
@@ -1,17 +0,0 @@
1
- import type { OrganizationStore } from '../organizations/types';
2
- import type { OrganizationId } from '../tenancy';
3
- import type { RoleStore } from './types';
4
- export declare const createMembershipPermissionResolver: <UserType>({ getUserId, organizationStore, roleStore }: {
5
- getUserId: (user: UserType) => string;
6
- organizationStore: OrganizationStore;
7
- roleStore: RoleStore;
8
- }) => ({ organizationId, permission, user }: {
9
- organizationId?: OrganizationId;
10
- permission: string;
11
- user: UserType;
12
- }) => Promise<boolean>;
13
- export declare const resolvePermissions: ({ organizationId, roleStore, roles }: {
14
- organizationId?: OrganizationId;
15
- roleStore: RoleStore;
16
- roles: string[];
17
- }) => Promise<Set<string>>;
@@ -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: number]: {};
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,73 +0,0 @@
1
- import { Elysia } from 'elysia';
2
- import type { AuthSessionStore } from '../session/types';
3
- import { ClientProviders, OnProfileError, OnProfileSuccess, RouteString } from '../types';
4
- type ProfileProps<UserType> = {
5
- authSessionStore?: AuthSessionStore<UserType>;
6
- clientProviders: ClientProviders;
7
- profileRoute?: RouteString;
8
- onProfileSuccess: OnProfileSuccess;
9
- onProfileError: OnProfileError;
10
- };
11
- export declare const profile: <UserType>({ authSessionStore, clientProviders, profileRoute, onProfileSuccess, onProfileError }: ProfileProps<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
- get: {
32
- body: unknown;
33
- params: {};
34
- query: unknown;
35
- headers: unknown;
36
- response: {
37
- 400: "Cookies are missing" | "Session has no access token to fetch a profile";
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 expose a profile endpoint";
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: `${string} - ${string}` | `Failed to validate authorization code: Unknown status: ${string}`;
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 {};
@@ -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 = never>(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 = never>(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" | "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 {};