UNPKG

@fewer/adapter-postgres

Version:

A Fewer database adapter to connect to Postgres

54 lines (53 loc) 3.31 kB
import { ColumnType } from 'fewer'; export interface ColumnOptions { nonNull?: boolean; unique?: boolean; default?: any; } export interface NumericOptions extends ColumnOptions { precision?: number; scale?: number; } export interface CharacterOptions extends ColumnOptions { length?: number; } export interface PathOptions extends ColumnOptions { open?: boolean; } export interface ArrayOptions<T> extends ColumnOptions { type: T; } declare const columnTypes: { boolean: (config?: ColumnOptions | undefined) => ColumnType<boolean | undefined, ColumnOptions>; numeric: (config?: NumericOptions | undefined) => ColumnType<number | undefined, NumericOptions>; decimal: (config?: NumericOptions | undefined) => ColumnType<number | undefined, NumericOptions>; smallint: (config?: ColumnOptions | undefined) => ColumnType<number | undefined, ColumnOptions>; integer: (config?: ColumnOptions | undefined) => ColumnType<number | undefined, ColumnOptions>; int: (config?: ColumnOptions | undefined) => ColumnType<number | undefined, ColumnOptions>; bigint: (config?: ColumnOptions | undefined) => ColumnType<number | undefined, ColumnOptions>; double: (config?: ColumnOptions | undefined) => ColumnType<number | undefined, ColumnOptions>; real: (config?: ColumnOptions | undefined) => ColumnType<number | undefined, ColumnOptions>; smallserial: (options?: ColumnOptions | undefined) => ColumnType<number, any>; serial: (options?: ColumnOptions | undefined) => ColumnType<number, any>; bigserial: (options?: ColumnOptions | undefined) => ColumnType<number, any>; char: (config?: CharacterOptions | undefined) => ColumnType<string | undefined, CharacterOptions>; varchar: (config?: CharacterOptions | undefined) => ColumnType<string | undefined, CharacterOptions>; text: (config?: ColumnOptions | undefined) => ColumnType<string | undefined, ColumnOptions>; string: (options?: CharacterOptions | undefined) => ColumnType<string | undefined, CharacterOptions>; bytea: (config?: ColumnOptions | undefined) => ColumnType<string | undefined, ColumnOptions>; point: (config?: ColumnOptions | undefined) => ColumnType<[number, number] | undefined, ColumnOptions>; line: (config?: ColumnOptions | undefined) => ColumnType<{ A: number; B: number; C: number; } | undefined, ColumnOptions>; lseg: (config?: ColumnOptions | undefined) => ColumnType<[[number, number], [number, number]] | undefined, ColumnOptions>; box: (config?: ColumnOptions | undefined) => ColumnType<[[number, number], [number, number]] | undefined, ColumnOptions>; path: (config?: PathOptions | undefined) => ColumnType<[number, number][] | undefined, PathOptions>; polygon: (config?: PathOptions | undefined) => ColumnType<[number, number][] | undefined, PathOptions>; circle: (config?: ColumnOptions | undefined) => ColumnType<[[number, number], number] | undefined, ColumnOptions>; uuid: (config?: ColumnOptions | undefined) => ColumnType<string | undefined, ColumnOptions>; json: (config?: ColumnOptions | undefined) => ColumnType<object | undefined, ColumnOptions>; jsonb: (config?: ColumnOptions | undefined) => ColumnType<object | undefined, ColumnOptions>; }; export default columnTypes;