longcelot-sheet-db
Version:
Google Sheets-backed staging database adapter for Node.js with schema-first design
25 lines • 904 B
TypeScript
import { ColumnDefinition, DataType, JsonValue } from './types';
export declare class ColumnBuilder {
private definition;
constructor(type: DataType, initial?: Partial<ColumnDefinition>);
required(): this;
unique(): this;
default(value: JsonValue): this;
min(value: number): this;
max(value: number): this;
enum(values: (string | number | boolean)[]): this;
pattern(regex: RegExp): this;
readonly(): this;
primary(): this;
ref(tableDotColumn: string): this;
index(): this;
build(): ColumnDefinition;
}
export declare function string(): ColumnBuilder;
export declare function number(): ColumnBuilder;
export declare function boolean(options?: {
format?: ColumnDefinition['booleanFormat'];
}): ColumnBuilder;
export declare function date(): ColumnBuilder;
export declare function json(): ColumnBuilder;
//# sourceMappingURL=columnBuilder.d.ts.map