@robelest/convex-auth 0.0.4-preview.13 → 0.0.4-preview.16

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 (328) hide show
  1. package/README.md +140 -9
  2. package/dist/bin.cjs +5957 -5478
  3. package/dist/client/index.d.ts +3 -7
  4. package/dist/client/index.d.ts.map +1 -1
  5. package/dist/client/index.js +27 -26
  6. package/dist/client/index.js.map +1 -1
  7. package/dist/component/_generated/api.d.ts +14 -0
  8. package/dist/component/_generated/api.d.ts.map +1 -1
  9. package/dist/component/_generated/api.js.map +1 -1
  10. package/dist/component/_generated/component.d.ts +1672 -24
  11. package/dist/component/_generated/component.d.ts.map +1 -1
  12. package/dist/component/convex.config.d.ts +2 -2
  13. package/dist/component/convex.config.d.ts.map +1 -1
  14. package/dist/component/index.d.ts +1 -1
  15. package/dist/component/index.js +2 -2
  16. package/dist/component/model.d.ts +153 -0
  17. package/dist/component/model.d.ts.map +1 -0
  18. package/dist/component/model.js +343 -0
  19. package/dist/component/model.js.map +1 -0
  20. package/dist/component/providers/sso.d.ts +1 -1
  21. package/dist/component/public/enterprise.d.ts +54 -0
  22. package/dist/component/public/enterprise.d.ts.map +1 -0
  23. package/dist/component/public/enterprise.js +515 -0
  24. package/dist/component/public/enterprise.js.map +1 -0
  25. package/dist/component/public/factors.d.ts +52 -0
  26. package/dist/component/public/factors.d.ts.map +1 -0
  27. package/dist/component/public/factors.js +285 -0
  28. package/dist/component/public/factors.js.map +1 -0
  29. package/dist/component/public/groups.d.ts +116 -0
  30. package/dist/component/public/groups.d.ts.map +1 -0
  31. package/dist/component/public/groups.js +596 -0
  32. package/dist/component/public/groups.js.map +1 -0
  33. package/dist/component/public/identity.d.ts +93 -0
  34. package/dist/component/public/identity.d.ts.map +1 -0
  35. package/dist/component/public/identity.js +426 -0
  36. package/dist/component/public/identity.js.map +1 -0
  37. package/dist/component/public/keys.d.ts +41 -0
  38. package/dist/component/public/keys.d.ts.map +1 -0
  39. package/dist/component/public/keys.js +157 -0
  40. package/dist/component/public/keys.js.map +1 -0
  41. package/dist/component/public/shared.d.ts +26 -0
  42. package/dist/component/public/shared.d.ts.map +1 -0
  43. package/dist/component/public/shared.js +32 -0
  44. package/dist/component/public/shared.js.map +1 -0
  45. package/dist/component/public.d.ts +9 -321
  46. package/dist/component/public.d.ts.map +1 -1
  47. package/dist/component/public.js +6 -2145
  48. package/dist/component/schema.d.ts +406 -260
  49. package/dist/component/schema.js +37 -32
  50. package/dist/component/schema.js.map +1 -1
  51. package/dist/component/server/auth.d.ts +161 -15
  52. package/dist/component/server/auth.d.ts.map +1 -1
  53. package/dist/component/server/auth.js +100 -7
  54. package/dist/component/server/auth.js.map +1 -1
  55. package/dist/component/server/cookies.js +3 -0
  56. package/dist/component/server/cookies.js.map +1 -1
  57. package/dist/component/server/db.js +1 -0
  58. package/dist/component/server/db.js.map +1 -1
  59. package/dist/component/server/device.js +3 -1
  60. package/dist/component/server/device.js.map +1 -1
  61. package/dist/component/server/domains/core.js +629 -0
  62. package/dist/component/server/domains/core.js.map +1 -0
  63. package/dist/component/server/domains/sso.js +884 -0
  64. package/dist/component/server/domains/sso.js.map +1 -0
  65. package/dist/component/server/factory.d.ts +136 -0
  66. package/dist/component/server/factory.d.ts.map +1 -0
  67. package/dist/component/server/factory.js +1134 -0
  68. package/dist/component/server/factory.js.map +1 -0
  69. package/dist/component/server/fx.js +2 -1
  70. package/dist/component/server/fx.js.map +1 -1
  71. package/dist/component/server/http.js +287 -0
  72. package/dist/component/server/http.js.map +1 -0
  73. package/dist/component/server/identity.js +13 -0
  74. package/dist/component/server/identity.js.map +1 -0
  75. package/dist/component/server/keys.js +4 -0
  76. package/dist/component/server/keys.js.map +1 -1
  77. package/dist/component/server/mutations/account.js +1 -1
  78. package/dist/component/server/mutations/index.js +2 -2
  79. package/dist/component/server/mutations/index.js.map +1 -1
  80. package/dist/component/server/mutations/invalidate.js +1 -1
  81. package/dist/component/server/mutations/oauth.js +10 -7
  82. package/dist/component/server/mutations/oauth.js.map +1 -1
  83. package/dist/component/server/mutations/refresh.js +1 -1
  84. package/dist/component/server/mutations/register.js +1 -1
  85. package/dist/component/server/mutations/retrieve.js +1 -1
  86. package/dist/component/server/mutations/signature.js +1 -1
  87. package/dist/component/server/mutations/store.js +6 -3
  88. package/dist/component/server/mutations/store.js.map +1 -1
  89. package/dist/component/server/mutations/verify.js +1 -1
  90. package/dist/component/server/oauth.js +3 -0
  91. package/dist/component/server/oauth.js.map +1 -1
  92. package/dist/component/server/passkey.js +3 -2
  93. package/dist/component/server/passkey.js.map +1 -1
  94. package/dist/component/server/provider.js +2 -0
  95. package/dist/component/server/provider.js.map +1 -1
  96. package/dist/component/server/providers.js +10 -0
  97. package/dist/component/server/providers.js.map +1 -1
  98. package/dist/component/server/ratelimit.js +3 -0
  99. package/dist/component/server/ratelimit.js.map +1 -1
  100. package/dist/component/server/redirects.js +2 -0
  101. package/dist/component/server/redirects.js.map +1 -1
  102. package/dist/component/server/refresh.js +5 -0
  103. package/dist/component/server/refresh.js.map +1 -1
  104. package/dist/component/server/sessions.js +5 -0
  105. package/dist/component/server/sessions.js.map +1 -1
  106. package/dist/component/server/signin.js +2 -1
  107. package/dist/component/server/signin.js.map +1 -1
  108. package/dist/component/server/sso.js +166 -19
  109. package/dist/component/server/sso.js.map +1 -1
  110. package/dist/component/server/tokens.js +1 -0
  111. package/dist/component/server/tokens.js.map +1 -1
  112. package/dist/component/server/totp.js +4 -2
  113. package/dist/component/server/totp.js.map +1 -1
  114. package/dist/component/server/types.d.ts +106 -38
  115. package/dist/component/server/types.d.ts.map +1 -1
  116. package/dist/component/server/types.js.map +1 -1
  117. package/dist/component/server/users.js +1 -0
  118. package/dist/component/server/users.js.map +1 -1
  119. package/dist/component/server/utils.js +44 -2
  120. package/dist/component/server/utils.js.map +1 -1
  121. package/dist/providers/anonymous.d.ts +1 -1
  122. package/dist/providers/credentials.d.ts +1 -1
  123. package/dist/providers/password.d.ts +1 -1
  124. package/dist/providers/sso.d.ts +1 -1
  125. package/dist/providers/sso.js.map +1 -1
  126. package/dist/server/auth.d.ts +163 -17
  127. package/dist/server/auth.d.ts.map +1 -1
  128. package/dist/server/auth.js +100 -7
  129. package/dist/server/auth.js.map +1 -1
  130. package/dist/server/cookies.d.ts +1 -38
  131. package/dist/server/cookies.js +3 -0
  132. package/dist/server/cookies.js.map +1 -1
  133. package/dist/server/db.d.ts +1 -125
  134. package/dist/server/db.js +1 -0
  135. package/dist/server/db.js.map +1 -1
  136. package/dist/server/device.d.ts +1 -24
  137. package/dist/server/device.js +3 -1
  138. package/dist/server/device.js.map +1 -1
  139. package/dist/server/domains/core.d.ts +434 -0
  140. package/dist/server/domains/core.d.ts.map +1 -0
  141. package/dist/server/domains/core.js +629 -0
  142. package/dist/server/domains/core.js.map +1 -0
  143. package/dist/server/domains/sso.d.ts +409 -0
  144. package/dist/server/domains/sso.d.ts.map +1 -0
  145. package/dist/server/domains/sso.js +884 -0
  146. package/dist/server/domains/sso.js.map +1 -0
  147. package/dist/server/enterpriseValidators.d.ts +1 -0
  148. package/dist/server/enterpriseValidators.js +60 -0
  149. package/dist/server/enterpriseValidators.js.map +1 -0
  150. package/dist/server/factory.d.ts +136 -0
  151. package/dist/server/factory.d.ts.map +1 -0
  152. package/dist/server/factory.js +1134 -0
  153. package/dist/server/factory.js.map +1 -0
  154. package/dist/server/fx.d.ts +1 -16
  155. package/dist/server/fx.d.ts.map +1 -1
  156. package/dist/server/fx.js +1 -0
  157. package/dist/server/fx.js.map +1 -1
  158. package/dist/server/http.d.ts +59 -0
  159. package/dist/server/http.d.ts.map +1 -0
  160. package/dist/server/http.js +287 -0
  161. package/dist/server/http.js.map +1 -0
  162. package/dist/server/identity.d.ts +1 -0
  163. package/dist/server/identity.js +13 -0
  164. package/dist/server/identity.js.map +1 -0
  165. package/dist/server/index.d.ts +468 -1
  166. package/dist/server/index.d.ts.map +1 -1
  167. package/dist/server/index.js +530 -36
  168. package/dist/server/index.js.map +1 -1
  169. package/dist/server/keys.d.ts +1 -57
  170. package/dist/server/keys.js +4 -0
  171. package/dist/server/keys.js.map +1 -1
  172. package/dist/server/mutations/account.d.ts +7 -7
  173. package/dist/server/mutations/account.d.ts.map +1 -1
  174. package/dist/server/mutations/code.d.ts +13 -13
  175. package/dist/server/mutations/code.d.ts.map +1 -1
  176. package/dist/server/mutations/index.d.ts +107 -107
  177. package/dist/server/mutations/index.d.ts.map +1 -1
  178. package/dist/server/mutations/index.js +1 -1
  179. package/dist/server/mutations/index.js.map +1 -1
  180. package/dist/server/mutations/invalidate.d.ts +5 -5
  181. package/dist/server/mutations/invalidate.d.ts.map +1 -1
  182. package/dist/server/mutations/oauth.d.ts +10 -10
  183. package/dist/server/mutations/oauth.d.ts.map +1 -1
  184. package/dist/server/mutations/oauth.js +9 -6
  185. package/dist/server/mutations/oauth.js.map +1 -1
  186. package/dist/server/mutations/refresh.d.ts +4 -4
  187. package/dist/server/mutations/register.d.ts +12 -12
  188. package/dist/server/mutations/register.d.ts.map +1 -1
  189. package/dist/server/mutations/retrieve.d.ts +7 -7
  190. package/dist/server/mutations/signature.d.ts +5 -5
  191. package/dist/server/mutations/signin.d.ts +6 -6
  192. package/dist/server/mutations/signin.d.ts.map +1 -1
  193. package/dist/server/mutations/signout.d.ts +1 -1
  194. package/dist/server/mutations/store.d.ts +3 -2
  195. package/dist/server/mutations/store.d.ts.map +1 -1
  196. package/dist/server/mutations/store.js +6 -3
  197. package/dist/server/mutations/store.js.map +1 -1
  198. package/dist/server/mutations/verifier.d.ts +1 -1
  199. package/dist/server/mutations/verify.d.ts +11 -11
  200. package/dist/server/mutations/verify.d.ts.map +1 -1
  201. package/dist/server/oauth.d.ts +1 -59
  202. package/dist/server/oauth.js +3 -0
  203. package/dist/server/oauth.js.map +1 -1
  204. package/dist/server/passkey.d.ts.map +1 -1
  205. package/dist/server/passkey.js +3 -2
  206. package/dist/server/passkey.js.map +1 -1
  207. package/dist/server/provider.d.ts +1 -14
  208. package/dist/server/provider.d.ts.map +1 -1
  209. package/dist/server/provider.js +2 -0
  210. package/dist/server/provider.js.map +1 -1
  211. package/dist/server/providers.js +10 -0
  212. package/dist/server/providers.js.map +1 -1
  213. package/dist/server/ratelimit.d.ts +1 -22
  214. package/dist/server/ratelimit.js +3 -0
  215. package/dist/server/ratelimit.js.map +1 -1
  216. package/dist/server/redirects.d.ts +1 -10
  217. package/dist/server/redirects.js +2 -0
  218. package/dist/server/redirects.js.map +1 -1
  219. package/dist/server/refresh.d.ts +1 -37
  220. package/dist/server/refresh.js +5 -0
  221. package/dist/server/refresh.js.map +1 -1
  222. package/dist/server/sessions.d.ts +1 -28
  223. package/dist/server/sessions.js +5 -0
  224. package/dist/server/sessions.js.map +1 -1
  225. package/dist/server/signin.d.ts +1 -55
  226. package/dist/server/signin.js +2 -1
  227. package/dist/server/signin.js.map +1 -1
  228. package/dist/server/sso.d.ts +1 -348
  229. package/dist/server/sso.js +165 -18
  230. package/dist/server/sso.js.map +1 -1
  231. package/dist/server/templates.d.ts +1 -21
  232. package/dist/server/templates.js +1 -0
  233. package/dist/server/templates.js.map +1 -1
  234. package/dist/server/tokens.d.ts +1 -11
  235. package/dist/server/tokens.js +1 -0
  236. package/dist/server/tokens.js.map +1 -1
  237. package/dist/server/totp.d.ts +1 -23
  238. package/dist/server/totp.js +4 -2
  239. package/dist/server/totp.js.map +1 -1
  240. package/dist/server/types.d.ts +114 -77
  241. package/dist/server/types.d.ts.map +1 -1
  242. package/dist/server/types.js.map +1 -1
  243. package/dist/server/users.d.ts +1 -31
  244. package/dist/server/users.js +1 -0
  245. package/dist/server/users.js.map +1 -1
  246. package/dist/server/utils.d.ts +1 -27
  247. package/dist/server/utils.js +44 -2
  248. package/dist/server/utils.js.map +1 -1
  249. package/dist/server/version.d.ts +1 -1
  250. package/dist/server/version.js +1 -1
  251. package/dist/server/version.js.map +1 -1
  252. package/package.json +4 -5
  253. package/src/cli/bin.ts +5 -0
  254. package/src/cli/index.ts +22 -9
  255. package/src/cli/keys.ts +3 -0
  256. package/src/client/index.ts +36 -37
  257. package/src/component/_generated/api.ts +14 -0
  258. package/src/component/_generated/component.ts +2106 -9
  259. package/src/component/index.ts +3 -1
  260. package/src/component/model.ts +441 -0
  261. package/src/component/public/enterprise.ts +753 -0
  262. package/src/component/public/factors.ts +332 -0
  263. package/src/component/public/groups.ts +932 -0
  264. package/src/component/public/identity.ts +566 -0
  265. package/src/component/public/keys.ts +209 -0
  266. package/src/component/public/shared.ts +119 -0
  267. package/src/component/public.ts +5 -2965
  268. package/src/component/schema.ts +68 -63
  269. package/src/providers/sso.ts +1 -1
  270. package/src/server/auth.ts +413 -18
  271. package/src/server/cookies.ts +3 -0
  272. package/src/server/db.ts +3 -0
  273. package/src/server/device.ts +3 -1
  274. package/src/server/domains/core.ts +1071 -0
  275. package/src/server/domains/sso.ts +1749 -0
  276. package/src/server/enterpriseValidators.ts +93 -0
  277. package/src/server/factory.ts +2181 -0
  278. package/src/server/fx.ts +1 -0
  279. package/src/server/http.ts +529 -0
  280. package/src/server/identity.ts +18 -0
  281. package/src/server/index.ts +806 -40
  282. package/src/server/keys.ts +4 -0
  283. package/src/server/mutations/index.ts +1 -1
  284. package/src/server/mutations/oauth.ts +36 -8
  285. package/src/server/mutations/store.ts +6 -3
  286. package/src/server/oauth.ts +6 -0
  287. package/src/server/passkey.ts +3 -2
  288. package/src/server/provider.ts +2 -0
  289. package/src/server/providers.ts +20 -0
  290. package/src/server/ratelimit.ts +3 -0
  291. package/src/server/redirects.ts +2 -0
  292. package/src/server/refresh.ts +5 -0
  293. package/src/server/sessions.ts +5 -0
  294. package/src/server/signin.ts +1 -0
  295. package/src/server/sso.ts +259 -17
  296. package/src/server/templates.ts +1 -0
  297. package/src/server/tokens.ts +1 -0
  298. package/src/server/totp.ts +4 -2
  299. package/src/server/types.ts +178 -83
  300. package/src/server/users.ts +1 -0
  301. package/src/server/utils.ts +71 -1
  302. package/src/server/version.ts +1 -1
  303. package/dist/component/public.js.map +0 -1
  304. package/dist/component/server/implementation.d.ts +0 -1264
  305. package/dist/component/server/implementation.d.ts.map +0 -1
  306. package/dist/component/server/implementation.js +0 -2365
  307. package/dist/component/server/implementation.js.map +0 -1
  308. package/dist/server/cookies.d.ts.map +0 -1
  309. package/dist/server/db.d.ts.map +0 -1
  310. package/dist/server/device.d.ts.map +0 -1
  311. package/dist/server/implementation.d.ts +0 -1264
  312. package/dist/server/implementation.d.ts.map +0 -1
  313. package/dist/server/implementation.js +0 -2365
  314. package/dist/server/implementation.js.map +0 -1
  315. package/dist/server/keys.d.ts.map +0 -1
  316. package/dist/server/oauth.d.ts.map +0 -1
  317. package/dist/server/ratelimit.d.ts.map +0 -1
  318. package/dist/server/redirects.d.ts.map +0 -1
  319. package/dist/server/refresh.d.ts.map +0 -1
  320. package/dist/server/sessions.d.ts.map +0 -1
  321. package/dist/server/signin.d.ts.map +0 -1
  322. package/dist/server/sso.d.ts.map +0 -1
  323. package/dist/server/templates.d.ts.map +0 -1
  324. package/dist/server/tokens.d.ts.map +0 -1
  325. package/dist/server/totp.d.ts.map +0 -1
  326. package/dist/server/users.d.ts.map +0 -1
  327. package/dist/server/utils.d.ts.map +0 -1
  328. package/src/server/implementation.ts +0 -5336
