UNPKG

@n8n/typeorm

Version:

Data-Mapper ORM for TypeScript, ES7, ES6, ES5. Supports PostgreSQL and SQLite databases.

16 lines (15 loc) 852 B
import { ObjectLiteral } from "../common/ObjectLiteral"; /** * Make all properties in T optional */ export type QueryPartialEntity<T> = { [P in keyof T]?: T[P] | (() => string); }; /** * Make all properties in T optional. Deep version. */ export type QueryDeepPartialEntity<T> = _QueryDeepPartialEntity<ObjectLiteral extends T ? unknown : T, never>; type _QueryDeepPartialEntity<Entity, Seen = never> = { [Property in keyof Entity]?: (Entity[Property] extends Seen ? Entity[Property] : Entity[Property] extends Array<infer ArrayItem> ? Array<_QueryDeepPartialEntity<ArrayItem, Seen | Entity[Property]>> : Entity[Property] extends ReadonlyArray<infer ArrayItem> ? ReadonlyArray<_QueryDeepPartialEntity<ArrayItem, Seen | Entity[Property]>> : _QueryDeepPartialEntity<Entity[Property], Seen | Entity[Property]>) | (() => string); }; export {};