@coursebuilder/adapter-drizzle
Version:
Drizzle adapter for Course Builder.
163 lines (160 loc) • 5.63 kB
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 getProductSchema(mysqlTable: MySqlTableFn): drizzle_orm_mysql_core.MySqlTableWithColumns<{
name: "Product";
schema: undefined;
columns: {
id: drizzle_orm_mysql_core.MySqlColumn<{
name: "id";
tableName: "Product";
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: "Product";
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: "Product";
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>;
key: drizzle_orm_mysql_core.MySqlColumn<{
name: "key";
tableName: "Product";
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>;
type: drizzle_orm_mysql_core.MySqlColumn<{
name: "type";
tableName: "Product";
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>;
fields: drizzle_orm_mysql_core.MySqlColumn<{
name: "fields";
tableName: "Product";
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>;
createdAt: drizzle_orm_mysql_core.MySqlColumn<{
name: "createdAt";
tableName: "Product";
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>;
status: drizzle_orm_mysql_core.MySqlColumn<{
name: "status";
tableName: "Product";
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>;
quantityAvailable: drizzle_orm_mysql_core.MySqlColumn<{
name: "quantityAvailable";
tableName: "Product";
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>;
};
dialect: "mysql";
}>;
declare function getProductRelationsSchema(mysqlTable: MySqlTableFn): drizzle_orm.Relations<"Product", {
price: drizzle_orm.One<"Price", true>;
resources: drizzle_orm.Many<"ContentResourceProduct">;
merchantProduct: drizzle_orm.One<"MerchantProduct", true>;
}>;
export { getProductRelationsSchema, getProductSchema };