@axium/server 0.36.5 → 0.37.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,10 +1,13 @@
1
1
  import type { Preferences, UserInternal, VerificationRole } from '@axium/core';
2
2
  import type { AuthenticatorTransportFuture, CredentialDeviceType } from '@simplewebauthn/server';
3
3
  import type * as kysely from 'kysely';
4
- import { Kysely } from 'kysely';
5
- import type { Expand, Filter, MutableRecursive, ReadonlyRecursive, Tuple } from 'utilium';
4
+ import type { Expand } from 'utilium';
6
5
  import * as z from 'zod';
7
- import rawSchema from './db.json';
6
+ import { connect, database } from './db/connection.js';
7
+ export { connect, database };
8
+ import * as schema from './db/schema.js';
9
+ export * as delta from './db/delta.js';
10
+ export * as schema from './db/schema.js';
8
11
  export interface DBAccessControl {
9
12
  itemId: string;
10
13
  userId?: string | null;
@@ -15,9 +18,6 @@ export interface DBAccessControl {
15
18
  export type DBBool<K extends string> = {
16
19
  [key in K]?: boolean | null;
17
20
  };
18
- export type Database = Kysely<Schema> & AsyncDisposable;
19
- export declare let database: Database;
20
- export declare function connect(): Database;
21
21
  export declare function count<const TB extends keyof Schema>(...tables: TB[]): Promise<{
22
22
  [K in TB]: number;
23
23
  }>;
@@ -56,506 +56,19 @@ export declare const _sql: (command: string, message: string) => Promise<string>
56
56
  /** Shortcut to output a warning if an error is thrown because relation already exists */
57
57
  export declare const warnExists: (error: string | Error) => void;
58
58
  export declare function init(opt: InitOptions): Promise<void>;
59
- declare const numberTypes: readonly ["integer", "int2", "int4", "int8", "smallint", "real", "double precision", "float4", "float8", "decimal", "numeric", "serial"];
60
- declare const bigintTypes: readonly ["bigint", "bigserial"];
61
- declare const booleanTypes: readonly ["boolean", "bool"];
62
- declare const stringTypes: readonly ["varchar", "char", "text"];
63
- declare const dateTypes: readonly ["date", "datetime", "time", "timetz", "timestamp", "timestamptz"];
64
- declare const binaryTypes: readonly ["binary", "bytea", "varbinary", "blob"];
65
- declare const numericRangeTypes: readonly ["int4range", "numrange"];
66
- declare const stringRangeTypes: readonly ["tsrange", "tstzrange", "daterange"];
67
- declare const multirangeTypes: readonly ["int4multirange", "int8multirange", "nummultirange", "tsmultirange", "tstzmultirange", "datemultirange"];
68
- declare const _primitive: z.ZodLiteral<"bigint" | "boolean" | "uuid" | "date" | "binary" | "text" | "timestamptz" | "jsonb" | "bytea" | "integer" | "json" | "int2" | "int4" | "int8" | "smallint" | "real" | "double precision" | "float4" | "float8" | "decimal" | "numeric" | "serial" | "bigserial" | "bool" | "varchar" | "char" | "datetime" | "time" | "timetz" | "timestamp" | "varbinary" | "blob" | "int4range" | "numrange" | "tsrange" | "tstzrange" | "daterange" | "int4multirange" | "int8multirange" | "nummultirange" | "tsmultirange" | "tstzmultirange" | "datemultirange">;
69
- declare const _ColumnType: z.ZodUnion<readonly [z.ZodLiteral<"bigint" | "boolean" | "uuid" | "date" | "binary" | "text" | "timestamptz" | "jsonb" | "bytea" | "integer" | "json" | "int2" | "int4" | "int8" | "smallint" | "real" | "double precision" | "float4" | "float8" | "decimal" | "numeric" | "serial" | "bigserial" | "bool" | "varchar" | "char" | "datetime" | "time" | "timetz" | "timestamp" | "varbinary" | "blob" | "int4range" | "numrange" | "tsrange" | "tstzrange" | "daterange" | "int4multirange" | "int8multirange" | "nummultirange" | "tsmultirange" | "tstzmultirange" | "datemultirange">, z.ZodTemplateLiteral<`binary(${number})` | `timestamptz(${number})` | `varchar(${number})` | `char(${number})` | `datetime(${number})` | `time(${number})` | `timetz(${number})` | `timestamp(${number})` | `varbinary(${number})`>, z.ZodTemplateLiteral<`decimal(${number},${number})` | `decimal(${number}, ${number})` | `numeric(${number},${number})` | `numeric(${number}, ${number})`>]>;
70
- declare const ColumnType: z.ZodUnion<readonly [z.ZodUnion<readonly [z.ZodLiteral<"bigint" | "boolean" | "uuid" | "date" | "binary" | "text" | "timestamptz" | "jsonb" | "bytea" | "integer" | "json" | "int2" | "int4" | "int8" | "smallint" | "real" | "double precision" | "float4" | "float8" | "decimal" | "numeric" | "serial" | "bigserial" | "bool" | "varchar" | "char" | "datetime" | "time" | "timetz" | "timestamp" | "varbinary" | "blob" | "int4range" | "numrange" | "tsrange" | "tstzrange" | "daterange" | "int4multirange" | "int8multirange" | "nummultirange" | "tsmultirange" | "tstzmultirange" | "datemultirange">, z.ZodTemplateLiteral<`binary(${number})` | `timestamptz(${number})` | `varchar(${number})` | `char(${number})` | `datetime(${number})` | `time(${number})` | `timetz(${number})` | `timestamp(${number})` | `varbinary(${number})`>, z.ZodTemplateLiteral<`decimal(${number},${number})` | `decimal(${number}, ${number})` | `numeric(${number},${number})` | `numeric(${number}, ${number})`>]>, z.ZodTemplateLiteral<"text[]" | "bigint[]" | "boolean[]" | "uuid[]" | "date[]" | "binary[]" | "timestamptz[]" | "jsonb[]" | "bytea[]" | "integer[]" | "json[]" | "int2[]" | "int4[]" | "int8[]" | "smallint[]" | "real[]" | "double precision[]" | "float4[]" | "float8[]" | "decimal[]" | "numeric[]" | "serial[]" | "bigserial[]" | "bool[]" | "varchar[]" | "char[]" | "datetime[]" | "time[]" | "timetz[]" | "timestamp[]" | "varbinary[]" | "blob[]" | "int4range[]" | "numrange[]" | "tsrange[]" | "tstzrange[]" | "daterange[]" | "int4multirange[]" | "int8multirange[]" | "nummultirange[]" | "tsmultirange[]" | "tstzmultirange[]" | "datemultirange[]" | `binary(${number})[]` | `timestamptz(${number})[]` | `varchar(${number})[]` | `char(${number})[]` | `datetime(${number})[]` | `time(${number})[]` | `timetz(${number})[]` | `timestamp(${number})[]` | `varbinary(${number})[]` | `decimal(${number},${number})[]` | `decimal(${number}, ${number})[]` | `numeric(${number},${number})[]` | `numeric(${number}, ${number})[]` | `bigint[${number}]` | `boolean[${number}]` | `uuid[${number}]` | `date[${number}]` | `binary[${number}]` | `text[${number}]` | `timestamptz[${number}]` | `jsonb[${number}]` | `bytea[${number}]` | `integer[${number}]` | `json[${number}]` | `int2[${number}]` | `int4[${number}]` | `int8[${number}]` | `smallint[${number}]` | `real[${number}]` | `double precision[${number}]` | `float4[${number}]` | `float8[${number}]` | `decimal[${number}]` | `numeric[${number}]` | `serial[${number}]` | `bigserial[${number}]` | `bool[${number}]` | `varchar[${number}]` | `char[${number}]` | `datetime[${number}]` | `time[${number}]` | `timetz[${number}]` | `timestamp[${number}]` | `varbinary[${number}]` | `blob[${number}]` | `int4range[${number}]` | `numrange[${number}]` | `tsrange[${number}]` | `tstzrange[${number}]` | `daterange[${number}]` | `int4multirange[${number}]` | `int8multirange[${number}]` | `nummultirange[${number}]` | `tsmultirange[${number}]` | `tstzmultirange[${number}]` | `datemultirange[${number}]` | `binary(${number})[${number}]` | `timestamptz(${number})[${number}]` | `varchar(${number})[${number}]` | `char(${number})[${number}]` | `datetime(${number})[${number}]` | `time(${number})[${number}]` | `timetz(${number})[${number}]` | `timestamp(${number})[${number}]` | `varbinary(${number})[${number}]` | `decimal(${number},${number})[${number}]` | `decimal(${number}, ${number})[${number}]` | `numeric(${number},${number})[${number}]` | `numeric(${number}, ${number})[${number}]`>]>;
71
- export type ColumnType = z.infer<typeof ColumnType>;
72
- export declare const Column: z.ZodObject<{
73
- type: z.ZodUnion<readonly [z.ZodUnion<readonly [z.ZodLiteral<"bigint" | "boolean" | "uuid" | "date" | "binary" | "text" | "timestamptz" | "jsonb" | "bytea" | "integer" | "json" | "int2" | "int4" | "int8" | "smallint" | "real" | "double precision" | "float4" | "float8" | "decimal" | "numeric" | "serial" | "bigserial" | "bool" | "varchar" | "char" | "datetime" | "time" | "timetz" | "timestamp" | "varbinary" | "blob" | "int4range" | "numrange" | "tsrange" | "tstzrange" | "daterange" | "int4multirange" | "int8multirange" | "nummultirange" | "tsmultirange" | "tstzmultirange" | "datemultirange">, z.ZodTemplateLiteral<`binary(${number})` | `timestamptz(${number})` | `varchar(${number})` | `char(${number})` | `datetime(${number})` | `time(${number})` | `timetz(${number})` | `timestamp(${number})` | `varbinary(${number})`>, z.ZodTemplateLiteral<`decimal(${number},${number})` | `decimal(${number}, ${number})` | `numeric(${number},${number})` | `numeric(${number}, ${number})`>]>, z.ZodTemplateLiteral<"text[]" | "bigint[]" | "boolean[]" | "uuid[]" | "date[]" | "binary[]" | "timestamptz[]" | "jsonb[]" | "bytea[]" | "integer[]" | "json[]" | "int2[]" | "int4[]" | "int8[]" | "smallint[]" | "real[]" | "double precision[]" | "float4[]" | "float8[]" | "decimal[]" | "numeric[]" | "serial[]" | "bigserial[]" | "bool[]" | "varchar[]" | "char[]" | "datetime[]" | "time[]" | "timetz[]" | "timestamp[]" | "varbinary[]" | "blob[]" | "int4range[]" | "numrange[]" | "tsrange[]" | "tstzrange[]" | "daterange[]" | "int4multirange[]" | "int8multirange[]" | "nummultirange[]" | "tsmultirange[]" | "tstzmultirange[]" | "datemultirange[]" | `binary(${number})[]` | `timestamptz(${number})[]` | `varchar(${number})[]` | `char(${number})[]` | `datetime(${number})[]` | `time(${number})[]` | `timetz(${number})[]` | `timestamp(${number})[]` | `varbinary(${number})[]` | `decimal(${number},${number})[]` | `decimal(${number}, ${number})[]` | `numeric(${number},${number})[]` | `numeric(${number}, ${number})[]` | `bigint[${number}]` | `boolean[${number}]` | `uuid[${number}]` | `date[${number}]` | `binary[${number}]` | `text[${number}]` | `timestamptz[${number}]` | `jsonb[${number}]` | `bytea[${number}]` | `integer[${number}]` | `json[${number}]` | `int2[${number}]` | `int4[${number}]` | `int8[${number}]` | `smallint[${number}]` | `real[${number}]` | `double precision[${number}]` | `float4[${number}]` | `float8[${number}]` | `decimal[${number}]` | `numeric[${number}]` | `serial[${number}]` | `bigserial[${number}]` | `bool[${number}]` | `varchar[${number}]` | `char[${number}]` | `datetime[${number}]` | `time[${number}]` | `timetz[${number}]` | `timestamp[${number}]` | `varbinary[${number}]` | `blob[${number}]` | `int4range[${number}]` | `numrange[${number}]` | `tsrange[${number}]` | `tstzrange[${number}]` | `daterange[${number}]` | `int4multirange[${number}]` | `int8multirange[${number}]` | `nummultirange[${number}]` | `tsmultirange[${number}]` | `tstzmultirange[${number}]` | `datemultirange[${number}]` | `binary(${number})[${number}]` | `timestamptz(${number})[${number}]` | `varchar(${number})[${number}]` | `char(${number})[${number}]` | `datetime(${number})[${number}]` | `time(${number})[${number}]` | `timetz(${number})[${number}]` | `timestamp(${number})[${number}]` | `varbinary(${number})[${number}]` | `decimal(${number},${number})[${number}]` | `decimal(${number}, ${number})[${number}]` | `numeric(${number},${number})[${number}]` | `numeric(${number}, ${number})[${number}]`>]>;
74
- required: z.ZodDefault<z.ZodBoolean>;
75
- unique: z.ZodDefault<z.ZodBoolean>;
76
- primary: z.ZodDefault<z.ZodBoolean>;
77
- references: z.ZodOptional<z.ZodString>;
78
- onDelete: z.ZodOptional<z.ZodEnum<{
79
- cascade: "cascade";
80
- restrict: "restrict";
81
- "no action": "no action";
82
- "set null": "set null";
83
- "set default": "set default";
84
- }>>;
85
- default: z.ZodOptional<z.ZodAny>;
86
- check: z.ZodOptional<z.ZodString>;
87
- }, z.core.$strict>;
88
- export interface Column extends z.infer<typeof Column> {
89
- }
90
- export declare const Constraint: z.ZodDiscriminatedUnion<[z.ZodObject<{
91
- type: z.ZodLiteral<"primary_key">;
92
- on: z.ZodArray<z.ZodString>;
93
- }, z.core.$strict>, z.ZodObject<{
94
- type: z.ZodLiteral<"foreign_key">;
95
- on: z.ZodArray<z.ZodString>;
96
- target: z.ZodString;
97
- references: z.ZodArray<z.ZodString>;
98
- }, z.core.$strict>, z.ZodObject<{
99
- type: z.ZodLiteral<"unique">;
100
- on: z.ZodArray<z.ZodString>;
101
- nulls_not_distinct: z.ZodOptional<z.ZodBoolean>;
102
- }, z.core.$strict>, z.ZodObject<{
103
- type: z.ZodLiteral<"check">;
104
- check: z.ZodString;
105
- }, z.core.$strict>], "type">;
106
- export type Constraint = z.infer<typeof Constraint>;
107
- export declare const Table: z.ZodObject<{
108
- columns: z.ZodRecord<z.ZodString, z.ZodObject<{
109
- type: z.ZodUnion<readonly [z.ZodUnion<readonly [z.ZodLiteral<"bigint" | "boolean" | "uuid" | "date" | "binary" | "text" | "timestamptz" | "jsonb" | "bytea" | "integer" | "json" | "int2" | "int4" | "int8" | "smallint" | "real" | "double precision" | "float4" | "float8" | "decimal" | "numeric" | "serial" | "bigserial" | "bool" | "varchar" | "char" | "datetime" | "time" | "timetz" | "timestamp" | "varbinary" | "blob" | "int4range" | "numrange" | "tsrange" | "tstzrange" | "daterange" | "int4multirange" | "int8multirange" | "nummultirange" | "tsmultirange" | "tstzmultirange" | "datemultirange">, z.ZodTemplateLiteral<`binary(${number})` | `timestamptz(${number})` | `varchar(${number})` | `char(${number})` | `datetime(${number})` | `time(${number})` | `timetz(${number})` | `timestamp(${number})` | `varbinary(${number})`>, z.ZodTemplateLiteral<`decimal(${number},${number})` | `decimal(${number}, ${number})` | `numeric(${number},${number})` | `numeric(${number}, ${number})`>]>, z.ZodTemplateLiteral<"text[]" | "bigint[]" | "boolean[]" | "uuid[]" | "date[]" | "binary[]" | "timestamptz[]" | "jsonb[]" | "bytea[]" | "integer[]" | "json[]" | "int2[]" | "int4[]" | "int8[]" | "smallint[]" | "real[]" | "double precision[]" | "float4[]" | "float8[]" | "decimal[]" | "numeric[]" | "serial[]" | "bigserial[]" | "bool[]" | "varchar[]" | "char[]" | "datetime[]" | "time[]" | "timetz[]" | "timestamp[]" | "varbinary[]" | "blob[]" | "int4range[]" | "numrange[]" | "tsrange[]" | "tstzrange[]" | "daterange[]" | "int4multirange[]" | "int8multirange[]" | "nummultirange[]" | "tsmultirange[]" | "tstzmultirange[]" | "datemultirange[]" | `binary(${number})[]` | `timestamptz(${number})[]` | `varchar(${number})[]` | `char(${number})[]` | `datetime(${number})[]` | `time(${number})[]` | `timetz(${number})[]` | `timestamp(${number})[]` | `varbinary(${number})[]` | `decimal(${number},${number})[]` | `decimal(${number}, ${number})[]` | `numeric(${number},${number})[]` | `numeric(${number}, ${number})[]` | `bigint[${number}]` | `boolean[${number}]` | `uuid[${number}]` | `date[${number}]` | `binary[${number}]` | `text[${number}]` | `timestamptz[${number}]` | `jsonb[${number}]` | `bytea[${number}]` | `integer[${number}]` | `json[${number}]` | `int2[${number}]` | `int4[${number}]` | `int8[${number}]` | `smallint[${number}]` | `real[${number}]` | `double precision[${number}]` | `float4[${number}]` | `float8[${number}]` | `decimal[${number}]` | `numeric[${number}]` | `serial[${number}]` | `bigserial[${number}]` | `bool[${number}]` | `varchar[${number}]` | `char[${number}]` | `datetime[${number}]` | `time[${number}]` | `timetz[${number}]` | `timestamp[${number}]` | `varbinary[${number}]` | `blob[${number}]` | `int4range[${number}]` | `numrange[${number}]` | `tsrange[${number}]` | `tstzrange[${number}]` | `daterange[${number}]` | `int4multirange[${number}]` | `int8multirange[${number}]` | `nummultirange[${number}]` | `tsmultirange[${number}]` | `tstzmultirange[${number}]` | `datemultirange[${number}]` | `binary(${number})[${number}]` | `timestamptz(${number})[${number}]` | `varchar(${number})[${number}]` | `char(${number})[${number}]` | `datetime(${number})[${number}]` | `time(${number})[${number}]` | `timetz(${number})[${number}]` | `timestamp(${number})[${number}]` | `varbinary(${number})[${number}]` | `decimal(${number},${number})[${number}]` | `decimal(${number}, ${number})[${number}]` | `numeric(${number},${number})[${number}]` | `numeric(${number}, ${number})[${number}]`>]>;
110
- required: z.ZodDefault<z.ZodBoolean>;
111
- unique: z.ZodDefault<z.ZodBoolean>;
112
- primary: z.ZodDefault<z.ZodBoolean>;
113
- references: z.ZodOptional<z.ZodString>;
114
- onDelete: z.ZodOptional<z.ZodEnum<{
115
- cascade: "cascade";
116
- restrict: "restrict";
117
- "no action": "no action";
118
- "set null": "set null";
119
- "set default": "set default";
120
- }>>;
121
- default: z.ZodOptional<z.ZodAny>;
122
- check: z.ZodOptional<z.ZodString>;
123
- }, z.core.$strict>>;
124
- constraints: z.ZodDefault<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodDiscriminatedUnion<[z.ZodObject<{
125
- type: z.ZodLiteral<"primary_key">;
126
- on: z.ZodArray<z.ZodString>;
127
- }, z.core.$strict>, z.ZodObject<{
128
- type: z.ZodLiteral<"foreign_key">;
129
- on: z.ZodArray<z.ZodString>;
130
- target: z.ZodString;
131
- references: z.ZodArray<z.ZodString>;
132
- }, z.core.$strict>, z.ZodObject<{
133
- type: z.ZodLiteral<"unique">;
134
- on: z.ZodArray<z.ZodString>;
135
- nulls_not_distinct: z.ZodOptional<z.ZodBoolean>;
136
- }, z.core.$strict>, z.ZodObject<{
137
- type: z.ZodLiteral<"check">;
138
- check: z.ZodString;
139
- }, z.core.$strict>], "type">>>>;
140
- }, z.core.$strict>;
141
- export interface Table extends z.infer<typeof Table> {
142
- }
143
- export declare const IndexString: z.ZodTemplateLiteral<`${string}:${string}`>;
144
- export type IndexString = z.infer<typeof IndexString>;
145
- export declare function parseIndex(value: IndexString): {
146
- table: string;
147
- column: string;
148
- };
149
- export declare const SchemaDecl: z.ZodObject<{
150
- tables: z.ZodRecord<z.ZodString, z.ZodObject<{
151
- columns: z.ZodRecord<z.ZodString, z.ZodObject<{
152
- type: z.ZodUnion<readonly [z.ZodUnion<readonly [z.ZodLiteral<"bigint" | "boolean" | "uuid" | "date" | "binary" | "text" | "timestamptz" | "jsonb" | "bytea" | "integer" | "json" | "int2" | "int4" | "int8" | "smallint" | "real" | "double precision" | "float4" | "float8" | "decimal" | "numeric" | "serial" | "bigserial" | "bool" | "varchar" | "char" | "datetime" | "time" | "timetz" | "timestamp" | "varbinary" | "blob" | "int4range" | "numrange" | "tsrange" | "tstzrange" | "daterange" | "int4multirange" | "int8multirange" | "nummultirange" | "tsmultirange" | "tstzmultirange" | "datemultirange">, z.ZodTemplateLiteral<`binary(${number})` | `timestamptz(${number})` | `varchar(${number})` | `char(${number})` | `datetime(${number})` | `time(${number})` | `timetz(${number})` | `timestamp(${number})` | `varbinary(${number})`>, z.ZodTemplateLiteral<`decimal(${number},${number})` | `decimal(${number}, ${number})` | `numeric(${number},${number})` | `numeric(${number}, ${number})`>]>, z.ZodTemplateLiteral<"text[]" | "bigint[]" | "boolean[]" | "uuid[]" | "date[]" | "binary[]" | "timestamptz[]" | "jsonb[]" | "bytea[]" | "integer[]" | "json[]" | "int2[]" | "int4[]" | "int8[]" | "smallint[]" | "real[]" | "double precision[]" | "float4[]" | "float8[]" | "decimal[]" | "numeric[]" | "serial[]" | "bigserial[]" | "bool[]" | "varchar[]" | "char[]" | "datetime[]" | "time[]" | "timetz[]" | "timestamp[]" | "varbinary[]" | "blob[]" | "int4range[]" | "numrange[]" | "tsrange[]" | "tstzrange[]" | "daterange[]" | "int4multirange[]" | "int8multirange[]" | "nummultirange[]" | "tsmultirange[]" | "tstzmultirange[]" | "datemultirange[]" | `binary(${number})[]` | `timestamptz(${number})[]` | `varchar(${number})[]` | `char(${number})[]` | `datetime(${number})[]` | `time(${number})[]` | `timetz(${number})[]` | `timestamp(${number})[]` | `varbinary(${number})[]` | `decimal(${number},${number})[]` | `decimal(${number}, ${number})[]` | `numeric(${number},${number})[]` | `numeric(${number}, ${number})[]` | `bigint[${number}]` | `boolean[${number}]` | `uuid[${number}]` | `date[${number}]` | `binary[${number}]` | `text[${number}]` | `timestamptz[${number}]` | `jsonb[${number}]` | `bytea[${number}]` | `integer[${number}]` | `json[${number}]` | `int2[${number}]` | `int4[${number}]` | `int8[${number}]` | `smallint[${number}]` | `real[${number}]` | `double precision[${number}]` | `float4[${number}]` | `float8[${number}]` | `decimal[${number}]` | `numeric[${number}]` | `serial[${number}]` | `bigserial[${number}]` | `bool[${number}]` | `varchar[${number}]` | `char[${number}]` | `datetime[${number}]` | `time[${number}]` | `timetz[${number}]` | `timestamp[${number}]` | `varbinary[${number}]` | `blob[${number}]` | `int4range[${number}]` | `numrange[${number}]` | `tsrange[${number}]` | `tstzrange[${number}]` | `daterange[${number}]` | `int4multirange[${number}]` | `int8multirange[${number}]` | `nummultirange[${number}]` | `tsmultirange[${number}]` | `tstzmultirange[${number}]` | `datemultirange[${number}]` | `binary(${number})[${number}]` | `timestamptz(${number})[${number}]` | `varchar(${number})[${number}]` | `char(${number})[${number}]` | `datetime(${number})[${number}]` | `time(${number})[${number}]` | `timetz(${number})[${number}]` | `timestamp(${number})[${number}]` | `varbinary(${number})[${number}]` | `decimal(${number},${number})[${number}]` | `decimal(${number}, ${number})[${number}]` | `numeric(${number},${number})[${number}]` | `numeric(${number}, ${number})[${number}]`>]>;
153
- required: z.ZodDefault<z.ZodBoolean>;
154
- unique: z.ZodDefault<z.ZodBoolean>;
155
- primary: z.ZodDefault<z.ZodBoolean>;
156
- references: z.ZodOptional<z.ZodString>;
157
- onDelete: z.ZodOptional<z.ZodEnum<{
158
- cascade: "cascade";
159
- restrict: "restrict";
160
- "no action": "no action";
161
- "set null": "set null";
162
- "set default": "set default";
163
- }>>;
164
- default: z.ZodOptional<z.ZodAny>;
165
- check: z.ZodOptional<z.ZodString>;
166
- }, z.core.$strict>>;
167
- constraints: z.ZodDefault<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodDiscriminatedUnion<[z.ZodObject<{
168
- type: z.ZodLiteral<"primary_key">;
169
- on: z.ZodArray<z.ZodString>;
170
- }, z.core.$strict>, z.ZodObject<{
171
- type: z.ZodLiteral<"foreign_key">;
172
- on: z.ZodArray<z.ZodString>;
173
- target: z.ZodString;
174
- references: z.ZodArray<z.ZodString>;
175
- }, z.core.$strict>, z.ZodObject<{
176
- type: z.ZodLiteral<"unique">;
177
- on: z.ZodArray<z.ZodString>;
178
- nulls_not_distinct: z.ZodOptional<z.ZodBoolean>;
179
- }, z.core.$strict>, z.ZodObject<{
180
- type: z.ZodLiteral<"check">;
181
- check: z.ZodString;
182
- }, z.core.$strict>], "type">>>>;
183
- }, z.core.$strict>>;
184
- indexes: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodTemplateLiteral<`${string}:${string}`>>>>;
185
- }, z.core.$strict>;
186
- export interface SchemaDecl extends z.infer<typeof SchemaDecl> {
187
- }
188
- export declare const ColumnDelta: z.ZodObject<{
189
- type: z.ZodOptional<z.ZodUnion<readonly [z.ZodUnion<readonly [z.ZodLiteral<"bigint" | "boolean" | "uuid" | "date" | "binary" | "text" | "timestamptz" | "jsonb" | "bytea" | "integer" | "json" | "int2" | "int4" | "int8" | "smallint" | "real" | "double precision" | "float4" | "float8" | "decimal" | "numeric" | "serial" | "bigserial" | "bool" | "varchar" | "char" | "datetime" | "time" | "timetz" | "timestamp" | "varbinary" | "blob" | "int4range" | "numrange" | "tsrange" | "tstzrange" | "daterange" | "int4multirange" | "int8multirange" | "nummultirange" | "tsmultirange" | "tstzmultirange" | "datemultirange">, z.ZodTemplateLiteral<`binary(${number})` | `timestamptz(${number})` | `varchar(${number})` | `char(${number})` | `datetime(${number})` | `time(${number})` | `timetz(${number})` | `timestamp(${number})` | `varbinary(${number})`>, z.ZodTemplateLiteral<`decimal(${number},${number})` | `decimal(${number}, ${number})` | `numeric(${number},${number})` | `numeric(${number}, ${number})`>]>, z.ZodTemplateLiteral<"text[]" | "bigint[]" | "boolean[]" | "uuid[]" | "date[]" | "binary[]" | "timestamptz[]" | "jsonb[]" | "bytea[]" | "integer[]" | "json[]" | "int2[]" | "int4[]" | "int8[]" | "smallint[]" | "real[]" | "double precision[]" | "float4[]" | "float8[]" | "decimal[]" | "numeric[]" | "serial[]" | "bigserial[]" | "bool[]" | "varchar[]" | "char[]" | "datetime[]" | "time[]" | "timetz[]" | "timestamp[]" | "varbinary[]" | "blob[]" | "int4range[]" | "numrange[]" | "tsrange[]" | "tstzrange[]" | "daterange[]" | "int4multirange[]" | "int8multirange[]" | "nummultirange[]" | "tsmultirange[]" | "tstzmultirange[]" | "datemultirange[]" | `binary(${number})[]` | `timestamptz(${number})[]` | `varchar(${number})[]` | `char(${number})[]` | `datetime(${number})[]` | `time(${number})[]` | `timetz(${number})[]` | `timestamp(${number})[]` | `varbinary(${number})[]` | `decimal(${number},${number})[]` | `decimal(${number}, ${number})[]` | `numeric(${number},${number})[]` | `numeric(${number}, ${number})[]` | `bigint[${number}]` | `boolean[${number}]` | `uuid[${number}]` | `date[${number}]` | `binary[${number}]` | `text[${number}]` | `timestamptz[${number}]` | `jsonb[${number}]` | `bytea[${number}]` | `integer[${number}]` | `json[${number}]` | `int2[${number}]` | `int4[${number}]` | `int8[${number}]` | `smallint[${number}]` | `real[${number}]` | `double precision[${number}]` | `float4[${number}]` | `float8[${number}]` | `decimal[${number}]` | `numeric[${number}]` | `serial[${number}]` | `bigserial[${number}]` | `bool[${number}]` | `varchar[${number}]` | `char[${number}]` | `datetime[${number}]` | `time[${number}]` | `timetz[${number}]` | `timestamp[${number}]` | `varbinary[${number}]` | `blob[${number}]` | `int4range[${number}]` | `numrange[${number}]` | `tsrange[${number}]` | `tstzrange[${number}]` | `daterange[${number}]` | `int4multirange[${number}]` | `int8multirange[${number}]` | `nummultirange[${number}]` | `tsmultirange[${number}]` | `tstzmultirange[${number}]` | `datemultirange[${number}]` | `binary(${number})[${number}]` | `timestamptz(${number})[${number}]` | `varchar(${number})[${number}]` | `char(${number})[${number}]` | `datetime(${number})[${number}]` | `time(${number})[${number}]` | `timetz(${number})[${number}]` | `timestamp(${number})[${number}]` | `varbinary(${number})[${number}]` | `decimal(${number},${number})[${number}]` | `decimal(${number}, ${number})[${number}]` | `numeric(${number},${number})[${number}]` | `numeric(${number}, ${number})[${number}]`>]>>;
190
- default: z.ZodOptional<z.ZodString>;
191
- ops: z.ZodOptional<z.ZodArray<z.ZodLiteral<"set_required" | "drop_default" | "drop_required">>>;
192
- }, z.core.$strict>;
193
- export interface ColumnDelta extends z.infer<typeof ColumnDelta> {
194
- }
195
- export declare const TableDelta: z.ZodObject<{
196
- add_columns: z.ZodDefault<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
197
- type: z.ZodUnion<readonly [z.ZodUnion<readonly [z.ZodLiteral<"bigint" | "boolean" | "uuid" | "date" | "binary" | "text" | "timestamptz" | "jsonb" | "bytea" | "integer" | "json" | "int2" | "int4" | "int8" | "smallint" | "real" | "double precision" | "float4" | "float8" | "decimal" | "numeric" | "serial" | "bigserial" | "bool" | "varchar" | "char" | "datetime" | "time" | "timetz" | "timestamp" | "varbinary" | "blob" | "int4range" | "numrange" | "tsrange" | "tstzrange" | "daterange" | "int4multirange" | "int8multirange" | "nummultirange" | "tsmultirange" | "tstzmultirange" | "datemultirange">, z.ZodTemplateLiteral<`binary(${number})` | `timestamptz(${number})` | `varchar(${number})` | `char(${number})` | `datetime(${number})` | `time(${number})` | `timetz(${number})` | `timestamp(${number})` | `varbinary(${number})`>, z.ZodTemplateLiteral<`decimal(${number},${number})` | `decimal(${number}, ${number})` | `numeric(${number},${number})` | `numeric(${number}, ${number})`>]>, z.ZodTemplateLiteral<"text[]" | "bigint[]" | "boolean[]" | "uuid[]" | "date[]" | "binary[]" | "timestamptz[]" | "jsonb[]" | "bytea[]" | "integer[]" | "json[]" | "int2[]" | "int4[]" | "int8[]" | "smallint[]" | "real[]" | "double precision[]" | "float4[]" | "float8[]" | "decimal[]" | "numeric[]" | "serial[]" | "bigserial[]" | "bool[]" | "varchar[]" | "char[]" | "datetime[]" | "time[]" | "timetz[]" | "timestamp[]" | "varbinary[]" | "blob[]" | "int4range[]" | "numrange[]" | "tsrange[]" | "tstzrange[]" | "daterange[]" | "int4multirange[]" | "int8multirange[]" | "nummultirange[]" | "tsmultirange[]" | "tstzmultirange[]" | "datemultirange[]" | `binary(${number})[]` | `timestamptz(${number})[]` | `varchar(${number})[]` | `char(${number})[]` | `datetime(${number})[]` | `time(${number})[]` | `timetz(${number})[]` | `timestamp(${number})[]` | `varbinary(${number})[]` | `decimal(${number},${number})[]` | `decimal(${number}, ${number})[]` | `numeric(${number},${number})[]` | `numeric(${number}, ${number})[]` | `bigint[${number}]` | `boolean[${number}]` | `uuid[${number}]` | `date[${number}]` | `binary[${number}]` | `text[${number}]` | `timestamptz[${number}]` | `jsonb[${number}]` | `bytea[${number}]` | `integer[${number}]` | `json[${number}]` | `int2[${number}]` | `int4[${number}]` | `int8[${number}]` | `smallint[${number}]` | `real[${number}]` | `double precision[${number}]` | `float4[${number}]` | `float8[${number}]` | `decimal[${number}]` | `numeric[${number}]` | `serial[${number}]` | `bigserial[${number}]` | `bool[${number}]` | `varchar[${number}]` | `char[${number}]` | `datetime[${number}]` | `time[${number}]` | `timetz[${number}]` | `timestamp[${number}]` | `varbinary[${number}]` | `blob[${number}]` | `int4range[${number}]` | `numrange[${number}]` | `tsrange[${number}]` | `tstzrange[${number}]` | `daterange[${number}]` | `int4multirange[${number}]` | `int8multirange[${number}]` | `nummultirange[${number}]` | `tsmultirange[${number}]` | `tstzmultirange[${number}]` | `datemultirange[${number}]` | `binary(${number})[${number}]` | `timestamptz(${number})[${number}]` | `varchar(${number})[${number}]` | `char(${number})[${number}]` | `datetime(${number})[${number}]` | `time(${number})[${number}]` | `timetz(${number})[${number}]` | `timestamp(${number})[${number}]` | `varbinary(${number})[${number}]` | `decimal(${number},${number})[${number}]` | `decimal(${number}, ${number})[${number}]` | `numeric(${number},${number})[${number}]` | `numeric(${number}, ${number})[${number}]`>]>;
198
- required: z.ZodDefault<z.ZodBoolean>;
199
- unique: z.ZodDefault<z.ZodBoolean>;
200
- primary: z.ZodDefault<z.ZodBoolean>;
201
- references: z.ZodOptional<z.ZodString>;
202
- onDelete: z.ZodOptional<z.ZodEnum<{
203
- cascade: "cascade";
204
- restrict: "restrict";
205
- "no action": "no action";
206
- "set null": "set null";
207
- "set default": "set default";
208
- }>>;
209
- default: z.ZodOptional<z.ZodAny>;
210
- check: z.ZodOptional<z.ZodString>;
211
- }, z.core.$strict>>>>;
212
- drop_columns: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
213
- alter_columns: z.ZodDefault<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
214
- type: z.ZodOptional<z.ZodUnion<readonly [z.ZodUnion<readonly [z.ZodLiteral<"bigint" | "boolean" | "uuid" | "date" | "binary" | "text" | "timestamptz" | "jsonb" | "bytea" | "integer" | "json" | "int2" | "int4" | "int8" | "smallint" | "real" | "double precision" | "float4" | "float8" | "decimal" | "numeric" | "serial" | "bigserial" | "bool" | "varchar" | "char" | "datetime" | "time" | "timetz" | "timestamp" | "varbinary" | "blob" | "int4range" | "numrange" | "tsrange" | "tstzrange" | "daterange" | "int4multirange" | "int8multirange" | "nummultirange" | "tsmultirange" | "tstzmultirange" | "datemultirange">, z.ZodTemplateLiteral<`binary(${number})` | `timestamptz(${number})` | `varchar(${number})` | `char(${number})` | `datetime(${number})` | `time(${number})` | `timetz(${number})` | `timestamp(${number})` | `varbinary(${number})`>, z.ZodTemplateLiteral<`decimal(${number},${number})` | `decimal(${number}, ${number})` | `numeric(${number},${number})` | `numeric(${number}, ${number})`>]>, z.ZodTemplateLiteral<"text[]" | "bigint[]" | "boolean[]" | "uuid[]" | "date[]" | "binary[]" | "timestamptz[]" | "jsonb[]" | "bytea[]" | "integer[]" | "json[]" | "int2[]" | "int4[]" | "int8[]" | "smallint[]" | "real[]" | "double precision[]" | "float4[]" | "float8[]" | "decimal[]" | "numeric[]" | "serial[]" | "bigserial[]" | "bool[]" | "varchar[]" | "char[]" | "datetime[]" | "time[]" | "timetz[]" | "timestamp[]" | "varbinary[]" | "blob[]" | "int4range[]" | "numrange[]" | "tsrange[]" | "tstzrange[]" | "daterange[]" | "int4multirange[]" | "int8multirange[]" | "nummultirange[]" | "tsmultirange[]" | "tstzmultirange[]" | "datemultirange[]" | `binary(${number})[]` | `timestamptz(${number})[]` | `varchar(${number})[]` | `char(${number})[]` | `datetime(${number})[]` | `time(${number})[]` | `timetz(${number})[]` | `timestamp(${number})[]` | `varbinary(${number})[]` | `decimal(${number},${number})[]` | `decimal(${number}, ${number})[]` | `numeric(${number},${number})[]` | `numeric(${number}, ${number})[]` | `bigint[${number}]` | `boolean[${number}]` | `uuid[${number}]` | `date[${number}]` | `binary[${number}]` | `text[${number}]` | `timestamptz[${number}]` | `jsonb[${number}]` | `bytea[${number}]` | `integer[${number}]` | `json[${number}]` | `int2[${number}]` | `int4[${number}]` | `int8[${number}]` | `smallint[${number}]` | `real[${number}]` | `double precision[${number}]` | `float4[${number}]` | `float8[${number}]` | `decimal[${number}]` | `numeric[${number}]` | `serial[${number}]` | `bigserial[${number}]` | `bool[${number}]` | `varchar[${number}]` | `char[${number}]` | `datetime[${number}]` | `time[${number}]` | `timetz[${number}]` | `timestamp[${number}]` | `varbinary[${number}]` | `blob[${number}]` | `int4range[${number}]` | `numrange[${number}]` | `tsrange[${number}]` | `tstzrange[${number}]` | `daterange[${number}]` | `int4multirange[${number}]` | `int8multirange[${number}]` | `nummultirange[${number}]` | `tsmultirange[${number}]` | `tstzmultirange[${number}]` | `datemultirange[${number}]` | `binary(${number})[${number}]` | `timestamptz(${number})[${number}]` | `varchar(${number})[${number}]` | `char(${number})[${number}]` | `datetime(${number})[${number}]` | `time(${number})[${number}]` | `timetz(${number})[${number}]` | `timestamp(${number})[${number}]` | `varbinary(${number})[${number}]` | `decimal(${number},${number})[${number}]` | `decimal(${number}, ${number})[${number}]` | `numeric(${number},${number})[${number}]` | `numeric(${number}, ${number})[${number}]`>]>>;
215
- default: z.ZodOptional<z.ZodString>;
216
- ops: z.ZodOptional<z.ZodArray<z.ZodLiteral<"set_required" | "drop_default" | "drop_required">>>;
217
- }, z.core.$strict>>>>;
218
- add_constraints: z.ZodDefault<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodDiscriminatedUnion<[z.ZodObject<{
219
- type: z.ZodLiteral<"primary_key">;
220
- on: z.ZodArray<z.ZodString>;
221
- }, z.core.$strict>, z.ZodObject<{
222
- type: z.ZodLiteral<"foreign_key">;
223
- on: z.ZodArray<z.ZodString>;
224
- target: z.ZodString;
225
- references: z.ZodArray<z.ZodString>;
226
- }, z.core.$strict>, z.ZodObject<{
227
- type: z.ZodLiteral<"unique">;
228
- on: z.ZodArray<z.ZodString>;
229
- nulls_not_distinct: z.ZodOptional<z.ZodBoolean>;
230
- }, z.core.$strict>, z.ZodObject<{
231
- type: z.ZodLiteral<"check">;
232
- check: z.ZodString;
233
- }, z.core.$strict>], "type">>>>;
234
- drop_constraints: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
235
- }, z.core.$strict>;
236
- export interface TableDelta extends z.infer<typeof TableDelta> {
237
- }
238
- export declare const VersionDelta: z.ZodObject<{
239
- delta: z.ZodLiteral<true>;
240
- add_tables: z.ZodDefault<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
241
- columns: z.ZodRecord<z.ZodString, z.ZodObject<{
242
- type: z.ZodUnion<readonly [z.ZodUnion<readonly [z.ZodLiteral<"bigint" | "boolean" | "uuid" | "date" | "binary" | "text" | "timestamptz" | "jsonb" | "bytea" | "integer" | "json" | "int2" | "int4" | "int8" | "smallint" | "real" | "double precision" | "float4" | "float8" | "decimal" | "numeric" | "serial" | "bigserial" | "bool" | "varchar" | "char" | "datetime" | "time" | "timetz" | "timestamp" | "varbinary" | "blob" | "int4range" | "numrange" | "tsrange" | "tstzrange" | "daterange" | "int4multirange" | "int8multirange" | "nummultirange" | "tsmultirange" | "tstzmultirange" | "datemultirange">, z.ZodTemplateLiteral<`binary(${number})` | `timestamptz(${number})` | `varchar(${number})` | `char(${number})` | `datetime(${number})` | `time(${number})` | `timetz(${number})` | `timestamp(${number})` | `varbinary(${number})`>, z.ZodTemplateLiteral<`decimal(${number},${number})` | `decimal(${number}, ${number})` | `numeric(${number},${number})` | `numeric(${number}, ${number})`>]>, z.ZodTemplateLiteral<"text[]" | "bigint[]" | "boolean[]" | "uuid[]" | "date[]" | "binary[]" | "timestamptz[]" | "jsonb[]" | "bytea[]" | "integer[]" | "json[]" | "int2[]" | "int4[]" | "int8[]" | "smallint[]" | "real[]" | "double precision[]" | "float4[]" | "float8[]" | "decimal[]" | "numeric[]" | "serial[]" | "bigserial[]" | "bool[]" | "varchar[]" | "char[]" | "datetime[]" | "time[]" | "timetz[]" | "timestamp[]" | "varbinary[]" | "blob[]" | "int4range[]" | "numrange[]" | "tsrange[]" | "tstzrange[]" | "daterange[]" | "int4multirange[]" | "int8multirange[]" | "nummultirange[]" | "tsmultirange[]" | "tstzmultirange[]" | "datemultirange[]" | `binary(${number})[]` | `timestamptz(${number})[]` | `varchar(${number})[]` | `char(${number})[]` | `datetime(${number})[]` | `time(${number})[]` | `timetz(${number})[]` | `timestamp(${number})[]` | `varbinary(${number})[]` | `decimal(${number},${number})[]` | `decimal(${number}, ${number})[]` | `numeric(${number},${number})[]` | `numeric(${number}, ${number})[]` | `bigint[${number}]` | `boolean[${number}]` | `uuid[${number}]` | `date[${number}]` | `binary[${number}]` | `text[${number}]` | `timestamptz[${number}]` | `jsonb[${number}]` | `bytea[${number}]` | `integer[${number}]` | `json[${number}]` | `int2[${number}]` | `int4[${number}]` | `int8[${number}]` | `smallint[${number}]` | `real[${number}]` | `double precision[${number}]` | `float4[${number}]` | `float8[${number}]` | `decimal[${number}]` | `numeric[${number}]` | `serial[${number}]` | `bigserial[${number}]` | `bool[${number}]` | `varchar[${number}]` | `char[${number}]` | `datetime[${number}]` | `time[${number}]` | `timetz[${number}]` | `timestamp[${number}]` | `varbinary[${number}]` | `blob[${number}]` | `int4range[${number}]` | `numrange[${number}]` | `tsrange[${number}]` | `tstzrange[${number}]` | `daterange[${number}]` | `int4multirange[${number}]` | `int8multirange[${number}]` | `nummultirange[${number}]` | `tsmultirange[${number}]` | `tstzmultirange[${number}]` | `datemultirange[${number}]` | `binary(${number})[${number}]` | `timestamptz(${number})[${number}]` | `varchar(${number})[${number}]` | `char(${number})[${number}]` | `datetime(${number})[${number}]` | `time(${number})[${number}]` | `timetz(${number})[${number}]` | `timestamp(${number})[${number}]` | `varbinary(${number})[${number}]` | `decimal(${number},${number})[${number}]` | `decimal(${number}, ${number})[${number}]` | `numeric(${number},${number})[${number}]` | `numeric(${number}, ${number})[${number}]`>]>;
243
- required: z.ZodDefault<z.ZodBoolean>;
244
- unique: z.ZodDefault<z.ZodBoolean>;
245
- primary: z.ZodDefault<z.ZodBoolean>;
246
- references: z.ZodOptional<z.ZodString>;
247
- onDelete: z.ZodOptional<z.ZodEnum<{
248
- cascade: "cascade";
249
- restrict: "restrict";
250
- "no action": "no action";
251
- "set null": "set null";
252
- "set default": "set default";
253
- }>>;
254
- default: z.ZodOptional<z.ZodAny>;
255
- check: z.ZodOptional<z.ZodString>;
256
- }, z.core.$strict>>;
257
- constraints: z.ZodDefault<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodDiscriminatedUnion<[z.ZodObject<{
258
- type: z.ZodLiteral<"primary_key">;
259
- on: z.ZodArray<z.ZodString>;
260
- }, z.core.$strict>, z.ZodObject<{
261
- type: z.ZodLiteral<"foreign_key">;
262
- on: z.ZodArray<z.ZodString>;
263
- target: z.ZodString;
264
- references: z.ZodArray<z.ZodString>;
265
- }, z.core.$strict>, z.ZodObject<{
266
- type: z.ZodLiteral<"unique">;
267
- on: z.ZodArray<z.ZodString>;
268
- nulls_not_distinct: z.ZodOptional<z.ZodBoolean>;
269
- }, z.core.$strict>, z.ZodObject<{
270
- type: z.ZodLiteral<"check">;
271
- check: z.ZodString;
272
- }, z.core.$strict>], "type">>>>;
273
- }, z.core.$strict>>>>;
274
- drop_tables: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
275
- alter_tables: z.ZodDefault<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
276
- add_columns: z.ZodDefault<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
277
- type: z.ZodUnion<readonly [z.ZodUnion<readonly [z.ZodLiteral<"bigint" | "boolean" | "uuid" | "date" | "binary" | "text" | "timestamptz" | "jsonb" | "bytea" | "integer" | "json" | "int2" | "int4" | "int8" | "smallint" | "real" | "double precision" | "float4" | "float8" | "decimal" | "numeric" | "serial" | "bigserial" | "bool" | "varchar" | "char" | "datetime" | "time" | "timetz" | "timestamp" | "varbinary" | "blob" | "int4range" | "numrange" | "tsrange" | "tstzrange" | "daterange" | "int4multirange" | "int8multirange" | "nummultirange" | "tsmultirange" | "tstzmultirange" | "datemultirange">, z.ZodTemplateLiteral<`binary(${number})` | `timestamptz(${number})` | `varchar(${number})` | `char(${number})` | `datetime(${number})` | `time(${number})` | `timetz(${number})` | `timestamp(${number})` | `varbinary(${number})`>, z.ZodTemplateLiteral<`decimal(${number},${number})` | `decimal(${number}, ${number})` | `numeric(${number},${number})` | `numeric(${number}, ${number})`>]>, z.ZodTemplateLiteral<"text[]" | "bigint[]" | "boolean[]" | "uuid[]" | "date[]" | "binary[]" | "timestamptz[]" | "jsonb[]" | "bytea[]" | "integer[]" | "json[]" | "int2[]" | "int4[]" | "int8[]" | "smallint[]" | "real[]" | "double precision[]" | "float4[]" | "float8[]" | "decimal[]" | "numeric[]" | "serial[]" | "bigserial[]" | "bool[]" | "varchar[]" | "char[]" | "datetime[]" | "time[]" | "timetz[]" | "timestamp[]" | "varbinary[]" | "blob[]" | "int4range[]" | "numrange[]" | "tsrange[]" | "tstzrange[]" | "daterange[]" | "int4multirange[]" | "int8multirange[]" | "nummultirange[]" | "tsmultirange[]" | "tstzmultirange[]" | "datemultirange[]" | `binary(${number})[]` | `timestamptz(${number})[]` | `varchar(${number})[]` | `char(${number})[]` | `datetime(${number})[]` | `time(${number})[]` | `timetz(${number})[]` | `timestamp(${number})[]` | `varbinary(${number})[]` | `decimal(${number},${number})[]` | `decimal(${number}, ${number})[]` | `numeric(${number},${number})[]` | `numeric(${number}, ${number})[]` | `bigint[${number}]` | `boolean[${number}]` | `uuid[${number}]` | `date[${number}]` | `binary[${number}]` | `text[${number}]` | `timestamptz[${number}]` | `jsonb[${number}]` | `bytea[${number}]` | `integer[${number}]` | `json[${number}]` | `int2[${number}]` | `int4[${number}]` | `int8[${number}]` | `smallint[${number}]` | `real[${number}]` | `double precision[${number}]` | `float4[${number}]` | `float8[${number}]` | `decimal[${number}]` | `numeric[${number}]` | `serial[${number}]` | `bigserial[${number}]` | `bool[${number}]` | `varchar[${number}]` | `char[${number}]` | `datetime[${number}]` | `time[${number}]` | `timetz[${number}]` | `timestamp[${number}]` | `varbinary[${number}]` | `blob[${number}]` | `int4range[${number}]` | `numrange[${number}]` | `tsrange[${number}]` | `tstzrange[${number}]` | `daterange[${number}]` | `int4multirange[${number}]` | `int8multirange[${number}]` | `nummultirange[${number}]` | `tsmultirange[${number}]` | `tstzmultirange[${number}]` | `datemultirange[${number}]` | `binary(${number})[${number}]` | `timestamptz(${number})[${number}]` | `varchar(${number})[${number}]` | `char(${number})[${number}]` | `datetime(${number})[${number}]` | `time(${number})[${number}]` | `timetz(${number})[${number}]` | `timestamp(${number})[${number}]` | `varbinary(${number})[${number}]` | `decimal(${number},${number})[${number}]` | `decimal(${number}, ${number})[${number}]` | `numeric(${number},${number})[${number}]` | `numeric(${number}, ${number})[${number}]`>]>;
278
- required: z.ZodDefault<z.ZodBoolean>;
279
- unique: z.ZodDefault<z.ZodBoolean>;
280
- primary: z.ZodDefault<z.ZodBoolean>;
281
- references: z.ZodOptional<z.ZodString>;
282
- onDelete: z.ZodOptional<z.ZodEnum<{
283
- cascade: "cascade";
284
- restrict: "restrict";
285
- "no action": "no action";
286
- "set null": "set null";
287
- "set default": "set default";
288
- }>>;
289
- default: z.ZodOptional<z.ZodAny>;
290
- check: z.ZodOptional<z.ZodString>;
291
- }, z.core.$strict>>>>;
292
- drop_columns: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
293
- alter_columns: z.ZodDefault<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
294
- type: z.ZodOptional<z.ZodUnion<readonly [z.ZodUnion<readonly [z.ZodLiteral<"bigint" | "boolean" | "uuid" | "date" | "binary" | "text" | "timestamptz" | "jsonb" | "bytea" | "integer" | "json" | "int2" | "int4" | "int8" | "smallint" | "real" | "double precision" | "float4" | "float8" | "decimal" | "numeric" | "serial" | "bigserial" | "bool" | "varchar" | "char" | "datetime" | "time" | "timetz" | "timestamp" | "varbinary" | "blob" | "int4range" | "numrange" | "tsrange" | "tstzrange" | "daterange" | "int4multirange" | "int8multirange" | "nummultirange" | "tsmultirange" | "tstzmultirange" | "datemultirange">, z.ZodTemplateLiteral<`binary(${number})` | `timestamptz(${number})` | `varchar(${number})` | `char(${number})` | `datetime(${number})` | `time(${number})` | `timetz(${number})` | `timestamp(${number})` | `varbinary(${number})`>, z.ZodTemplateLiteral<`decimal(${number},${number})` | `decimal(${number}, ${number})` | `numeric(${number},${number})` | `numeric(${number}, ${number})`>]>, z.ZodTemplateLiteral<"text[]" | "bigint[]" | "boolean[]" | "uuid[]" | "date[]" | "binary[]" | "timestamptz[]" | "jsonb[]" | "bytea[]" | "integer[]" | "json[]" | "int2[]" | "int4[]" | "int8[]" | "smallint[]" | "real[]" | "double precision[]" | "float4[]" | "float8[]" | "decimal[]" | "numeric[]" | "serial[]" | "bigserial[]" | "bool[]" | "varchar[]" | "char[]" | "datetime[]" | "time[]" | "timetz[]" | "timestamp[]" | "varbinary[]" | "blob[]" | "int4range[]" | "numrange[]" | "tsrange[]" | "tstzrange[]" | "daterange[]" | "int4multirange[]" | "int8multirange[]" | "nummultirange[]" | "tsmultirange[]" | "tstzmultirange[]" | "datemultirange[]" | `binary(${number})[]` | `timestamptz(${number})[]` | `varchar(${number})[]` | `char(${number})[]` | `datetime(${number})[]` | `time(${number})[]` | `timetz(${number})[]` | `timestamp(${number})[]` | `varbinary(${number})[]` | `decimal(${number},${number})[]` | `decimal(${number}, ${number})[]` | `numeric(${number},${number})[]` | `numeric(${number}, ${number})[]` | `bigint[${number}]` | `boolean[${number}]` | `uuid[${number}]` | `date[${number}]` | `binary[${number}]` | `text[${number}]` | `timestamptz[${number}]` | `jsonb[${number}]` | `bytea[${number}]` | `integer[${number}]` | `json[${number}]` | `int2[${number}]` | `int4[${number}]` | `int8[${number}]` | `smallint[${number}]` | `real[${number}]` | `double precision[${number}]` | `float4[${number}]` | `float8[${number}]` | `decimal[${number}]` | `numeric[${number}]` | `serial[${number}]` | `bigserial[${number}]` | `bool[${number}]` | `varchar[${number}]` | `char[${number}]` | `datetime[${number}]` | `time[${number}]` | `timetz[${number}]` | `timestamp[${number}]` | `varbinary[${number}]` | `blob[${number}]` | `int4range[${number}]` | `numrange[${number}]` | `tsrange[${number}]` | `tstzrange[${number}]` | `daterange[${number}]` | `int4multirange[${number}]` | `int8multirange[${number}]` | `nummultirange[${number}]` | `tsmultirange[${number}]` | `tstzmultirange[${number}]` | `datemultirange[${number}]` | `binary(${number})[${number}]` | `timestamptz(${number})[${number}]` | `varchar(${number})[${number}]` | `char(${number})[${number}]` | `datetime(${number})[${number}]` | `time(${number})[${number}]` | `timetz(${number})[${number}]` | `timestamp(${number})[${number}]` | `varbinary(${number})[${number}]` | `decimal(${number},${number})[${number}]` | `decimal(${number}, ${number})[${number}]` | `numeric(${number},${number})[${number}]` | `numeric(${number}, ${number})[${number}]`>]>>;
295
- default: z.ZodOptional<z.ZodString>;
296
- ops: z.ZodOptional<z.ZodArray<z.ZodLiteral<"set_required" | "drop_default" | "drop_required">>>;
297
- }, z.core.$strict>>>>;
298
- add_constraints: z.ZodDefault<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodDiscriminatedUnion<[z.ZodObject<{
299
- type: z.ZodLiteral<"primary_key">;
300
- on: z.ZodArray<z.ZodString>;
301
- }, z.core.$strict>, z.ZodObject<{
302
- type: z.ZodLiteral<"foreign_key">;
303
- on: z.ZodArray<z.ZodString>;
304
- target: z.ZodString;
305
- references: z.ZodArray<z.ZodString>;
306
- }, z.core.$strict>, z.ZodObject<{
307
- type: z.ZodLiteral<"unique">;
308
- on: z.ZodArray<z.ZodString>;
309
- nulls_not_distinct: z.ZodOptional<z.ZodBoolean>;
310
- }, z.core.$strict>, z.ZodObject<{
311
- type: z.ZodLiteral<"check">;
312
- check: z.ZodString;
313
- }, z.core.$strict>], "type">>>>;
314
- drop_constraints: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
315
- }, z.core.$strict>>>>;
316
- add_indexes: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodTemplateLiteral<`${string}:${string}`>>>>;
317
- drop_indexes: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodTemplateLiteral<`${string}:${string}`>>>>;
318
- }, z.core.$strict>;
319
- export interface VersionDelta extends z.infer<typeof VersionDelta> {
320
- }
321
- export declare const SchemaFile: z.ZodObject<{
322
- format: z.ZodLiteral<0>;
323
- versions: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
324
- tables: z.ZodRecord<z.ZodString, z.ZodObject<{
325
- columns: z.ZodRecord<z.ZodString, z.ZodObject<{
326
- type: z.ZodUnion<readonly [z.ZodUnion<readonly [z.ZodLiteral<"bigint" | "boolean" | "uuid" | "date" | "binary" | "text" | "timestamptz" | "jsonb" | "bytea" | "integer" | "json" | "int2" | "int4" | "int8" | "smallint" | "real" | "double precision" | "float4" | "float8" | "decimal" | "numeric" | "serial" | "bigserial" | "bool" | "varchar" | "char" | "datetime" | "time" | "timetz" | "timestamp" | "varbinary" | "blob" | "int4range" | "numrange" | "tsrange" | "tstzrange" | "daterange" | "int4multirange" | "int8multirange" | "nummultirange" | "tsmultirange" | "tstzmultirange" | "datemultirange">, z.ZodTemplateLiteral<`binary(${number})` | `timestamptz(${number})` | `varchar(${number})` | `char(${number})` | `datetime(${number})` | `time(${number})` | `timetz(${number})` | `timestamp(${number})` | `varbinary(${number})`>, z.ZodTemplateLiteral<`decimal(${number},${number})` | `decimal(${number}, ${number})` | `numeric(${number},${number})` | `numeric(${number}, ${number})`>]>, z.ZodTemplateLiteral<"text[]" | "bigint[]" | "boolean[]" | "uuid[]" | "date[]" | "binary[]" | "timestamptz[]" | "jsonb[]" | "bytea[]" | "integer[]" | "json[]" | "int2[]" | "int4[]" | "int8[]" | "smallint[]" | "real[]" | "double precision[]" | "float4[]" | "float8[]" | "decimal[]" | "numeric[]" | "serial[]" | "bigserial[]" | "bool[]" | "varchar[]" | "char[]" | "datetime[]" | "time[]" | "timetz[]" | "timestamp[]" | "varbinary[]" | "blob[]" | "int4range[]" | "numrange[]" | "tsrange[]" | "tstzrange[]" | "daterange[]" | "int4multirange[]" | "int8multirange[]" | "nummultirange[]" | "tsmultirange[]" | "tstzmultirange[]" | "datemultirange[]" | `binary(${number})[]` | `timestamptz(${number})[]` | `varchar(${number})[]` | `char(${number})[]` | `datetime(${number})[]` | `time(${number})[]` | `timetz(${number})[]` | `timestamp(${number})[]` | `varbinary(${number})[]` | `decimal(${number},${number})[]` | `decimal(${number}, ${number})[]` | `numeric(${number},${number})[]` | `numeric(${number}, ${number})[]` | `bigint[${number}]` | `boolean[${number}]` | `uuid[${number}]` | `date[${number}]` | `binary[${number}]` | `text[${number}]` | `timestamptz[${number}]` | `jsonb[${number}]` | `bytea[${number}]` | `integer[${number}]` | `json[${number}]` | `int2[${number}]` | `int4[${number}]` | `int8[${number}]` | `smallint[${number}]` | `real[${number}]` | `double precision[${number}]` | `float4[${number}]` | `float8[${number}]` | `decimal[${number}]` | `numeric[${number}]` | `serial[${number}]` | `bigserial[${number}]` | `bool[${number}]` | `varchar[${number}]` | `char[${number}]` | `datetime[${number}]` | `time[${number}]` | `timetz[${number}]` | `timestamp[${number}]` | `varbinary[${number}]` | `blob[${number}]` | `int4range[${number}]` | `numrange[${number}]` | `tsrange[${number}]` | `tstzrange[${number}]` | `daterange[${number}]` | `int4multirange[${number}]` | `int8multirange[${number}]` | `nummultirange[${number}]` | `tsmultirange[${number}]` | `tstzmultirange[${number}]` | `datemultirange[${number}]` | `binary(${number})[${number}]` | `timestamptz(${number})[${number}]` | `varchar(${number})[${number}]` | `char(${number})[${number}]` | `datetime(${number})[${number}]` | `time(${number})[${number}]` | `timetz(${number})[${number}]` | `timestamp(${number})[${number}]` | `varbinary(${number})[${number}]` | `decimal(${number},${number})[${number}]` | `decimal(${number}, ${number})[${number}]` | `numeric(${number},${number})[${number}]` | `numeric(${number}, ${number})[${number}]`>]>;
327
- required: z.ZodDefault<z.ZodBoolean>;
328
- unique: z.ZodDefault<z.ZodBoolean>;
329
- primary: z.ZodDefault<z.ZodBoolean>;
330
- references: z.ZodOptional<z.ZodString>;
331
- onDelete: z.ZodOptional<z.ZodEnum<{
332
- cascade: "cascade";
333
- restrict: "restrict";
334
- "no action": "no action";
335
- "set null": "set null";
336
- "set default": "set default";
337
- }>>;
338
- default: z.ZodOptional<z.ZodAny>;
339
- check: z.ZodOptional<z.ZodString>;
340
- }, z.core.$strict>>;
341
- constraints: z.ZodDefault<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodDiscriminatedUnion<[z.ZodObject<{
342
- type: z.ZodLiteral<"primary_key">;
343
- on: z.ZodArray<z.ZodString>;
344
- }, z.core.$strict>, z.ZodObject<{
345
- type: z.ZodLiteral<"foreign_key">;
346
- on: z.ZodArray<z.ZodString>;
347
- target: z.ZodString;
348
- references: z.ZodArray<z.ZodString>;
349
- }, z.core.$strict>, z.ZodObject<{
350
- type: z.ZodLiteral<"unique">;
351
- on: z.ZodArray<z.ZodString>;
352
- nulls_not_distinct: z.ZodOptional<z.ZodBoolean>;
353
- }, z.core.$strict>, z.ZodObject<{
354
- type: z.ZodLiteral<"check">;
355
- check: z.ZodString;
356
- }, z.core.$strict>], "type">>>>;
357
- }, z.core.$strict>>;
358
- indexes: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodTemplateLiteral<`${string}:${string}`>>>>;
359
- delta: z.ZodLiteral<false>;
360
- }, z.core.$strict>, z.ZodObject<{
361
- delta: z.ZodLiteral<true>;
362
- add_tables: z.ZodDefault<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
363
- columns: z.ZodRecord<z.ZodString, z.ZodObject<{
364
- type: z.ZodUnion<readonly [z.ZodUnion<readonly [z.ZodLiteral<"bigint" | "boolean" | "uuid" | "date" | "binary" | "text" | "timestamptz" | "jsonb" | "bytea" | "integer" | "json" | "int2" | "int4" | "int8" | "smallint" | "real" | "double precision" | "float4" | "float8" | "decimal" | "numeric" | "serial" | "bigserial" | "bool" | "varchar" | "char" | "datetime" | "time" | "timetz" | "timestamp" | "varbinary" | "blob" | "int4range" | "numrange" | "tsrange" | "tstzrange" | "daterange" | "int4multirange" | "int8multirange" | "nummultirange" | "tsmultirange" | "tstzmultirange" | "datemultirange">, z.ZodTemplateLiteral<`binary(${number})` | `timestamptz(${number})` | `varchar(${number})` | `char(${number})` | `datetime(${number})` | `time(${number})` | `timetz(${number})` | `timestamp(${number})` | `varbinary(${number})`>, z.ZodTemplateLiteral<`decimal(${number},${number})` | `decimal(${number}, ${number})` | `numeric(${number},${number})` | `numeric(${number}, ${number})`>]>, z.ZodTemplateLiteral<"text[]" | "bigint[]" | "boolean[]" | "uuid[]" | "date[]" | "binary[]" | "timestamptz[]" | "jsonb[]" | "bytea[]" | "integer[]" | "json[]" | "int2[]" | "int4[]" | "int8[]" | "smallint[]" | "real[]" | "double precision[]" | "float4[]" | "float8[]" | "decimal[]" | "numeric[]" | "serial[]" | "bigserial[]" | "bool[]" | "varchar[]" | "char[]" | "datetime[]" | "time[]" | "timetz[]" | "timestamp[]" | "varbinary[]" | "blob[]" | "int4range[]" | "numrange[]" | "tsrange[]" | "tstzrange[]" | "daterange[]" | "int4multirange[]" | "int8multirange[]" | "nummultirange[]" | "tsmultirange[]" | "tstzmultirange[]" | "datemultirange[]" | `binary(${number})[]` | `timestamptz(${number})[]` | `varchar(${number})[]` | `char(${number})[]` | `datetime(${number})[]` | `time(${number})[]` | `timetz(${number})[]` | `timestamp(${number})[]` | `varbinary(${number})[]` | `decimal(${number},${number})[]` | `decimal(${number}, ${number})[]` | `numeric(${number},${number})[]` | `numeric(${number}, ${number})[]` | `bigint[${number}]` | `boolean[${number}]` | `uuid[${number}]` | `date[${number}]` | `binary[${number}]` | `text[${number}]` | `timestamptz[${number}]` | `jsonb[${number}]` | `bytea[${number}]` | `integer[${number}]` | `json[${number}]` | `int2[${number}]` | `int4[${number}]` | `int8[${number}]` | `smallint[${number}]` | `real[${number}]` | `double precision[${number}]` | `float4[${number}]` | `float8[${number}]` | `decimal[${number}]` | `numeric[${number}]` | `serial[${number}]` | `bigserial[${number}]` | `bool[${number}]` | `varchar[${number}]` | `char[${number}]` | `datetime[${number}]` | `time[${number}]` | `timetz[${number}]` | `timestamp[${number}]` | `varbinary[${number}]` | `blob[${number}]` | `int4range[${number}]` | `numrange[${number}]` | `tsrange[${number}]` | `tstzrange[${number}]` | `daterange[${number}]` | `int4multirange[${number}]` | `int8multirange[${number}]` | `nummultirange[${number}]` | `tsmultirange[${number}]` | `tstzmultirange[${number}]` | `datemultirange[${number}]` | `binary(${number})[${number}]` | `timestamptz(${number})[${number}]` | `varchar(${number})[${number}]` | `char(${number})[${number}]` | `datetime(${number})[${number}]` | `time(${number})[${number}]` | `timetz(${number})[${number}]` | `timestamp(${number})[${number}]` | `varbinary(${number})[${number}]` | `decimal(${number},${number})[${number}]` | `decimal(${number}, ${number})[${number}]` | `numeric(${number},${number})[${number}]` | `numeric(${number}, ${number})[${number}]`>]>;
365
- required: z.ZodDefault<z.ZodBoolean>;
366
- unique: z.ZodDefault<z.ZodBoolean>;
367
- primary: z.ZodDefault<z.ZodBoolean>;
368
- references: z.ZodOptional<z.ZodString>;
369
- onDelete: z.ZodOptional<z.ZodEnum<{
370
- cascade: "cascade";
371
- restrict: "restrict";
372
- "no action": "no action";
373
- "set null": "set null";
374
- "set default": "set default";
375
- }>>;
376
- default: z.ZodOptional<z.ZodAny>;
377
- check: z.ZodOptional<z.ZodString>;
378
- }, z.core.$strict>>;
379
- constraints: z.ZodDefault<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodDiscriminatedUnion<[z.ZodObject<{
380
- type: z.ZodLiteral<"primary_key">;
381
- on: z.ZodArray<z.ZodString>;
382
- }, z.core.$strict>, z.ZodObject<{
383
- type: z.ZodLiteral<"foreign_key">;
384
- on: z.ZodArray<z.ZodString>;
385
- target: z.ZodString;
386
- references: z.ZodArray<z.ZodString>;
387
- }, z.core.$strict>, z.ZodObject<{
388
- type: z.ZodLiteral<"unique">;
389
- on: z.ZodArray<z.ZodString>;
390
- nulls_not_distinct: z.ZodOptional<z.ZodBoolean>;
391
- }, z.core.$strict>, z.ZodObject<{
392
- type: z.ZodLiteral<"check">;
393
- check: z.ZodString;
394
- }, z.core.$strict>], "type">>>>;
395
- }, z.core.$strict>>>>;
396
- drop_tables: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
397
- alter_tables: z.ZodDefault<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
398
- add_columns: z.ZodDefault<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
399
- type: z.ZodUnion<readonly [z.ZodUnion<readonly [z.ZodLiteral<"bigint" | "boolean" | "uuid" | "date" | "binary" | "text" | "timestamptz" | "jsonb" | "bytea" | "integer" | "json" | "int2" | "int4" | "int8" | "smallint" | "real" | "double precision" | "float4" | "float8" | "decimal" | "numeric" | "serial" | "bigserial" | "bool" | "varchar" | "char" | "datetime" | "time" | "timetz" | "timestamp" | "varbinary" | "blob" | "int4range" | "numrange" | "tsrange" | "tstzrange" | "daterange" | "int4multirange" | "int8multirange" | "nummultirange" | "tsmultirange" | "tstzmultirange" | "datemultirange">, z.ZodTemplateLiteral<`binary(${number})` | `timestamptz(${number})` | `varchar(${number})` | `char(${number})` | `datetime(${number})` | `time(${number})` | `timetz(${number})` | `timestamp(${number})` | `varbinary(${number})`>, z.ZodTemplateLiteral<`decimal(${number},${number})` | `decimal(${number}, ${number})` | `numeric(${number},${number})` | `numeric(${number}, ${number})`>]>, z.ZodTemplateLiteral<"text[]" | "bigint[]" | "boolean[]" | "uuid[]" | "date[]" | "binary[]" | "timestamptz[]" | "jsonb[]" | "bytea[]" | "integer[]" | "json[]" | "int2[]" | "int4[]" | "int8[]" | "smallint[]" | "real[]" | "double precision[]" | "float4[]" | "float8[]" | "decimal[]" | "numeric[]" | "serial[]" | "bigserial[]" | "bool[]" | "varchar[]" | "char[]" | "datetime[]" | "time[]" | "timetz[]" | "timestamp[]" | "varbinary[]" | "blob[]" | "int4range[]" | "numrange[]" | "tsrange[]" | "tstzrange[]" | "daterange[]" | "int4multirange[]" | "int8multirange[]" | "nummultirange[]" | "tsmultirange[]" | "tstzmultirange[]" | "datemultirange[]" | `binary(${number})[]` | `timestamptz(${number})[]` | `varchar(${number})[]` | `char(${number})[]` | `datetime(${number})[]` | `time(${number})[]` | `timetz(${number})[]` | `timestamp(${number})[]` | `varbinary(${number})[]` | `decimal(${number},${number})[]` | `decimal(${number}, ${number})[]` | `numeric(${number},${number})[]` | `numeric(${number}, ${number})[]` | `bigint[${number}]` | `boolean[${number}]` | `uuid[${number}]` | `date[${number}]` | `binary[${number}]` | `text[${number}]` | `timestamptz[${number}]` | `jsonb[${number}]` | `bytea[${number}]` | `integer[${number}]` | `json[${number}]` | `int2[${number}]` | `int4[${number}]` | `int8[${number}]` | `smallint[${number}]` | `real[${number}]` | `double precision[${number}]` | `float4[${number}]` | `float8[${number}]` | `decimal[${number}]` | `numeric[${number}]` | `serial[${number}]` | `bigserial[${number}]` | `bool[${number}]` | `varchar[${number}]` | `char[${number}]` | `datetime[${number}]` | `time[${number}]` | `timetz[${number}]` | `timestamp[${number}]` | `varbinary[${number}]` | `blob[${number}]` | `int4range[${number}]` | `numrange[${number}]` | `tsrange[${number}]` | `tstzrange[${number}]` | `daterange[${number}]` | `int4multirange[${number}]` | `int8multirange[${number}]` | `nummultirange[${number}]` | `tsmultirange[${number}]` | `tstzmultirange[${number}]` | `datemultirange[${number}]` | `binary(${number})[${number}]` | `timestamptz(${number})[${number}]` | `varchar(${number})[${number}]` | `char(${number})[${number}]` | `datetime(${number})[${number}]` | `time(${number})[${number}]` | `timetz(${number})[${number}]` | `timestamp(${number})[${number}]` | `varbinary(${number})[${number}]` | `decimal(${number},${number})[${number}]` | `decimal(${number}, ${number})[${number}]` | `numeric(${number},${number})[${number}]` | `numeric(${number}, ${number})[${number}]`>]>;
400
- required: z.ZodDefault<z.ZodBoolean>;
401
- unique: z.ZodDefault<z.ZodBoolean>;
402
- primary: z.ZodDefault<z.ZodBoolean>;
403
- references: z.ZodOptional<z.ZodString>;
404
- onDelete: z.ZodOptional<z.ZodEnum<{
405
- cascade: "cascade";
406
- restrict: "restrict";
407
- "no action": "no action";
408
- "set null": "set null";
409
- "set default": "set default";
410
- }>>;
411
- default: z.ZodOptional<z.ZodAny>;
412
- check: z.ZodOptional<z.ZodString>;
413
- }, z.core.$strict>>>>;
414
- drop_columns: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
415
- alter_columns: z.ZodDefault<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
416
- type: z.ZodOptional<z.ZodUnion<readonly [z.ZodUnion<readonly [z.ZodLiteral<"bigint" | "boolean" | "uuid" | "date" | "binary" | "text" | "timestamptz" | "jsonb" | "bytea" | "integer" | "json" | "int2" | "int4" | "int8" | "smallint" | "real" | "double precision" | "float4" | "float8" | "decimal" | "numeric" | "serial" | "bigserial" | "bool" | "varchar" | "char" | "datetime" | "time" | "timetz" | "timestamp" | "varbinary" | "blob" | "int4range" | "numrange" | "tsrange" | "tstzrange" | "daterange" | "int4multirange" | "int8multirange" | "nummultirange" | "tsmultirange" | "tstzmultirange" | "datemultirange">, z.ZodTemplateLiteral<`binary(${number})` | `timestamptz(${number})` | `varchar(${number})` | `char(${number})` | `datetime(${number})` | `time(${number})` | `timetz(${number})` | `timestamp(${number})` | `varbinary(${number})`>, z.ZodTemplateLiteral<`decimal(${number},${number})` | `decimal(${number}, ${number})` | `numeric(${number},${number})` | `numeric(${number}, ${number})`>]>, z.ZodTemplateLiteral<"text[]" | "bigint[]" | "boolean[]" | "uuid[]" | "date[]" | "binary[]" | "timestamptz[]" | "jsonb[]" | "bytea[]" | "integer[]" | "json[]" | "int2[]" | "int4[]" | "int8[]" | "smallint[]" | "real[]" | "double precision[]" | "float4[]" | "float8[]" | "decimal[]" | "numeric[]" | "serial[]" | "bigserial[]" | "bool[]" | "varchar[]" | "char[]" | "datetime[]" | "time[]" | "timetz[]" | "timestamp[]" | "varbinary[]" | "blob[]" | "int4range[]" | "numrange[]" | "tsrange[]" | "tstzrange[]" | "daterange[]" | "int4multirange[]" | "int8multirange[]" | "nummultirange[]" | "tsmultirange[]" | "tstzmultirange[]" | "datemultirange[]" | `binary(${number})[]` | `timestamptz(${number})[]` | `varchar(${number})[]` | `char(${number})[]` | `datetime(${number})[]` | `time(${number})[]` | `timetz(${number})[]` | `timestamp(${number})[]` | `varbinary(${number})[]` | `decimal(${number},${number})[]` | `decimal(${number}, ${number})[]` | `numeric(${number},${number})[]` | `numeric(${number}, ${number})[]` | `bigint[${number}]` | `boolean[${number}]` | `uuid[${number}]` | `date[${number}]` | `binary[${number}]` | `text[${number}]` | `timestamptz[${number}]` | `jsonb[${number}]` | `bytea[${number}]` | `integer[${number}]` | `json[${number}]` | `int2[${number}]` | `int4[${number}]` | `int8[${number}]` | `smallint[${number}]` | `real[${number}]` | `double precision[${number}]` | `float4[${number}]` | `float8[${number}]` | `decimal[${number}]` | `numeric[${number}]` | `serial[${number}]` | `bigserial[${number}]` | `bool[${number}]` | `varchar[${number}]` | `char[${number}]` | `datetime[${number}]` | `time[${number}]` | `timetz[${number}]` | `timestamp[${number}]` | `varbinary[${number}]` | `blob[${number}]` | `int4range[${number}]` | `numrange[${number}]` | `tsrange[${number}]` | `tstzrange[${number}]` | `daterange[${number}]` | `int4multirange[${number}]` | `int8multirange[${number}]` | `nummultirange[${number}]` | `tsmultirange[${number}]` | `tstzmultirange[${number}]` | `datemultirange[${number}]` | `binary(${number})[${number}]` | `timestamptz(${number})[${number}]` | `varchar(${number})[${number}]` | `char(${number})[${number}]` | `datetime(${number})[${number}]` | `time(${number})[${number}]` | `timetz(${number})[${number}]` | `timestamp(${number})[${number}]` | `varbinary(${number})[${number}]` | `decimal(${number},${number})[${number}]` | `decimal(${number}, ${number})[${number}]` | `numeric(${number},${number})[${number}]` | `numeric(${number}, ${number})[${number}]`>]>>;
417
- default: z.ZodOptional<z.ZodString>;
418
- ops: z.ZodOptional<z.ZodArray<z.ZodLiteral<"set_required" | "drop_default" | "drop_required">>>;
419
- }, z.core.$strict>>>>;
420
- add_constraints: z.ZodDefault<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodDiscriminatedUnion<[z.ZodObject<{
421
- type: z.ZodLiteral<"primary_key">;
422
- on: z.ZodArray<z.ZodString>;
423
- }, z.core.$strict>, z.ZodObject<{
424
- type: z.ZodLiteral<"foreign_key">;
425
- on: z.ZodArray<z.ZodString>;
426
- target: z.ZodString;
427
- references: z.ZodArray<z.ZodString>;
428
- }, z.core.$strict>, z.ZodObject<{
429
- type: z.ZodLiteral<"unique">;
430
- on: z.ZodArray<z.ZodString>;
431
- nulls_not_distinct: z.ZodOptional<z.ZodBoolean>;
432
- }, z.core.$strict>, z.ZodObject<{
433
- type: z.ZodLiteral<"check">;
434
- check: z.ZodString;
435
- }, z.core.$strict>], "type">>>>;
436
- drop_constraints: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
437
- }, z.core.$strict>>>>;
438
- add_indexes: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodTemplateLiteral<`${string}:${string}`>>>>;
439
- drop_indexes: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodTemplateLiteral<`${string}:${string}`>>>>;
440
- }, z.core.$strict>], "delta">>;
441
- wipe: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
442
- latest: z.ZodOptional<z.ZodInt32>;
443
- acl_tables: z.ZodDefault<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>>;
444
- }, z.core.$strip>;
445
- export interface SchemaFile extends z.infer<typeof SchemaFile> {
446
- }
447
- export declare function getSchemaFiles(): Generator<[string, SchemaFile]>;
448
- export type ApplyColumnDelta<C extends z.input<typeof Column>, D extends z.input<typeof ColumnDelta>> = Omit<C, 'type' | 'default' | 'required'> & {
449
- type: D extends {
450
- type: infer T;
451
- } ? T : C['type'];
452
- default: D extends {
453
- ops: readonly any[];
454
- } ? 'drop_default' extends D['ops'][number] ? undefined : D extends {
455
- default: infer Def;
456
- } ? Def : C['default'] : D extends {
457
- default: infer Def;
458
- } ? Def : C['default'];
459
- required: D extends {
460
- ops: readonly any[];
461
- } ? 'set_required' extends D['ops'][number] ? true : 'drop_required' extends D['ops'][number] ? false : C['required'] : C['required'];
462
- };
463
- export type ApplyTableDelta<T extends z.input<typeof Table>, D extends z.input<typeof TableDelta>> = {
464
- columns: {
465
- [K in keyof T['columns'] as K extends (D extends {
466
- drop_columns: any[];
467
- } ? D['drop_columns'][number] : never) ? never : K]: K extends keyof (D extends {
468
- alter_columns: any;
469
- } ? D['alter_columns'] : {}) ? ApplyColumnDelta<T['columns'][K], (D['alter_columns'] & {})[K & keyof D['alter_columns']]> : T['columns'][K];
470
- } & (D extends {
471
- add_columns: infer A;
472
- } ? A : {});
473
- constraints: {
474
- [K in keyof T['constraints'] as K extends (D extends {
475
- drop_constraints: any[];
476
- } ? D['drop_constraints'][number] : never) ? never : K]: T['constraints'][K];
477
- } & (D extends {
478
- add_constraints: infer A;
479
- } ? A : {});
480
- };
481
- export type ApplyDeltaToSchema<S extends z.input<typeof SchemaDecl>, D extends z.input<typeof VersionDelta>> = {
482
- tables: {
483
- [K in keyof S['tables'] as K extends (D extends {
484
- drop_tables: any[];
485
- } ? D['drop_tables'][number] : never) ? never : K]: K extends keyof (D extends {
486
- alter_tables: any;
487
- } ? D['alter_tables'] : {}) ? ApplyTableDelta<S['tables'][K], (D['alter_tables'] & {})[K & keyof D['alter_tables']]> : S['tables'][K];
488
- } & (D extends {
489
- add_tables: infer A;
490
- } ? A : {});
491
- indexes: D extends {
492
- add_indexes: infer Add;
493
- drop_indexes: infer Drop;
494
- } ? [...Filter<Drop extends readonly any[] ? Drop[number] : never, S['indexes'] & {}>, ...(Add extends readonly any[] ? Add : [])] : S['indexes'];
495
- };
496
- type ResolveVersions<V extends readonly any[], Current extends z.input<typeof SchemaDecl> = {
497
- tables: {};
498
- indexes: [];
499
- }> = V extends readonly [
500
- infer Head extends z.input<typeof VersionDelta> | (z.input<typeof SchemaDecl> & {
501
- delta: false;
502
- }),
503
- ...infer Tail extends (z.input<typeof VersionDelta> | (z.input<typeof SchemaDecl> & {
504
- delta: false;
505
- }))[]
506
- ] ? Head extends z.input<typeof VersionDelta> ? ResolveVersions<Tail, ApplyDeltaToSchema<Current, Head>> : Head extends z.input<typeof SchemaDecl> ? ResolveVersions<Tail, Head> : never : Current;
507
- export type FullSchema<S extends z.input<typeof SchemaFile>> = ResolveVersions<S['versions']>;
508
- type __RangeContent = string | number | bigint | boolean | null | undefined;
509
- type _Range<T extends __RangeContent> = `${'(' | '['}${T},${T}${')' | ']'}`;
510
- type _MultiRange = `{${string}}`;
511
- interface ColumnValueMap extends Record<(typeof numberTypes)[number], number>, Record<(typeof bigintTypes)[number], bigint>, Record<(typeof booleanTypes)[number], boolean>, Record<(typeof stringTypes)[number], string>, Record<(typeof dateTypes)[number], Date>, Record<(typeof binaryTypes)[number], Uint8Array<ArrayBuffer>>, Record<(typeof numericRangeTypes)[number], _Range<number>>, Record<(typeof stringRangeTypes)[number], _Range<string>>, Record<(typeof multirangeTypes)[number], _MultiRange> {
512
- int8range: _Range<bigint>;
513
- uuid: string;
514
- json: any;
515
- jsonb: any;
516
- }
517
- type ColumnTypeToValue<T extends ColumnType> = T extends `${infer CT extends z.infer<typeof _ColumnType>}[${infer N extends '' | number}]` ? N extends number ? Tuple<ColumnTypeToValue<CT>, N> : ColumnTypeToValue<CT>[] : T extends `${infer Base extends z.infer<typeof _primitive>}(${string})` ? ColumnTypeToValue<Base> : T extends keyof ColumnValueMap ? ColumnValueMap[T] : never;
518
- /**
519
- * Convert a column definition into the Kysely database schema type
520
- */
521
- export type ColumnSchema<T extends z.input<typeof Column>> = T['default'] extends {} ? kysely.Generated<ColumnTypeToValue<T['type']>> : T['required'] extends true ? ColumnTypeToValue<T['type']> : ColumnTypeToValue<T['type']> | null;
522
- /**
523
- * Convert a table definition into the Kysely database schema type
524
- */
525
- export type TableSchema<T extends z.input<typeof Table>> = {
526
- [K in keyof T['columns']]: ColumnSchema<T['columns'][K]>;
527
- };
528
- type _DBFromSchema<TBs extends Record<string, z.input<typeof Table>>> = {
529
- [K in keyof TBs]: Expand<TableSchema<TBs[K]>>;
530
- };
531
- /**
532
- * Convert an entire schema definition file info the Kysely database schema type
533
- */
534
- export type FromSchemaFile<S extends ReadonlyRecursive<z.input<typeof SchemaFile>>> = _DBFromSchema<FullSchema<MutableRecursive<S>>['tables']>;
535
- /**@deprecated use {@link FromSchemaFile} */
536
- export type DatabaseFromSchemaFile<S extends ReadonlyRecursive<z.input<typeof SchemaFile>>> = FromSchemaFile<S>;
537
- type RawDB = FromSchemaFile<typeof rawSchema>;
538
- export interface Schema extends Omit<RawDB, 'users' | 'verifications' | 'passkeys'> {
539
- users: Expand<RawDB['users'] & {
59
+ export interface Schema extends Omit<schema.Raw, 'users' | 'verifications' | 'passkeys'> {
60
+ users: Expand<schema.Raw['users'] & {
540
61
  preferences: kysely.Generated<Preferences>;
541
62
  }>;
542
- verifications: Expand<RawDB['verifications'] & {
63
+ verifications: Expand<schema.Raw['verifications'] & {
543
64
  role: VerificationRole;
544
65
  }>;
545
- passkeys: Expand<Omit<RawDB['passkeys'], 'transports'> & {
66
+ passkeys: Expand<Omit<schema.Raw['passkeys'], 'transports'> & {
546
67
  deviceType: CredentialDeviceType;
547
68
  transports: AuthenticatorTransportFuture[];
548
69
  }>;
549
70
  [key: `acl.${string}`]: DBAccessControl & Record<string, unknown>;
550
71
  }
551
- /**
552
- * Get the active schema
553
- */
554
- export declare function getFullSchema(opt?: {
555
- exclude?: string[];
556
- }): SchemaDecl & {
557
- versions: Record<string, number>;
558
- };
559
72
  export declare const UpgradesInfo: z.ZodObject<{
560
73
  current: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodInt32>>;
561
74
  upgrades: z.ZodDefault<z.ZodArray<z.ZodObject<{
@@ -568,14 +81,6 @@ export interface UpgradesInfo extends z.infer<typeof UpgradesInfo> {
568
81
  }
569
82
  export declare function getUpgradeInfo(): UpgradesInfo;
570
83
  export declare function setUpgradeInfo(info: UpgradesInfo): void;
571
- export declare function applyTableDeltaToSchema(table: Table, delta: TableDelta): void;
572
- export declare function applyDeltaToSchema(schema: SchemaDecl, delta: VersionDelta): void;
573
- export declare function validateDelta(delta: VersionDelta): void;
574
- export declare function computeDelta(from: SchemaDecl, to: SchemaDecl): VersionDelta;
575
- export declare function collapseDeltas(deltas: VersionDelta[]): VersionDelta;
576
- export declare function deltaIsEmpty(delta: VersionDelta): boolean;
577
- export declare function displayDelta(delta: VersionDelta): Generator<string>;
578
- export declare function applyDelta(delta: VersionDelta, forceAbort?: boolean): Promise<void>;
579
84
  export interface CheckOptions extends OpOptions {
580
85
  /** Whether to throw an error instead of emitting a warning on most column issues */
581
86
  strict?: boolean;
@@ -592,7 +97,6 @@ export interface CheckOptions extends OpOptions {
592
97
  /**
593
98
  * Checks that a table has the expected column types, nullability, and default values.
594
99
  */
595
- export declare function checkTableTypes<TB extends keyof Schema & string>(tableName: TB, types: Table, opt: CheckOptions, tableMetadata?: kysely.TableMetadata[]): Promise<void>;
100
+ export declare function checkTableTypes<TB extends keyof Schema & string>(tableName: TB, types: schema.Table, opt: CheckOptions, tableMetadata?: kysely.TableMetadata[]): Promise<void>;
596
101
  export declare function clean(opt: Partial<OpOptions>): Promise<void>;
597
102
  export declare function rotatePassword(): Promise<void>;
598
- export {};