@zenstackhq/orm 3.0.0-beta.20 → 3.0.0-beta.22
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.cjs +274 -39
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +54 -51
- package/dist/index.d.ts +54 -51
- package/dist/index.js +278 -43
- package/dist/index.js.map +1 -1
- package/package.json +7 -7
package/dist/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import Decimal from 'decimal.js';
|
|
2
2
|
import * as _zenstackhq_schema from '@zenstackhq/schema';
|
|
3
|
-
import { SchemaDef, GetModels, ScalarFields, ForeignKeyFields, GetModelFields, FieldHasDefault, GetModelFieldType, ModelFieldIsOptional, GetModelField,
|
|
3
|
+
import { SchemaDef, GetModels, ScalarFields, ForeignKeyFields, GetModelFields, FieldHasDefault, GetModelFieldType, ModelFieldIsOptional, GetModelField, RelationFields, FieldIsArray, NonRelationFields, FieldDef, GetEnums, GetEnum, GetTypeDefs, GetTypeDefFields, GetTypeDefField, TypeDefFieldIsOptional, RelationFieldType, FieldIsRelation, GetModel, BuiltinType, IsDelegateModel, GetModelDiscriminator, GetSubModels, FieldIsDelegateDiscriminator, FieldType, RelationInfo, FieldIsDelegateRelation, ModelDef, DataSourceProviderType, ProcedureDef, Expression as Expression$1, LiteralExpression, ArrayExpression, FieldExpression, MemberExpression, BinaryExpression, UnaryExpression, CallExpression, ThisExpression, NullExpression } from '@zenstackhq/schema';
|
|
4
4
|
import * as kysely from 'kysely';
|
|
5
5
|
import { OperationNodeVisitor, OperationNode, SelectQueryNode, SelectionNode, ColumnNode, AliasNode, TableNode, FromNode, ReferenceNode, AndNode, OrNode, ValueListNode, ParensNode, JoinNode, RawNode, WhereNode, InsertQueryNode, DeleteQueryNode, ReturningNode, CreateTableNode, AddColumnNode, ColumnDefinitionNode, DropTableNode, OrderByNode, OrderByItemNode, GroupByNode, GroupByItemNode, UpdateQueryNode, ColumnUpdateNode, LimitNode, OffsetNode, OnConflictNode, OnDuplicateKeyNode, CheckConstraintNode, DataTypeNode, SelectAllNode, IdentifierNode, SchemableIdentifierNode, ValueNode, PrimitiveValueListNode, OperatorNode, CreateIndexNode, DropIndexNode, ListNode, PrimaryKeyConstraintNode, UniqueConstraintNode, ReferencesNode, WithNode, CommonTableExpressionNode, CommonTableExpressionNameNode, HavingNode, CreateSchemaNode, DropSchemaNode, AlterTableNode, DropColumnNode, RenameColumnNode, AlterColumnNode, ModifyColumnNode, AddConstraintNode, DropConstraintNode, ForeignKeyConstraintNode, CreateViewNode, DropViewNode, GeneratedNode, DefaultValueNode, OnNode, ValuesNode, SelectModifierNode, CreateTypeNode, DropTypeNode, ExplainNode, DefaultInsertValueNode, AggregateFunctionNode, OverNode, PartitionByNode, PartitionByItemNode, SetOperationNode, BinaryOperationNode, UnaryOperationNode, UsingNode, FunctionNode, CaseNode, WhenNode, JSONReferenceNode, JSONPathNode, JSONPathLegNode, JSONOperatorChainNode, TupleNode, MergeQueryNode, MatchedNode, AddIndexNode, CastNode, FetchNode, TopNode, OutputNode, RenameConstraintNode, RefreshMaterializedViewNode, OrActionNode, CollateNode, Kysely, Generated, ExpressionBuilder, OperandExpression, SqlBool, SelectQueryBuilder, Expression, ExpressionWrapper, QueryId, RootOperationNode, QueryResult, UnknownRow, Dialect, KyselyConfig } from 'kysely';
|
|
6
6
|
|
|
@@ -120,6 +120,7 @@ type _Depth = [never, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9];
|
|
|
120
120
|
type Simplify<T, D extends number = 6> = D extends 0 ? T : T extends object ? T extends _Preserve ? T : {
|
|
121
121
|
[K in keyof T]: Simplify<T[K], _Depth[D]>;
|
|
122
122
|
} & {} : T;
|
|
123
|
+
type SimplifyIf<T, Condition extends boolean> = Condition extends true ? Simplify<T> : T;
|
|
123
124
|
type WrapType<T, Optional = false, Array = false> = Array extends true ? Optional extends true ? T[] | null : T[] : Optional extends true ? T | null : T;
|
|
124
125
|
type TypeMap = {
|
|
125
126
|
String: string;
|
|
@@ -200,7 +201,7 @@ type SelectCountResult<Schema extends SchemaDef, Model extends GetModels<Schema>
|
|
|
200
201
|
} ? {
|
|
201
202
|
[Key in keyof S]: number;
|
|
202
203
|
} : never;
|
|
203
|
-
type ModelResult<Schema extends SchemaDef, Model extends GetModels<Schema>, Args
|
|
204
|
+
type ModelResult<Schema extends SchemaDef, Model extends GetModels<Schema>, Args = {}, Optional = false, Array = false> = WrapType<Args extends {
|
|
204
205
|
select: infer S;
|
|
205
206
|
omit?: infer O;
|
|
206
207
|
} ? ModelSelectResult<Schema, Model, S, O> : Args extends {
|
|
@@ -211,7 +212,7 @@ type ModelResult<Schema extends SchemaDef, Model extends GetModels<Schema>, Args
|
|
|
211
212
|
} : Args extends {
|
|
212
213
|
omit: infer O;
|
|
213
214
|
} ? DefaultModelResult<Schema, Model, O> : DefaultModelResult<Schema, Model>, Optional, Array>;
|
|
214
|
-
type SimplifiedModelResult<Schema extends SchemaDef, Model extends GetModels<Schema>, Args
|
|
215
|
+
type SimplifiedModelResult<Schema extends SchemaDef, Model extends GetModels<Schema>, Args = {}, Optional = false, Array = false> = Simplify<ModelResult<Schema, Model, Args, Optional, Array>>;
|
|
215
216
|
type TypeDefResult<Schema extends SchemaDef, TypeDef extends GetTypeDefs<Schema>> = Optional<{
|
|
216
217
|
[Key in GetTypeDefFields<Schema, TypeDef>]: MapTypeDefFieldType<Schema, TypeDef, Key>;
|
|
217
218
|
}, keyof {
|
|
@@ -390,29 +391,29 @@ type SortAndTakeArgs<Schema extends SchemaDef, Model extends GetModels<Schema>>
|
|
|
390
391
|
type FindArgs<Schema extends SchemaDef, Model extends GetModels<Schema>, Collection extends boolean, AllowFilter extends boolean = true> = ProviderSupportsDistinct<Schema> extends true ? (Collection extends true ? SortAndTakeArgs<Schema, Model> & {
|
|
391
392
|
distinct?: OrArray<NonRelationFields<Schema, Model>>;
|
|
392
393
|
} : {}) & (AllowFilter extends true ? FilterArgs<Schema, Model> : {}) & SelectIncludeOmit<Schema, Model, Collection> : (Collection extends true ? SortAndTakeArgs<Schema, Model> : {}) & (AllowFilter extends true ? FilterArgs<Schema, Model> : {}) & SelectIncludeOmit<Schema, Model, Collection>;
|
|
393
|
-
type FindManyArgs<Schema extends SchemaDef, Model extends GetModels<Schema
|
|
394
|
-
type FindFirstArgs<Schema extends SchemaDef, Model extends GetModels<Schema
|
|
395
|
-
type FindUniqueArgs<Schema extends SchemaDef, Model extends GetModels<Schema
|
|
394
|
+
type FindManyArgs<Schema extends SchemaDef, Model extends GetModels<Schema>, Simplify extends boolean = false> = SimplifyIf<FindArgs<Schema, Model, true>, Simplify>;
|
|
395
|
+
type FindFirstArgs<Schema extends SchemaDef, Model extends GetModels<Schema>, Simplify extends boolean = false> = SimplifyIf<FindArgs<Schema, Model, true>, Simplify>;
|
|
396
|
+
type FindUniqueArgs<Schema extends SchemaDef, Model extends GetModels<Schema>, Simplify extends boolean = false> = SimplifyIf<{
|
|
396
397
|
where?: WhereUniqueInput<Schema, Model>;
|
|
397
|
-
} & SelectIncludeOmit<Schema, Model, true>;
|
|
398
|
-
type CreateArgs<Schema extends SchemaDef, Model extends GetModels<Schema
|
|
398
|
+
} & SelectIncludeOmit<Schema, Model, true>, Simplify>;
|
|
399
|
+
type CreateArgs<Schema extends SchemaDef, Model extends GetModels<Schema>, Simplify extends boolean = false> = SimplifyIf<{
|
|
399
400
|
data: CreateInput<Schema, Model>;
|
|
400
401
|
select?: SelectInput<Schema, Model>;
|
|
401
402
|
include?: IncludeInput<Schema, Model>;
|
|
402
403
|
omit?: OmitInput<Schema, Model>;
|
|
403
|
-
}
|
|
404
|
-
type CreateManyArgs<Schema extends SchemaDef, Model extends GetModels<Schema
|
|
405
|
-
type CreateManyAndReturnArgs<Schema extends SchemaDef, Model extends GetModels<Schema
|
|
404
|
+
}, Simplify>;
|
|
405
|
+
type CreateManyArgs<Schema extends SchemaDef, Model extends GetModels<Schema>, Simplify extends boolean = false> = SimplifyIf<CreateManyInput<Schema, Model>, Simplify>;
|
|
406
|
+
type CreateManyAndReturnArgs<Schema extends SchemaDef, Model extends GetModels<Schema>, Simplify extends boolean = false> = SimplifyIf<CreateManyInput<Schema, Model> & {
|
|
406
407
|
select?: SelectInput<Schema, Model, false, false>;
|
|
407
408
|
omit?: OmitInput<Schema, Model>;
|
|
408
|
-
}
|
|
409
|
+
}, Simplify>;
|
|
409
410
|
type OptionalWrap<Schema extends SchemaDef, Model extends GetModels<Schema>, T extends object> = Optional<T, keyof T & OptionalFieldsForCreate<Schema, Model>>;
|
|
410
411
|
type CreateScalarPayload<Schema extends SchemaDef, Model extends GetModels<Schema>> = OptionalWrap<Schema, Model, {
|
|
411
412
|
[Key in ScalarFields<Schema, Model, false> as FieldIsDelegateDiscriminator<Schema, Model, Key> extends true ? never : Key]: ScalarCreatePayload<Schema, Model, Key>;
|
|
412
413
|
}>;
|
|
413
|
-
type ScalarCreatePayload<Schema extends SchemaDef, Model extends GetModels<Schema>, Field extends ScalarFields<Schema, Model, false>> = MapModelFieldType<Schema, Model, Field> | (FieldIsArray<Schema, Model, Field> extends true ? {
|
|
414
|
+
type ScalarCreatePayload<Schema extends SchemaDef, Model extends GetModels<Schema>, Field extends ScalarFields<Schema, Model, false>> = Simplify<MapModelFieldType<Schema, Model, Field> | (FieldIsArray<Schema, Model, Field> extends true ? {
|
|
414
415
|
set?: MapModelFieldType<Schema, Model, Field>;
|
|
415
|
-
} : never)
|
|
416
|
+
} : never)>;
|
|
416
417
|
type CreateFKPayload<Schema extends SchemaDef, Model extends GetModels<Schema>> = OptionalWrap<Schema, Model, {
|
|
417
418
|
[Key in ForeignKeyFields<Schema, Model>]: MapModelFieldType<Schema, Model, Key>;
|
|
418
419
|
}>;
|
|
@@ -441,31 +442,31 @@ type CreateManyInput<Schema extends SchemaDef, Model extends GetModels<Schema>,
|
|
|
441
442
|
type CreateInput<Schema extends SchemaDef, Model extends GetModels<Schema>, Without extends string = never> = XOR<Omit<CreateWithFKInput<Schema, Model>, Without>, Omit<CreateWithRelationInput<Schema, Model>, Without>>;
|
|
442
443
|
type NestedCreateInput<Schema extends SchemaDef, Model extends GetModels<Schema>, Field extends RelationFields<Schema, Model>> = OrArray<CreateInput<Schema, RelationFieldType<Schema, Model, Field>, OppositeRelationAndFK<Schema, Model, Field>>, FieldIsArray<Schema, Model, Field>>;
|
|
443
444
|
type NestedCreateManyInput<Schema extends SchemaDef, Model extends GetModels<Schema>, Field extends RelationFields<Schema, Model>> = CreateManyInput<Schema, RelationFieldType<Schema, Model, Field>, OppositeRelationAndFK<Schema, Model, Field>>;
|
|
444
|
-
type UpdateArgs<Schema extends SchemaDef, Model extends GetModels<Schema
|
|
445
|
+
type UpdateArgs<Schema extends SchemaDef, Model extends GetModels<Schema>, Simplify extends boolean = false> = SimplifyIf<{
|
|
445
446
|
data: UpdateInput<Schema, Model>;
|
|
446
447
|
where: WhereUniqueInput<Schema, Model>;
|
|
447
448
|
select?: SelectInput<Schema, Model>;
|
|
448
449
|
include?: IncludeInput<Schema, Model>;
|
|
449
450
|
omit?: OmitInput<Schema, Model>;
|
|
450
|
-
}
|
|
451
|
-
type UpdateManyArgs<Schema extends SchemaDef, Model extends GetModels<Schema
|
|
452
|
-
type UpdateManyAndReturnArgs<Schema extends SchemaDef, Model extends GetModels<Schema
|
|
451
|
+
}, Simplify>;
|
|
452
|
+
type UpdateManyArgs<Schema extends SchemaDef, Model extends GetModels<Schema>, Simplify extends boolean = false> = SimplifyIf<UpdateManyPayload<Schema, Model>, Simplify>;
|
|
453
|
+
type UpdateManyAndReturnArgs<Schema extends SchemaDef, Model extends GetModels<Schema>, Simplify extends boolean = false> = SimplifyIf<UpdateManyPayload<Schema, Model> & {
|
|
453
454
|
select?: SelectInput<Schema, Model, false, false>;
|
|
454
455
|
omit?: OmitInput<Schema, Model>;
|
|
455
|
-
}
|
|
456
|
+
}, Simplify>;
|
|
456
457
|
type UpdateManyPayload<Schema extends SchemaDef, Model extends GetModels<Schema>, Without extends string = never> = {
|
|
457
458
|
data: OrArray<UpdateScalarInput<Schema, Model, Without>>;
|
|
458
459
|
where?: WhereInput<Schema, Model>;
|
|
459
460
|
limit?: number;
|
|
460
461
|
};
|
|
461
|
-
type UpsertArgs<Schema extends SchemaDef, Model extends GetModels<Schema
|
|
462
|
+
type UpsertArgs<Schema extends SchemaDef, Model extends GetModels<Schema>, Simplify extends boolean = false> = SimplifyIf<{
|
|
462
463
|
create: CreateInput<Schema, Model>;
|
|
463
464
|
update: UpdateInput<Schema, Model>;
|
|
464
465
|
where: WhereUniqueInput<Schema, Model>;
|
|
465
466
|
select?: SelectInput<Schema, Model>;
|
|
466
467
|
include?: IncludeInput<Schema, Model>;
|
|
467
468
|
omit?: OmitInput<Schema, Model>;
|
|
468
|
-
}
|
|
469
|
+
}, Simplify>;
|
|
469
470
|
type UpdateScalarInput<Schema extends SchemaDef, Model extends GetModels<Schema>, Without extends string = never> = Omit<{
|
|
470
471
|
[Key in NonRelationFields<Schema, Model> as FieldIsDelegateDiscriminator<Schema, Model, Key> extends true ? never : Key]?: ScalarUpdatePayload<Schema, Model, Key>;
|
|
471
472
|
}, Without>;
|
|
@@ -507,30 +508,30 @@ type ToOneRelationUpdateInput<Schema extends SchemaDef, Model extends GetModels<
|
|
|
507
508
|
disconnect?: DisconnectInput<Schema, Model, Field>;
|
|
508
509
|
delete?: NestedDeleteInput<Schema, Model, Field>;
|
|
509
510
|
} : {}), FieldIsDelegateRelation<Schema, Model, Field> extends true ? 'create' | 'connectOrCreate' | 'upsert' : never>;
|
|
510
|
-
type DeleteArgs<Schema extends SchemaDef, Model extends GetModels<Schema
|
|
511
|
+
type DeleteArgs<Schema extends SchemaDef, Model extends GetModels<Schema>, Simplify extends boolean = false> = SimplifyIf<{
|
|
511
512
|
where: WhereUniqueInput<Schema, Model>;
|
|
512
513
|
select?: SelectInput<Schema, Model>;
|
|
513
514
|
include?: IncludeInput<Schema, Model>;
|
|
514
515
|
omit?: OmitInput<Schema, Model>;
|
|
515
|
-
}
|
|
516
|
-
type DeleteManyArgs<Schema extends SchemaDef, Model extends GetModels<Schema
|
|
516
|
+
}, Simplify>;
|
|
517
|
+
type DeleteManyArgs<Schema extends SchemaDef, Model extends GetModels<Schema>, Simplify extends boolean = false> = SimplifyIf<{
|
|
517
518
|
where?: WhereInput<Schema, Model>;
|
|
518
519
|
limit?: number;
|
|
519
|
-
}
|
|
520
|
-
type CountArgs<Schema extends SchemaDef, Model extends GetModels<Schema
|
|
520
|
+
}, Simplify>;
|
|
521
|
+
type CountArgs<Schema extends SchemaDef, Model extends GetModels<Schema>, Simplify extends boolean = false> = SimplifyIf<Omit<FindArgs<Schema, Model, true>, 'select' | 'include' | 'distinct' | 'omit'> & {
|
|
521
522
|
select?: CountAggregateInput<Schema, Model> | true;
|
|
522
|
-
}
|
|
523
|
+
}, Simplify>;
|
|
523
524
|
type CountAggregateInput<Schema extends SchemaDef, Model extends GetModels<Schema>> = {
|
|
524
525
|
[Key in NonRelationFields<Schema, Model>]?: true;
|
|
525
526
|
} & {
|
|
526
527
|
_all?: true;
|
|
527
528
|
};
|
|
528
|
-
type CountResult<Schema extends SchemaDef,
|
|
529
|
+
type CountResult<Schema extends SchemaDef, _Model extends GetModels<Schema>, Args> = Args extends {
|
|
529
530
|
select: infer S;
|
|
530
531
|
} ? S extends true ? number : {
|
|
531
532
|
[Key in keyof S]: number;
|
|
532
533
|
} : number;
|
|
533
|
-
type AggregateArgs<Schema extends SchemaDef, Model extends GetModels<Schema
|
|
534
|
+
type AggregateArgs<Schema extends SchemaDef, Model extends GetModels<Schema>, Simplify extends boolean = false> = SimplifyIf<{
|
|
534
535
|
where?: WhereInput<Schema, Model>;
|
|
535
536
|
skip?: number;
|
|
536
537
|
take?: number;
|
|
@@ -542,7 +543,7 @@ type AggregateArgs<Schema extends SchemaDef, Model extends GetModels<Schema>> =
|
|
|
542
543
|
} & (NumericFields<Schema, Model> extends never ? {} : {
|
|
543
544
|
_avg?: SumAvgInput<Schema, Model, true>;
|
|
544
545
|
_sum?: SumAvgInput<Schema, Model, true>;
|
|
545
|
-
})
|
|
546
|
+
}), Simplify>;
|
|
546
547
|
type NumericFields<Schema extends SchemaDef, Model extends GetModels<Schema>> = keyof {
|
|
547
548
|
[Key in GetModelFields<Schema, Model> as GetModelFieldType<Schema, Model, Key> extends 'Int' | 'Float' | 'BigInt' | 'Decimal' ? FieldIsArray<Schema, Model, Key> extends true ? never : Key : never]: GetModelField<Schema, Model, Key>;
|
|
548
549
|
};
|
|
@@ -552,7 +553,7 @@ type SumAvgInput<Schema extends SchemaDef, Model extends GetModels<Schema>, Valu
|
|
|
552
553
|
type MinMaxInput<Schema extends SchemaDef, Model extends GetModels<Schema>, ValueType> = {
|
|
553
554
|
[Key in GetModelFields<Schema, Model> as FieldIsArray<Schema, Model, Key> extends true ? never : FieldIsRelation<Schema, Model, Key> extends true ? never : Key]?: ValueType;
|
|
554
555
|
};
|
|
555
|
-
type AggregateResult<Schema extends SchemaDef,
|
|
556
|
+
type AggregateResult<Schema extends SchemaDef, _Model extends GetModels<Schema>, Args> = (Args extends {
|
|
556
557
|
_count: infer Count;
|
|
557
558
|
} ? {
|
|
558
559
|
_count: AggCommonOutput<Count>;
|
|
@@ -577,7 +578,7 @@ type AggCommonOutput<Input> = Input extends true ? number : Input extends {} ? {
|
|
|
577
578
|
[Key in keyof Input]: number;
|
|
578
579
|
} : never;
|
|
579
580
|
type GroupByHaving<Schema extends SchemaDef, Model extends GetModels<Schema>> = Omit<WhereInput<Schema, Model, true, true>, '$expr'>;
|
|
580
|
-
type GroupByArgs<Schema extends SchemaDef, Model extends GetModels<Schema
|
|
581
|
+
type GroupByArgs<Schema extends SchemaDef, Model extends GetModels<Schema>, Simplify extends boolean = false> = SimplifyIf<{
|
|
581
582
|
where?: WhereInput<Schema, Model>;
|
|
582
583
|
orderBy?: OrArray<OrderBy<Schema, Model, false, true>>;
|
|
583
584
|
by: NonRelationFields<Schema, Model> | NonEmptyArray<NonRelationFields<Schema, Model>>;
|
|
@@ -590,8 +591,10 @@ type GroupByArgs<Schema extends SchemaDef, Model extends GetModels<Schema>> = {
|
|
|
590
591
|
} & (NumericFields<Schema, Model> extends never ? {} : {
|
|
591
592
|
_avg?: SumAvgInput<Schema, Model, true>;
|
|
592
593
|
_sum?: SumAvgInput<Schema, Model, true>;
|
|
593
|
-
})
|
|
594
|
-
type GroupByResult<Schema extends SchemaDef, Model extends GetModels<Schema>, Args extends
|
|
594
|
+
}), Simplify>;
|
|
595
|
+
type GroupByResult<Schema extends SchemaDef, Model extends GetModels<Schema>, Args extends {
|
|
596
|
+
by: unknown;
|
|
597
|
+
}> = Array<{
|
|
595
598
|
[Key in NonRelationFields<Schema, Model> as Key extends ValueOfPotentialTuple<Args['by']> ? Key : never]: MapModelFieldType<Schema, Model, Key>;
|
|
596
599
|
} & (Args extends {
|
|
597
600
|
_count: infer Count;
|
|
@@ -1222,35 +1225,35 @@ type AllModelOperations<Schema extends SchemaDef, Model extends GetModels<Schema
|
|
|
1222
1225
|
* }); // result: `{ _count: { posts: number } }`
|
|
1223
1226
|
* ```
|
|
1224
1227
|
*/
|
|
1225
|
-
findMany<T extends
|
|
1228
|
+
findMany<T extends FindManyArgs<Schema, Model, true>>(args?: SelectSubset<T, FindManyArgs<Schema, Model>>): ZenStackPromise<Schema, SimplifiedModelResult<Schema, Model, T>[]>;
|
|
1226
1229
|
/**
|
|
1227
1230
|
* Returns a uniquely identified entity.
|
|
1228
1231
|
* @param args - query args
|
|
1229
1232
|
* @returns a single entity or null if not found
|
|
1230
1233
|
* @see {@link findMany}
|
|
1231
1234
|
*/
|
|
1232
|
-
findUnique<T extends FindUniqueArgs<Schema, Model>>(args: SelectSubset<T, FindUniqueArgs<Schema, Model>>): ZenStackPromise<Schema,
|
|
1235
|
+
findUnique<T extends FindUniqueArgs<Schema, Model, true>>(args: SelectSubset<T, FindUniqueArgs<Schema, Model>>): ZenStackPromise<Schema, SimplifiedModelResult<Schema, Model, T> | null>;
|
|
1233
1236
|
/**
|
|
1234
1237
|
* Returns a uniquely identified entity or throws `NotFoundError` if not found.
|
|
1235
1238
|
* @param args - query args
|
|
1236
1239
|
* @returns a single entity
|
|
1237
1240
|
* @see {@link findMany}
|
|
1238
1241
|
*/
|
|
1239
|
-
findUniqueOrThrow<T extends FindUniqueArgs<Schema, Model>>(args: SelectSubset<T, FindUniqueArgs<Schema, Model>>): ZenStackPromise<Schema,
|
|
1242
|
+
findUniqueOrThrow<T extends FindUniqueArgs<Schema, Model, true>>(args: SelectSubset<T, FindUniqueArgs<Schema, Model>>): ZenStackPromise<Schema, SimplifiedModelResult<Schema, Model, T>>;
|
|
1240
1243
|
/**
|
|
1241
1244
|
* Returns the first entity.
|
|
1242
1245
|
* @param args - query args
|
|
1243
1246
|
* @returns a single entity or null if not found
|
|
1244
1247
|
* @see {@link findMany}
|
|
1245
1248
|
*/
|
|
1246
|
-
findFirst<T extends
|
|
1249
|
+
findFirst<T extends FindFirstArgs<Schema, Model, true>>(args?: SelectSubset<T, FindFirstArgs<Schema, Model>>): ZenStackPromise<Schema, SimplifiedModelResult<Schema, Model, T> | null>;
|
|
1247
1250
|
/**
|
|
1248
1251
|
* Returns the first entity or throws `NotFoundError` if not found.
|
|
1249
1252
|
* @param args - query args
|
|
1250
1253
|
* @returns a single entity
|
|
1251
1254
|
* @see {@link findMany}
|
|
1252
1255
|
*/
|
|
1253
|
-
findFirstOrThrow<T extends
|
|
1256
|
+
findFirstOrThrow<T extends FindFirstArgs<Schema, Model, true>>(args?: SelectSubset<T, FindFirstArgs<Schema, Model>>): ZenStackPromise<Schema, SimplifiedModelResult<Schema, Model, T>>;
|
|
1254
1257
|
/**
|
|
1255
1258
|
* Creates a new entity.
|
|
1256
1259
|
* @param args - create args
|
|
@@ -1303,7 +1306,7 @@ type AllModelOperations<Schema extends SchemaDef, Model extends GetModels<Schema
|
|
|
1303
1306
|
* });
|
|
1304
1307
|
* ```
|
|
1305
1308
|
*/
|
|
1306
|
-
create<T extends CreateArgs<Schema, Model>>(args: SelectSubset<T, CreateArgs<Schema, Model>>): ZenStackPromise<Schema,
|
|
1309
|
+
create<T extends CreateArgs<Schema, Model, true>>(args: SelectSubset<T, CreateArgs<Schema, Model>>): ZenStackPromise<Schema, SimplifiedModelResult<Schema, Model, T>>;
|
|
1307
1310
|
/**
|
|
1308
1311
|
* Creates multiple entities. Only scalar fields are allowed.
|
|
1309
1312
|
* @param args - create args
|
|
@@ -1329,7 +1332,7 @@ type AllModelOperations<Schema extends SchemaDef, Model extends GetModels<Schema
|
|
|
1329
1332
|
* });
|
|
1330
1333
|
* ```
|
|
1331
1334
|
*/
|
|
1332
|
-
createMany<T extends CreateManyArgs<Schema, Model>>(args?: SelectSubset<T, CreateManyArgs<Schema, Model>>): ZenStackPromise<Schema, BatchResult>;
|
|
1335
|
+
createMany<T extends CreateManyArgs<Schema, Model, true>>(args?: SelectSubset<T, CreateManyArgs<Schema, Model>>): ZenStackPromise<Schema, BatchResult>;
|
|
1333
1336
|
/**
|
|
1334
1337
|
* Creates multiple entities and returns them.
|
|
1335
1338
|
* @param args - create args. See {@link createMany} for input. Use
|
|
@@ -1348,7 +1351,7 @@ type AllModelOperations<Schema extends SchemaDef, Model extends GetModels<Schema
|
|
|
1348
1351
|
* });
|
|
1349
1352
|
* ```
|
|
1350
1353
|
*/
|
|
1351
|
-
createManyAndReturn<T extends CreateManyAndReturnArgs<Schema, Model>>(args?: SelectSubset<T, CreateManyAndReturnArgs<Schema, Model>>): ZenStackPromise<Schema,
|
|
1354
|
+
createManyAndReturn<T extends CreateManyAndReturnArgs<Schema, Model, true>>(args?: SelectSubset<T, CreateManyAndReturnArgs<Schema, Model>>): ZenStackPromise<Schema, SimplifiedModelResult<Schema, Model, T>[]>;
|
|
1352
1355
|
/**
|
|
1353
1356
|
* Updates a uniquely identified entity.
|
|
1354
1357
|
* @param args - update args. See {@link findMany} for how to control
|
|
@@ -1466,7 +1469,7 @@ type AllModelOperations<Schema extends SchemaDef, Model extends GetModels<Schema
|
|
|
1466
1469
|
* });
|
|
1467
1470
|
* ```
|
|
1468
1471
|
*/
|
|
1469
|
-
update<T extends UpdateArgs<Schema, Model>>(args: SelectSubset<T, UpdateArgs<Schema, Model>>): ZenStackPromise<Schema,
|
|
1472
|
+
update<T extends UpdateArgs<Schema, Model, true>>(args: SelectSubset<T, UpdateArgs<Schema, Model>>): ZenStackPromise<Schema, SimplifiedModelResult<Schema, Model, T>>;
|
|
1470
1473
|
/**
|
|
1471
1474
|
* Updates multiple entities.
|
|
1472
1475
|
* @param args - update args. Only scalar fields are allowed for data.
|
|
@@ -1487,7 +1490,7 @@ type AllModelOperations<Schema extends SchemaDef, Model extends GetModels<Schema
|
|
|
1487
1490
|
* limit: 10
|
|
1488
1491
|
* });
|
|
1489
1492
|
*/
|
|
1490
|
-
updateMany<T extends UpdateManyArgs<Schema, Model>>(args: Subset<T, UpdateManyArgs<Schema, Model>>): ZenStackPromise<Schema, BatchResult>;
|
|
1493
|
+
updateMany<T extends UpdateManyArgs<Schema, Model, true>>(args: Subset<T, UpdateManyArgs<Schema, Model>>): ZenStackPromise<Schema, BatchResult>;
|
|
1491
1494
|
/**
|
|
1492
1495
|
* Updates multiple entities and returns them.
|
|
1493
1496
|
* @param args - update args. Only scalar fields are allowed for data.
|
|
@@ -1510,7 +1513,7 @@ type AllModelOperations<Schema extends SchemaDef, Model extends GetModels<Schema
|
|
|
1510
1513
|
* });
|
|
1511
1514
|
* ```
|
|
1512
1515
|
*/
|
|
1513
|
-
updateManyAndReturn<T extends UpdateManyAndReturnArgs<Schema, Model>>(args: Subset<T, UpdateManyAndReturnArgs<Schema, Model>>): ZenStackPromise<Schema,
|
|
1516
|
+
updateManyAndReturn<T extends UpdateManyAndReturnArgs<Schema, Model, true>>(args: Subset<T, UpdateManyAndReturnArgs<Schema, Model>>): ZenStackPromise<Schema, SimplifiedModelResult<Schema, Model, T>[]>;
|
|
1514
1517
|
/**
|
|
1515
1518
|
* Creates or updates an entity.
|
|
1516
1519
|
* @param args - upsert args
|
|
@@ -1531,7 +1534,7 @@ type AllModelOperations<Schema extends SchemaDef, Model extends GetModels<Schema
|
|
|
1531
1534
|
* });
|
|
1532
1535
|
* ```
|
|
1533
1536
|
*/
|
|
1534
|
-
upsert<T extends UpsertArgs<Schema, Model>>(args: SelectSubset<T, UpsertArgs<Schema, Model>>): ZenStackPromise<Schema,
|
|
1537
|
+
upsert<T extends UpsertArgs<Schema, Model, true>>(args: SelectSubset<T, UpsertArgs<Schema, Model>>): ZenStackPromise<Schema, SimplifiedModelResult<Schema, Model, T>>;
|
|
1535
1538
|
/**
|
|
1536
1539
|
* Deletes a uniquely identifiable entity.
|
|
1537
1540
|
* @param args - delete args
|
|
@@ -1551,7 +1554,7 @@ type AllModelOperations<Schema extends SchemaDef, Model extends GetModels<Schema
|
|
|
1551
1554
|
* }); // result: `{ id: string; email: string }`
|
|
1552
1555
|
* ```
|
|
1553
1556
|
*/
|
|
1554
|
-
delete<T extends DeleteArgs<Schema, Model>>(args: SelectSubset<T, DeleteArgs<Schema, Model>>): ZenStackPromise<Schema,
|
|
1557
|
+
delete<T extends DeleteArgs<Schema, Model, true>>(args: SelectSubset<T, DeleteArgs<Schema, Model>>): ZenStackPromise<Schema, SimplifiedModelResult<Schema, Model, T>>;
|
|
1555
1558
|
/**
|
|
1556
1559
|
* Deletes multiple entities.
|
|
1557
1560
|
* @param args - delete args
|
|
@@ -1571,7 +1574,7 @@ type AllModelOperations<Schema extends SchemaDef, Model extends GetModels<Schema
|
|
|
1571
1574
|
* });
|
|
1572
1575
|
* ```
|
|
1573
1576
|
*/
|
|
1574
|
-
deleteMany<T extends DeleteManyArgs<Schema, Model>>(args?: Subset<T, DeleteManyArgs<Schema, Model>>): ZenStackPromise<Schema, BatchResult>;
|
|
1577
|
+
deleteMany<T extends DeleteManyArgs<Schema, Model, true>>(args?: Subset<T, DeleteManyArgs<Schema, Model>>): ZenStackPromise<Schema, BatchResult>;
|
|
1575
1578
|
/**
|
|
1576
1579
|
* Counts rows or field values.
|
|
1577
1580
|
* @param args - count args
|
|
@@ -1590,7 +1593,7 @@ type AllModelOperations<Schema extends SchemaDef, Model extends GetModels<Schema
|
|
|
1590
1593
|
* select: { _all: true, email: true }
|
|
1591
1594
|
* }); // result: `{ _all: number, email: number }`
|
|
1592
1595
|
*/
|
|
1593
|
-
count<T extends CountArgs<Schema, Model>>(args?: Subset<T, CountArgs<Schema, Model>>): ZenStackPromise<Schema, Simplify<CountResult<Schema, Model, T>>>;
|
|
1596
|
+
count<T extends CountArgs<Schema, Model, true>>(args?: Subset<T, CountArgs<Schema, Model>>): ZenStackPromise<Schema, Simplify<CountResult<Schema, Model, T>>>;
|
|
1594
1597
|
/**
|
|
1595
1598
|
* Aggregates rows.
|
|
1596
1599
|
* @param args - aggregation args
|
|
@@ -1608,7 +1611,7 @@ type AllModelOperations<Schema extends SchemaDef, Model extends GetModels<Schema
|
|
|
1608
1611
|
* _max: { age: true }
|
|
1609
1612
|
* }); // result: `{ _count: number, _avg: { age: number }, ... }`
|
|
1610
1613
|
*/
|
|
1611
|
-
aggregate<T extends AggregateArgs<Schema, Model>>(args: Subset<T, AggregateArgs<Schema, Model>>): ZenStackPromise<Schema, Simplify<AggregateResult<Schema, Model, T>>>;
|
|
1614
|
+
aggregate<T extends AggregateArgs<Schema, Model, true>>(args: Subset<T, AggregateArgs<Schema, Model>>): ZenStackPromise<Schema, Simplify<AggregateResult<Schema, Model, T>>>;
|
|
1612
1615
|
/**
|
|
1613
1616
|
* Groups rows by columns.
|
|
1614
1617
|
* @param args - groupBy args
|
|
@@ -1642,7 +1645,7 @@ type AllModelOperations<Schema extends SchemaDef, Model extends GetModels<Schema
|
|
|
1642
1645
|
* having: { country: 'US', age: { _avg: { gte: 18 } } }
|
|
1643
1646
|
* });
|
|
1644
1647
|
*/
|
|
1645
|
-
groupBy<T extends GroupByArgs<Schema, Model>>(args: Subset<T, GroupByArgs<Schema, Model>>): ZenStackPromise<Schema, Simplify<GroupByResult<Schema, Model, T>>>;
|
|
1648
|
+
groupBy<T extends GroupByArgs<Schema, Model, true>>(args: Subset<T, GroupByArgs<Schema, Model>>): ZenStackPromise<Schema, Simplify<GroupByResult<Schema, Model, T>>>;
|
|
1646
1649
|
};
|
|
1647
1650
|
type OperationsIneligibleForDelegateModels = 'create' | 'createMany' | 'createManyAndReturn' | 'upsert';
|
|
1648
1651
|
type ModelOperations<Schema extends SchemaDef, Model extends GetModels<Schema>> = Omit<AllModelOperations<Schema, Model>, IsDelegateModel<Schema, Model> extends true ? OperationsIneligibleForDelegateModels : never>;
|