Home / Type/ Table Type — astro Architecture

Table Type — astro Architecture

Architecture documentation for the Table type/interface in types.ts from the astro codebase.

Entity Profile

Dependency Diagram

graph TD
  16518be6_355f_486c_c6fa_5e8c07b5b445["Table"]
  2eb38d79_bfe3_6938_fad4_521296dd8431["types.ts"]
  16518be6_355f_486c_c6fa_5e8c07b5b445 -->|defined in| 2eb38d79_bfe3_6938_fad4_521296dd8431
  style 16518be6_355f_486c_c6fa_5e8c07b5b445 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

packages/db/src/runtime/types.ts lines 99–130

export type Table<
	TTableName extends string,
	TColumns extends OutputColumnsConfig | ColumnsConfig,
> = SQLiteTableWithColumns<{
	name: TTableName;
	schema: undefined;
	dialect: 'sqlite';
	columns: {
		[K in Extract<keyof TColumns, string>]: Column<
			TColumns[K]['type'],
			TColumns[K]['schema'] extends { enum: infer E }
				? E extends readonly [string, ...string[]]
					? E
					: string
				: string,
			{
				tableName: TTableName;
				name: K;
				isPrimaryKey: TColumns[K]['schema'] extends { primaryKey: true } ? true : false;
				hasDefault: TColumns[K]['schema'] extends { default: NonNullable<unknown> }
					? true
					: TColumns[K]['schema'] extends { primaryKey: true }
						? true
						: false;
				hasRuntimeDefault: TColumns[K]['schema'] extends { default: NonNullable<unknown> }
					? true
					: false;
				notNull: TColumns[K]['schema']['optional'] extends true ? false : true;
			}
		>;
	};
}>;

Frequently Asked Questions

What is the Table type?
Table is a type/interface in the astro codebase, defined in packages/db/src/runtime/types.ts.
Where is Table defined?
Table is defined in packages/db/src/runtime/types.ts at line 99.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free