CoolFace
Apppublic

AK-21/Graphite-Industrial-Intelligence

sourceHugging Faceupdated 3mo agoView on Hugging Face
0likes
table.d.cts93 linesDownload Raw Back to sqlite-core
1import type { BuildColumns } from "../column-builder.cjs";2import { entityKind } from "../entity.cjs";3import { Table, type TableConfig as TableConfigBase, type UpdateTableConfig } from "../table.cjs";4import type { CheckBuilder } from "./checks.cjs";5import { type SQLiteColumnBuilders } from "./columns/all.cjs";6import type { SQLiteColumn, SQLiteColumnBuilderBase } from "./columns/common.cjs";7import type { ForeignKeyBuilder } from "./foreign-keys.cjs";8import type { IndexBuilder } from "./indexes.cjs";9import type { PrimaryKeyBuilder } from "./primary-keys.cjs";10import type { UniqueConstraintBuilder } from "./unique-constraint.cjs";11export type SQLiteTableExtraConfigValue = IndexBuilder | CheckBuilder | ForeignKeyBuilder | PrimaryKeyBuilder | UniqueConstraintBuilder;12export type SQLiteTableExtraConfig = Record<string, SQLiteTableExtraConfigValue>;13export type TableConfig = TableConfigBase<SQLiteColumn<any>>;14export declare class SQLiteTable<T extends TableConfig = TableConfig> extends Table<T> {15    static readonly [entityKind]: string;16}17export type AnySQLiteTable<TPartial extends Partial<TableConfig> = {}> = SQLiteTable<UpdateTableConfig<TableConfig, TPartial>>;18export type SQLiteTableWithColumns<T extends TableConfig> = SQLiteTable<T> & {19    [Key in keyof T['columns']]: T['columns'][Key];20};21export interface SQLiteTableFn<TSchema extends string | undefined = undefined> {22    <TTableName extends string, TColumnsMap extends Record<string, SQLiteColumnBuilderBase>>(name: TTableName, columns: TColumnsMap, extraConfig?: (self: BuildColumns<TTableName, TColumnsMap, 'sqlite'>) => SQLiteTableExtraConfigValue[]): SQLiteTableWithColumns<{23        name: TTableName;24        schema: TSchema;25        columns: BuildColumns<TTableName, TColumnsMap, 'sqlite'>;26        dialect: 'sqlite';27    }>;28    <TTableName extends string, TColumnsMap extends Record<string, SQLiteColumnBuilderBase>>(name: TTableName, columns: (columnTypes: SQLiteColumnBuilders) => TColumnsMap, extraConfig?: (self: BuildColumns<TTableName, TColumnsMap, 'sqlite'>) => SQLiteTableExtraConfigValue[]): SQLiteTableWithColumns<{29        name: TTableName;30        schema: TSchema;31        columns: BuildColumns<TTableName, TColumnsMap, 'sqlite'>;32        dialect: 'sqlite';33    }>;34    /**35     * @deprecated The third parameter of sqliteTable is changing and will only accept an array instead of an object36     *37     * @example38     * Deprecated version:39     * ```ts40     * export const users = sqliteTable("users", {41     * 	id: int(),42     * }, (t) => ({43     * 	idx: index('custom_name').on(t.id)44     * }));45     * ```46     *47     * New API:48     * ```ts49     * export const users = sqliteTable("users", {50     * 	id: int(),51     * }, (t) => [52     * 	index('custom_name').on(t.id)53     * ]);54     * ```55     */56    <TTableName extends string, TColumnsMap extends Record<string, SQLiteColumnBuilderBase>>(name: TTableName, columns: TColumnsMap, extraConfig?: (self: BuildColumns<TTableName, TColumnsMap, 'sqlite'>) => SQLiteTableExtraConfig): SQLiteTableWithColumns<{57        name: TTableName;58        schema: TSchema;59        columns: BuildColumns<TTableName, TColumnsMap, 'sqlite'>;60        dialect: 'sqlite';61    }>;62    /**63     * @deprecated The third parameter of sqliteTable is changing and will only accept an array instead of an object64     *65     * @example66     * Deprecated version:67     * ```ts68     * export const users = sqliteTable("users", {69     * 	id: int(),70     * }, (t) => ({71     * 	idx: index('custom_name').on(t.id)72     * }));73     * ```74     *75     * New API:76     * ```ts77     * export const users = sqliteTable("users", {78     * 	id: int(),79     * }, (t) => [80     * 	index('custom_name').on(t.id)81     * ]);82     * ```83     */84    <TTableName extends string, TColumnsMap extends Record<string, SQLiteColumnBuilderBase>>(name: TTableName, columns: (columnTypes: SQLiteColumnBuilders) => TColumnsMap, extraConfig?: (self: BuildColumns<TTableName, TColumnsMap, 'sqlite'>) => SQLiteTableExtraConfig): SQLiteTableWithColumns<{85        name: TTableName;86        schema: TSchema;87        columns: BuildColumns<TTableName, TColumnsMap, 'sqlite'>;88        dialect: 'sqlite';89    }>;90}91export declare const sqliteTable: SQLiteTableFn;92export declare function sqliteTableCreator(customizeTableName: (name: string) => string): SQLiteTableFn;93