Relation
Summary
Relation descriptor used by query loading.
Signature
type Relation<source, target, cardinality, loaded> = {
cardinality: cardinality;
kind: "relation";
modifiers: RelationModifiers<target>;
relationKind: RelationKind;
sourceKey: string[];
sourceTable: source;
targetKey: string[];
targetTable: target;
through?: ThroughRelationMetadata;
limit(value: number): Relation<source, target, cardinality, loaded>;
offset(value: number): Relation<source, target, cardinality, loaded>;
orderBy(
column: TableColumnInput<target>,
direction: OrderDirection,
): Relation<source, target, cardinality, loaded>;
where(
input: WhereInput<
| TableColumnName<target>
| `${TableName<target>}.${TableColumnName<target>}`
>,
): Relation<source, target, cardinality, loaded>;
with<relations extends RelationMapForTable<target>>(
relations: relations,
): Relation<
source,
target,
cardinality,
loaded & {
[key in string | number | symbol]: {
[name in string | number | symbol]: RelationResult<relations[name]>;
}[key];
}
>;
};