import { t as DatabaseAdapter } from "../database.adapter-oL35G_XI.js"; import { b as SubscriptionStatus, f as InvoiceLineItem, n as BillingInterval, p as InvoiceStatus, s as FeatureRegistry, v as SubscriberType } from "../types-3EaBC58c.js"; import "../index-gRqfQZ6n.js"; //#region src/adapters/drizzle-schema.d.ts /** * Subscription plans (Prisma `SubscriptionPlan` equivalent). */ declare const subscriptionPlans: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{ name: "subscription_plans"; schema: undefined; columns: { id: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "id"; tableName: "subscription_plans"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: true; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; name: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "name"; tableName: "subscription_plans"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; description: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "description"; tableName: "subscription_plans"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; price: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "price"; tableName: "subscription_plans"; dataType: "number"; columnType: "SQLiteReal"; data: number; driverParam: number; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; currency: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "currency"; tableName: "subscription_plans"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; interval: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "interval"; tableName: "subscription_plans"; dataType: "string"; columnType: "SQLiteText"; data: BillingInterval; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; $type: BillingInterval; }>; intervalCount: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "interval_count"; tableName: "subscription_plans"; dataType: "number"; columnType: "SQLiteInteger"; data: number; driverParam: number; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; trialDays: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "trial_days"; tableName: "subscription_plans"; dataType: "number"; columnType: "SQLiteInteger"; data: number; driverParam: number; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; features: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "features"; tableName: "subscription_plans"; dataType: "json"; columnType: "SQLiteTextJson"; data: Record; driverParam: string; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: true; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, { $type: Record; }>; isActive: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "is_active"; tableName: "subscription_plans"; dataType: "boolean"; columnType: "SQLiteBoolean"; data: boolean; driverParam: number; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; sortOrder: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "sort_order"; tableName: "subscription_plans"; dataType: "number"; columnType: "SQLiteInteger"; data: number; driverParam: number; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; metadata: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "metadata"; tableName: "subscription_plans"; dataType: "json"; columnType: "SQLiteTextJson"; data: Record | null; driverParam: string; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, { $type: Record | null; }>; createdAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "created_at"; tableName: "subscription_plans"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: true; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; updatedAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "updated_at"; tableName: "subscription_plans"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: true; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; }; dialect: "sqlite"; }>; /** * Subscriptions (Prisma `Subscription` equivalent). * * `tenantId` is the persisted subscriber key used across the package; it maps * to the package-level `subscriberId`. */ declare const subscriptions: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{ name: "subscriptions"; schema: undefined; columns: { id: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "id"; tableName: "subscriptions"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: true; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; tenantId: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "tenant_id"; tableName: "subscriptions"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; subscriberType: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "subscriber_type"; tableName: "subscriptions"; dataType: "string"; columnType: "SQLiteText"; data: SubscriberType; driverParam: string; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; $type: SubscriberType; }>; planId: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "plan_id"; tableName: "subscriptions"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; status: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "status"; tableName: "subscriptions"; dataType: "string"; columnType: "SQLiteText"; data: SubscriptionStatus; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; $type: SubscriptionStatus; }>; currentPeriodStart: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "current_period_start"; tableName: "subscriptions"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; currentPeriodEnd: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "current_period_end"; tableName: "subscriptions"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; cancelAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "cancel_at"; tableName: "subscriptions"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; canceledAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "canceled_at"; tableName: "subscriptions"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; trialStart: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "trial_start"; tableName: "subscriptions"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; trialEnd: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "trial_end"; tableName: "subscriptions"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; gatewaySubscriptionId: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "gateway_subscription_id"; tableName: "subscriptions"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; gatewayCustomerId: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "gateway_customer_id"; tableName: "subscriptions"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; metadata: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "metadata"; tableName: "subscriptions"; dataType: "json"; columnType: "SQLiteTextJson"; data: Record | null; driverParam: string; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, { $type: Record | null; }>; createdAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "created_at"; tableName: "subscriptions"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: true; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; updatedAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "updated_at"; tableName: "subscriptions"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: true; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; }; dialect: "sqlite"; }>; /** * Invoices (Prisma `Invoice` equivalent). */ declare const invoices: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{ name: "invoices"; schema: undefined; columns: { id: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "id"; tableName: "invoices"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: true; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; subscriptionId: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "subscription_id"; tableName: "invoices"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; tenantId: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "tenant_id"; tableName: "invoices"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; amount: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "amount"; tableName: "invoices"; dataType: "number"; columnType: "SQLiteReal"; data: number; driverParam: number; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; currency: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "currency"; tableName: "invoices"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; status: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "status"; tableName: "invoices"; dataType: "string"; columnType: "SQLiteText"; data: InvoiceStatus; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; $type: InvoiceStatus; }>; gatewayInvoiceId: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "gateway_invoice_id"; tableName: "invoices"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; paidAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "paid_at"; tableName: "invoices"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; dueDate: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "due_date"; tableName: "invoices"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; lineItems: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "line_items"; tableName: "invoices"; dataType: "json"; columnType: "SQLiteTextJson"; data: InvoiceLineItem[]; driverParam: string; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: true; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, { $type: InvoiceLineItem[]; }>; metadata: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "metadata"; tableName: "invoices"; dataType: "json"; columnType: "SQLiteTextJson"; data: Record | null; driverParam: string; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, { $type: Record | null; }>; createdAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "created_at"; tableName: "invoices"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: true; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; updatedAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "updated_at"; tableName: "invoices"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: true; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; }; dialect: "sqlite"; }>; /** * Usage records (Prisma `UsageRecord` equivalent). * * The unique index on (subscriberId, tenantId, feature, periodStart) backs the * atomic `INSERT ... ON CONFLICT DO UPDATE` used by usage increment/decrement. * The adapter always writes a non-null `tenantId` (defaulting to the * subscriberId) so the conflict target always matches. */ declare const usageRecords: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{ name: "usage_records"; schema: undefined; columns: { id: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "id"; tableName: "usage_records"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: true; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; subscriberId: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "subscriber_id"; tableName: "usage_records"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; tenantId: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "tenant_id"; tableName: "usage_records"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; feature: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "feature"; tableName: "usage_records"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; count: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "count"; tableName: "usage_records"; dataType: "number"; columnType: "SQLiteInteger"; data: number; driverParam: number; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; periodStart: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "period_start"; tableName: "usage_records"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; periodEnd: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "period_end"; tableName: "usage_records"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; createdAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "created_at"; tableName: "usage_records"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: true; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; updatedAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "updated_at"; tableName: "usage_records"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: true; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; }; dialect: "sqlite"; }>; /** * Billing sequences (Prisma `BillingSequence` equivalent). * * One row per invoice-number prefix, backing the atomic * `invoices.nextInvoiceNumber()` implementation. */ declare const billingSequences: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{ name: "billing_sequences"; schema: undefined; columns: { prefix: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "prefix"; tableName: "billing_sequences"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: true; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; value: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "value"; tableName: "billing_sequences"; dataType: "number"; columnType: "SQLiteInteger"; data: number; driverParam: number; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; createdAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "created_at"; tableName: "billing_sequences"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: true; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; updatedAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "updated_at"; tableName: "billing_sequences"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: true; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; }; dialect: "sqlite"; }>; /** * Schema object ready to pass to `drizzle(client, { schema })`. */ declare const subscriptionsSchema: { readonly subscriptionPlans: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{ name: "subscription_plans"; schema: undefined; columns: { id: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "id"; tableName: "subscription_plans"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: true; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; name: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "name"; tableName: "subscription_plans"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; description: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "description"; tableName: "subscription_plans"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; price: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "price"; tableName: "subscription_plans"; dataType: "number"; columnType: "SQLiteReal"; data: number; driverParam: number; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; currency: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "currency"; tableName: "subscription_plans"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; interval: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "interval"; tableName: "subscription_plans"; dataType: "string"; columnType: "SQLiteText"; data: BillingInterval; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; $type: BillingInterval; }>; intervalCount: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "interval_count"; tableName: "subscription_plans"; dataType: "number"; columnType: "SQLiteInteger"; data: number; driverParam: number; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; trialDays: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "trial_days"; tableName: "subscription_plans"; dataType: "number"; columnType: "SQLiteInteger"; data: number; driverParam: number; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; features: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "features"; tableName: "subscription_plans"; dataType: "json"; columnType: "SQLiteTextJson"; data: Record; driverParam: string; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: true; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, { $type: Record; }>; isActive: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "is_active"; tableName: "subscription_plans"; dataType: "boolean"; columnType: "SQLiteBoolean"; data: boolean; driverParam: number; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; sortOrder: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "sort_order"; tableName: "subscription_plans"; dataType: "number"; columnType: "SQLiteInteger"; data: number; driverParam: number; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; metadata: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "metadata"; tableName: "subscription_plans"; dataType: "json"; columnType: "SQLiteTextJson"; data: Record | null; driverParam: string; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, { $type: Record | null; }>; createdAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "created_at"; tableName: "subscription_plans"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: true; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; updatedAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "updated_at"; tableName: "subscription_plans"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: true; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; }; dialect: "sqlite"; }>; readonly subscriptions: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{ name: "subscriptions"; schema: undefined; columns: { id: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "id"; tableName: "subscriptions"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: true; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; tenantId: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "tenant_id"; tableName: "subscriptions"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; subscriberType: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "subscriber_type"; tableName: "subscriptions"; dataType: "string"; columnType: "SQLiteText"; data: SubscriberType; driverParam: string; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; $type: SubscriberType; }>; planId: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "plan_id"; tableName: "subscriptions"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; status: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "status"; tableName: "subscriptions"; dataType: "string"; columnType: "SQLiteText"; data: SubscriptionStatus; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; $type: SubscriptionStatus; }>; currentPeriodStart: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "current_period_start"; tableName: "subscriptions"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; currentPeriodEnd: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "current_period_end"; tableName: "subscriptions"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; cancelAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "cancel_at"; tableName: "subscriptions"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; canceledAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "canceled_at"; tableName: "subscriptions"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; trialStart: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "trial_start"; tableName: "subscriptions"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; trialEnd: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "trial_end"; tableName: "subscriptions"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; gatewaySubscriptionId: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "gateway_subscription_id"; tableName: "subscriptions"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; gatewayCustomerId: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "gateway_customer_id"; tableName: "subscriptions"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; metadata: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "metadata"; tableName: "subscriptions"; dataType: "json"; columnType: "SQLiteTextJson"; data: Record | null; driverParam: string; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, { $type: Record | null; }>; createdAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "created_at"; tableName: "subscriptions"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: true; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; updatedAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "updated_at"; tableName: "subscriptions"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: true; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; }; dialect: "sqlite"; }>; readonly invoices: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{ name: "invoices"; schema: undefined; columns: { id: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "id"; tableName: "invoices"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: true; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; subscriptionId: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "subscription_id"; tableName: "invoices"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; tenantId: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "tenant_id"; tableName: "invoices"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; amount: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "amount"; tableName: "invoices"; dataType: "number"; columnType: "SQLiteReal"; data: number; driverParam: number; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; currency: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "currency"; tableName: "invoices"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; status: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "status"; tableName: "invoices"; dataType: "string"; columnType: "SQLiteText"; data: InvoiceStatus; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; $type: InvoiceStatus; }>; gatewayInvoiceId: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "gateway_invoice_id"; tableName: "invoices"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; paidAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "paid_at"; tableName: "invoices"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; dueDate: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "due_date"; tableName: "invoices"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; lineItems: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "line_items"; tableName: "invoices"; dataType: "json"; columnType: "SQLiteTextJson"; data: InvoiceLineItem[]; driverParam: string; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: true; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, { $type: InvoiceLineItem[]; }>; metadata: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "metadata"; tableName: "invoices"; dataType: "json"; columnType: "SQLiteTextJson"; data: Record | null; driverParam: string; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, { $type: Record | null; }>; createdAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "created_at"; tableName: "invoices"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: true; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; updatedAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "updated_at"; tableName: "invoices"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: true; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; }; dialect: "sqlite"; }>; readonly usageRecords: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{ name: "usage_records"; schema: undefined; columns: { id: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "id"; tableName: "usage_records"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: true; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; subscriberId: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "subscriber_id"; tableName: "usage_records"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; tenantId: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "tenant_id"; tableName: "usage_records"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; feature: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "feature"; tableName: "usage_records"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; count: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "count"; tableName: "usage_records"; dataType: "number"; columnType: "SQLiteInteger"; data: number; driverParam: number; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; periodStart: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "period_start"; tableName: "usage_records"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; periodEnd: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "period_end"; tableName: "usage_records"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; createdAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "created_at"; tableName: "usage_records"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: true; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; updatedAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "updated_at"; tableName: "usage_records"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: true; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; }; dialect: "sqlite"; }>; readonly billingSequences: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{ name: "billing_sequences"; schema: undefined; columns: { prefix: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "prefix"; tableName: "billing_sequences"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: true; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; value: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "value"; tableName: "billing_sequences"; dataType: "number"; columnType: "SQLiteInteger"; data: number; driverParam: number; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; createdAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "created_at"; tableName: "billing_sequences"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: true; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; updatedAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "updated_at"; tableName: "billing_sequences"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: true; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; }; dialect: "sqlite"; }>; }; type SubscriptionsSchema = typeof subscriptionsSchema; type PlanRow = typeof subscriptionPlans.$inferSelect; type NewPlanRow = typeof subscriptionPlans.$inferInsert; type SubscriptionRow = typeof subscriptions.$inferSelect; type NewSubscriptionRow = typeof subscriptions.$inferInsert; type InvoiceRow = typeof invoices.$inferSelect; type NewInvoiceRow = typeof invoices.$inferInsert; type UsageRecordRow = typeof usageRecords.$inferSelect; type NewUsageRecordRow = typeof usageRecords.$inferInsert; type BillingSequenceRow = typeof billingSequences.$inferSelect; type NewBillingSequenceRow = typeof billingSequences.$inferInsert; //#endregion //#region src/adapters/drizzle.adapter.d.ts declare const bundledSchema: { subscriptionPlans: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{ name: "subscription_plans"; schema: undefined; columns: { id: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "id"; tableName: "subscription_plans"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: true; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; name: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "name"; tableName: "subscription_plans"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; description: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "description"; tableName: "subscription_plans"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; price: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "price"; tableName: "subscription_plans"; dataType: "number"; columnType: "SQLiteReal"; data: number; driverParam: number; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; currency: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "currency"; tableName: "subscription_plans"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; interval: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "interval"; tableName: "subscription_plans"; dataType: "string"; columnType: "SQLiteText"; data: BillingInterval; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; $type: BillingInterval; }>; intervalCount: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "interval_count"; tableName: "subscription_plans"; dataType: "number"; columnType: "SQLiteInteger"; data: number; driverParam: number; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; trialDays: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "trial_days"; tableName: "subscription_plans"; dataType: "number"; columnType: "SQLiteInteger"; data: number; driverParam: number; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; features: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "features"; tableName: "subscription_plans"; dataType: "json"; columnType: "SQLiteTextJson"; data: Record; driverParam: string; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: true; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, { $type: Record; }>; isActive: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "is_active"; tableName: "subscription_plans"; dataType: "boolean"; columnType: "SQLiteBoolean"; data: boolean; driverParam: number; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; sortOrder: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "sort_order"; tableName: "subscription_plans"; dataType: "number"; columnType: "SQLiteInteger"; data: number; driverParam: number; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; metadata: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "metadata"; tableName: "subscription_plans"; dataType: "json"; columnType: "SQLiteTextJson"; data: Record | null; driverParam: string; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, { $type: Record | null; }>; createdAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "created_at"; tableName: "subscription_plans"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: true; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; updatedAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "updated_at"; tableName: "subscription_plans"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: true; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; }; dialect: "sqlite"; }>; subscriptions: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{ name: "subscriptions"; schema: undefined; columns: { id: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "id"; tableName: "subscriptions"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: true; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; tenantId: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "tenant_id"; tableName: "subscriptions"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; subscriberType: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "subscriber_type"; tableName: "subscriptions"; dataType: "string"; columnType: "SQLiteText"; data: SubscriberType; driverParam: string; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; $type: SubscriberType; }>; planId: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "plan_id"; tableName: "subscriptions"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; status: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "status"; tableName: "subscriptions"; dataType: "string"; columnType: "SQLiteText"; data: SubscriptionStatus; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; $type: SubscriptionStatus; }>; currentPeriodStart: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "current_period_start"; tableName: "subscriptions"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; currentPeriodEnd: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "current_period_end"; tableName: "subscriptions"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; cancelAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "cancel_at"; tableName: "subscriptions"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; canceledAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "canceled_at"; tableName: "subscriptions"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; trialStart: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "trial_start"; tableName: "subscriptions"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; trialEnd: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "trial_end"; tableName: "subscriptions"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; gatewaySubscriptionId: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "gateway_subscription_id"; tableName: "subscriptions"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; gatewayCustomerId: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "gateway_customer_id"; tableName: "subscriptions"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; metadata: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "metadata"; tableName: "subscriptions"; dataType: "json"; columnType: "SQLiteTextJson"; data: Record | null; driverParam: string; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, { $type: Record | null; }>; createdAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "created_at"; tableName: "subscriptions"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: true; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; updatedAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "updated_at"; tableName: "subscriptions"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: true; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; }; dialect: "sqlite"; }>; invoices: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{ name: "invoices"; schema: undefined; columns: { id: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "id"; tableName: "invoices"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: true; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; subscriptionId: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "subscription_id"; tableName: "invoices"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; tenantId: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "tenant_id"; tableName: "invoices"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; amount: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "amount"; tableName: "invoices"; dataType: "number"; columnType: "SQLiteReal"; data: number; driverParam: number; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; currency: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "currency"; tableName: "invoices"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; status: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "status"; tableName: "invoices"; dataType: "string"; columnType: "SQLiteText"; data: InvoiceStatus; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; $type: InvoiceStatus; }>; gatewayInvoiceId: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "gateway_invoice_id"; tableName: "invoices"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; paidAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "paid_at"; tableName: "invoices"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; dueDate: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "due_date"; tableName: "invoices"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; lineItems: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "line_items"; tableName: "invoices"; dataType: "json"; columnType: "SQLiteTextJson"; data: InvoiceLineItem[]; driverParam: string; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: true; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, { $type: InvoiceLineItem[]; }>; metadata: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "metadata"; tableName: "invoices"; dataType: "json"; columnType: "SQLiteTextJson"; data: Record | null; driverParam: string; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, { $type: Record | null; }>; createdAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "created_at"; tableName: "invoices"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: true; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; updatedAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "updated_at"; tableName: "invoices"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: true; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; }; dialect: "sqlite"; }>; usageRecords: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{ name: "usage_records"; schema: undefined; columns: { id: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "id"; tableName: "usage_records"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: true; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; subscriberId: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "subscriber_id"; tableName: "usage_records"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; tenantId: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "tenant_id"; tableName: "usage_records"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; feature: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "feature"; tableName: "usage_records"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; count: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "count"; tableName: "usage_records"; dataType: "number"; columnType: "SQLiteInteger"; data: number; driverParam: number; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; periodStart: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "period_start"; tableName: "usage_records"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; periodEnd: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "period_end"; tableName: "usage_records"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; createdAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "created_at"; tableName: "usage_records"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: true; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; updatedAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "updated_at"; tableName: "usage_records"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: true; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; }; dialect: "sqlite"; }>; billingSequences: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{ name: "billing_sequences"; schema: undefined; columns: { prefix: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "prefix"; tableName: "billing_sequences"; dataType: "string"; columnType: "SQLiteText"; data: string; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: true; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, { length: number | undefined; }>; value: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "value"; tableName: "billing_sequences"; dataType: "number"; columnType: "SQLiteInteger"; data: number; driverParam: number; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; createdAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "created_at"; tableName: "billing_sequences"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: true; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; updatedAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{ name: "updated_at"; tableName: "billing_sequences"; dataType: "date"; columnType: "SQLiteTimestamp"; data: Date; driverParam: number; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: true; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; }; dialect: "sqlite"; }>; }; /** * Tables used by the Drizzle adapter. Defaults to the bundled SQLite schema * from `drizzle-schema.ts`; override to plug in tables with custom names or * columns (same shape). */ type DrizzleAdapterSchema = typeof bundledSchema; /** * Any Drizzle database instance whose schema includes the subscriptions * tables — Cloudflare D1, Turso/libSQL, bun:sqlite, better-sqlite3, or a * PostgreSQL driver with an equivalent schema. */ interface DrizzleDatabase { select: (...args: any[]) => any; insert: (table: any) => any; update: (table: any) => any; delete: (table: any) => any; transaction: (fn: (tx: any) => any) => any; } /** * Options for the Drizzle adapter */ interface DrizzleAdapterOptions { /** * Custom table objects if you maintain your own Drizzle schema * (e.g. different column names). Must match the bundled table shapes. */ schema?: DrizzleAdapterSchema; } /** * Create a Drizzle ORM adapter for the subscriptions package. * * Works with any Drizzle driver whose database contains the subscriptions * tables (see `drizzle-schema.ts` and `docs/drizzle-schema.md`). * * @example * ```typescript * import { drizzle } from 'drizzle-orm/d1'; * import { drizzleAdapter, subscriptionsSchema } from '@abshahin/subscriptions/adapters/drizzle'; * * const db = drizzle(env.DB, { schema: subscriptionsSchema }); * const subs = createSubscriptions({ * database: drizzleAdapter(db), * features, * }); * ``` */ declare function drizzleAdapter(db: DrizzleDatabase, options?: DrizzleAdapterOptions): DatabaseAdapter; //#endregion export { BillingSequenceRow, DrizzleAdapterOptions, DrizzleAdapterSchema, DrizzleDatabase, InvoiceRow, NewBillingSequenceRow, NewInvoiceRow, NewPlanRow, NewSubscriptionRow, NewUsageRecordRow, PlanRow, SubscriptionRow, SubscriptionsSchema, UsageRecordRow, billingSequences, drizzleAdapter, invoices, subscriptionPlans, subscriptions, subscriptionsSchema, usageRecords }; //# sourceMappingURL=drizzle.adapter.d.ts.map