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 getMerchantChargeSchema(mysqlTable: MySqlTableFn): drizzle_orm_mysql_core.MySqlTableWithColumns<{
    name: "MerchantCharge";
    schema: undefined;
    columns: {
        id: drizzle_orm_mysql_core.MySqlColumn<{
            name: "id";
            tableName: "MerchantCharge";
            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: "MerchantCharge";
            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: "MerchantCharge";
            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>;
        identifier: drizzle_orm_mysql_core.MySqlColumn<{
            name: "identifier";
            tableName: "MerchantCharge";
            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>;
        userId: drizzle_orm_mysql_core.MySqlColumn<{
            name: "userId";
            tableName: "MerchantCharge";
            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>;
        merchantAccountId: drizzle_orm_mysql_core.MySqlColumn<{
            name: "merchantAccountId";
            tableName: "MerchantCharge";
            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>;
        merchantProductId: drizzle_orm_mysql_core.MySqlColumn<{
            name: "merchantProductId";
            tableName: "MerchantCharge";
            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>;
        merchantSubscriptionId: drizzle_orm_mysql_core.MySqlColumn<{
            name: "merchantSubscriptionId";
            tableName: "MerchantCharge";
            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: "MerchantCharge";
            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>;
        merchantCustomerId: drizzle_orm_mysql_core.MySqlColumn<{
            name: "merchantCustomerId";
            tableName: "MerchantCharge";
            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>;
    };
    dialect: "mysql";
}>;
declare function getMerchantChargeRelationsSchema(mysqlTable: MySqlTableFn): drizzle_orm.Relations<"MerchantCharge", {
    merchantAccount: drizzle_orm.One<"MerchantAccount", true>;
    merchantProduct: drizzle_orm.One<"MerchantProduct", true>;
    merchantCustomer: drizzle_orm.One<"MerchantCustomer", true>;
    merchantSubscription: drizzle_orm.One<"MerchantSubscription", false>;
}>;

export { getMerchantChargeRelationsSchema, getMerchantChargeSchema };
