table.ts — drizzle-orm Source File
Architecture documentation for table.ts, a typescript file in the drizzle-orm codebase. 6 imports, 7 dependents.
Entity Profile
Dependency Diagram
graph LR ddbb35ab_7e67_d2b6_96ec_1f37678fcb67["table.ts"] 7bd0ba6a_93b0_0df7_7f87_d1a726b246cb["column.ts"] ddbb35ab_7e67_d2b6_96ec_1f37678fcb67 --> 7bd0ba6a_93b0_0df7_7f87_d1a726b246cb bc6d807f_7198_da43_c1e6_911af80c80ee["entity.ts"] ddbb35ab_7e67_d2b6_96ec_1f37678fcb67 --> bc6d807f_7198_da43_c1e6_911af80c80ee 7664a866_a3c0_a860_d69f_58ff87a29d3b["operations.ts"] ddbb35ab_7e67_d2b6_96ec_1f37678fcb67 --> 7664a866_a3c0_a860_d69f_58ff87a29d3b 99347ab2_b1a1_faf4_e37c_7643e4b2eb8a["sql.ts"] ddbb35ab_7e67_d2b6_96ec_1f37678fcb67 --> 99347ab2_b1a1_faf4_e37c_7643e4b2eb8a 213f6631_6831_f591_7018_211b37f28f85["table.utils.ts"] ddbb35ab_7e67_d2b6_96ec_1f37678fcb67 --> 213f6631_6831_f591_7018_211b37f28f85 99737bc3_a631_a054_9291_f966c791930f["utils.ts"] ddbb35ab_7e67_d2b6_96ec_1f37678fcb67 --> 99737bc3_a631_a054_9291_f966c791930f ab181952_5759_c0bf_aeab_f255a140fe2a["alias.ts"] ab181952_5759_c0bf_aeab_f255a140fe2a --> ddbb35ab_7e67_d2b6_96ec_1f37678fcb67 f75147d3_9ada_e5d8_9b05_204b10aba05f["casing.ts"] f75147d3_9ada_e5d8_9b05_204b10aba05f --> ddbb35ab_7e67_d2b6_96ec_1f37678fcb67 7bd0ba6a_93b0_0df7_7f87_d1a726b246cb["column.ts"] 7bd0ba6a_93b0_0df7_7f87_d1a726b246cb --> ddbb35ab_7e67_d2b6_96ec_1f37678fcb67 7664a866_a3c0_a860_d69f_58ff87a29d3b["operations.ts"] 7664a866_a3c0_a860_d69f_58ff87a29d3b --> ddbb35ab_7e67_d2b6_96ec_1f37678fcb67 98a54789_7505_9ccf_c7d4_5ddf382052ed["primary-key.ts"] 98a54789_7505_9ccf_c7d4_5ddf382052ed --> ddbb35ab_7e67_d2b6_96ec_1f37678fcb67 99347ab2_b1a1_faf4_e37c_7643e4b2eb8a["sql.ts"] 99347ab2_b1a1_faf4_e37c_7643e4b2eb8a --> ddbb35ab_7e67_d2b6_96ec_1f37678fcb67 99737bc3_a631_a054_9291_f966c791930f["utils.ts"] 99737bc3_a631_a054_9291_f966c791930f --> ddbb35ab_7e67_d2b6_96ec_1f37678fcb67 style ddbb35ab_7e67_d2b6_96ec_1f37678fcb67 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
import type { Column, GetColumnData } from './column.ts';
import { entityKind } from './entity.ts';
import type { OptionalKeyOnly, RequiredKeyOnly } from './operations.ts';
import type { SQLWrapper } from './sql/sql.ts';
import { TableName } from './table.utils.ts';
import type { Simplify, Update } from './utils.ts';
export interface TableConfig<TColumn extends Column = Column<any>> {
name: string;
schema: string | undefined;
columns: Record<string, TColumn>;
dialect: string;
}
export type UpdateTableConfig<T extends TableConfig, TUpdate extends Partial<TableConfig>> = Required<
Update<T, TUpdate>
>;
/** @internal */
export const Schema = Symbol.for('drizzle:Schema');
/** @internal */
export const Columns = Symbol.for('drizzle:Columns');
/** @internal */
export const ExtraConfigColumns = Symbol.for('drizzle:ExtraConfigColumns');
/** @internal */
export const OriginalName = Symbol.for('drizzle:OriginalName');
/** @internal */
export const BaseName = Symbol.for('drizzle:BaseName');
/** @internal */
export const IsAlias = Symbol.for('drizzle:IsAlias');
/** @internal */
export const ExtraConfigBuilder = Symbol.for('drizzle:ExtraConfigBuilder');
const IsDrizzleTable = Symbol.for('drizzle:IsDrizzleTable');
export interface Table<
// eslint-disable-next-line @typescript-eslint/no-unused-vars
T extends TableConfig = TableConfig,
> extends SQLWrapper {
// SQLWrapper runtime implementation is defined in 'sql/sql.ts'
}
export class Table<T extends TableConfig = TableConfig> implements SQLWrapper {
static readonly [entityKind]: string = 'Table';
declare readonly _: {
readonly brand: 'Table';
readonly config: T;
readonly name: T['name'];
readonly schema: T['schema'];
readonly columns: T['columns'];
readonly inferSelect: InferSelectModel<Table<T>>;
readonly inferInsert: InferInsertModel<Table<T>>;
};
// ... (149 more lines)
Domain
Subdomains
Classes
Types
Imported By
Source
Frequently Asked Questions
What does table.ts do?
table.ts is a source file in the drizzle-orm codebase, written in typescript. It belongs to the DrizzleORM domain, DatabaseDrivers subdomain.
What functions are defined in table.ts?
table.ts defines 3 function(s): getTableName, getTableUniqueName, isTable.
What does table.ts depend on?
table.ts imports 6 module(s): column.ts, entity.ts, operations.ts, sql.ts, table.utils.ts, utils.ts.
What files import table.ts?
table.ts is imported by 7 file(s): alias.ts, casing.ts, column.ts, operations.ts, primary-key.ts, sql.ts, utils.ts.
Where is table.ts in the architecture?
table.ts is located at drizzle-orm/src/table.ts (domain: DrizzleORM, subdomain: DatabaseDrivers, directory: drizzle-orm/src).
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free