| 123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- import { bigint, boolean, integer, pgTable, varchar } from "drizzle-orm/pg-core"
- import { timestamps, workspaceColumns } from "../drizzle/types"
- import { workspaceIndexes } from "./workspace.sql"
- export const BillingTable = pgTable(
- "billing",
- {
- ...workspaceColumns,
- ...timestamps,
- customerID: varchar("customer_id", { length: 255 }),
- paymentMethodID: varchar("payment_method_id", { length: 255 }),
- paymentMethodLast4: varchar("payment_method_last4", { length: 4 }),
- balance: bigint("balance", { mode: "number" }).notNull(),
- reload: boolean("reload"),
- },
- (table) => [...workspaceIndexes(table)],
- )
- export const PaymentTable = pgTable(
- "payment",
- {
- ...workspaceColumns,
- ...timestamps,
- customerID: varchar("customer_id", { length: 255 }),
- paymentID: varchar("payment_id", { length: 255 }),
- amount: bigint("amount", { mode: "number" }).notNull(),
- },
- (table) => [...workspaceIndexes(table)],
- )
- export const UsageTable = pgTable(
- "usage",
- {
- ...workspaceColumns,
- ...timestamps,
- model: varchar("model", { length: 255 }).notNull(),
- inputTokens: integer("input_tokens").notNull(),
- outputTokens: integer("output_tokens").notNull(),
- reasoningTokens: integer("reasoning_tokens"),
- cacheReadTokens: integer("cache_read_tokens"),
- cacheWriteTokens: integer("cache_write_tokens"),
- cost: bigint("cost", { mode: "number" }).notNull(),
- },
- (table) => [...workspaceIndexes(table)],
- )
|