@coursebuilder/adapter-drizzle
Version:
Drizzle adapter for Course Builder.
228 lines (225 loc) • 8.32 kB
text/typescript
import * as drizzle_orm from 'drizzle-orm';
import * as drizzle_orm_mysql_core from 'drizzle-orm/mysql-core';
import { MySqlTableFn } from 'drizzle-orm/mysql-core';
declare function getCommunicationPreferencesSchema(mysqlTable: MySqlTableFn): drizzle_orm_mysql_core.MySqlTableWithColumns<{
name: "CommunicationPreference";
schema: undefined;
columns: {
id: drizzle_orm_mysql_core.MySqlColumn<{
name: "id";
tableName: "CommunicationPreference";
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: "CommunicationPreference";
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>;
userId: drizzle_orm_mysql_core.MySqlColumn<{
name: "userId";
tableName: "CommunicationPreference";
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>;
organizationMembershipId: drizzle_orm_mysql_core.MySqlColumn<{
name: "organizationMembershipId";
tableName: "CommunicationPreference";
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>;
channelId: drizzle_orm_mysql_core.MySqlColumn<{
name: "channelId";
tableName: "CommunicationPreference";
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>;
preferenceLevel: drizzle_orm_mysql_core.MySqlColumn<{
name: "preferenceLevel";
tableName: "CommunicationPreference";
dataType: "string";
columnType: "MySqlEnumColumn";
data: "low" | "medium" | "high";
driverParam: string;
notNull: true;
hasDefault: true;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: ["low", "medium", "high"];
baseColumn: never;
generated: undefined;
}, object>;
preferenceTypeId: drizzle_orm_mysql_core.MySqlColumn<{
name: "preferenceTypeId";
tableName: "CommunicationPreference";
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: "CommunicationPreference";
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: "CommunicationPreference";
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>;
optInAt: drizzle_orm_mysql_core.MySqlColumn<{
name: "optInAt";
tableName: "CommunicationPreference";
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>;
optOutAt: drizzle_orm_mysql_core.MySqlColumn<{
name: "optOutAt";
tableName: "CommunicationPreference";
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>;
updatedAt: drizzle_orm_mysql_core.MySqlColumn<{
name: "updatedAt";
tableName: "CommunicationPreference";
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: "CommunicationPreference";
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";
}>;
declare function getCommunicationPreferencesRelationsSchema(mysqlTable: MySqlTableFn): drizzle_orm.Relations<"CommunicationPreference", {
user: drizzle_orm.One<"User", true>;
organizationMembership: drizzle_orm.One<"OrganizationMembership", false>;
channel: drizzle_orm.One<"CommunicationChannel", true>;
preferenceType: drizzle_orm.One<"CommunicationPreferenceType", true>;
}>;
export { getCommunicationPreferencesRelationsSchema, getCommunicationPreferencesSchema };