@coursebuilder/adapter-drizzle
Version:
Drizzle adapter for Course Builder.
228 lines (225 loc) • 7.89 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 getCouponSchema(mysqlTable: MySqlTableFn): 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;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
generated: undefined;
}, object>;
percentageDiscount: drizzle_orm_mysql_core.MySqlColumn<{
name: "percentageDiscount";
tableName: "Coupon";
dataType: "string";
columnType: "MySqlDecimal";
data: string;
driverParam: string;
notNull: true;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
generated: undefined;
}, object>;
restrictedToProductId: drizzle_orm_mysql_core.MySqlColumn<{
name: "restrictedToProductId";
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>;
};
dialect: "mysql";
}>;
declare function getCouponRelationsSchema(mysqlTable: MySqlTableFn): drizzle_orm.Relations<"Coupon", {
redeemedBulkCouponPurchases: drizzle_orm.Many<"Purchase">;
merchantCoupon: drizzle_orm.One<"MerchantCoupon", false>;
product: drizzle_orm.One<"Product", false>;
bulkPurchases: drizzle_orm.Many<"Purchase">;
}>;
export { getCouponRelationsSchema, getCouponSchema };