json.d.cts 1.1 KB

1234567891011121314151617181920212223242526
  1. import type { ColumnBuilderBaseConfig } from "../../column-builder.cjs";
  2. import type { ColumnBaseConfig } from "../../column.cjs";
  3. import { entityKind } from "../../entity.cjs";
  4. import type { AnyGelTable } from "../table.cjs";
  5. import { GelColumn, GelColumnBuilder } from "./common.cjs";
  6. export type GelJsonBuilderInitial<TName extends string> = GelJsonBuilder<{
  7. name: TName;
  8. dataType: 'json';
  9. columnType: 'GelJson';
  10. data: unknown;
  11. driverParam: unknown;
  12. enumValues: undefined;
  13. }>;
  14. export declare class GelJsonBuilder<T extends ColumnBuilderBaseConfig<'json', 'GelJson'>> extends GelColumnBuilder<T> {
  15. static readonly [entityKind]: string;
  16. constructor(name: T['name']);
  17. }
  18. export declare class GelJson<T extends ColumnBaseConfig<'json', 'GelJson'>> extends GelColumn<T> {
  19. static readonly [entityKind]: string;
  20. constructor(table: AnyGelTable<{
  21. name: T['tableName'];
  22. }>, config: GelJsonBuilder<T>['config']);
  23. getSQLType(): string;
  24. }
  25. export declare function json(): GelJsonBuilderInitial<''>;
  26. export declare function json<TName extends string>(name: TName): GelJsonBuilderInitial<TName>;