@@ -1,4 +1,471 @@
1
+ import { AuthAuthorizationConfig, AuthRoleId } from "./types.js";
2
+ import { AuthApi } from "./auth.js";
3
+ import * as convex_server2 from "convex/server";
4
+
1
5
  //#region src/server/index.d.ts
6
+ type EnterpriseAdminPermission = "sso.connection.create" | "sso.connection.read" | "sso.connection.manage" | "sso.domain.manage" | "sso.protocol.manage" | "sso.policy.manage" | "sso.audit.read" | "sso.webhook.manage" | "scim.manage";
7
+ type EnterpriseAdminAuthorizationInput = {
8
+ userId: string;
9
+ permission: EnterpriseAdminPermission;
10
+ enterpriseId?: string;
11
+ groupId?: string;
12
+ resolvedGroupId: string | null;
13
+ };
14
+ type EnterpriseAuthorizer = (ctx: {
15
+ auth: convex_server2.Auth;
16
+ }, input: EnterpriseAdminAuthorizationInput) => Promise<void>;
17
+ type RoleRef<TRoleId extends string> = {
18
+ id: TRoleId;
19
+ };
20
+ type MountedEnterpriseOptions<TRoleId extends string = string> = {
21
+ admin?: {
22
+ authorized?: EnterpriseAuthorizer;
23
+ roles?: Array<TRoleId | RoleRef<TRoleId>>;
24
+ };
25
+ };
26
+ type EnterpriseMountOptions<TRoleId extends string = string> = {
27
+ admin: {
28
+ authorized: EnterpriseAuthorizer;
29
+ roles?: Array<TRoleId | RoleRef<TRoleId>>;
30
+ };
31
+ };
32
+ /**
33
+ * Build optional public SSO management actions that apps can mount under
34
+ * `convex/auth/sso/**` when they want client-callable enterprise APIs.
35
+ *
36
+ * `admin` is for tenant-admin control-plane operations and should be mounted
37
+ * with an explicit authorization policy. `client` is for end-user sign-in
38
+ * helpers and does not require tenant-admin authorization.
39
+ */
40
+ declare function sso<TAuthorization extends AuthAuthorizationConfig | undefined = undefined>(auth: Pick<AuthApi<TAuthorization>, "group" | "member" | "sso" | "user">, options?: MountedEnterpriseOptions<AuthRoleId<TAuthorization>>): {
41
+ admin: {
42
+ connection: {
43
+ create: convex_server2.RegisteredMutation<"public", {
44
+ name?: string | undefined;
45
+ status?: "draft" | "active" | "disabled" | undefined;
46
+ slug?: string | undefined;
47
+ groupId?: string | undefined;
48
+ domain?: string | undefined;
49
+ }, Promise<any>>;
50
+ get: convex_server2.RegisteredQuery<"public", {
51
+ enterpriseId: string;
52
+ }, Promise<any>>;
53
+ getByGroup: convex_server2.RegisteredQuery<"public", {
54
+ groupId: string;
55
+ }, Promise<any>>;
56
+ getByDomain: convex_server2.RegisteredQuery<"public", {
57
+ domain: string;
58
+ }, Promise<any>>;
59
+ list: convex_server2.RegisteredQuery<"public", {
60
+ limit?: number | undefined;
61
+ where?: {
62
+ status?: "draft" | "active" | "disabled" | undefined;
63
+ slug?: string | undefined;
64
+ groupId?: string | undefined;
65
+ } | undefined;
66
+ cursor?: string | null | undefined;
67
+ orderBy?: string | undefined;
68
+ order?: "asc" | "desc" | undefined;
69
+ }, Promise<any>>;
70
+ update: convex_server2.RegisteredMutation<"public", {
71
+ enterpriseId: string;
72
+ data: {
73
+ name?: string | undefined;
74
+ status?: "draft" | "active" | "disabled" | undefined;
75
+ slug?: string | undefined;
76
+ };
77
+ }, Promise<{
78
+ ok: true;
79
+ enterpriseId: string;
80
+ }>>;
81
+ delete: convex_server2.RegisteredMutation<"public", {
82
+ enterpriseId: string;
83
+ }, Promise<any>>;
84
+ status: convex_server2.RegisteredQuery<"public", {
85
+ enterpriseId: string;
86
+ }, Promise<any>>;
87
+ domain: {
88
+ list: convex_server2.RegisteredQuery<"public", {
89
+ enterpriseId: string;
90
+ }, Promise<any>>;
91
+ validate: convex_server2.RegisteredQuery<"public", {
92
+ enterpriseId: string;
93
+ }, Promise<any>>;
94
+ set: convex_server2.RegisteredMutation<"public", {
95
+ enterpriseId: string;
96
+ domains: {
97
+ isPrimary?: boolean | undefined;
98
+ domain: string;
99
+ }[];
100
+ }, Promise<any>>;
101
+ verification: {
102
+ request: convex_server2.RegisteredMutation<"public", {
103
+ enterpriseId: string;
104
+ domain: string;
105
+ }, Promise<any>>;
106
+ confirm: convex_server2.RegisteredAction<"public", {
107
+ enterpriseId: string;
108
+ domain: string;
109
+ }, Promise<any>>;
110
+ };
111
+ };
112
+ };
113
+ oidc: {
114
+ configure: convex_server2.RegisteredMutation<"public", {
115
+ scopes?: string[] | undefined;
116
+ issuer?: string | undefined;
117
+ discoveryUrl?: string | undefined;
118
+ clientSecret?: string | undefined;
119
+ authorizationParams?: Record<string, string> | undefined;
120
+ clockToleranceSeconds?: number | undefined;
121
+ strictIssuer?: boolean | undefined;
122
+ extraFields?: Record<string, string> | undefined;
123
+ enterpriseId: string;
124
+ clientId: string;
125
+ }, Promise<any>>;
126
+ get: convex_server2.RegisteredQuery<"public", {
127
+ enterpriseId: string;
128
+ }, Promise<any>>;
129
+ validate: convex_server2.RegisteredAction<"public", {
130
+ enterpriseId: string;
131
+ }, Promise<any>>;
132
+ };
133
+ saml: {
134
+ configure: convex_server2.RegisteredAction<"public", {
135
+ domains?: string[] | undefined;
136
+ metadataXml?: string | undefined;
137
+ metadataUrl?: string | undefined;
138
+ signAuthnRequests?: boolean | undefined;
139
+ attributeMapping?: {
140
+ email?: string | undefined;
141
+ name?: string | undefined;
142
+ subject?: string | undefined;
143
+ firstName?: string | undefined;
144
+ lastName?: string | undefined;
145
+ } | undefined;
146
+ sp?: {
147
+ entityId?: string | undefined;
148
+ acsUrl?: string | undefined;
149
+ sloUrl?: string | undefined;
150
+ signingCert?: string | string[] | undefined;
151
+ encryptCert?: string | string[] | undefined;
152
+ privateKey?: string | undefined;
153
+ privateKeyPass?: string | undefined;
154
+ encPrivateKey?: string | undefined;
155
+ encPrivateKeyPass?: string | undefined;
156
+ } | undefined;
157
+ enterpriseId: string;
158
+ }, Promise<any>>;
159
+ validate: convex_server2.RegisteredQuery<"public", {
160
+ enterpriseId: string;
161
+ }, Promise<any>>;
162
+ };
163
+ policy: {
164
+ get: convex_server2.RegisteredQuery<"public", {
165
+ enterpriseId: string;
166
+ }, Promise<any>>;
167
+ update: convex_server2.RegisteredMutation<"public", {
168
+ enterpriseId: string;
169
+ patch: {
170
+ identity?: {
171
+ accountLinking?: {
172
+ oidc?: "verifiedEmail" | "none" | undefined;
173
+ saml?: "verifiedEmail" | "none" | undefined;
174
+ } | undefined;
175
+ } | undefined;
176
+ provisioning?: {
177
+ scimReuse?: {
178
+ user?: "none" | "externalId" | undefined;
179
+ } | undefined;
180
+ jit?: {
181
+ mode?: "off" | "createUser" | "createUserAndMembership" | undefined;
182
+ defaultRoleIds?: string[] | undefined;
183
+ } | undefined;
184
+ deprovision?: {
185
+ mode?: "soft" | "hard" | undefined;
186
+ } | undefined;
187
+ } | undefined;
188
+ };
189
+ }, Promise<any>>;
190
+ validate: convex_server2.RegisteredQuery<"public", {
191
+ enterpriseId: string;
192
+ }, Promise<any>>;
193
+ };
194
+ audit: {
195
+ list: convex_server2.RegisteredQuery<"public", {
196
+ limit?: number | undefined;
197
+ groupId?: string | undefined;
198
+ enterpriseId?: string | undefined;
199
+ }, Promise<any>>;
200
+ };
201
+ webhook: {
202
+ delivery: {
203
+ list: convex_server2.RegisteredQuery<"public", {
204
+ limit?: number | undefined;
205
+ enterpriseId: string;
206
+ }, Promise<any>>;
207
+ };
208
+ endpoint: {
209
+ create: convex_server2.RegisteredMutation<"public", {
210
+ createdByUserId?: string | undefined;
211
+ secret: string;
212
+ enterpriseId: string;
213
+ url: string;
214
+ subscriptions: string[];
215
+ }, Promise<{
216
+ _id: any;
217
+ enterpriseId: string;
218
+ url: string;
219
+ subscriptions: string[];
220
+ createdByUserId: any;
221
+ status: string;
222
+ failureCount: number;
223
+ }>>;
224
+ list: convex_server2.RegisteredQuery<"public", {
225
+ enterpriseId: string;
226
+ }, Promise<any>>;
227
+ disable: convex_server2.RegisteredMutation<"public", {
228
+ endpointId: string;
229
+ }, Promise<any>>;
230
+ };
231
+ };
232
+ };
233
+ client: {
234
+ signIn: convex_server2.RegisteredQuery<"public", {
235
+ email?: string | undefined;
236
+ enterpriseId?: string | undefined;
237
+ domain?: string | undefined;
238
+ redirectTo?: string | undefined;
239
+ }, Promise<any>>;
240
+ metadata: convex_server2.RegisteredQuery<"public", {
241
+ entityId?: string | undefined;
242
+ acsUrl?: string | undefined;
243
+ sloUrl?: string | undefined;
244
+ enterpriseId: string;
245
+ }, Promise<any>>;
246
+ };
247
+ };
248
+ /**
249
+ * Build optional public SCIM management actions that apps can mount under
250
+ * `convex/auth/scim/**` when they want client-callable enterprise admin APIs.
251
+ */
252
+ declare function scim<TAuthorization extends AuthAuthorizationConfig | undefined = undefined>(auth: Pick<AuthApi<TAuthorization>, "scim" | "sso" | "user">, options?: MountedEnterpriseOptions<AuthRoleId<TAuthorization>>): {
253
+ admin: {
254
+ configure: convex_server2.RegisteredMutation<"public", {
255
+ status?: "draft" | "active" | "disabled" | undefined;
256
+ basePath?: string | undefined;
257
+ enterpriseId: string;
258
+ }, Promise<any>>;
259
+ get: convex_server2.RegisteredQuery<"public", {
260
+ enterpriseId: string;
261
+ }, Promise<any>>;
262
+ validate: convex_server2.RegisteredQuery<"public", {
263
+ enterpriseId: string;
264
+ }, Promise<any>>;
265
+ };
266
+ };
267
+ /**
268
+ * Build a flat mounted enterprise API surface for app-owned Convex exports.
269
+ *
270
+ * The returned object contains tenant-admin SSO and SCIM control-plane
271
+ * functions plus end-user enterprise sign-in helpers. The `authorized`
272
+ * callback is required for admin operations.
273
+ */
274
+ declare function enterprise<TAuthorization extends AuthAuthorizationConfig | undefined = undefined>(auth: Pick<AuthApi<TAuthorization>, "group" | "member" | "scim" | "sso" | "user">, options: EnterpriseMountOptions<AuthRoleId<TAuthorization>>): {
275
+ createConnection: convex_server2.RegisteredMutation<"public", {
276
+ name?: string | undefined;
277
+ status?: "draft" | "active" | "disabled" | undefined;
278
+ slug?: string | undefined;
279
+ groupId?: string | undefined;
280
+ domain?: string | undefined;
281
+ }, Promise<any>>;
282
+ getConnection: convex_server2.RegisteredQuery<"public", {
283
+ enterpriseId: string;
284
+ }, Promise<any>>;
285
+ getConnectionByGroup: convex_server2.RegisteredQuery<"public", {
286
+ groupId: string;
287
+ }, Promise<any>>;
288
+ getConnectionByDomain: convex_server2.RegisteredQuery<"public", {
289
+ domain: string;
290
+ }, Promise<any>>;
291
+ listConnections: convex_server2.RegisteredQuery<"public", {
292
+ limit?: number | undefined;
293
+ where?: {
294
+ status?: "draft" | "active" | "disabled" | undefined;
295
+ slug?: string | undefined;
296
+ groupId?: string | undefined;
297
+ } | undefined;
298
+ cursor?: string | null | undefined;
299
+ orderBy?: string | undefined;
300
+ order?: "asc" | "desc" | undefined;
301
+ }, Promise<any>>;
302
+ updateConnection: convex_server2.RegisteredMutation<"public", {
303
+ enterpriseId: string;
304
+ data: {
305
+ name?: string | undefined;
306
+ status?: "draft" | "active" | "disabled" | undefined;
307
+ slug?: string | undefined;
308
+ };
309
+ }, Promise<{
310
+ ok: true;
311
+ enterpriseId: string;
312
+ }>>;
313
+ deleteConnection: convex_server2.RegisteredMutation<"public", {
314
+ enterpriseId: string;
315
+ }, Promise<any>>;
316
+ getConnectionStatus: convex_server2.RegisteredQuery<"public", {
317
+ enterpriseId: string;
318
+ }, Promise<any>>;
319
+ listDomains: convex_server2.RegisteredQuery<"public", {
320
+ enterpriseId: string;
321
+ }, Promise<any>>;
322
+ validateDomains: convex_server2.RegisteredQuery<"public", {
323
+ enterpriseId: string;
324
+ }, Promise<any>>;
325
+ setDomains: convex_server2.RegisteredMutation<"public", {
326
+ enterpriseId: string;
327
+ domains: {
328
+ isPrimary?: boolean | undefined;
329
+ domain: string;
330
+ }[];
331
+ }, Promise<any>>;
332
+ requestDomainVerification: convex_server2.RegisteredMutation<"public", {
333
+ enterpriseId: string;
334
+ domain: string;
335
+ }, Promise<any>>;
336
+ confirmDomainVerification: convex_server2.RegisteredAction<"public", {
337
+ enterpriseId: string;
338
+ domain: string;
339
+ }, Promise<any>>;
340
+ configureOidc: convex_server2.RegisteredMutation<"public", {
341
+ scopes?: string[] | undefined;
342
+ issuer?: string | undefined;
343
+ discoveryUrl?: string | undefined;
344
+ clientSecret?: string | undefined;
345
+ authorizationParams?: Record<string, string> | undefined;
346
+ clockToleranceSeconds?: number | undefined;
347
+ strictIssuer?: boolean | undefined;
348
+ extraFields?: Record<string, string> | undefined;
349
+ enterpriseId: string;
350
+ clientId: string;
351
+ }, Promise<any>>;
352
+ getOidc: convex_server2.RegisteredQuery<"public", {
353
+ enterpriseId: string;
354
+ }, Promise<any>>;
355
+ validateOidc: convex_server2.RegisteredAction<"public", {
356
+ enterpriseId: string;
357
+ }, Promise<any>>;
358
+ configureSaml: convex_server2.RegisteredAction<"public", {
359
+ domains?: string[] | undefined;
360
+ metadataXml?: string | undefined;
361
+ metadataUrl?: string | undefined;
362
+ signAuthnRequests?: boolean | undefined;
363
+ attributeMapping?: {
364
+ email?: string | undefined;
365
+ name?: string | undefined;
366
+ subject?: string | undefined;
367
+ firstName?: string | undefined;
368
+ lastName?: string | undefined;
369
+ } | undefined;
370
+ sp?: {
371
+ entityId?: string | undefined;
372
+ acsUrl?: string | undefined;
373
+ sloUrl?: string | undefined;
374
+ signingCert?: string | string[] | undefined;
375
+ encryptCert?: string | string[] | undefined;
376
+ privateKey?: string | undefined;
377
+ privateKeyPass?: string | undefined;
378
+ encPrivateKey?: string | undefined;
379
+ encPrivateKeyPass?: string | undefined;
380
+ } | undefined;
381
+ enterpriseId: string;
382
+ }, Promise<any>>;
383
+ validateSaml: convex_server2.RegisteredQuery<"public", {
384
+ enterpriseId: string;
385
+ }, Promise<any>>;
386
+ getPolicy: convex_server2.RegisteredQuery<"public", {
387
+ enterpriseId: string;
388
+ }, Promise<any>>;
389
+ updatePolicy: convex_server2.RegisteredMutation<"public", {
390
+ enterpriseId: string;
391
+ patch: {
392
+ identity?: {
393
+ accountLinking?: {
394
+ oidc?: "verifiedEmail" | "none" | undefined;
395
+ saml?: "verifiedEmail" | "none" | undefined;
396
+ } | undefined;
397
+ } | undefined;
398
+ provisioning?: {
399
+ scimReuse?: {
400
+ user?: "none" | "externalId" | undefined;
401
+ } | undefined;
402
+ jit?: {
403
+ mode?: "off" | "createUser" | "createUserAndMembership" | undefined;
404
+ defaultRoleIds?: string[] | undefined;
405
+ } | undefined;
406
+ deprovision?: {
407
+ mode?: "soft" | "hard" | undefined;
408
+ } | undefined;
409
+ } | undefined;
410
+ };
411
+ }, Promise<any>>;
412
+ validatePolicy: convex_server2.RegisteredQuery<"public", {
413
+ enterpriseId: string;
414
+ }, Promise<any>>;
415
+ listAudit: convex_server2.RegisteredQuery<"public", {
416
+ limit?: number | undefined;
417
+ groupId?: string | undefined;
418
+ enterpriseId?: string | undefined;
419
+ }, Promise<any>>;
420
+ createWebhookEndpoint: convex_server2.RegisteredMutation<"public", {
421
+ createdByUserId?: string | undefined;
422
+ secret: string;
423
+ enterpriseId: string;
424
+ url: string;
425
+ subscriptions: string[];
426
+ }, Promise<{
427
+ _id: any;
428
+ enterpriseId: string;
429
+ url: string;
430
+ subscriptions: string[];
431
+ createdByUserId: any;
432
+ status: string;
433
+ failureCount: number;
434
+ }>>;
435
+ listWebhookEndpoints: convex_server2.RegisteredQuery<"public", {
436
+ enterpriseId: string;
437
+ }, Promise<any>>;
438
+ listWebhookDeliveries: convex_server2.RegisteredQuery<"public", {
439
+ limit?: number | undefined;
440
+ enterpriseId: string;
441
+ }, Promise<any>>;
442
+ disableWebhookEndpoint: convex_server2.RegisteredMutation<"public", {
443
+ endpointId: string;
444
+ }, Promise<any>>;
445
+ configureScim: convex_server2.RegisteredMutation<"public", {
446
+ status?: "draft" | "active" | "disabled" | undefined;
447
+ basePath?: string | undefined;
448
+ enterpriseId: string;
449
+ }, Promise<any>>;
450
+ getScim: convex_server2.RegisteredQuery<"public", {
451
+ enterpriseId: string;
452
+ }, Promise<any>>;
453
+ validateScim: convex_server2.RegisteredQuery<"public", {
454
+ enterpriseId: string;
455
+ }, Promise<any>>;
456
+ signIn: convex_server2.RegisteredQuery<"public", {
457
+ email?: string | undefined;
458
+ enterpriseId?: string | undefined;
459
+ domain?: string | undefined;
460
+ redirectTo?: string | undefined;
461
+ }, Promise<any>>;
462
+ metadata: convex_server2.RegisteredQuery<"public", {
463
+ entityId?: string | undefined;
464
+ acsUrl?: string | undefined;
465
+ sloUrl?: string | undefined;
466
+ enterpriseId: string;
467
+ }, Promise<any>>;
468
+ };
2
469
  /** Cookie lifetime configuration for auth tokens. */
