pqb 0.25.1 → 0.26.1
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.
- package/dist/index.d.ts +69 -31
- package/dist/index.js +106 -40
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +106 -40
- package/dist/index.mjs.map +1 -1
- package/package.json +3 -3
package/dist/index.d.ts
CHANGED
|
@@ -264,7 +264,7 @@ type OnConflictItem = string | string[] | Expression;
|
|
|
264
264
|
type OnConflictMergeUpdate = string | string[] | RecordUnknown | Expression;
|
|
265
265
|
|
|
266
266
|
type BooleanQueryColumn = QueryColumn<boolean, OperatorsBoolean>;
|
|
267
|
-
declare class BooleanColumn$1<Schema extends ColumnSchemaConfig> extends ColumnType<Schema, boolean, Schema['boolean']
|
|
267
|
+
declare class BooleanColumn$1<Schema extends ColumnSchemaConfig> extends ColumnType<Schema, boolean, ReturnType<Schema['boolean']>, OperatorsBoolean> {
|
|
268
268
|
dataType: "boolean";
|
|
269
269
|
operators: OperatorsBoolean;
|
|
270
270
|
constructor(schema: Schema);
|
|
@@ -863,6 +863,35 @@ declare class Join {
|
|
|
863
863
|
*
|
|
864
864
|
* When no matching record is found, it will skip records of the main table.
|
|
865
865
|
*
|
|
866
|
+
* When joining the same table with the same condition more than once, duplicated joins will be ignored:
|
|
867
|
+
*
|
|
868
|
+
* ```ts
|
|
869
|
+
* // joining a relation
|
|
870
|
+
* db.post.join('comments').join('comments');
|
|
871
|
+
*
|
|
872
|
+
* // joining a table with a condition
|
|
873
|
+
* db.post
|
|
874
|
+
* .join('comments', 'comments.postId', 'post.id')
|
|
875
|
+
* .join('comments', 'comments.postId', 'post.id');
|
|
876
|
+
* ```
|
|
877
|
+
*
|
|
878
|
+
* Both queries will produce SQL with only 1 join
|
|
879
|
+
*
|
|
880
|
+
* ```sql
|
|
881
|
+
* SELECT * FROM post JOIN comments ON comments.postId = post.id
|
|
882
|
+
* ```
|
|
883
|
+
*
|
|
884
|
+
* However, this is only possible if the join has no dynamic values:
|
|
885
|
+
*
|
|
886
|
+
* ```ts
|
|
887
|
+
* db.post
|
|
888
|
+
* .join('comments', (q) => q.where({ rating: { gt: 5 } }))
|
|
889
|
+
* .join('comments', (q) => q.where({ rating: { gt: 5 } }));
|
|
890
|
+
* ```
|
|
891
|
+
*
|
|
892
|
+
* Both joins above have the same `{ gt: 5 }`, but still, the `5` is a dynamic value and in this case joins will be duplicated,
|
|
893
|
+
* resulting in a database error.
|
|
894
|
+
*
|
|
866
895
|
* ### join relation
|
|
867
896
|
*
|
|
868
897
|
* When relations are defined between the tables, you can join them by a relation name.
|
|
@@ -2081,7 +2110,7 @@ declare class ScopeMethods {
|
|
|
2081
2110
|
}
|
|
2082
2111
|
|
|
2083
2112
|
type DateColumnInput = string | number | Date;
|
|
2084
|
-
declare abstract class DateBaseColumn<Schema extends ColumnSchemaConfig> extends ColumnType<Schema, string, Schema['stringNumberDate']
|
|
2113
|
+
declare abstract class DateBaseColumn<Schema extends ColumnSchemaConfig> extends ColumnType<Schema, string, ReturnType<Schema['stringNumberDate']>, OperatorsDate, DateColumnInput, string, ReturnType<Schema['stringSchema']>> {
|
|
2085
2114
|
data: DateColumnData;
|
|
2086
2115
|
operators: OperatorsDate;
|
|
2087
2116
|
encodeFn: (input: DateColumnInput) => string | Date;
|
|
@@ -2113,7 +2142,7 @@ declare class TimestampTZColumn<Schema extends ColumnSchemaConfig> extends DateT
|
|
|
2113
2142
|
baseDataType: "timestamp";
|
|
2114
2143
|
toCode(t: string): Code;
|
|
2115
2144
|
}
|
|
2116
|
-
declare class TimeColumn<Schema extends ColumnSchemaConfig> extends ColumnType<Schema, string, Schema['stringSchema']
|
|
2145
|
+
declare class TimeColumn<Schema extends ColumnSchemaConfig> extends ColumnType<Schema, string, ReturnType<Schema['stringSchema']>, OperatorsTime> {
|
|
2117
2146
|
data: DateColumnData & {
|
|
2118
2147
|
dateTimePrecision?: number;
|
|
2119
2148
|
};
|
|
@@ -2122,7 +2151,7 @@ declare class TimeColumn<Schema extends ColumnSchemaConfig> extends ColumnType<S
|
|
|
2122
2151
|
constructor(schema: Schema, dateTimePrecision?: number);
|
|
2123
2152
|
toCode(t: string): Code;
|
|
2124
2153
|
}
|
|
2125
|
-
declare class IntervalColumn<Schema extends ColumnSchemaConfig> extends ColumnType<Schema, TimeInterval, Schema['timeInterval']
|
|
2154
|
+
declare class IntervalColumn<Schema extends ColumnSchemaConfig> extends ColumnType<Schema, TimeInterval, ReturnType<Schema['timeInterval']>, OperatorsDate> {
|
|
2126
2155
|
data: ColumnData & {
|
|
2127
2156
|
fields?: string;
|
|
2128
2157
|
precision?: number;
|
|
@@ -2165,7 +2194,7 @@ declare class JSONColumn<T, Schema extends ColumnTypeSchemaArg> extends ColumnTy
|
|
|
2165
2194
|
operators: OperatorsJson;
|
|
2166
2195
|
toCode(t: string): Code;
|
|
2167
2196
|
}
|
|
2168
|
-
declare class JSONTextColumn<Schema extends ColumnSchemaConfig> extends ColumnType<Schema, string, Schema['stringSchema']
|
|
2197
|
+
declare class JSONTextColumn<Schema extends ColumnSchemaConfig> extends ColumnType<Schema, string, ReturnType<Schema['stringSchema']>, OperatorsText> {
|
|
2169
2198
|
dataType: "json";
|
|
2170
2199
|
operators: OperatorsText;
|
|
2171
2200
|
constructor(schema: Schema);
|
|
@@ -2173,10 +2202,10 @@ declare class JSONTextColumn<Schema extends ColumnSchemaConfig> extends ColumnTy
|
|
|
2173
2202
|
}
|
|
2174
2203
|
|
|
2175
2204
|
type TextColumnData = StringTypeData;
|
|
2176
|
-
declare abstract class TextBaseColumn<Schema extends ColumnSchemaConfig> extends ColumnType<Schema, string, Schema['stringSchema']
|
|
2205
|
+
declare abstract class TextBaseColumn<Schema extends ColumnSchemaConfig> extends ColumnType<Schema, string, ReturnType<Schema['stringSchema']>, OperatorsText> {
|
|
2177
2206
|
data: TextColumnData;
|
|
2178
2207
|
operators: OperatorsText;
|
|
2179
|
-
constructor(schema: Schema, schemaType?: Schema['stringSchema']);
|
|
2208
|
+
constructor(schema: Schema, schemaType?: ReturnType<Schema['stringSchema']>);
|
|
2180
2209
|
}
|
|
2181
2210
|
declare abstract class LimitedTextBaseColumn<Schema extends ColumnSchemaConfig> extends TextBaseColumn<Schema> {
|
|
2182
2211
|
data: TextColumnData & {
|
|
@@ -2206,55 +2235,55 @@ declare class TextColumn<Schema extends ColumnSchemaConfig> extends TextBaseColu
|
|
|
2206
2235
|
constructor(schema: Schema, min?: number, max?: number);
|
|
2207
2236
|
toCode(t: string): Code;
|
|
2208
2237
|
}
|
|
2209
|
-
declare class ByteaColumn<Schema extends ColumnSchemaConfig> extends ColumnType<Schema, Buffer, Schema['buffer']
|
|
2238
|
+
declare class ByteaColumn<Schema extends ColumnSchemaConfig> extends ColumnType<Schema, Buffer, ReturnType<Schema['buffer']>, OperatorsText> {
|
|
2210
2239
|
dataType: "bytea";
|
|
2211
2240
|
operators: OperatorsText;
|
|
2212
2241
|
constructor(schema: Schema);
|
|
2213
2242
|
toCode(t: string): Code;
|
|
2214
2243
|
}
|
|
2215
|
-
declare class PointColumn<Schema extends ColumnSchemaConfig> extends ColumnType<Schema, string, Schema['stringSchema']
|
|
2244
|
+
declare class PointColumn<Schema extends ColumnSchemaConfig> extends ColumnType<Schema, string, ReturnType<Schema['stringSchema']>, OperatorsText> {
|
|
2216
2245
|
dataType: "point";
|
|
2217
2246
|
operators: OperatorsText;
|
|
2218
2247
|
constructor(schema: Schema);
|
|
2219
2248
|
toCode(t: string): Code;
|
|
2220
2249
|
}
|
|
2221
|
-
declare class LineColumn<Schema extends ColumnSchemaConfig> extends ColumnType<Schema, string, Schema['stringSchema']
|
|
2250
|
+
declare class LineColumn<Schema extends ColumnSchemaConfig> extends ColumnType<Schema, string, ReturnType<Schema['stringSchema']>, OperatorsText> {
|
|
2222
2251
|
dataType: "line";
|
|
2223
2252
|
operators: OperatorsText;
|
|
2224
2253
|
constructor(schema: Schema);
|
|
2225
2254
|
toCode(t: string): Code;
|
|
2226
2255
|
}
|
|
2227
|
-
declare class LsegColumn<Schema extends ColumnSchemaConfig> extends ColumnType<Schema, string, Schema['stringSchema']
|
|
2256
|
+
declare class LsegColumn<Schema extends ColumnSchemaConfig> extends ColumnType<Schema, string, ReturnType<Schema['stringSchema']>, OperatorsText> {
|
|
2228
2257
|
dataType: "lseg";
|
|
2229
2258
|
operators: OperatorsText;
|
|
2230
2259
|
constructor(schema: Schema);
|
|
2231
2260
|
toCode(t: string): Code;
|
|
2232
2261
|
}
|
|
2233
|
-
declare class BoxColumn<Schema extends ColumnSchemaConfig> extends ColumnType<Schema, string, Schema['stringSchema']
|
|
2262
|
+
declare class BoxColumn<Schema extends ColumnSchemaConfig> extends ColumnType<Schema, string, ReturnType<Schema['stringSchema']>, OperatorsText> {
|
|
2234
2263
|
dataType: "box";
|
|
2235
2264
|
operators: OperatorsText;
|
|
2236
2265
|
constructor(schema: Schema);
|
|
2237
2266
|
toCode(t: string): Code;
|
|
2238
2267
|
}
|
|
2239
|
-
declare class PathColumn<Schema extends ColumnSchemaConfig> extends ColumnType<Schema, string, Schema['stringSchema']
|
|
2268
|
+
declare class PathColumn<Schema extends ColumnSchemaConfig> extends ColumnType<Schema, string, ReturnType<Schema['stringSchema']>, OperatorsText> {
|
|
2240
2269
|
dataType: "path";
|
|
2241
2270
|
operators: OperatorsText;
|
|
2242
2271
|
constructor(schema: Schema);
|
|
2243
2272
|
toCode(t: string): Code;
|
|
2244
2273
|
}
|
|
2245
|
-
declare class PolygonColumn<Schema extends ColumnSchemaConfig> extends ColumnType<Schema, string, Schema['stringSchema']
|
|
2274
|
+
declare class PolygonColumn<Schema extends ColumnSchemaConfig> extends ColumnType<Schema, string, ReturnType<Schema['stringSchema']>, OperatorsText> {
|
|
2246
2275
|
dataType: "polygon";
|
|
2247
2276
|
operators: OperatorsText;
|
|
2248
2277
|
constructor(schema: Schema);
|
|
2249
2278
|
toCode(t: string): Code;
|
|
2250
2279
|
}
|
|
2251
|
-
declare class CircleColumn<Schema extends ColumnSchemaConfig> extends ColumnType<Schema, string, Schema['stringSchema']
|
|
2280
|
+
declare class CircleColumn<Schema extends ColumnSchemaConfig> extends ColumnType<Schema, string, ReturnType<Schema['stringSchema']>, OperatorsText> {
|
|
2252
2281
|
dataType: "circle";
|
|
2253
2282
|
operators: OperatorsText;
|
|
2254
2283
|
constructor(schema: Schema);
|
|
2255
2284
|
toCode(t: string): Code;
|
|
2256
2285
|
}
|
|
2257
|
-
declare class MoneyColumn<Schema extends ColumnSchemaConfig> extends NumberBaseColumn<Schema, Schema['stringSchema']
|
|
2286
|
+
declare class MoneyColumn<Schema extends ColumnSchemaConfig> extends NumberBaseColumn<Schema, ReturnType<Schema['stringSchema']>> {
|
|
2258
2287
|
dataType: "money";
|
|
2259
2288
|
constructor(schema: Schema);
|
|
2260
2289
|
toCode(t: string): Code;
|
|
@@ -2262,25 +2291,25 @@ declare class MoneyColumn<Schema extends ColumnSchemaConfig> extends NumberBaseC
|
|
|
2262
2291
|
hideFromCode: boolean;
|
|
2263
2292
|
};
|
|
2264
2293
|
}
|
|
2265
|
-
declare class CidrColumn<Schema extends ColumnSchemaConfig> extends ColumnType<Schema, string, Schema['stringSchema']
|
|
2294
|
+
declare class CidrColumn<Schema extends ColumnSchemaConfig> extends ColumnType<Schema, string, ReturnType<Schema['stringSchema']>, OperatorsText> {
|
|
2266
2295
|
dataType: "cidr";
|
|
2267
2296
|
operators: OperatorsText;
|
|
2268
2297
|
constructor(schema: Schema);
|
|
2269
2298
|
toCode(t: string): Code;
|
|
2270
2299
|
}
|
|
2271
|
-
declare class InetColumn<Schema extends ColumnSchemaConfig> extends ColumnType<Schema, string, Schema['stringSchema']
|
|
2300
|
+
declare class InetColumn<Schema extends ColumnSchemaConfig> extends ColumnType<Schema, string, ReturnType<Schema['stringSchema']>, OperatorsText> {
|
|
2272
2301
|
dataType: "inet";
|
|
2273
2302
|
operators: OperatorsText;
|
|
2274
2303
|
constructor(schema: Schema);
|
|
2275
2304
|
toCode(t: string): Code;
|
|
2276
2305
|
}
|
|
2277
|
-
declare class MacAddrColumn<Schema extends ColumnSchemaConfig> extends ColumnType<Schema, string, Schema['stringSchema']
|
|
2306
|
+
declare class MacAddrColumn<Schema extends ColumnSchemaConfig> extends ColumnType<Schema, string, ReturnType<Schema['stringSchema']>, OperatorsText> {
|
|
2278
2307
|
dataType: "macaddr";
|
|
2279
2308
|
operators: OperatorsText;
|
|
2280
2309
|
constructor(schema: Schema);
|
|
2281
2310
|
toCode(t: string): Code;
|
|
2282
2311
|
}
|
|
2283
|
-
declare class MacAddr8Column<Schema extends ColumnSchemaConfig> extends ColumnType<Schema, string, Schema['stringSchema']
|
|
2312
|
+
declare class MacAddr8Column<Schema extends ColumnSchemaConfig> extends ColumnType<Schema, string, ReturnType<Schema['stringSchema']>, OperatorsText> {
|
|
2284
2313
|
dataType: "macaddr8";
|
|
2285
2314
|
operators: OperatorsText;
|
|
2286
2315
|
constructor(schema: Schema);
|
|
@@ -2307,7 +2336,7 @@ declare class BitVaryingColumn<Schema extends ColumnSchemaConfig> extends Column
|
|
|
2307
2336
|
toSQL(): string;
|
|
2308
2337
|
}
|
|
2309
2338
|
type TsVectorGeneratedColumns = string[] | Record<string, SearchWeight>;
|
|
2310
|
-
declare class TsVectorColumn<Schema extends ColumnSchemaConfig> extends ColumnType<Schema, string, Schema['stringSchema']
|
|
2339
|
+
declare class TsVectorColumn<Schema extends ColumnSchemaConfig> extends ColumnType<Schema, string, ReturnType<Schema['stringSchema']>, OperatorsText> {
|
|
2311
2340
|
defaultLanguage: string;
|
|
2312
2341
|
dataType: "tsvector";
|
|
2313
2342
|
operators: OperatorsText;
|
|
@@ -2339,13 +2368,13 @@ declare class TsVectorColumn<Schema extends ColumnSchemaConfig> extends ColumnTy
|
|
|
2339
2368
|
*/
|
|
2340
2369
|
generated<T extends PickColumnData>(this: T, ...args: StaticSQLArgs | [language: string, columns: TsVectorGeneratedColumns] | [columns: TsVectorGeneratedColumns]): T;
|
|
2341
2370
|
}
|
|
2342
|
-
declare class TsQueryColumn<Schema extends ColumnSchemaConfig> extends ColumnType<Schema, string, Schema['stringSchema']
|
|
2371
|
+
declare class TsQueryColumn<Schema extends ColumnSchemaConfig> extends ColumnType<Schema, string, ReturnType<Schema['stringSchema']>, OperatorsText> {
|
|
2343
2372
|
dataType: "tsquery";
|
|
2344
2373
|
operators: OperatorsText;
|
|
2345
2374
|
constructor(schema: Schema);
|
|
2346
2375
|
toCode(t: string): Code;
|
|
2347
2376
|
}
|
|
2348
|
-
declare class UUIDColumn<Schema extends ColumnSchemaConfig> extends ColumnType<Schema, string, Schema['uuid']
|
|
2377
|
+
declare class UUIDColumn<Schema extends ColumnSchemaConfig> extends ColumnType<Schema, string, ReturnType<Schema['uuid']>, OperatorsText> {
|
|
2349
2378
|
dataType: "uuid";
|
|
2350
2379
|
operators: OperatorsText;
|
|
2351
2380
|
constructor(schema: Schema);
|
|
@@ -2357,7 +2386,7 @@ declare class UUIDColumn<Schema extends ColumnSchemaConfig> extends ColumnType<S
|
|
|
2357
2386
|
};
|
|
2358
2387
|
toCode(t: string): Code;
|
|
2359
2388
|
}
|
|
2360
|
-
declare class XMLColumn<Schema extends ColumnSchemaConfig> extends ColumnType<Schema, string, Schema['stringSchema']
|
|
2389
|
+
declare class XMLColumn<Schema extends ColumnSchemaConfig> extends ColumnType<Schema, string, ReturnType<Schema['stringSchema']>, OperatorsText> {
|
|
2361
2390
|
dataType: "xml";
|
|
2362
2391
|
operators: OperatorsText;
|
|
2363
2392
|
constructor(schema: Schema);
|
|
@@ -2373,7 +2402,7 @@ declare class CitextColumn<Schema extends ColumnSchemaConfig> extends TextBaseCo
|
|
|
2373
2402
|
toCode(t: string): Code;
|
|
2374
2403
|
}
|
|
2375
2404
|
|
|
2376
|
-
declare class CustomTypeColumn<Schema extends ColumnSchemaConfig> extends ColumnType<Schema, unknown, Schema['unknown']
|
|
2405
|
+
declare class CustomTypeColumn<Schema extends ColumnSchemaConfig> extends ColumnType<Schema, unknown, ReturnType<Schema['unknown']>, typeof Operators.any> {
|
|
2377
2406
|
dataType: string;
|
|
2378
2407
|
operators: OperatorsAny;
|
|
2379
2408
|
constructor(schema: Schema, dataType: string);
|
|
@@ -2530,16 +2559,16 @@ declare abstract class NumberBaseColumn<Schema extends ColumnSchemaConfig, Schem
|
|
|
2530
2559
|
data: NumberColumnData;
|
|
2531
2560
|
operators: OperatorsNumber;
|
|
2532
2561
|
}
|
|
2533
|
-
declare abstract class IntegerBaseColumn<Schema extends ColumnSchemaConfig> extends NumberBaseColumn<Schema, Schema['int']
|
|
2562
|
+
declare abstract class IntegerBaseColumn<Schema extends ColumnSchemaConfig> extends NumberBaseColumn<Schema, ReturnType<Schema['int']>> {
|
|
2534
2563
|
data: NumberColumnData;
|
|
2535
2564
|
constructor(schema: Schema);
|
|
2536
2565
|
}
|
|
2537
|
-
declare abstract class NumberAsStringBaseColumn<Schema extends ColumnSchemaConfig> extends ColumnType<Schema, string, Schema['stringSchema']
|
|
2566
|
+
declare abstract class NumberAsStringBaseColumn<Schema extends ColumnSchemaConfig> extends ColumnType<Schema, string, ReturnType<Schema['stringSchema']>, OperatorsNumber> {
|
|
2538
2567
|
operators: OperatorsNumber;
|
|
2539
2568
|
data: ColumnData;
|
|
2540
2569
|
constructor(schema: Schema);
|
|
2541
2570
|
}
|
|
2542
|
-
declare class DecimalColumn<Schema extends ColumnSchemaConfig> extends ColumnType<Schema, string, Schema['stringSchema']
|
|
2571
|
+
declare class DecimalColumn<Schema extends ColumnSchemaConfig> extends ColumnType<Schema, string, ReturnType<Schema['stringSchema']>, OperatorsNumber> {
|
|
2543
2572
|
data: ColumnData & {
|
|
2544
2573
|
numericPrecision?: number;
|
|
2545
2574
|
numericScale?: number;
|
|
@@ -2568,7 +2597,7 @@ declare class BigIntColumn<Schema extends ColumnSchemaConfig> extends NumberAsSt
|
|
|
2568
2597
|
toCode(t: string): Code;
|
|
2569
2598
|
identity<T extends ColumnType>(this: T, options?: TableData.Identity): IdentityColumn<T>;
|
|
2570
2599
|
}
|
|
2571
|
-
declare class RealColumn<Schema extends ColumnSchemaConfig> extends NumberBaseColumn<Schema, Schema['number']
|
|
2600
|
+
declare class RealColumn<Schema extends ColumnSchemaConfig> extends NumberBaseColumn<Schema, ReturnType<Schema['number']>> {
|
|
2572
2601
|
dataType: "real";
|
|
2573
2602
|
parseItem: typeof parseFloat;
|
|
2574
2603
|
constructor(schema: Schema);
|
|
@@ -2840,7 +2869,7 @@ interface DbResult<ColumnTypes> extends Db<string, Record<string, never>, EmptyO
|
|
|
2840
2869
|
close: Adapter['close'];
|
|
2841
2870
|
}
|
|
2842
2871
|
/**
|
|
2843
|
-
* For the case of using the query builder as a standalone tool, use `createDb
|
|
2872
|
+
* For the case of using the query builder as a standalone tool, use `createDb`.
|
|
2844
2873
|
*
|
|
2845
2874
|
* As `Orchid ORM` focuses on ORM usage, docs examples mostly demonstrates how to work with ORM-defined tables,
|
|
2846
2875
|
* but everything that's not related to table relations should also work with `pqb` query builder on its own.
|
|
@@ -2850,6 +2879,10 @@ interface DbResult<ColumnTypes> extends Db<string, Record<string, never>, EmptyO
|
|
|
2850
2879
|
* ```ts
|
|
2851
2880
|
* import { createDb } from 'orchid-orm';
|
|
2852
2881
|
*
|
|
2882
|
+
* import { zodSchemaConfig } from 'orchid-orm-schema-to-zod';
|
|
2883
|
+
* // or
|
|
2884
|
+
* import { SchemaConfig } from 'orchid-orm-valibot';
|
|
2885
|
+
*
|
|
2853
2886
|
* const db = createDb({
|
|
2854
2887
|
* // db connection options
|
|
2855
2888
|
* databaseURL: process.env.DATABASE_URL,
|
|
@@ -2861,6 +2894,11 @@ interface DbResult<ColumnTypes> extends Db<string, Record<string, never>, EmptyO
|
|
|
2861
2894
|
* // override default SQL for timestamp, see `nowSQL` above
|
|
2862
2895
|
* nowSQL: `now() AT TIME ZONE 'UTC'`,
|
|
2863
2896
|
*
|
|
2897
|
+
* // optional, but recommended: makes zod schemas for your tables
|
|
2898
|
+
* schemaConfig: zodSchemaConfig,
|
|
2899
|
+
* // or
|
|
2900
|
+
* schemaConfig: valibotSchemaConfig,
|
|
2901
|
+
*
|
|
2864
2902
|
* // override column types:
|
|
2865
2903
|
* columnTypes: (t) => ({
|
|
2866
2904
|
* // by default timestamp is returned as a string, override to a number
|
|
@@ -6966,7 +7004,7 @@ interface ColumnsShapeToObjectArray<Shape extends QueryColumns> {
|
|
|
6966
7004
|
operators: OperatorsAny;
|
|
6967
7005
|
}
|
|
6968
7006
|
|
|
6969
|
-
declare abstract class VirtualColumn<Schema extends ColumnSchemaConfig, InputSchema extends Schema['type'] = Schema['never']
|
|
7007
|
+
declare abstract class VirtualColumn<Schema extends ColumnSchemaConfig, InputSchema extends Schema['type'] = ReturnType<Schema['never']>> extends ColumnType<Schema, unknown, InputSchema, OperatorsAny> {
|
|
6970
7008
|
dataType: string;
|
|
6971
7009
|
operators: OperatorsAny;
|
|
6972
7010
|
constructor(schema: Schema, inputSchema?: InputSchema);
|