@coursebuilder/adapter-drizzle
Version:
Drizzle adapter for Course Builder.
1,306 lines (1,304 loc) • 520 kB
TypeScript
import * as drizzle_orm from 'drizzle-orm';
import * as _auth_core_adapters from '@auth/core/adapters';
import * as drizzle_orm_mysql_core from 'drizzle-orm/mysql-core';
import { MySqlTableFn, MySqlDatabase } from 'drizzle-orm/mysql-core';
import { CourseBuilderAdapter } from '@coursebuilder/core/adapters';
import { PaymentsProviderConfig } from '@coursebuilder/core/types';
declare const guid: (size?: number | undefined) => string;
declare function getCourseBuilderSchema(mysqlTable: MySqlTableFn): {
readonly accounts: drizzle_orm_mysql_core.MySqlTableWithColumns<{
name: "Account";
schema: undefined;
columns: {
userId: drizzle_orm_mysql_core.MySqlColumn<{
name: "userId";
tableName: "Account";
dataType: "string";
columnType: "MySqlVarChar";
data: string;
driverParam: string | number;
notNull: true;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
generated: undefined;
}, object>;
type: drizzle_orm_mysql_core.MySqlColumn<{
name: "type";
tableName: "Account";
dataType: "string";
columnType: "MySqlVarChar";
data: _auth_core_adapters.AdapterAccountType;
driverParam: string | number;
notNull: true;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
generated: undefined;
}, object>;
provider: drizzle_orm_mysql_core.MySqlColumn<{
name: "provider";
tableName: "Account";
dataType: "string";
columnType: "MySqlVarChar";
data: string;
driverParam: string | number;
notNull: true;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
generated: undefined;
}, object>;
providerAccountId: drizzle_orm_mysql_core.MySqlColumn<{
name: "providerAccountId";
tableName: "Account";
dataType: "string";
columnType: "MySqlVarChar";
data: string;
driverParam: string | number;
notNull: true;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
generated: undefined;
}, object>;
refresh_token: drizzle_orm_mysql_core.MySqlColumn<{
name: "refresh_token";
tableName: "Account";
dataType: "string";
columnType: "MySqlText";
data: string;
driverParam: string;
notNull: false;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
generated: undefined;
}, object>;
access_token: drizzle_orm_mysql_core.MySqlColumn<{
name: "access_token";
tableName: "Account";
dataType: "string";
columnType: "MySqlText";
data: string;
driverParam: string;
notNull: false;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
generated: undefined;
}, object>;
oauth_token: drizzle_orm_mysql_core.MySqlColumn<{
name: "oauth_token";
tableName: "Account";
dataType: "string";
columnType: "MySqlText";
data: string;
driverParam: string;
notNull: false;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
generated: undefined;
}, object>;
oauth_token_secret: drizzle_orm_mysql_core.MySqlColumn<{
name: "oauth_token_secret";
tableName: "Account";
dataType: "string";
columnType: "MySqlText";
data: string;
driverParam: string;
notNull: false;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
generated: undefined;
}, object>;
expires_at: drizzle_orm_mysql_core.MySqlColumn<{
name: "expires_at";
tableName: "Account";
dataType: "number";
columnType: "MySqlInt";
data: number;
driverParam: string | number;
notNull: false;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
generated: undefined;
}, object>;
token_type: drizzle_orm_mysql_core.MySqlColumn<{
name: "token_type";
tableName: "Account";
dataType: "string";
columnType: "MySqlVarChar";
data: string;
driverParam: string | number;
notNull: false;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
generated: undefined;
}, object>;
scope: drizzle_orm_mysql_core.MySqlColumn<{
name: "scope";
tableName: "Account";
dataType: "string";
columnType: "MySqlVarChar";
data: string;
driverParam: string | number;
notNull: false;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
generated: undefined;
}, object>;
id_token: drizzle_orm_mysql_core.MySqlColumn<{
name: "id_token";
tableName: "Account";
dataType: "string";
columnType: "MySqlText";
data: string;
driverParam: string;
notNull: false;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
generated: undefined;
}, object>;
session_state: drizzle_orm_mysql_core.MySqlColumn<{
name: "session_state";
tableName: "Account";
dataType: "string";
columnType: "MySqlVarChar";
data: string;
driverParam: string | number;
notNull: false;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
generated: undefined;
}, object>;
refresh_token_expires_in: drizzle_orm_mysql_core.MySqlColumn<{
name: "refresh_token_expires_in";
tableName: "Account";
dataType: "number";
columnType: "MySqlInt";
data: number;
driverParam: string | number;
notNull: false;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
generated: undefined;
}, object>;
};
dialect: "mysql";
}>;
readonly accountsRelations: drizzle_orm.Relations<"Account", {
user: drizzle_orm.One<"User", true>;
}>;
readonly permissions: drizzle_orm_mysql_core.MySqlTableWithColumns<{
name: "Permission";
schema: undefined;
columns: {
id: drizzle_orm_mysql_core.MySqlColumn<{
name: "id";
tableName: "Permission";
dataType: "string";
columnType: "MySqlVarChar";
data: string;
driverParam: string | number;
notNull: true;
hasDefault: false;
isPrimaryKey: true;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
generated: undefined;
}, object>;
name: drizzle_orm_mysql_core.MySqlColumn<{
name: "name";
tableName: "Permission";
dataType: "string";
columnType: "MySqlVarChar";
data: string;
driverParam: string | number;
notNull: true;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
generated: undefined;
}, object>;
description: drizzle_orm_mysql_core.MySqlColumn<{
name: "description";
tableName: "Permission";
dataType: "string";
columnType: "MySqlText";
data: string;
driverParam: string;
notNull: false;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
generated: undefined;
}, object>;
active: drizzle_orm_mysql_core.MySqlColumn<{
name: "active";
tableName: "Permission";
dataType: "boolean";
columnType: "MySqlBoolean";
data: boolean;
driverParam: number | boolean;
notNull: true;
hasDefault: true;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
generated: undefined;
}, object>;
createdAt: drizzle_orm_mysql_core.MySqlColumn<{
name: "createdAt";
tableName: "Permission";
dataType: "date";
columnType: "MySqlTimestamp";
data: Date;
driverParam: string | number;
notNull: false;
hasDefault: true;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
generated: undefined;
}, object>;
updatedAt: drizzle_orm_mysql_core.MySqlColumn<{
name: "updatedAt";
tableName: "Permission";
dataType: "date";
columnType: "MySqlTimestamp";
data: Date;
driverParam: string | number;
notNull: false;
hasDefault: true;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
generated: undefined;
}, object>;
deletedAt: drizzle_orm_mysql_core.MySqlColumn<{
name: "deletedAt";
tableName: "Permission";
dataType: "date";
columnType: "MySqlTimestamp";
data: Date;
driverParam: string | number;
notNull: false;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
generated: undefined;
}, object>;
};
dialect: "mysql";
}>;
readonly permissionsRelations: drizzle_orm.Relations<"Permission", {}>;
readonly rolePermissions: drizzle_orm_mysql_core.MySqlTableWithColumns<{
name: "RolePermission";
schema: undefined;
columns: {
roleId: drizzle_orm_mysql_core.MySqlColumn<{
name: "roleId";
tableName: "RolePermission";
dataType: "string";
columnType: "MySqlVarChar";
data: string;
driverParam: string | number;
notNull: true;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
generated: undefined;
}, object>;
permissionId: drizzle_orm_mysql_core.MySqlColumn<{
name: "permissionId";
tableName: "RolePermission";
dataType: "string";
columnType: "MySqlVarChar";
data: string;
driverParam: string | number;
notNull: true;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
generated: undefined;
}, object>;
active: drizzle_orm_mysql_core.MySqlColumn<{
name: "active";
tableName: "RolePermission";
dataType: "boolean";
columnType: "MySqlBoolean";
data: boolean;
driverParam: number | boolean;
notNull: true;
hasDefault: true;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
generated: undefined;
}, object>;
createdAt: drizzle_orm_mysql_core.MySqlColumn<{
name: "createdAt";
tableName: "RolePermission";
dataType: "date";
columnType: "MySqlTimestamp";
data: Date;
driverParam: string | number;
notNull: false;
hasDefault: true;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
generated: undefined;
}, object>;
updatedAt: drizzle_orm_mysql_core.MySqlColumn<{
name: "updatedAt";
tableName: "RolePermission";
dataType: "date";
columnType: "MySqlTimestamp";
data: Date;
driverParam: string | number;
notNull: false;
hasDefault: true;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
generated: undefined;
}, object>;
deletedAt: drizzle_orm_mysql_core.MySqlColumn<{
name: "deletedAt";
tableName: "RolePermission";
dataType: "date";
columnType: "MySqlTimestamp";
data: Date;
driverParam: string | number;
notNull: false;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
generated: undefined;
}, object>;
};
dialect: "mysql";
}>;
readonly rolePermissionsRelations: drizzle_orm.Relations<"RolePermission", {
role: drizzle_orm.One<"Role", true>;
permission: drizzle_orm.One<"Permission", true>;
}>;
readonly roles: drizzle_orm_mysql_core.MySqlTableWithColumns<{
name: "Role";
schema: undefined;
columns: {
id: drizzle_orm_mysql_core.MySqlColumn<{
name: "id";
tableName: "Role";
dataType: "string";
columnType: "MySqlVarChar";
data: string;
driverParam: string | number;
notNull: true;
hasDefault: false;
isPrimaryKey: true;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
generated: undefined;
}, object>;
organizationId: drizzle_orm_mysql_core.MySqlColumn<{
name: "organizationId";
tableName: "Role";
dataType: "string";
columnType: "MySqlVarChar";
data: string;
driverParam: string | number;
notNull: false;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
generated: undefined;
}, object>;
name: drizzle_orm_mysql_core.MySqlColumn<{
name: "name";
tableName: "Role";
dataType: "string";
columnType: "MySqlVarChar";
data: string;
driverParam: string | number;
notNull: true;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
generated: undefined;
}, object>;
description: drizzle_orm_mysql_core.MySqlColumn<{
name: "description";
tableName: "Role";
dataType: "string";
columnType: "MySqlText";
data: string;
driverParam: string;
notNull: false;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
generated: undefined;
}, object>;
active: drizzle_orm_mysql_core.MySqlColumn<{
name: "active";
tableName: "Role";
dataType: "boolean";
columnType: "MySqlBoolean";
data: boolean;
driverParam: number | boolean;
notNull: true;
hasDefault: true;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
generated: undefined;
}, object>;
createdAt: drizzle_orm_mysql_core.MySqlColumn<{
name: "createdAt";
tableName: "Role";
dataType: "date";
columnType: "MySqlTimestamp";
data: Date;
driverParam: string | number;
notNull: false;
hasDefault: true;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
generated: undefined;
}, object>;
updatedAt: drizzle_orm_mysql_core.MySqlColumn<{
name: "updatedAt";
tableName: "Role";
dataType: "date";
columnType: "MySqlTimestamp";
data: Date;
driverParam: string | number;
notNull: false;
hasDefault: true;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
generated: undefined;
}, object>;
deletedAt: drizzle_orm_mysql_core.MySqlColumn<{
name: "deletedAt";
tableName: "Role";
dataType: "date";
columnType: "MySqlTimestamp";
data: Date;
driverParam: string | number;
notNull: false;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
generated: undefined;
}, object>;
};
dialect: "mysql";
}>;
readonly rolesRelations: drizzle_orm.Relations<"Role", {
userRoles: drizzle_orm.Many<"UserRole">;
}>;
readonly sessions: drizzle_orm_mysql_core.MySqlTableWithColumns<{
name: "Session";
schema: undefined;
columns: {
sessionToken: drizzle_orm_mysql_core.MySqlColumn<{
name: "sessionToken";
tableName: "Session";
dataType: "string";
columnType: "MySqlVarChar";
data: string;
driverParam: string | number;
notNull: true;
hasDefault: false;
isPrimaryKey: true;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
generated: undefined;
}, object>;
userId: drizzle_orm_mysql_core.MySqlColumn<{
name: "userId";
tableName: "Session";
dataType: "string";
columnType: "MySqlVarChar";
data: string;
driverParam: string | number;
notNull: true;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
generated: undefined;
}, object>;
expires: drizzle_orm_mysql_core.MySqlColumn<{
name: "expires";
tableName: "Session";
dataType: "date";
columnType: "MySqlTimestamp";
data: Date;
driverParam: string | number;
notNull: true;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
generated: undefined;
}, object>;
};
dialect: "mysql";
}>;
readonly sessionsRelations: drizzle_orm.Relations<"Session", {
user: drizzle_orm.One<"User", true>;
}>;
readonly userPermissions: drizzle_orm_mysql_core.MySqlTableWithColumns<{
name: "UserPermission";
schema: undefined;
columns: {
userId: drizzle_orm_mysql_core.MySqlColumn<{
name: "userId";
tableName: "UserPermission";
dataType: "string";
columnType: "MySqlVarChar";
data: string;
driverParam: string | number;
notNull: true;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
generated: undefined;
}, object>;
organizationId: drizzle_orm_mysql_core.MySqlColumn<{
name: "organizationId";
tableName: "UserPermission";
dataType: "string";
columnType: "MySqlVarChar";
data: string;
driverParam: string | number;
notNull: false;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
generated: undefined;
}, object>;
permissionId: drizzle_orm_mysql_core.MySqlColumn<{
name: "permissionId";
tableName: "UserPermission";
dataType: "string";
columnType: "MySqlVarChar";
data: string;
driverParam: string | number;
notNull: true;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
generated: undefined;
}, object>;
active: drizzle_orm_mysql_core.MySqlColumn<{
name: "active";
tableName: "UserPermission";
dataType: "boolean";
columnType: "MySqlBoolean";
data: boolean;
driverParam: number | boolean;
notNull: true;
hasDefault: true;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
generated: undefined;
}, object>;
createdAt: drizzle_orm_mysql_core.MySqlColumn<{
name: "createdAt";
tableName: "UserPermission";
dataType: "date";
columnType: "MySqlTimestamp";
data: Date;
driverParam: string | number;
notNull: false;
hasDefault: true;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
generated: undefined;
}, object>;
updatedAt: drizzle_orm_mysql_core.MySqlColumn<{
name: "updatedAt";
tableName: "UserPermission";
dataType: "date";
columnType: "MySqlTimestamp";
data: Date;
driverParam: string | number;
notNull: false;
hasDefault: true;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
generated: undefined;
}, object>;
deletedAt: drizzle_orm_mysql_core.MySqlColumn<{
name: "deletedAt";
tableName: "UserPermission";
dataType: "date";
columnType: "MySqlTimestamp";
data: Date;
driverParam: string | number;
notNull: false;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
generated: undefined;
}, object>;
};
dialect: "mysql";
}>;
readonly userPermissionsRelations: drizzle_orm.Relations<"UserPermission", {
user: drizzle_orm.One<"User", true>;
permission: drizzle_orm.One<"Permission", true>;
}>;
readonly userRoles: drizzle_orm_mysql_core.MySqlTableWithColumns<{
name: "UserRole";
schema: undefined;
columns: {
userId: drizzle_orm_mysql_core.MySqlColumn<{
name: "userId";
tableName: "UserRole";
dataType: "string";
columnType: "MySqlVarChar";
data: string;
driverParam: string | number;
notNull: true;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
generated: undefined;
}, object>;
roleId: drizzle_orm_mysql_core.MySqlColumn<{
name: "roleId";
tableName: "UserRole";
dataType: "string";
columnType: "MySqlVarChar";
data: string;
driverParam: string | number;
notNull: true;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
generated: undefined;
}, object>;
active: drizzle_orm_mysql_core.MySqlColumn<{
name: "active";
tableName: "UserRole";
dataType: "boolean";
columnType: "MySqlBoolean";
data: boolean;
driverParam: number | boolean;
notNull: true;
hasDefault: true;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
generated: undefined;
}, object>;
organizationId: drizzle_orm_mysql_core.MySqlColumn<{
name: "organizationId";
tableName: "UserRole";
dataType: "string";
columnType: "MySqlVarChar";
data: string;
driverParam: string | number;
notNull: false;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
generated: undefined;
}, object>;
createdAt: drizzle_orm_mysql_core.MySqlColumn<{
name: "createdAt";
tableName: "UserRole";
dataType: "date";
columnType: "MySqlTimestamp";
data: Date;
driverParam: string | number;
notNull: false;
hasDefault: true;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
generated: undefined;
}, object>;
updatedAt: drizzle_orm_mysql_core.MySqlColumn<{
name: "updatedAt";
tableName: "UserRole";
dataType: "date";
columnType: "MySqlTimestamp";
data: Date;
driverParam: string | number;
notNull: false;
hasDefault: true;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
generated: undefined;
}, object>;
deletedAt: drizzle_orm_mysql_core.MySqlColumn<{
name: "deletedAt";
tableName: "UserRole";
dataType: "date";
columnType: "MySqlTimestamp";
data: Date;
driverParam: string | number;
notNull: false;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
generated: undefined;
}, object>;
};
dialect: "mysql";
}>;
readonly userRolesRelations: drizzle_orm.Relations<"UserRole", {
user: drizzle_orm.One<"User", true>;
role: drizzle_orm.One<"Role", true>;
}>;
readonly users: drizzle_orm_mysql_core.MySqlTableWithColumns<{
name: "User";
schema: undefined;
columns: {
id: drizzle_orm_mysql_core.MySqlColumn<{
name: "id";
tableName: "User";
dataType: "string";
columnType: "MySqlVarChar";
data: string;
driverParam: string | number;
notNull: true;
hasDefault: false;
isPrimaryKey: true;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
generated: undefined;
}, object>;
name: drizzle_orm_mysql_core.MySqlColumn<{
name: "name";
tableName: "User";
dataType: "string";
columnType: "MySqlVarChar";
data: string;
driverParam: string | number;
notNull: false;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
generated: undefined;
}, object>;
role: drizzle_orm_mysql_core.MySqlColumn<{
name: "role";
tableName: "User";
dataType: "string";
columnType: "MySqlVarChar";
data: string;
driverParam: string | number;
notNull: true;
hasDefault: true;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
generated: undefined;
}, object>;
email: drizzle_orm_mysql_core.MySqlColumn<{
name: "email";
tableName: "User";
dataType: "string";
columnType: "MySqlVarChar";
data: string;
driverParam: string | number;
notNull: true;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
generated: undefined;
}, object>;
fields: drizzle_orm_mysql_core.MySqlColumn<{
name: "fields";
tableName: "User";
dataType: "json";
columnType: "MySqlJson";
data: Record<string, any>;
driverParam: string;
notNull: false;
hasDefault: true;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
generated: undefined;
}, object>;
emailVerified: drizzle_orm_mysql_core.MySqlColumn<{
name: "emailVerified";
tableName: "User";
dataType: "date";
columnType: "MySqlTimestamp";
data: Date;
driverParam: string | number;
notNull: false;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
generated: undefined;
}, object>;
image: drizzle_orm_mysql_core.MySqlColumn<{
name: "image";
tableName: "User";
dataType: "string";
columnType: "MySqlVarChar";
data: string;
driverParam: string | number;
notNull: false;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
generated: undefined;
}, object>;
createdAt: drizzle_orm_mysql_core.MySqlColumn<{
name: "createdAt";
tableName: "User";
dataType: "date";
columnType: "MySqlTimestamp";
data: Date;
driverParam: string | number;
notNull: false;
hasDefault: true;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
generated: undefined;
}, object>;
};
dialect: "mysql";
}>;
readonly usersRelations: drizzle_orm.Relations<"User", {
profiles: drizzle_orm.Many<"Profile">;
accounts: drizzle_orm.Many<"Account">;
purchases: drizzle_orm.Many<"Purchase">;
communicationPreferences: drizzle_orm.Many<"CommunicationPreference">;
roles: drizzle_orm.Many<"UserRole">;
userPermissions: drizzle_orm.Many<"UserPermission">;
contributions: drizzle_orm.Many<"ContentContribution">;
createdContent: drizzle_orm.Many<"ContentResource">;
comments: drizzle_orm.Many<"Comment">;
prefs: drizzle_orm.Many<"UserPrefs">;
organizationMemberships: drizzle_orm.Many<"OrganizationMembership">;
}>;
readonly verificationTokens: drizzle_orm_mysql_core.MySqlTableWithColumns<{
name: "VerificationToken";
schema: undefined;
columns: {
identifier: drizzle_orm_mysql_core.MySqlColumn<{
name: "identifier";
tableName: "VerificationToken";
dataType: "string";
columnType: "MySqlVarChar";
data: string;
driverParam: string | number;
notNull: true;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
generated: undefined;
}, object>;
token: drizzle_orm_mysql_core.MySqlColumn<{
name: "token";
tableName: "VerificationToken";
dataType: "string";
columnType: "MySqlVarChar";
data: string;
driverParam: string | number;
notNull: true;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
generated: undefined;
}, object>;
expires: drizzle_orm_mysql_core.MySqlColumn<{
name: "expires";
tableName: "VerificationToken";
dataType: "date";
columnType: "MySqlTimestamp";
data: Date;
driverParam: string | number;
notNull: true;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
generated: undefined;
}, object>;
createdAt: drizzle_orm_mysql_core.MySqlColumn<{
name: "createdAt";
tableName: "VerificationToken";
dataType: "date";
columnType: "MySqlTimestamp";
data: Date;
driverParam: string | number;
notNull: false;
hasDefault: true;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
generated: undefined;
}, object>;
};
dialect: "mysql";
}>;
readonly coupon: drizzle_orm_mysql_core.MySqlTableWithColumns<{
name: "Coupon";
schema: undefined;
columns: {
id: drizzle_orm_mysql_core.MySqlColumn<{
name: "id";
tableName: "Coupon";
dataType: "string";
columnType: "MySqlVarChar";
data: string;
driverParam: string | number;
notNull: true;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
generated: undefined;
}, object>;
organizationId: drizzle_orm_mysql_core.MySqlColumn<{
name: "organizationId";
tableName: "Coupon";
dataType: "string";
columnType: "MySqlVarChar";
data: string;
driverParam: string | number;
notNull: false;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
generated: undefined;
}, object>;
code: drizzle_orm_mysql_core.MySqlColumn<{
name: "code";
tableName: "Coupon";
dataType: "string";
columnType: "MySqlVarChar";
data: string;
driverParam: string | number;
notNull: false;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
generated: undefined;
}, object>;
createdAt: drizzle_orm_mysql_core.MySqlColumn<{
name: "createdAt";
tableName: "Coupon";
dataType: "date";
columnType: "MySqlTimestamp";
data: Date;
driverParam: string | number;
notNull: true;
hasDefault: true;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
generated: undefined;
}, object>;
expires: drizzle_orm_mysql_core.MySqlColumn<{
name: "expires";
tableName: "Coupon";
dataType: "date";
columnType: "MySqlTimestamp";
data: Date;
driverParam: string | number;
notNull: false;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
generated: undefined;
}, object>;
fields: drizzle_orm_mysql_core.MySqlColumn<{
name: "fields";
tableName: "Coupon";
dataType: "json";
columnType: "MySqlJson";
data: Record<string, any>;
driverParam: string;
notNull: false;
hasDefault: true;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
generated: undefined;
}, object>;
maxUses: drizzle_orm_mysql_core.MySqlColumn<{
name: "maxUses";
tableName: "Coupon";
dataType: "number";
columnType: "MySqlInt";
data: number;
driverParam: string | number;
notNull: true;
hasDefault: true;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
generated: undefined;
}, object>;
default: drizzle_orm_mysql_core.MySqlColumn<{
name: "default";
tableName: "Coupon";
dataType: "boolean";
columnType: "MySqlBoolean";
data: boolean;
driverParam: number | boolean;
notNull: true;
hasDefault: true;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
generated: undefined;
}, object>;
merchantCouponId: drizzle_orm_mysql_core.MySqlColumn<{
name: "merchantCouponId";
tableName: "Coupon";
dataType: "string";
columnType: "MySqlVarChar";
data: string;
driverParam: string | number;
notNull: false;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
generated: undefined;
}, object>;
status: drizzle_orm_mysql_core.MySqlColumn<{
name: "status";
tableName: "Coupon";
dataType: "number";
columnType: "MySqlInt";
data: number;
driverParam: string | number;
notNull: true;
hasDefault: true;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
generated: undefined;
}, object>;
usedCount: drizzle_orm_mysql_core.MySqlColumn<{
name: "usedCount";
tableName: "Coupon";
dataType: "number";
columnType: "MySqlInt";
data: number;
driverParam: string | number;
notNull: true;
hasDefault: true;
isPrimaryKey: false;