3
470
  type AuthCookieConfig = {
4
471
  /** Maximum age in seconds, or `null` for session cookies. */maxAge: number | null;
@@ -195,5 +662,5 @@ declare function server(options: ServerOptions): {
195
662
  refresh(request: Request): Promise<RefreshResult>;
196
663
  };
197
664
  //#endregion
198
- export { AuthCookie, AuthCookieConfig, AuthCookies, RefreshResult, ServerOptions, authCookieNames, parseAuthCookies, serializeAuthCookies, server, shouldProxyAuthAction, structuredAuthCookies };
665
+ export { AuthCookie, AuthCookieConfig, AuthCookies, EnterpriseAdminAuthorizationInput, EnterpriseAdminPermission, EnterpriseAuthorizer, EnterpriseMountOptions, RefreshResult, ServerOptions, authCookieNames, enterprise, parseAuthCookies, scim, serializeAuthCookies, server, shouldProxyAuthAction, sso, structuredAuthCookies };
199
666
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","names":[],"sources":["../../src/server/index.ts"],"mappings":";;KAoBY,gBAAA;EAAgB,6DAE1B,MAAA;AAAA;;KAIU,WAAA;EAAW,mDAErB,KAAA,iBAFqB;EAIrB,YAAA;EAEA,QAAA;AAAA;;KAIU,UAAA;EACV,IAAA;EACA,KAAA;EACA,OAAA;IACE,IAAA;IACA,QAAA;IACA,MAAA;IACA,QAAA;IACA,MAAA;IACA,OAAA,GAAU,IAAA;EAAA;AAAA;;;;KAOF,aAAA;EAAA,wEAEV,GAAA;;;;;;;EAOA,eAAA;EAgBA;;;;EAXA,QAAA,WAoB4C;EAlB5C,YAAA,kBAsBU;EApBV,OAAA;;;;;;;EAOA,eAAA;EAmBK;AAkBP;;;;;;EA7BE,gBAAA,KACM,OAAA,EAAS,OAAA,eAAsB,OAAA;AAAA;AAAA,KAI3B,aAAA;mDAEV,OAAA,EAAS,UAAA,IA4CK;EA1Cd,QAAA;EAEA,KAAA;AAAA;;;;;;AA8EF;;;;;iBA5DgB,eAAA,CACd,IAAA,WACA,eAAA;;;;;;;AAuHF;;;;;;iBAnGgB,gBAAA,CACd,YAAA,6BACA,IAAA,WACA,eAAA,mBACC,WAAA;;;;;;;;;;;AA0LH;iBAxJgB,oBAAA,CACd,OAAA,EAAS,WAAA,EACT,IAAA,WACA,MAAA,GAAQ,gBAAA,EACR,eAAA;;;;AA4PF;;;iBAnMgB,qBAAA,CACd,OAAA,EAAS,WAAA,EACT,IAAA,WACA,MAAA,GAAQ,gBAAA,EACR,eAAA,mBACC,UAAA;;;;;;;;;;;iBAsFa,qBAAA,CAAsB,QAAA,UAAkB,QAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAwGxC,MAAA,CAAO,OAAA,EAAS,aAAA;;;;;;;iBAqBb,OAAA;;;;;;;;;;kBAiBO,OAAA,GAAU,OAAA;;;;;;;;;;;;iBAoCX,OAAA,GAAU,OAAA,CAAQ,QAAA;;;;;;;;;;;;;;mBAyiBhB,OAAA,GAAU,OAAA,CAAQ,aAAA;AAAA"}
1
+ {"version":3,"file":"index.d.ts","names":[],"sources":["../../src/server/index.ts"],"mappings":"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"}