@robelest/convex-auth 0.0.4-preview.35 → 0.0.4-preview.37

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.
@@ -20,6 +20,7 @@ var schema_default = defineSchema({
20
20
  phoneVerificationTime: v.optional(v.number()),
21
21
  isAnonymous: v.optional(v.boolean()),
22
22
  lastActiveGroup: v.optional(v.id("Group")),
23
+ hasTotp: v.optional(v.boolean()),
23
24
  extend: v.optional(v.any())
24
25
  }).index("email", ["email"]).index("email_verified", ["email", "emailVerificationTime"]).index("phone", ["phone"]).index("phone_verified", ["phone", "phoneVerificationTime"]),
25
26
  UserEmail: defineTable({
package/dist/model.js CHANGED
@@ -118,6 +118,7 @@ const vUserDoc = v.object({
118
118
  phoneVerificationTime: v.optional(v.number()),
119
119
  isAnonymous: v.optional(v.boolean()),
120
120
  lastActiveGroup: v.optional(v.id(TABLES.Group)),
121
+ hasTotp: v.optional(v.boolean()),
121
122
  extend: v.optional(v.any())
122
123
  });
123
124
  const vUserEmailSource = v.union(v.literal("password"), v.literal("oauth"), v.literal("oidc"), v.literal("saml"), v.literal("scim"));
@@ -387,5 +388,5 @@ const vInviteRedeemResult = v.object({
387
388
  });
388
389
 
389
390
  //#endregion
390
- export { vGroupDoc, vGroupInviteDoc, vGroupMemberDoc, vPaginated, vProfileEmail, vUserDoc, vUserEmailDoc };
391
+ export { vGroupConnectionPolicy, vInviteStatus, vPaginated, vProfileEmail, vTag, vUserEmailSource };
391
392
  //# sourceMappingURL=model.js.map
@@ -772,6 +772,7 @@ declare function sso<TAuthorization extends AuthAuthorizationConfig | undefined
772
772
  declare function scim<TAuthorization extends AuthAuthorizationConfig | undefined = undefined, TRequirement = unknown>(auth: Pick<AuthApi<TAuthorization>, "context" | "group">, options?: CreateAuthGroupSsoOptions<TRequirement>): {
773
773
  admin: {
774
774
  configure: convex_server19.RegisteredMutation<"public", {
775
+ status?: "draft" | "active" | "disabled" | undefined;
775
776
  profile?: {
776
777
  mapping?: {
777
778
  name?: string | undefined;
@@ -787,7 +788,6 @@ declare function scim<TAuthorization extends AuthAuthorizationConfig | undefined
787
788
  } | undefined;
788
789
  extraFields?: Record<string, string> | undefined;
789
790
  } | undefined;
790
- status?: "draft" | "active" | "disabled" | undefined;
791
791
  security?: {
792
792
  maxRequestSize?: number | undefined;
793
793
  } | undefined;
@@ -1421,6 +1421,7 @@ declare function createAuthGroupSso<TAuthorization extends AuthAuthorizationConf
1421
1421
  endpointId: string;
1422
1422
  }>>;
1423
1423
  configureScim: convex_server19.RegisteredMutation<"public", {
1424
+ status?: "draft" | "active" | "disabled" | undefined;
1424
1425
  profile?: {
1425
1426
  mapping?: {
1426
1427
  name?: string | undefined;
@@ -1436,7 +1437,6 @@ declare function createAuthGroupSso<TAuthorization extends AuthAuthorizationConf
1436
1437
  } | undefined;
1437
1438
  extraFields?: Record<string, string> | undefined;
1438
1439
  } | undefined;
1439
- status?: "draft" | "active" | "disabled" | undefined;
1440
1440
  security?: {
1441
1441
  maxRequestSize?: number | undefined;
1442
1442
  } | undefined;
@@ -730,11 +730,11 @@ declare function Auth(config_: ConvexAuthConfig): {
730
730
  entityId?: string | undefined;
731
731
  } | undefined;
732
732
  } | undefined;
733
- profile: Record<string, string | number | boolean | (string | number | boolean | null)[] | Record<string, string | number | boolean | (string | number | boolean | null)[] | null> | null>;
734
733
  type: "userOAuth";
735
734
  provider: string;
736
735
  providerAccountId: string;
737
736
  signature: string;
737
+ profile: Record<string, string | number | boolean | (string | number | boolean | null)[] | Record<string, string | number | boolean | (string | number | boolean | null)[] | null> | null>;
738
738
  } | {
739
739
  email?: string | undefined;
740
740
  phone?: string | undefined;
@@ -747,9 +747,9 @@ declare function Auth(config_: ConvexAuthConfig): {
747
747
  } | {
748
748
  shouldLinkViaEmail?: boolean | undefined;
749
749
  shouldLinkViaPhone?: boolean | undefined;
750
- profile: Record<string, string | number | boolean | (string | number | boolean | null)[] | Record<string, string | number | boolean | (string | number | boolean | null)[] | null> | null>;
751
750
  type: "createAccountFromCredentials";
752
751
  provider: string;
752
+ profile: Record<string, string | number | boolean | (string | number | boolean | null)[] | Record<string, string | number | boolean | (string | number | boolean | null)[] | null> | null>;
753
753
  account: {
754
754
  secret?: string | undefined;
755
755
  id: string;
@@ -1,5 +1,5 @@
1
1
  import * as convex_values7 from "convex/values";
2
- import { Infer, Validator, v } from "convex/values";
2
+ import { GenericId, Infer, VId, Validator, v } from "convex/values";
3
3
  import * as convex_server13 from "convex/server";
4
4
 
5
5
  //#region src/server/validators.d.ts
@@ -17,12 +17,8 @@ type AuthExtendValidators = {
17
17
  type ExtendFor<TExtend extends AuthExtendValidators, K extends keyof AuthExtendValidators> = TExtend[K] extends Validator<any, any, any> ? TExtend[K] : ReturnType<typeof v.any>;
18
18
  /**
19
19
  * Build the `auth.v.*` validator namespace from the consumer's `extend`
20
- * config.
21
- *
22
- * `vUserDoc`/`vGroupDoc`/`vGroupMemberDoc` already declare an
23
- * `extend: v.optional(v.any())` field; this rebuilds each with the
24
- * supplied validator so the inferred type carries the real shape while
25
- * the runtime validator still accepts the stored document.
20
+ * config. Each doc validator's `extend` field is rebuilt with the
21
+ * supplied validator so the inferred type carries the real shape.
26
22
  *
27
23
  * @typeParam TExtend - The consumer's per-table `extend` validators.
28
24
  * @param extend - The `extend` map from `createAuth` config. Defaults to
@@ -39,7 +35,9 @@ type ExtendFor<TExtend extends AuthExtendValidators, K extends keyof AuthExtendV
39
35
  * ```
40
36
  */
41
37
  declare function buildAuthValidators<TExtend extends AuthExtendValidators>(extend?: TExtend): {
42
- /** Single User document validator (extend-aware). */user: convex_values7.VObject<convex_server13.Expand<{ [Property in "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)]?: Exclude<Infer<(Omit<{
38
+ /** Single User document validator (extend-aware). */user: convex_values7.VObject<convex_server13.Expand<{ [Property in "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | "hasTotp" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)]?: Exclude<Infer<(Omit<{
39
+ _id: VId<GenericId<"User">, "required">;
40
+ _creationTime: convex_values7.VFloat64<number, "required">;
43
41
  name: convex_values7.VString<string | undefined, "optional">;
44
42
  image: convex_values7.VString<string | undefined, "optional">;
45
43
  email: convex_values7.VString<string | undefined, "optional">;
@@ -47,13 +45,14 @@ declare function buildAuthValidators<TExtend extends AuthExtendValidators>(exten
47
45
  phone: convex_values7.VString<string | undefined, "optional">;
48
46
  phoneVerificationTime: convex_values7.VFloat64<number | undefined, "optional">;
49
47
  isAnonymous: convex_values7.VBoolean<boolean | undefined, "optional">;
50
- lastActiveGroup: convex_values7.VId<convex_values7.GenericId<"Group"> | undefined, "optional">;
48
+ lastActiveGroup: VId<GenericId<"Group"> | undefined, "optional">;
49
+ hasTotp: convex_values7.VBoolean<boolean | undefined, "optional">;
51
50
  extend: convex_values7.VAny<any, "optional", string>;
52
- _id: convex_values7.VId<convex_values7.GenericId<"User">, "required">;
53
- _creationTime: convex_values7.VFloat64<number, "required">;
54
51
  }, "extend"> & {
55
52
  extend: convex_values7.VOptional<ExtendFor<TExtend, "User">>;
56
- })[Property]>, undefined> | undefined } & { [Property_1 in Exclude<"name", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"email", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"image", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"_creationTime", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"phone", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"emailVerificationTime", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"phoneVerificationTime", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"isAnonymous", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"lastActiveGroup", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"extend", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"_id", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)>]: Infer<(Omit<{
53
+ })[Property]>, undefined> | undefined } & { [Property_1 in Exclude<"name", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | "hasTotp" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"email", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | "hasTotp" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"image", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | "hasTotp" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"_creationTime", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | "hasTotp" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"phone", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | "hasTotp" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"emailVerificationTime", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | "hasTotp" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"phoneVerificationTime", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | "hasTotp" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"isAnonymous", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | "hasTotp" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"lastActiveGroup", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | "hasTotp" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"hasTotp", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | "hasTotp" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"extend", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | "hasTotp" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"_id", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | "hasTotp" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)>]: Infer<(Omit<{
54
+ _id: VId<GenericId<"User">, "required">;
55
+ _creationTime: convex_values7.VFloat64<number, "required">;
57
56
  name: convex_values7.VString<string | undefined, "optional">;
58
57
  image: convex_values7.VString<string | undefined, "optional">;
59
58
  email: convex_values7.VString<string | undefined, "optional">;
@@ -61,13 +60,14 @@ declare function buildAuthValidators<TExtend extends AuthExtendValidators>(exten
61
60
  phone: convex_values7.VString<string | undefined, "optional">;
62
61
  phoneVerificationTime: convex_values7.VFloat64<number | undefined, "optional">;
63
62
  isAnonymous: convex_values7.VBoolean<boolean | undefined, "optional">;
64
- lastActiveGroup: convex_values7.VId<convex_values7.GenericId<"Group"> | undefined, "optional">;
63
+ lastActiveGroup: VId<GenericId<"Group"> | undefined, "optional">;
64
+ hasTotp: convex_values7.VBoolean<boolean | undefined, "optional">;
65
65
  extend: convex_values7.VAny<any, "optional", string>;
66
- _id: convex_values7.VId<convex_values7.GenericId<"User">, "required">;
67
- _creationTime: convex_values7.VFloat64<number, "required">;
68
66
  }, "extend"> & {
69
67
  extend: convex_values7.VOptional<ExtendFor<TExtend, "User">>;
70
68
  })[Property_1]> }>, Omit<{
69
+ _id: VId<GenericId<"User">, "required">;
70
+ _creationTime: convex_values7.VFloat64<number, "required">;
71
71
  name: convex_values7.VString<string | undefined, "optional">;
72
72
  image: convex_values7.VString<string | undefined, "optional">;
73
73
  email: convex_values7.VString<string | undefined, "optional">;
@@ -75,19 +75,20 @@ declare function buildAuthValidators<TExtend extends AuthExtendValidators>(exten
75
75
  phone: convex_values7.VString<string | undefined, "optional">;
76
76
  phoneVerificationTime: convex_values7.VFloat64<number | undefined, "optional">;
77
77
  isAnonymous: convex_values7.VBoolean<boolean | undefined, "optional">;
78
- lastActiveGroup: convex_values7.VId<convex_values7.GenericId<"Group"> | undefined, "optional">;
78
+ lastActiveGroup: VId<GenericId<"Group"> | undefined, "optional">;
79
+ hasTotp: convex_values7.VBoolean<boolean | undefined, "optional">;
79
80
  extend: convex_values7.VAny<any, "optional", string>;
80
- _id: convex_values7.VId<convex_values7.GenericId<"User">, "required">;
81
- _creationTime: convex_values7.VFloat64<number, "required">;
82
81
  }, "extend"> & {
83
82
  extend: convex_values7.VOptional<ExtendFor<TExtend, "User">>;
84
- }, "required", "name" | "email" | "image" | "_creationTime" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | "extend" | "_id" | `extend.${convex_values7.VOptional<ExtendFor<TExtend, "User">>["fieldPaths"]}`>; /** Single Group document validator (extend-aware). */
83
+ }, "required", "name" | "email" | "image" | "_creationTime" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | "hasTotp" | "extend" | "_id" | `extend.${convex_values7.VOptional<ExtendFor<TExtend, "User">>["fieldPaths"]}`>; /** Single Group document validator (extend-aware). */
85
84
  group: convex_values7.VObject<convex_server13.Expand<{ [Property_2 in "type" | "slug" | "parentGroupId" | "rootGroupId" | "isRoot" | "tags" | "policy" | (convex_values7.VOptional<ExtendFor<TExtend, "Group">>["isOptional"] extends "optional" ? "extend" : never)]?: Exclude<Infer<(Omit<{
85
+ _id: VId<GenericId<"Group">, "required">;
86
+ _creationTime: convex_values7.VFloat64<number, "required">;
86
87
  name: convex_values7.VString<string, "required">;
87
88
  slug: convex_values7.VString<string | undefined, "optional">;
88
89
  type: convex_values7.VString<string | undefined, "optional">;
89
- parentGroupId: convex_values7.VId<convex_values7.GenericId<"Group"> | undefined, "optional">;
90
- rootGroupId: convex_values7.VId<convex_values7.GenericId<"Group"> | undefined, "optional">;
90
+ parentGroupId: VId<GenericId<"Group"> | undefined, "optional">;
91
+ rootGroupId: VId<GenericId<"Group"> | undefined, "optional">;
91
92
  isRoot: convex_values7.VBoolean<boolean | undefined, "optional">;
92
93
  tags: convex_values7.VArray<{
93
94
  key: string;
@@ -234,16 +235,16 @@ declare function buildAuthValidators<TExtend extends AuthExtendValidators>(exten
234
235
  extend: convex_values7.VAny<any, "optional", string>;
235
236
  }, "optional", "extend" | `extend.${string}` | "version" | "identity" | "provisioning" | "identity.accountLinking" | "identity.accountLinking.oidc" | "identity.accountLinking.saml" | "provisioning.user" | "provisioning.scimReuse" | "provisioning.jit" | "provisioning.deprovision" | "provisioning.groups" | "provisioning.roles" | "provisioning.user.createOnSignIn" | "provisioning.user.updateProfileOnLogin" | "provisioning.user.updateProfileFromScim" | "provisioning.user.authority" | "provisioning.scimReuse.user" | "provisioning.jit.mode" | "provisioning.jit.defaultRole" | "provisioning.jit.defaultRoleIds" | "provisioning.deprovision.mode" | "provisioning.groups.source" | "provisioning.groups.mode" | "provisioning.groups.mapping" | `provisioning.groups.mapping.${string}` | "provisioning.roles.source" | "provisioning.roles.mode" | "provisioning.roles.mapping" | `provisioning.roles.mapping.${string}`>;
236
237
  extend: convex_values7.VAny<any, "optional", string>;
237
- _id: convex_values7.VId<convex_values7.GenericId<"Group">, "required">;
238
- _creationTime: convex_values7.VFloat64<number, "required">;
239
238
  }, "extend"> & {
240
239
  extend: convex_values7.VOptional<ExtendFor<TExtend, "Group">>;
241
240
  })[Property_2]>, undefined> | undefined } & { [Property_1_1 in Exclude<"name", "type" | "slug" | "parentGroupId" | "rootGroupId" | "isRoot" | "tags" | "policy" | (convex_values7.VOptional<ExtendFor<TExtend, "Group">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"_creationTime", "type" | "slug" | "parentGroupId" | "rootGroupId" | "isRoot" | "tags" | "policy" | (convex_values7.VOptional<ExtendFor<TExtend, "Group">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"extend", "type" | "slug" | "parentGroupId" | "rootGroupId" | "isRoot" | "tags" | "policy" | (convex_values7.VOptional<ExtendFor<TExtend, "Group">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"type", "type" | "slug" | "parentGroupId" | "rootGroupId" | "isRoot" | "tags" | "policy" | (convex_values7.VOptional<ExtendFor<TExtend, "Group">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"slug", "type" | "slug" | "parentGroupId" | "rootGroupId" | "isRoot" | "tags" | "policy" | (convex_values7.VOptional<ExtendFor<TExtend, "Group">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"parentGroupId", "type" | "slug" | "parentGroupId" | "rootGroupId" | "isRoot" | "tags" | "policy" | (convex_values7.VOptional<ExtendFor<TExtend, "Group">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"rootGroupId", "type" | "slug" | "parentGroupId" | "rootGroupId" | "isRoot" | "tags" | "policy" | (convex_values7.VOptional<ExtendFor<TExtend, "Group">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"isRoot", "type" | "slug" | "parentGroupId" | "rootGroupId" | "isRoot" | "tags" | "policy" | (convex_values7.VOptional<ExtendFor<TExtend, "Group">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"tags", "type" | "slug" | "parentGroupId" | "rootGroupId" | "isRoot" | "tags" | "policy" | (convex_values7.VOptional<ExtendFor<TExtend, "Group">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"policy", "type" | "slug" | "parentGroupId" | "rootGroupId" | "isRoot" | "tags" | "policy" | (convex_values7.VOptional<ExtendFor<TExtend, "Group">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"_id", "type" | "slug" | "parentGroupId" | "rootGroupId" | "isRoot" | "tags" | "policy" | (convex_values7.VOptional<ExtendFor<TExtend, "Group">>["isOptional"] extends "optional" ? "extend" : never)>]: Infer<(Omit<{
241
+ _id: VId<GenericId<"Group">, "required">;
242
+ _creationTime: convex_values7.VFloat64<number, "required">;
242
243
  name: convex_values7.VString<string, "required">;
243
244
  slug: convex_values7.VString<string | undefined, "optional">;
244
245
  type: convex_values7.VString<string | undefined, "optional">;
245
- parentGroupId: convex_values7.VId<convex_values7.GenericId<"Group"> | undefined, "optional">;
246
- rootGroupId: convex_values7.VId<convex_values7.GenericId<"Group"> | undefined, "optional">;
246
+ parentGroupId: VId<GenericId<"Group"> | undefined, "optional">;
247
+ rootGroupId: VId<GenericId<"Group"> | undefined, "optional">;
247
248
  isRoot: convex_values7.VBoolean<boolean | undefined, "optional">;
248
249
  tags: convex_values7.VArray<{
249
250
  key: string;
@@ -390,16 +391,16 @@ declare function buildAuthValidators<TExtend extends AuthExtendValidators>(exten
390
391
  extend: convex_values7.VAny<any, "optional", string>;
391
392
  }, "optional", "extend" | `extend.${string}` | "version" | "identity" | "provisioning" | "identity.accountLinking" | "identity.accountLinking.oidc" | "identity.accountLinking.saml" | "provisioning.user" | "provisioning.scimReuse" | "provisioning.jit" | "provisioning.deprovision" | "provisioning.groups" | "provisioning.roles" | "provisioning.user.createOnSignIn" | "provisioning.user.updateProfileOnLogin" | "provisioning.user.updateProfileFromScim" | "provisioning.user.authority" | "provisioning.scimReuse.user" | "provisioning.jit.mode" | "provisioning.jit.defaultRole" | "provisioning.jit.defaultRoleIds" | "provisioning.deprovision.mode" | "provisioning.groups.source" | "provisioning.groups.mode" | "provisioning.groups.mapping" | `provisioning.groups.mapping.${string}` | "provisioning.roles.source" | "provisioning.roles.mode" | "provisioning.roles.mapping" | `provisioning.roles.mapping.${string}`>;
392
393
  extend: convex_values7.VAny<any, "optional", string>;
393
- _id: convex_values7.VId<convex_values7.GenericId<"Group">, "required">;
394
- _creationTime: convex_values7.VFloat64<number, "required">;
395
394
  }, "extend"> & {
396
395
  extend: convex_values7.VOptional<ExtendFor<TExtend, "Group">>;
397
396
  })[Property_1_1]> }>, Omit<{
397
+ _id: VId<GenericId<"Group">, "required">;
398
+ _creationTime: convex_values7.VFloat64<number, "required">;
398
399
  name: convex_values7.VString<string, "required">;
399
400
  slug: convex_values7.VString<string | undefined, "optional">;
400
401
  type: convex_values7.VString<string | undefined, "optional">;
401
- parentGroupId: convex_values7.VId<convex_values7.GenericId<"Group"> | undefined, "optional">;
402
- rootGroupId: convex_values7.VId<convex_values7.GenericId<"Group"> | undefined, "optional">;
402
+ parentGroupId: VId<GenericId<"Group"> | undefined, "optional">;
403
+ rootGroupId: VId<GenericId<"Group"> | undefined, "optional">;
403
404
  isRoot: convex_values7.VBoolean<boolean | undefined, "optional">;
404
405
  tags: convex_values7.VArray<{
405
406
  key: string;
@@ -546,98 +547,98 @@ declare function buildAuthValidators<TExtend extends AuthExtendValidators>(exten
546
547
  extend: convex_values7.VAny<any, "optional", string>;
547
548
  }, "optional", "extend" | `extend.${string}` | "version" | "identity" | "provisioning" | "identity.accountLinking" | "identity.accountLinking.oidc" | "identity.accountLinking.saml" | "provisioning.user" | "provisioning.scimReuse" | "provisioning.jit" | "provisioning.deprovision" | "provisioning.groups" | "provisioning.roles" | "provisioning.user.createOnSignIn" | "provisioning.user.updateProfileOnLogin" | "provisioning.user.updateProfileFromScim" | "provisioning.user.authority" | "provisioning.scimReuse.user" | "provisioning.jit.mode" | "provisioning.jit.defaultRole" | "provisioning.jit.defaultRoleIds" | "provisioning.deprovision.mode" | "provisioning.groups.source" | "provisioning.groups.mode" | "provisioning.groups.mapping" | `provisioning.groups.mapping.${string}` | "provisioning.roles.source" | "provisioning.roles.mode" | "provisioning.roles.mapping" | `provisioning.roles.mapping.${string}`>;
548
549
  extend: convex_values7.VAny<any, "optional", string>;
549
- _id: convex_values7.VId<convex_values7.GenericId<"Group">, "required">;
550
- _creationTime: convex_values7.VFloat64<number, "required">;
551
550
  }, "extend"> & {
552
551
  extend: convex_values7.VOptional<ExtendFor<TExtend, "Group">>;
553
552
  }, "required", "name" | "_creationTime" | "extend" | "type" | "slug" | "parentGroupId" | "rootGroupId" | "isRoot" | "tags" | "policy" | "policy.extend" | `policy.extend.${string}` | "policy.version" | "policy.identity" | "policy.provisioning" | "policy.identity.accountLinking" | "policy.identity.accountLinking.oidc" | "policy.identity.accountLinking.saml" | "policy.provisioning.user" | "policy.provisioning.scimReuse" | "policy.provisioning.jit" | "policy.provisioning.deprovision" | "policy.provisioning.groups" | "policy.provisioning.roles" | "policy.provisioning.user.createOnSignIn" | "policy.provisioning.user.updateProfileOnLogin" | "policy.provisioning.user.updateProfileFromScim" | "policy.provisioning.user.authority" | "policy.provisioning.scimReuse.user" | "policy.provisioning.jit.mode" | "policy.provisioning.jit.defaultRole" | "policy.provisioning.jit.defaultRoleIds" | "policy.provisioning.deprovision.mode" | "policy.provisioning.groups.source" | "policy.provisioning.groups.mode" | "policy.provisioning.groups.mapping" | `policy.provisioning.groups.mapping.${string}` | "policy.provisioning.roles.source" | "policy.provisioning.roles.mode" | "policy.provisioning.roles.mapping" | `policy.provisioning.roles.mapping.${string}` | "_id" | `extend.${convex_values7.VOptional<ExtendFor<TExtend, "Group">>["fieldPaths"]}`>; /** Single GroupMember document validator (extend-aware). */
554
553
  member: convex_values7.VObject<convex_server13.Expand<{ [Property_3 in "status" | "role" | "roleIds" | (convex_values7.VOptional<ExtendFor<TExtend, "GroupMember">>["isOptional"] extends "optional" ? "extend" : never)]?: Exclude<Infer<(Omit<{
555
- groupId: convex_values7.VId<convex_values7.GenericId<"Group">, "required">;
556
- userId: convex_values7.VId<convex_values7.GenericId<"User">, "required">;
554
+ _id: VId<GenericId<"GroupMember">, "required">;
555
+ _creationTime: convex_values7.VFloat64<number, "required">;
556
+ groupId: VId<GenericId<"Group">, "required">;
557
+ userId: VId<GenericId<"User">, "required">;
557
558
  role: convex_values7.VString<string | undefined, "optional">;
558
559
  roleIds: convex_values7.VArray<string[] | undefined, convex_values7.VString<string, "required">, "optional">;
559
560
  status: convex_values7.VString<string | undefined, "optional">;
560
561
  extend: convex_values7.VAny<any, "optional", string>;
561
- _id: convex_values7.VId<convex_values7.GenericId<"GroupMember">, "required">;
562
- _creationTime: convex_values7.VFloat64<number, "required">;
563
562
  }, "extend"> & {
564
563
  extend: convex_values7.VOptional<ExtendFor<TExtend, "GroupMember">>;
565
564
  })[Property_3]>, undefined> | undefined } & { [Property_1_2 in Exclude<"_creationTime", "status" | "role" | "roleIds" | (convex_values7.VOptional<ExtendFor<TExtend, "GroupMember">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"extend", "status" | "role" | "roleIds" | (convex_values7.VOptional<ExtendFor<TExtend, "GroupMember">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"userId", "status" | "role" | "roleIds" | (convex_values7.VOptional<ExtendFor<TExtend, "GroupMember">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"status", "status" | "role" | "roleIds" | (convex_values7.VOptional<ExtendFor<TExtend, "GroupMember">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"groupId", "status" | "role" | "roleIds" | (convex_values7.VOptional<ExtendFor<TExtend, "GroupMember">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"role", "status" | "role" | "roleIds" | (convex_values7.VOptional<ExtendFor<TExtend, "GroupMember">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"roleIds", "status" | "role" | "roleIds" | (convex_values7.VOptional<ExtendFor<TExtend, "GroupMember">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"_id", "status" | "role" | "roleIds" | (convex_values7.VOptional<ExtendFor<TExtend, "GroupMember">>["isOptional"] extends "optional" ? "extend" : never)>]: Infer<(Omit<{
566
- groupId: convex_values7.VId<convex_values7.GenericId<"Group">, "required">;
567
- userId: convex_values7.VId<convex_values7.GenericId<"User">, "required">;
565
+ _id: VId<GenericId<"GroupMember">, "required">;
566
+ _creationTime: convex_values7.VFloat64<number, "required">;
567
+ groupId: VId<GenericId<"Group">, "required">;
568
+ userId: VId<GenericId<"User">, "required">;
568
569
  role: convex_values7.VString<string | undefined, "optional">;
569
570
  roleIds: convex_values7.VArray<string[] | undefined, convex_values7.VString<string, "required">, "optional">;
570
571
  status: convex_values7.VString<string | undefined, "optional">;
571
572
  extend: convex_values7.VAny<any, "optional", string>;
572
- _id: convex_values7.VId<convex_values7.GenericId<"GroupMember">, "required">;
573
- _creationTime: convex_values7.VFloat64<number, "required">;
574
573
  }, "extend"> & {
575
574
  extend: convex_values7.VOptional<ExtendFor<TExtend, "GroupMember">>;
576
575
  })[Property_1_2]> }>, Omit<{
577
- groupId: convex_values7.VId<convex_values7.GenericId<"Group">, "required">;
578
- userId: convex_values7.VId<convex_values7.GenericId<"User">, "required">;
576
+ _id: VId<GenericId<"GroupMember">, "required">;
577
+ _creationTime: convex_values7.VFloat64<number, "required">;
578
+ groupId: VId<GenericId<"Group">, "required">;
579
+ userId: VId<GenericId<"User">, "required">;
579
580
  role: convex_values7.VString<string | undefined, "optional">;
580
581
  roleIds: convex_values7.VArray<string[] | undefined, convex_values7.VString<string, "required">, "optional">;
581
582
  status: convex_values7.VString<string | undefined, "optional">;
582
583
  extend: convex_values7.VAny<any, "optional", string>;
583
- _id: convex_values7.VId<convex_values7.GenericId<"GroupMember">, "required">;
584
- _creationTime: convex_values7.VFloat64<number, "required">;
585
584
  }, "extend"> & {
586
585
  extend: convex_values7.VOptional<ExtendFor<TExtend, "GroupMember">>;
587
586
  }, "required", "_creationTime" | "extend" | "userId" | "status" | "groupId" | "role" | "roleIds" | "_id" | `extend.${convex_values7.VOptional<ExtendFor<TExtend, "GroupMember">>["fieldPaths"]}`>; /** Single GroupInvite document validator. */
588
587
  invite: convex_values7.VObject<{
589
588
  email?: string | undefined;
590
589
  extend?: any;
591
- groupId?: convex_values7.GenericId<"Group"> | undefined;
590
+ groupId?: GenericId<"Group"> | undefined;
592
591
  role?: string | undefined;
593
592
  roleIds?: string[] | undefined;
594
- invitedByUserId?: convex_values7.GenericId<"User"> | undefined;
593
+ invitedByUserId?: GenericId<"User"> | undefined;
595
594
  expiresTime?: number | undefined;
596
- acceptedByUserId?: convex_values7.GenericId<"User"> | undefined;
595
+ acceptedByUserId?: GenericId<"User"> | undefined;
597
596
  acceptedTime?: number | undefined;
598
597
  _creationTime: number;
599
598
  status: "pending" | "accepted" | "revoked" | "expired";
600
599
  tokenHash: string;
601
- _id: convex_values7.GenericId<"GroupInvite">;
600
+ _id: GenericId<"GroupInvite">;
602
601
  }, {
603
- groupId: convex_values7.VId<convex_values7.GenericId<"Group"> | undefined, "optional">;
604
- invitedByUserId: convex_values7.VId<convex_values7.GenericId<"User"> | undefined, "optional">;
602
+ _id: VId<GenericId<"GroupInvite">, "required">;
603
+ _creationTime: convex_values7.VFloat64<number, "required">;
604
+ groupId: VId<GenericId<"Group"> | undefined, "optional">;
605
+ invitedByUserId: VId<GenericId<"User"> | undefined, "optional">;
605
606
  email: convex_values7.VString<string | undefined, "optional">;
606
607
  tokenHash: convex_values7.VString<string, "required">;
607
608
  role: convex_values7.VString<string | undefined, "optional">;
608
609
  roleIds: convex_values7.VArray<string[] | undefined, convex_values7.VString<string, "required">, "optional">;
609
610
  status: convex_values7.VUnion<"pending" | "accepted" | "revoked" | "expired", [convex_values7.VLiteral<"pending", "required">, convex_values7.VLiteral<"accepted", "required">, convex_values7.VLiteral<"revoked", "required">, convex_values7.VLiteral<"expired", "required">], "required", never>;
610
611
  expiresTime: convex_values7.VFloat64<number | undefined, "optional">;
611
- acceptedByUserId: convex_values7.VId<convex_values7.GenericId<"User"> | undefined, "optional">;
612
+ acceptedByUserId: VId<GenericId<"User"> | undefined, "optional">;
612
613
  acceptedTime: convex_values7.VFloat64<number | undefined, "optional">;
613
614
  extend: convex_values7.VAny<any, "optional", string>;
614
- _id: convex_values7.VId<convex_values7.GenericId<"GroupInvite">, "required">;
615
- _creationTime: convex_values7.VFloat64<number, "required">;
616
615
  }, "required", "email" | "_creationTime" | "extend" | `extend.${string}` | "status" | "groupId" | "role" | "roleIds" | "invitedByUserId" | "tokenHash" | "expiresTime" | "acceptedByUserId" | "acceptedTime" | "_id">; /** Single UserEmail document validator. */
617
616
  email: convex_values7.VObject<{
618
617
  verificationTime?: number | undefined;
619
- accountId?: convex_values7.GenericId<"Account"> | undefined;
618
+ accountId?: GenericId<"Account"> | undefined;
620
619
  provider?: string | undefined;
621
- connectionId?: convex_values7.GenericId<"GroupConnection"> | undefined;
620
+ connectionId?: GenericId<"GroupConnection"> | undefined;
622
621
  email: string;
623
622
  _creationTime: number;
624
- userId: convex_values7.GenericId<"User">;
623
+ userId: GenericId<"User">;
625
624
  isPrimary: boolean;
626
625
  source: "password" | "oauth" | "oidc" | "saml" | "scim";
627
- _id: convex_values7.GenericId<"UserEmail">;
626
+ _id: GenericId<"UserEmail">;
628
627
  }, {
629
- userId: convex_values7.VId<convex_values7.GenericId<"User">, "required">;
628
+ _id: VId<GenericId<"UserEmail">, "required">;
629
+ _creationTime: convex_values7.VFloat64<number, "required">;
630
+ userId: VId<GenericId<"User">, "required">;
630
631
  email: convex_values7.VString<string, "required">;
631
632
  verificationTime: convex_values7.VFloat64<number | undefined, "optional">;
632
633
  isPrimary: convex_values7.VBoolean<boolean, "required">;
633
634
  source: convex_values7.VUnion<"password" | "oauth" | "oidc" | "saml" | "scim", [convex_values7.VLiteral<"password", "required">, convex_values7.VLiteral<"oauth", "required">, convex_values7.VLiteral<"oidc", "required">, convex_values7.VLiteral<"saml", "required">, convex_values7.VLiteral<"scim", "required">], "required", never>;
634
- accountId: convex_values7.VId<convex_values7.GenericId<"Account"> | undefined, "optional">;
635
+ accountId: VId<GenericId<"Account"> | undefined, "optional">;
635
636
  provider: convex_values7.VString<string | undefined, "optional">;
636
- connectionId: convex_values7.VId<convex_values7.GenericId<"GroupConnection"> | undefined, "optional">;
637
- _id: convex_values7.VId<convex_values7.GenericId<"UserEmail">, "required">;
638
- _creationTime: convex_values7.VFloat64<number, "required">;
637
+ connectionId: VId<GenericId<"GroupConnection"> | undefined, "optional">;
639
638
  }, "required", "email" | "_creationTime" | "userId" | "verificationTime" | "isPrimary" | "source" | "accountId" | "provider" | "connectionId" | "_id">; /** `User | null` — for a `viewer`/current-user query. */
640
- viewer: convex_values7.VUnion<convex_server13.Expand<{ [Property in "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)]?: Exclude<Infer<(Omit<{
639
+ viewer: convex_values7.VUnion<convex_server13.Expand<{ [Property in "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | "hasTotp" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)]?: Exclude<Infer<(Omit<{
640
+ _id: VId<GenericId<"User">, "required">;
641
+ _creationTime: convex_values7.VFloat64<number, "required">;
641
642
  name: convex_values7.VString<string | undefined, "optional">;
642
643
  image: convex_values7.VString<string | undefined, "optional">;
643
644
  email: convex_values7.VString<string | undefined, "optional">;
@@ -645,13 +646,14 @@ declare function buildAuthValidators<TExtend extends AuthExtendValidators>(exten
645
646
  phone: convex_values7.VString<string | undefined, "optional">;
646
647
  phoneVerificationTime: convex_values7.VFloat64<number | undefined, "optional">;
647
648
  isAnonymous: convex_values7.VBoolean<boolean | undefined, "optional">;
648
- lastActiveGroup: convex_values7.VId<convex_values7.GenericId<"Group"> | undefined, "optional">;
649
+ lastActiveGroup: VId<GenericId<"Group"> | undefined, "optional">;
650
+ hasTotp: convex_values7.VBoolean<boolean | undefined, "optional">;
649
651
  extend: convex_values7.VAny<any, "optional", string>;
650
- _id: convex_values7.VId<convex_values7.GenericId<"User">, "required">;
651
- _creationTime: convex_values7.VFloat64<number, "required">;
652
652
  }, "extend"> & {
653
653
  extend: convex_values7.VOptional<ExtendFor<TExtend, "User">>;
654
- })[Property]>, undefined> | undefined } & { [Property_1 in Exclude<"name", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"email", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"image", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"_creationTime", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"phone", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"emailVerificationTime", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"phoneVerificationTime", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"isAnonymous", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"lastActiveGroup", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"extend", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"_id", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)>]: Infer<(Omit<{
654
+ })[Property]>, undefined> | undefined } & { [Property_1 in Exclude<"name", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | "hasTotp" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"email", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | "hasTotp" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"image", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | "hasTotp" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"_creationTime", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | "hasTotp" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"phone", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | "hasTotp" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"emailVerificationTime", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | "hasTotp" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"phoneVerificationTime", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | "hasTotp" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"isAnonymous", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | "hasTotp" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"lastActiveGroup", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | "hasTotp" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"hasTotp", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | "hasTotp" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"extend", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | "hasTotp" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"_id", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | "hasTotp" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)>]: Infer<(Omit<{
655
+ _id: VId<GenericId<"User">, "required">;
656
+ _creationTime: convex_values7.VFloat64<number, "required">;
655
657
  name: convex_values7.VString<string | undefined, "optional">;
656
658
  image: convex_values7.VString<string | undefined, "optional">;
657
659
  email: convex_values7.VString<string | undefined, "optional">;
@@ -659,13 +661,14 @@ declare function buildAuthValidators<TExtend extends AuthExtendValidators>(exten
659
661
  phone: convex_values7.VString<string | undefined, "optional">;
660
662
  phoneVerificationTime: convex_values7.VFloat64<number | undefined, "optional">;
661
663
  isAnonymous: convex_values7.VBoolean<boolean | undefined, "optional">;
662
- lastActiveGroup: convex_values7.VId<convex_values7.GenericId<"Group"> | undefined, "optional">;
664
+ lastActiveGroup: VId<GenericId<"Group"> | undefined, "optional">;
665
+ hasTotp: convex_values7.VBoolean<boolean | undefined, "optional">;
663
666
  extend: convex_values7.VAny<any, "optional", string>;
664
- _id: convex_values7.VId<convex_values7.GenericId<"User">, "required">;
665
- _creationTime: convex_values7.VFloat64<number, "required">;
666
667
  }, "extend"> & {
667
668
  extend: convex_values7.VOptional<ExtendFor<TExtend, "User">>;
668
- })[Property_1]> }> | null, [convex_values7.VObject<convex_server13.Expand<{ [Property in "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)]?: Exclude<Infer<(Omit<{
669
+ })[Property_1]> }> | null, [convex_values7.VObject<convex_server13.Expand<{ [Property in "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | "hasTotp" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)]?: Exclude<Infer<(Omit<{
670
+ _id: VId<GenericId<"User">, "required">;
671
+ _creationTime: convex_values7.VFloat64<number, "required">;
669
672
  name: convex_values7.VString<string | undefined, "optional">;
670
673
  image: convex_values7.VString<string | undefined, "optional">;
671
674
  email: convex_values7.VString<string | undefined, "optional">;
@@ -673,13 +676,14 @@ declare function buildAuthValidators<TExtend extends AuthExtendValidators>(exten
673
676
  phone: convex_values7.VString<string | undefined, "optional">;
674
677
  phoneVerificationTime: convex_values7.VFloat64<number | undefined, "optional">;
675
678
  isAnonymous: convex_values7.VBoolean<boolean | undefined, "optional">;
676
- lastActiveGroup: convex_values7.VId<convex_values7.GenericId<"Group"> | undefined, "optional">;
679
+ lastActiveGroup: VId<GenericId<"Group"> | undefined, "optional">;
680
+ hasTotp: convex_values7.VBoolean<boolean | undefined, "optional">;
677
681
  extend: convex_values7.VAny<any, "optional", string>;
678
- _id: convex_values7.VId<convex_values7.GenericId<"User">, "required">;
679
- _creationTime: convex_values7.VFloat64<number, "required">;
680
682
  }, "extend"> & {
681
683
  extend: convex_values7.VOptional<ExtendFor<TExtend, "User">>;
682
- })[Property]>, undefined> | undefined } & { [Property_1 in Exclude<"name", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"email", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"image", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"_creationTime", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"phone", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"emailVerificationTime", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"phoneVerificationTime", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"isAnonymous", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"lastActiveGroup", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"extend", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"_id", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)>]: Infer<(Omit<{
684
+ })[Property]>, undefined> | undefined } & { [Property_1 in Exclude<"name", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | "hasTotp" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"email", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | "hasTotp" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"image", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | "hasTotp" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"_creationTime", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | "hasTotp" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"phone", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | "hasTotp" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"emailVerificationTime", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | "hasTotp" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"phoneVerificationTime", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | "hasTotp" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"isAnonymous", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | "hasTotp" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"lastActiveGroup", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | "hasTotp" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"hasTotp", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | "hasTotp" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"extend", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | "hasTotp" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)> | Exclude<"_id", "name" | "email" | "image" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | "hasTotp" | (convex_values7.VOptional<ExtendFor<TExtend, "User">>["isOptional"] extends "optional" ? "extend" : never)>]: Infer<(Omit<{
685
+ _id: VId<GenericId<"User">, "required">;
686
+ _creationTime: convex_values7.VFloat64<number, "required">;
683
687
  name: convex_values7.VString<string | undefined, "optional">;
684
688
  image: convex_values7.VString<string | undefined, "optional">;
685
689
  email: convex_values7.VString<string | undefined, "optional">;
@@ -687,13 +691,14 @@ declare function buildAuthValidators<TExtend extends AuthExtendValidators>(exten
687
691
  phone: convex_values7.VString<string | undefined, "optional">;
688
692
  phoneVerificationTime: convex_values7.VFloat64<number | undefined, "optional">;
689
693
  isAnonymous: convex_values7.VBoolean<boolean | undefined, "optional">;
690
- lastActiveGroup: convex_values7.VId<convex_values7.GenericId<"Group"> | undefined, "optional">;
694
+ lastActiveGroup: VId<GenericId<"Group"> | undefined, "optional">;
695
+ hasTotp: convex_values7.VBoolean<boolean | undefined, "optional">;
691
696
  extend: convex_values7.VAny<any, "optional", string>;
692
- _id: convex_values7.VId<convex_values7.GenericId<"User">, "required">;
693
- _creationTime: convex_values7.VFloat64<number, "required">;
694
697
  }, "extend"> & {
695
698
  extend: convex_values7.VOptional<ExtendFor<TExtend, "User">>;
696
699
  })[Property_1]> }>, Omit<{
700
+ _id: VId<GenericId<"User">, "required">;
701
+ _creationTime: convex_values7.VFloat64<number, "required">;
697
702
  name: convex_values7.VString<string | undefined, "optional">;
698
703
  image: convex_values7.VString<string | undefined, "optional">;
699
704
  email: convex_values7.VString<string | undefined, "optional">;
@@ -701,13 +706,12 @@ declare function buildAuthValidators<TExtend extends AuthExtendValidators>(exten
701
706
  phone: convex_values7.VString<string | undefined, "optional">;
702
707
  phoneVerificationTime: convex_values7.VFloat64<number | undefined, "optional">;
703
708
  isAnonymous: convex_values7.VBoolean<boolean | undefined, "optional">;
704
- lastActiveGroup: convex_values7.VId<convex_values7.GenericId<"Group"> | undefined, "optional">;
709
+ lastActiveGroup: VId<GenericId<"Group"> | undefined, "optional">;
710
+ hasTotp: convex_values7.VBoolean<boolean | undefined, "optional">;
705
711
  extend: convex_values7.VAny<any, "optional", string>;
706
- _id: convex_values7.VId<convex_values7.GenericId<"User">, "required">;
707
- _creationTime: convex_values7.VFloat64<number, "required">;
708
712
  }, "extend"> & {
709
713
  extend: convex_values7.VOptional<ExtendFor<TExtend, "User">>;
710
- }, "required", "name" | "email" | "image" | "_creationTime" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | "extend" | "_id" | `extend.${convex_values7.VOptional<ExtendFor<TExtend, "User">>["fieldPaths"]}`>, convex_values7.VNull<null, "required">], "required", "name" | "email" | "image" | "_creationTime" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | "extend" | "_id" | `extend.${convex_values7.VOptional<ExtendFor<TExtend, "User">>["fieldPaths"]}`>; /** Wrap any item validator in the `{ items, nextCursor }` page shape. */
714
+ }, "required", "name" | "email" | "image" | "_creationTime" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | "hasTotp" | "extend" | "_id" | `extend.${convex_values7.VOptional<ExtendFor<TExtend, "User">>["fieldPaths"]}`>, convex_values7.VNull<null, "required">], "required", "name" | "email" | "image" | "_creationTime" | "phone" | "emailVerificationTime" | "phoneVerificationTime" | "isAnonymous" | "lastActiveGroup" | "hasTotp" | "extend" | "_id" | `extend.${convex_values7.VOptional<ExtendFor<TExtend, "User">>["fieldPaths"]}`>; /** Wrap any item validator in the `{ items, nextCursor }` page shape. */
711
715
  list: <V extends Validator<any, any, any>>(item: V) => convex_values7.VObject<{
712
716
  items: V["type"][];
713
717
  nextCursor: string | null;