@convex-dev/better-auth
Version:
A Better Auth component for Convex.
1,020 lines • 83.1 kB
TypeScript
export declare const vv: {
id: <TableName extends import("convex/server").TableNamesInDataModel<{
user: {
document: {
_id: import("convex/values").GenericId<"user">;
_creationTime: number;
image?: string | null | undefined;
twoFactorEnabled?: boolean | null | undefined;
isAnonymous?: boolean | null | undefined;
username?: string | null | undefined;
displayUsername?: string | null | undefined;
phoneNumber?: string | null | undefined;
phoneNumberVerified?: boolean | null | undefined;
role?: string | null | undefined;
banned?: boolean | null | undefined;
banReason?: string | null | undefined;
banExpires?: number | null | undefined;
stripeCustomerId?: string | null | undefined;
userId?: string | null | undefined;
teamId?: string | null | undefined;
name: string;
email: string;
emailVerified: boolean;
createdAt: number;
updatedAt: number;
};
fieldPaths: ("name" | "email" | "emailVerified" | "image" | "createdAt" | "updatedAt" | "twoFactorEnabled" | "isAnonymous" | "username" | "displayUsername" | "phoneNumber" | "phoneNumberVerified" | "role" | "banned" | "banReason" | "banExpires" | "stripeCustomerId" | "userId" | "teamId" | "_creationTime") | "_id";
indexes: {
email_name: ["email", "name", "_creationTime"];
name: ["name", "_creationTime"];
userId: ["userId", "_creationTime"];
username: ["username", "_creationTime"];
phoneNumber: ["phoneNumber", "_creationTime"];
by_id: ["_id"];
by_creation_time: ["_creationTime"];
};
searchIndexes: {};
vectorIndexes: {};
};
session: {
document: {
_id: import("convex/values").GenericId<"session">;
_creationTime: number;
ipAddress?: string | null | undefined;
userAgent?: string | null | undefined;
impersonatedBy?: string | null | undefined;
activeOrganizationId?: string | null | undefined;
activeTeamId?: string | null | undefined;
createdAt: number;
updatedAt: number;
userId: string;
expiresAt: number;
token: string;
};
fieldPaths: ("createdAt" | "updatedAt" | "userId" | "_creationTime" | "expiresAt" | "token" | "ipAddress" | "userAgent" | "impersonatedBy" | "activeOrganizationId" | "activeTeamId") | "_id";
indexes: {
expiresAt: ["expiresAt", "_creationTime"];
expiresAt_userId: ["expiresAt", "userId", "_creationTime"];
token: ["token", "_creationTime"];
userId: ["userId", "_creationTime"];
by_id: ["_id"];
by_creation_time: ["_creationTime"];
};
searchIndexes: {};
vectorIndexes: {};
};
account: {
document: {
_id: import("convex/values").GenericId<"account">;
_creationTime: number;
accessToken?: string | null | undefined;
refreshToken?: string | null | undefined;
idToken?: string | null | undefined;
accessTokenExpiresAt?: number | null | undefined;
refreshTokenExpiresAt?: number | null | undefined;
scope?: string | null | undefined;
password?: string | null | undefined;
createdAt: number;
updatedAt: number;
userId: string;
accountId: string;
providerId: string;
};
fieldPaths: ("createdAt" | "updatedAt" | "userId" | "_creationTime" | "accountId" | "providerId" | "accessToken" | "refreshToken" | "idToken" | "accessTokenExpiresAt" | "refreshTokenExpiresAt" | "scope" | "password") | "_id";
indexes: {
accountId: ["accountId", "_creationTime"];
accountId_providerId: ["accountId", "providerId", "_creationTime"];
providerId_userId: ["providerId", "userId", "_creationTime"];
userId: ["userId", "_creationTime"];
by_id: ["_id"];
by_creation_time: ["_creationTime"];
};
searchIndexes: {};
vectorIndexes: {};
};
verification: {
document: {
_id: import("convex/values").GenericId<"verification">;
_creationTime: number;
createdAt?: number | null | undefined;
updatedAt?: number | null | undefined;
expiresAt: number;
identifier: string;
value: string;
};
fieldPaths: ("createdAt" | "updatedAt" | "_creationTime" | "expiresAt" | "identifier" | "value") | "_id";
indexes: {
expiresAt: ["expiresAt", "_creationTime"];
identifier: ["identifier", "_creationTime"];
by_id: ["_id"];
by_creation_time: ["_creationTime"];
};
searchIndexes: {};
vectorIndexes: {};
};
twoFactor: {
document: {
_id: import("convex/values").GenericId<"twoFactor">;
_creationTime: number;
userId: string;
secret: string;
backupCodes: string;
};
fieldPaths: ("userId" | "_creationTime" | "secret" | "backupCodes") | "_id";
indexes: {
userId: ["userId", "_creationTime"];
by_id: ["_id"];
by_creation_time: ["_creationTime"];
};
searchIndexes: {};
vectorIndexes: {};
};
passkey: {
document: {
_id: import("convex/values").GenericId<"passkey">;
_creationTime: number;
name?: string | null | undefined;
createdAt?: number | null | undefined;
transports?: string | null | undefined;
aaguid?: string | null | undefined;
userId: string;
publicKey: string;
credentialID: string;
counter: number;
deviceType: string;
backedUp: boolean;
};
fieldPaths: ("name" | "createdAt" | "userId" | "_creationTime" | "publicKey" | "credentialID" | "counter" | "deviceType" | "backedUp" | "transports" | "aaguid") | "_id";
indexes: {
credentialID: ["credentialID", "_creationTime"];
userId: ["userId", "_creationTime"];
by_id: ["_id"];
by_creation_time: ["_creationTime"];
};
searchIndexes: {};
vectorIndexes: {};
};
apikey: {
document: {
_id: import("convex/values").GenericId<"apikey">;
_creationTime: number;
name?: string | null | undefined;
expiresAt?: number | null | undefined;
start?: string | null | undefined;
prefix?: string | null | undefined;
refillInterval?: number | null | undefined;
refillAmount?: number | null | undefined;
lastRefillAt?: number | null | undefined;
enabled?: boolean | null | undefined;
rateLimitEnabled?: boolean | null | undefined;
rateLimitTimeWindow?: number | null | undefined;
rateLimitMax?: number | null | undefined;
requestCount?: number | null | undefined;
remaining?: number | null | undefined;
lastRequest?: number | null | undefined;
permissions?: string | null | undefined;
metadata?: string | null | undefined;
createdAt: number;
updatedAt: number;
userId: string;
key: string;
};
fieldPaths: ("name" | "createdAt" | "updatedAt" | "userId" | "_creationTime" | "expiresAt" | "start" | "prefix" | "key" | "refillInterval" | "refillAmount" | "lastRefillAt" | "enabled" | "rateLimitEnabled" | "rateLimitTimeWindow" | "rateLimitMax" | "requestCount" | "remaining" | "lastRequest" | "permissions" | "metadata") | "_id";
indexes: {
key: ["key", "_creationTime"];
userId: ["userId", "_creationTime"];
by_id: ["_id"];
by_creation_time: ["_creationTime"];
};
searchIndexes: {};
vectorIndexes: {};
};
oauthApplication: {
document: {
_id: import("convex/values").GenericId<"oauthApplication">;
_creationTime: number;
name?: string | null | undefined;
type?: string | null | undefined;
createdAt?: number | null | undefined;
updatedAt?: number | null | undefined;
userId?: string | null | undefined;
metadata?: string | null | undefined;
icon?: string | null | undefined;
clientId?: string | null | undefined;
clientSecret?: string | null | undefined;
redirectURLs?: string | null | undefined;
disabled?: boolean | null | undefined;
};
fieldPaths: ("name" | "type" | "createdAt" | "updatedAt" | "userId" | "_creationTime" | "metadata" | "icon" | "clientId" | "clientSecret" | "redirectURLs" | "disabled") | "_id";
indexes: {
clientId: ["clientId", "_creationTime"];
by_id: ["_id"];
by_creation_time: ["_creationTime"];
};
searchIndexes: {};
vectorIndexes: {};
};
oauthAccessToken: {
document: {
_id: import("convex/values").GenericId<"oauthAccessToken">;
_creationTime: number;
createdAt?: number | null | undefined;
updatedAt?: number | null | undefined;
userId?: string | null | undefined;
accessToken?: string | null | undefined;
refreshToken?: string | null | undefined;
accessTokenExpiresAt?: number | null | undefined;
refreshTokenExpiresAt?: number | null | undefined;
clientId?: string | null | undefined;
scopes?: string | null | undefined;
};
fieldPaths: ("createdAt" | "updatedAt" | "userId" | "_creationTime" | "accessToken" | "refreshToken" | "accessTokenExpiresAt" | "refreshTokenExpiresAt" | "clientId" | "scopes") | "_id";
indexes: {
accessToken: ["accessToken", "_creationTime"];
refreshToken: ["refreshToken", "_creationTime"];
by_id: ["_id"];
by_creation_time: ["_creationTime"];
};
searchIndexes: {};
vectorIndexes: {};
};
oauthConsent: {
document: {
_id: import("convex/values").GenericId<"oauthConsent">;
_creationTime: number;
createdAt?: number | null | undefined;
updatedAt?: number | null | undefined;
userId?: string | null | undefined;
clientId?: string | null | undefined;
scopes?: string | null | undefined;
consentGiven?: boolean | null | undefined;
};
fieldPaths: ("createdAt" | "updatedAt" | "userId" | "_creationTime" | "clientId" | "scopes" | "consentGiven") | "_id";
indexes: {
clientId_userId: ["clientId", "userId", "_creationTime"];
by_id: ["_id"];
by_creation_time: ["_creationTime"];
};
searchIndexes: {};
vectorIndexes: {};
};
organization: {
document: {
_id: import("convex/values").GenericId<"organization">;
_creationTime: number;
metadata?: string | null | undefined;
slug?: string | null | undefined;
logo?: string | null | undefined;
name: string;
createdAt: number;
};
fieldPaths: ("name" | "createdAt" | "_creationTime" | "metadata" | "slug" | "logo") | "_id";
indexes: {
name: ["name", "_creationTime"];
slug: ["slug", "_creationTime"];
by_id: ["_id"];
by_creation_time: ["_creationTime"];
};
searchIndexes: {};
vectorIndexes: {};
};
member: {
document: {
_id: import("convex/values").GenericId<"member">;
_creationTime: number;
createdAt: number;
role: string;
userId: string;
organizationId: string;
};
fieldPaths: ("createdAt" | "role" | "userId" | "_creationTime" | "organizationId") | "_id";
indexes: {
organizationId_userId: ["organizationId", "userId", "_creationTime"];
userId: ["userId", "_creationTime"];
role: ["role", "_creationTime"];
by_id: ["_id"];
by_creation_time: ["_creationTime"];
};
searchIndexes: {};
vectorIndexes: {};
};
invitation: {
document: {
_id: import("convex/values").GenericId<"invitation">;
_creationTime: number;
role?: string | null | undefined;
teamId?: string | null | undefined;
email: string;
expiresAt: number;
organizationId: string;
status: string;
inviterId: string;
};
fieldPaths: ("email" | "role" | "teamId" | "_creationTime" | "expiresAt" | "organizationId" | "status" | "inviterId") | "_id";
indexes: {
email_organizationId_status: ["email", "organizationId", "status", "_creationTime"];
organizationId_status: ["organizationId", "status", "_creationTime"];
role: ["role", "_creationTime"];
teamId: ["teamId", "_creationTime"];
status: ["status", "_creationTime"];
inviterId: ["inviterId", "_creationTime"];
by_id: ["_id"];
by_creation_time: ["_creationTime"];
};
searchIndexes: {};
vectorIndexes: {};
};
team: {
document: {
_id: import("convex/values").GenericId<"team">;
_creationTime: number;
updatedAt?: number | null | undefined;
name: string;
createdAt: number;
organizationId: string;
};
fieldPaths: ("name" | "createdAt" | "updatedAt" | "_creationTime" | "organizationId") | "_id";
indexes: {
organizationId: ["organizationId", "_creationTime"];
by_id: ["_id"];
by_creation_time: ["_creationTime"];
};
searchIndexes: {};
vectorIndexes: {};
};
teamMember: {
document: {
_id: import("convex/values").GenericId<"teamMember">;
_creationTime: number;
createdAt?: number | null | undefined;
userId: string;
teamId: string;
};
fieldPaths: ("createdAt" | "userId" | "teamId" | "_creationTime") | "_id";
indexes: {
userId: ["userId", "_creationTime"];
by_id: ["_id"];
by_creation_time: ["_creationTime"];
};
searchIndexes: {};
vectorIndexes: {};
};
ssoProvider: {
document: {
_id: import("convex/values").GenericId<"ssoProvider">;
_creationTime: number;
userId?: string | null | undefined;
organizationId?: string | null | undefined;
oidcConfig?: string | null | undefined;
samlConfig?: string | null | undefined;
providerId: string;
issuer: string;
domain: string;
};
fieldPaths: ("userId" | "_creationTime" | "providerId" | "organizationId" | "issuer" | "oidcConfig" | "samlConfig" | "domain") | "_id";
indexes: {
organizationId: ["organizationId", "_creationTime"];
domain: ["domain", "_creationTime"];
userId: ["userId", "_creationTime"];
providerId: ["providerId", "_creationTime"];
by_id: ["_id"];
by_creation_time: ["_creationTime"];
};
searchIndexes: {};
vectorIndexes: {};
};
jwks: {
document: {
_id: import("convex/values").GenericId<"jwks">;
_creationTime: number;
createdAt: number;
publicKey: string;
privateKey: string;
};
fieldPaths: "_id" | ("createdAt" | "_creationTime" | "publicKey" | "privateKey");
indexes: {
by_id: ["_id"];
by_creation_time: ["_creationTime"];
};
searchIndexes: {};
vectorIndexes: {};
};
subscription: {
document: {
_id: import("convex/values").GenericId<"subscription">;
_creationTime: number;
stripeCustomerId?: string | null | undefined;
status?: string | null | undefined;
stripeSubscriptionId?: string | null | undefined;
periodStart?: number | null | undefined;
periodEnd?: number | null | undefined;
cancelAtPeriodEnd?: boolean | null | undefined;
seats?: number | null | undefined;
plan: string;
referenceId: string;
};
fieldPaths: ("stripeCustomerId" | "_creationTime" | "status" | "plan" | "referenceId" | "stripeSubscriptionId" | "periodStart" | "periodEnd" | "cancelAtPeriodEnd" | "seats") | "_id";
indexes: {
stripeSubscriptionId: ["stripeSubscriptionId", "_creationTime"];
stripeCustomerId: ["stripeCustomerId", "_creationTime"];
referenceId: ["referenceId", "_creationTime"];
by_id: ["_id"];
by_creation_time: ["_creationTime"];
};
searchIndexes: {};
vectorIndexes: {};
};
walletAddress: {
document: {
_id: import("convex/values").GenericId<"walletAddress">;
_creationTime: number;
isPrimary?: boolean | null | undefined;
createdAt: number;
userId: string;
address: string;
chainId: number;
};
fieldPaths: ("createdAt" | "userId" | "_creationTime" | "address" | "chainId" | "isPrimary") | "_id";
indexes: {
userId: ["userId", "_creationTime"];
by_id: ["_id"];
by_creation_time: ["_creationTime"];
};
searchIndexes: {};
vectorIndexes: {};
};
rateLimit: {
document: {
_id: import("convex/values").GenericId<"rateLimit">;
_creationTime: number;
key?: string | null | undefined;
lastRequest?: number | null | undefined;
count?: number | null | undefined;
};
fieldPaths: ("_creationTime" | "key" | "lastRequest" | "count") | "_id";
indexes: {
key: ["key", "_creationTime"];
by_id: ["_id"];
by_creation_time: ["_creationTime"];
};
searchIndexes: {};
vectorIndexes: {};
};
}>>(tableName: TableName) => import("convex/values").VId<import("convex/values").GenericId<TableName>, "required">;
doc: <TableName extends import("convex/server").TableNamesInDataModel<{
user: {
document: {
_id: import("convex/values").GenericId<"user">;
_creationTime: number;
image?: string | null | undefined;
twoFactorEnabled?: boolean | null | undefined;
isAnonymous?: boolean | null | undefined;
username?: string | null | undefined;
displayUsername?: string | null | undefined;
phoneNumber?: string | null | undefined;
phoneNumberVerified?: boolean | null | undefined;
role?: string | null | undefined;
banned?: boolean | null | undefined;
banReason?: string | null | undefined;
banExpires?: number | null | undefined;
stripeCustomerId?: string | null | undefined;
userId?: string | null | undefined;
teamId?: string | null | undefined;
name: string;
email: string;
emailVerified: boolean;
createdAt: number;
updatedAt: number;
};
fieldPaths: ("name" | "email" | "emailVerified" | "image" | "createdAt" | "updatedAt" | "twoFactorEnabled" | "isAnonymous" | "username" | "displayUsername" | "phoneNumber" | "phoneNumberVerified" | "role" | "banned" | "banReason" | "banExpires" | "stripeCustomerId" | "userId" | "teamId" | "_creationTime") | "_id";
indexes: {
email_name: ["email", "name", "_creationTime"];
name: ["name", "_creationTime"];
userId: ["userId", "_creationTime"];
username: ["username", "_creationTime"];
phoneNumber: ["phoneNumber", "_creationTime"];
by_id: ["_id"];
by_creation_time: ["_creationTime"];
};
searchIndexes: {};
vectorIndexes: {};
};
session: {
document: {
_id: import("convex/values").GenericId<"session">;
_creationTime: number;
ipAddress?: string | null | undefined;
userAgent?: string | null | undefined;
impersonatedBy?: string | null | undefined;
activeOrganizationId?: string | null | undefined;
activeTeamId?: string | null | undefined;
createdAt: number;
updatedAt: number;
userId: string;
expiresAt: number;
token: string;
};
fieldPaths: ("createdAt" | "updatedAt" | "userId" | "_creationTime" | "expiresAt" | "token" | "ipAddress" | "userAgent" | "impersonatedBy" | "activeOrganizationId" | "activeTeamId") | "_id";
indexes: {
expiresAt: ["expiresAt", "_creationTime"];
expiresAt_userId: ["expiresAt", "userId", "_creationTime"];
token: ["token", "_creationTime"];
userId: ["userId", "_creationTime"];
by_id: ["_id"];
by_creation_time: ["_creationTime"];
};
searchIndexes: {};
vectorIndexes: {};
};
account: {
document: {
_id: import("convex/values").GenericId<"account">;
_creationTime: number;
accessToken?: string | null | undefined;
refreshToken?: string | null | undefined;
idToken?: string | null | undefined;
accessTokenExpiresAt?: number | null | undefined;
refreshTokenExpiresAt?: number | null | undefined;
scope?: string | null | undefined;
password?: string | null | undefined;
createdAt: number;
updatedAt: number;
userId: string;
accountId: string;
providerId: string;
};
fieldPaths: ("createdAt" | "updatedAt" | "userId" | "_creationTime" | "accountId" | "providerId" | "accessToken" | "refreshToken" | "idToken" | "accessTokenExpiresAt" | "refreshTokenExpiresAt" | "scope" | "password") | "_id";
indexes: {
accountId: ["accountId", "_creationTime"];
accountId_providerId: ["accountId", "providerId", "_creationTime"];
providerId_userId: ["providerId", "userId", "_creationTime"];
userId: ["userId", "_creationTime"];
by_id: ["_id"];
by_creation_time: ["_creationTime"];
};
searchIndexes: {};
vectorIndexes: {};
};
verification: {
document: {
_id: import("convex/values").GenericId<"verification">;
_creationTime: number;
createdAt?: number | null | undefined;
updatedAt?: number | null | undefined;
expiresAt: number;
identifier: string;
value: string;
};
fieldPaths: ("createdAt" | "updatedAt" | "_creationTime" | "expiresAt" | "identifier" | "value") | "_id";
indexes: {
expiresAt: ["expiresAt", "_creationTime"];
identifier: ["identifier", "_creationTime"];
by_id: ["_id"];
by_creation_time: ["_creationTime"];
};
searchIndexes: {};
vectorIndexes: {};
};
twoFactor: {
document: {
_id: import("convex/values").GenericId<"twoFactor">;
_creationTime: number;
userId: string;
secret: string;
backupCodes: string;
};
fieldPaths: ("userId" | "_creationTime" | "secret" | "backupCodes") | "_id";
indexes: {
userId: ["userId", "_creationTime"];
by_id: ["_id"];
by_creation_time: ["_creationTime"];
};
searchIndexes: {};
vectorIndexes: {};
};
passkey: {
document: {
_id: import("convex/values").GenericId<"passkey">;
_creationTime: number;
name?: string | null | undefined;
createdAt?: number | null | undefined;
transports?: string | null | undefined;
aaguid?: string | null | undefined;
userId: string;
publicKey: string;
credentialID: string;
counter: number;
deviceType: string;
backedUp: boolean;
};
fieldPaths: ("name" | "createdAt" | "userId" | "_creationTime" | "publicKey" | "credentialID" | "counter" | "deviceType" | "backedUp" | "transports" | "aaguid") | "_id";
indexes: {
credentialID: ["credentialID", "_creationTime"];
userId: ["userId", "_creationTime"];
by_id: ["_id"];
by_creation_time: ["_creationTime"];
};
searchIndexes: {};
vectorIndexes: {};
};
apikey: {
document: {
_id: import("convex/values").GenericId<"apikey">;
_creationTime: number;
name?: string | null | undefined;
expiresAt?: number | null | undefined;
start?: string | null | undefined;
prefix?: string | null | undefined;
refillInterval?: number | null | undefined;
refillAmount?: number | null | undefined;
lastRefillAt?: number | null | undefined;
enabled?: boolean | null | undefined;
rateLimitEnabled?: boolean | null | undefined;
rateLimitTimeWindow?: number | null | undefined;
rateLimitMax?: number | null | undefined;
requestCount?: number | null | undefined;
remaining?: number | null | undefined;
lastRequest?: number | null | undefined;
permissions?: string | null | undefined;
metadata?: string | null | undefined;
createdAt: number;
updatedAt: number;
userId: string;
key: string;
};
fieldPaths: ("name" | "createdAt" | "updatedAt" | "userId" | "_creationTime" | "expiresAt" | "start" | "prefix" | "key" | "refillInterval" | "refillAmount" | "lastRefillAt" | "enabled" | "rateLimitEnabled" | "rateLimitTimeWindow" | "rateLimitMax" | "requestCount" | "remaining" | "lastRequest" | "permissions" | "metadata") | "_id";
indexes: {
key: ["key", "_creationTime"];
userId: ["userId", "_creationTime"];
by_id: ["_id"];
by_creation_time: ["_creationTime"];
};
searchIndexes: {};
vectorIndexes: {};
};
oauthApplication: {
document: {
_id: import("convex/values").GenericId<"oauthApplication">;
_creationTime: number;
name?: string | null | undefined;
type?: string | null | undefined;
createdAt?: number | null | undefined;
updatedAt?: number | null | undefined;
userId?: string | null | undefined;
metadata?: string | null | undefined;
icon?: string | null | undefined;
clientId?: string | null | undefined;
clientSecret?: string | null | undefined;
redirectURLs?: string | null | undefined;
disabled?: boolean | null | undefined;
};
fieldPaths: ("name" | "type" | "createdAt" | "updatedAt" | "userId" | "_creationTime" | "metadata" | "icon" | "clientId" | "clientSecret" | "redirectURLs" | "disabled") | "_id";
indexes: {
clientId: ["clientId", "_creationTime"];
by_id: ["_id"];
by_creation_time: ["_creationTime"];
};
searchIndexes: {};
vectorIndexes: {};
};
oauthAccessToken: {
document: {
_id: import("convex/values").GenericId<"oauthAccessToken">;
_creationTime: number;
createdAt?: number | null | undefined;
updatedAt?: number | null | undefined;
userId?: string | null | undefined;
accessToken?: string | null | undefined;
refreshToken?: string | null | undefined;
accessTokenExpiresAt?: number | null | undefined;
refreshTokenExpiresAt?: number | null | undefined;
clientId?: string | null | undefined;
scopes?: string | null | undefined;
};
fieldPaths: ("createdAt" | "updatedAt" | "userId" | "_creationTime" | "accessToken" | "refreshToken" | "accessTokenExpiresAt" | "refreshTokenExpiresAt" | "clientId" | "scopes") | "_id";
indexes: {
accessToken: ["accessToken", "_creationTime"];
refreshToken: ["refreshToken", "_creationTime"];
by_id: ["_id"];
by_creation_time: ["_creationTime"];
};
searchIndexes: {};
vectorIndexes: {};
};
oauthConsent: {
document: {
_id: import("convex/values").GenericId<"oauthConsent">;
_creationTime: number;
createdAt?: number | null | undefined;
updatedAt?: number | null | undefined;
userId?: string | null | undefined;
clientId?: string | null | undefined;
scopes?: string | null | undefined;
consentGiven?: boolean | null | undefined;
};
fieldPaths: ("createdAt" | "updatedAt" | "userId" | "_creationTime" | "clientId" | "scopes" | "consentGiven") | "_id";
indexes: {
clientId_userId: ["clientId", "userId", "_creationTime"];
by_id: ["_id"];
by_creation_time: ["_creationTime"];
};
searchIndexes: {};
vectorIndexes: {};
};
organization: {
document: {
_id: import("convex/values").GenericId<"organization">;
_creationTime: number;
metadata?: string | null | undefined;
slug?: string | null | undefined;
logo?: string | null | undefined;
name: string;
createdAt: number;
};
fieldPaths: ("name" | "createdAt" | "_creationTime" | "metadata" | "slug" | "logo") | "_id";
indexes: {
name: ["name", "_creationTime"];
slug: ["slug", "_creationTime"];
by_id: ["_id"];
by_creation_time: ["_creationTime"];
};
searchIndexes: {};
vectorIndexes: {};
};
member: {
document: {
_id: import("convex/values").GenericId<"member">;
_creationTime: number;
createdAt: number;
role: string;
userId: string;
organizationId: string;
};
fieldPaths: ("createdAt" | "role" | "userId" | "_creationTime" | "organizationId") | "_id";
indexes: {
organizationId_userId: ["organizationId", "userId", "_creationTime"];
userId: ["userId", "_creationTime"];
role: ["role", "_creationTime"];
by_id: ["_id"];
by_creation_time: ["_creationTime"];
};
searchIndexes: {};
vectorIndexes: {};
};
invitation: {
document: {
_id: import("convex/values").GenericId<"invitation">;
_creationTime: number;
role?: string | null | undefined;
teamId?: string | null | undefined;
email: string;
expiresAt: number;
organizationId: string;
status: string;
inviterId: string;
};
fieldPaths: ("email" | "role" | "teamId" | "_creationTime" | "expiresAt" | "organizationId" | "status" | "inviterId") | "_id";
indexes: {
email_organizationId_status: ["email", "organizationId", "status", "_creationTime"];
organizationId_status: ["organizationId", "status", "_creationTime"];
role: ["role", "_creationTime"];
teamId: ["teamId", "_creationTime"];
status: ["status", "_creationTime"];
inviterId: ["inviterId", "_creationTime"];
by_id: ["_id"];
by_creation_time: ["_creationTime"];
};
searchIndexes: {};
vectorIndexes: {};
};
team: {
document: {
_id: import("convex/values").GenericId<"team">;
_creationTime: number;
updatedAt?: number | null | undefined;
name: string;
createdAt: number;
organizationId: string;
};
fieldPaths: ("name" | "createdAt" | "updatedAt" | "_creationTime" | "organizationId") | "_id";
indexes: {
organizationId: ["organizationId", "_creationTime"];
by_id: ["_id"];
by_creation_time: ["_creationTime"];
};
searchIndexes: {};
vectorIndexes: {};
};
teamMember: {
document: {
_id: import("convex/values").GenericId<"teamMember">;
_creationTime: number;
createdAt?: number | null | undefined;
userId: string;
teamId: string;
};
fieldPaths: ("createdAt" | "userId" | "teamId" | "_creationTime") | "_id";
indexes: {
userId: ["userId", "_creationTime"];
by_id: ["_id"];
by_creation_time: ["_creationTime"];
};
searchIndexes: {};
vectorIndexes: {};
};
ssoProvider: {
document: {
_id: import("convex/values").GenericId<"ssoProvider">;
_creationTime: number;
userId?: string | null | undefined;
organizationId?: string | null | undefined;
oidcConfig?: string | null | undefined;
samlConfig?: string | null | undefined;
providerId: string;
issuer: string;
domain: string;
};
fieldPaths: ("userId" | "_creationTime" | "providerId" | "organizationId" | "issuer" | "oidcConfig" | "samlConfig" | "domain") | "_id";
indexes: {
organizationId: ["organizationId", "_creationTime"];
domain: ["domain", "_creationTime"];
userId: ["userId", "_creationTime"];
providerId: ["providerId", "_creationTime"];
by_id: ["_id"];
by_creation_time: ["_creationTime"];
};
searchIndexes: {};
vectorIndexes: {};
};
jwks: {
document: {
_id: import("convex/values").GenericId<"jwks">;
_creationTime: number;
createdAt: number;
publicKey: string;
privateKey: string;
};
fieldPaths: "_id" | ("createdAt" | "_creationTime" | "publicKey" | "privateKey");
indexes: {
by_id: ["_id"];
by_creation_time: ["_creationTime"];
};
searchIndexes: {};
vectorIndexes: {};
};
subscription: {
document: {
_id: import("convex/values").GenericId<"subscription">;
_creationTime: number;
stripeCustomerId?: string | null | undefined;
status?: string | null | undefined;
stripeSubscriptionId?: string | null | undefined;
periodStart?: number | null | undefined;
periodEnd?: number | null | undefined;
cancelAtPeriodEnd?: boolean | null | undefined;
seats?: number | null | undefined;
plan: string;
referenceId: string;
};
fieldPaths: ("stripeCustomerId" | "_creationTime" | "status" | "plan" | "referenceId" | "stripeSubscriptionId" | "periodStart" | "periodEnd" | "cancelAtPeriodEnd" | "seats") | "_id";
indexes: {
stripeSubscriptionId: ["stripeSubscriptionId", "_creationTime"];
stripeCustomerId: ["stripeCustomerId", "_creationTime"];
referenceId: ["referenceId", "_creationTime"];
by_id: ["_id"];
by_creation_time: ["_creationTime"];
};
searchIndexes: {};
vectorIndexes: {};
};
walletAddress: {
document: {
_id: import("convex/values").GenericId<"walletAddress">;
_creationTime: number;
isPrimary?: boolean | null | undefined;
createdAt: number;
userId: string;
address: string;
chainId: number;
};
fieldPaths: ("createdAt" | "userId" | "_creationTime" | "address" | "chainId" | "isPrimary") | "_id";
indexes: {
userId: ["userId", "_creationTime"];
by_id: ["_id"];
by_creation_time: ["_creationTime"];
};
searchIndexes: {};
vectorIndexes: {};
};
rateLimit: {
document: {
_id: import("convex/values").GenericId<"rateLimit">;
_creationTime: number;
key?: string | null | undefined;
lastRequest?: number | null | undefined;
count?: number | null | undefined;
};
fieldPaths: ("_creationTime" | "key" | "lastRequest" | "count") | "_id";
indexes: {
key: ["key", "_creationTime"];
by_id: ["_id"];
by_creation_time: ["_creationTime"];
};
searchIndexes: {};
vectorIndexes: {};
};
}>>(tableName: TableName) => import("convex-helpers/validators").AddFieldsToValidator<{
user: import("convex/server").TableDefinition<import("convex/values").VObject<{
image?: string | null | undefined;
twoFactorEnabled?: boolean | null | undefined;
isAnonymous?: boolean | null | undefined;
username?: string | null | undefined;
displayUsername?: string | null | undefined;
phoneNumber?: string | null | undefined;
phoneNumberVerified?: boolean | null | undefined;
role?: string | null | undefined;
banned?: boolean | null | undefined;
banReason?: string | null | undefined;
banExpires?: number | null | undefined;
stripeCustomerId?: string | null | undefined;
userId?: string | null | undefined;
teamId?: string | null | undefined;
name: string;
email: string;
emailVerified: boolean;
createdAt: number;
updatedAt: number;
}, {
name: import("convex/values").VString<string, "required">;
email: import("convex/values").VString<string, "required">;
emailVerified: import("convex/values").VBoolean<boolean, "required">;
image: import("convex/values").VUnion<string | null | undefined, [import("convex/values").VNull<null, "required">, import("convex/values").VString<string, "required">], "optional", never>;
createdAt: import("convex/values").VFloat64<number, "required">;
updatedAt: import("convex/values").VFloat64<number, "required">;
twoFactorEnabled: import("convex/values").VUnion<boolean | null | undefined, [import("convex/values").VNull<null, "required">, import("convex/values").VBoolean<boolean, "required">], "optional", never>;
isAnonymous: import("convex/values").VUnion<boolean | null | undefined, [import("convex/values").VNull<null, "required">, import("convex/values").VBoolean<boolean, "required">], "optional", never>;
username: import("convex/values").VUnion<string | null | undefined, [import("convex/values").VNull<null, "required">, import("convex/values").VString<string, "required">], "optional", never>;
displayUsername: import("convex/values").VUnion<string | null | undefined, [import("convex/values").VNull<null, "required">, import("convex/values").VString<string, "required">], "optional", never>;
phoneNumber: import("convex/values").VUnion<string | null | undefined, [import("convex/values").VNull<null, "required">, import("convex/values").VString<string, "required">], "optional", never>;
phoneNumberVerified: import("convex/values").VUnion<boolean | null | undefined, [import("convex/values").VNull<null, "required">, import("convex/values").VBoolean<boolean, "required">], "optional", never>;
role: import("convex/values").VUnion<string | null | undefined, [import("convex/values").VNull<null, "required">, import("convex/values").VString<string, "required">], "optional", never>;
banned: import("convex/values").VUnion<boolean | null | undefined, [import("convex/values").VNull<null, "required">, import("convex/values").VBoolean<boolean, "required">], "optional", never>;
banReason: import("convex/values").VUnion<string | null | undefined, [import("convex/values").VNull<null, "required">, import("convex/values").VString<string, "required">], "optional", never>;
banExpires: import("convex/values").VUnion<number | null | undefined, [import("convex/values").VNull<null, "required">, import("convex/values").VFloat64<number, "required">], "optional", never>;
stripeCustomerId: import("convex/values").VUnion<string | null | undefined, [import("convex/values").VNull<null, "required">, import("convex/values").VString<string, "required">], "optional", never>;
userId: import("convex/values").VUnion<string | null | undefined, [import("convex/values").VNull<null, "required">, import("convex/values").VString<string, "required">], "optional", never>;
teamId: import("convex/values").VUnion<string | null | undefined, [import("convex/values").VNull<null, "required">, import("convex/values").VString<string, "required">], "optional", never>;
}, "required", "name" | "email" | "emailVerified" | "image" | "createdAt" | "updatedAt" | "twoFactorEnabled" | "isAnonymous" | "username" | "displayUsername" | "phoneNumber" | "phoneNumberVerified" | "role" | "banned" | "banReason" | "banExpires" | "stripeCustomerId" | "userId" | "teamId">, {
email_name: ["email", "name", "_creationTime"];
name: ["name", "_creationTime"];
userId: ["userId", "_creationTime"];
username: ["username", "_creationTime"];
phoneNumber: ["phoneNumber", "_creationTime"];
}, {}, {}>;
session: import("convex/server").TableDefinition<import("convex/values").VObject<{
ipAddress?: string | null | undefined;
userAgent?: string | null | undefined;
impersonatedBy?: string | null | undefined;
activeOrganizationId?: string | null | undefined;
activeTeamId?: string | null | undefined;
createdAt: number;
updatedAt: number;
userId: string;
expiresAt: number;
token: string;
}, {
expiresAt: import("convex/values").VFloat64<number, "required">;
token: import("convex/values").VString<string, "required">;
createdAt: import("convex/values").VFloat64<number, "required">;
updatedAt: import("convex/values").VFloat64<number, "required">;
ipAddress: import("convex/values").VUnion<string | null | undefined, [import("convex/values").VNull<null, "required">, import("convex/values").VString<string, "required">], "optional", never>;
userAgent: import("convex/values").VUnion<string | null | undefined, [import("convex/values").VNull<null, "required">, import("convex/values").VString<string, "required">], "optional", never>;
userId: import("convex/values").VString<string, "required">;
impersonatedBy: import("convex/values").VUnion<string | null | undefined, [import("convex/values").VNull<null, "required">, import("convex/values").VString<string, "required">], "optional", never>;
activeOrganizationId: import("convex/values").VUnion<string | null | undefined, [import("convex/values").VNull<null, "required">, import("convex/values").VString<string, "required">], "optional", never>;
activeTeamId: import("convex/values").VUnion<string | null | undefined, [import("convex/values").VNull<null, "required">, import("convex/values").VString<string, "required">], "optional", never>;
}, "required", "createdAt" | "updatedAt" | "userId" | "expiresAt" | "token" | "ipAddress" | "userAgent" | "impersonatedBy" | "activeOrganizationId" | "activeTeamId">, {
expiresAt: ["expiresAt", "_creationTime"];
expiresAt_userId: ["expiresAt", "userId", "_creationTime"];
token: ["token", "_creationTime"];
userId: ["userId", "_creationTime"];
}, {}, {}>;
account: import("convex/server").TableDefinition<import("convex/values").VObject<{
accessToken?: string | null | undefined;
refreshToken?: string | null | undefined;
idToken?: string | null | undefined;
accessTokenExpiresAt?: number | null | undefined;
refreshTokenExpiresAt?: number | null | undefined;
scope?: string | null | undefined;
password?: string | null | undefined;
createdAt: number;
updatedAt: number;
userId: string;
accountId: string;
providerId: string;
}, {
accountId: import("convex/values").VString<string, "required">;
providerId: import("convex/values").VString<string, "required">;
userId: import("convex/values").VString<string, "required">;
accessToken: import("convex/values").VUnion<string | null | undefined, [import("convex/values").VNull<null, "required">, import("convex/values").VString<string, "required">],