Type alias Graph<T>

Graph<T>: {
    [K in Field<T>]?: Required<T>[K] extends ((...args) => any)
        ? never
        : Required<T>[K] extends Model<infer I> | Model<infer I>[]
            ? Record<K, Graph<I> | (() => Record<K, Graph<(...)>>)>
            : K
}[Field<T>][]

Mapped type to compile strongly typed Graphs of classes extending the abstract Model base class, while providing intellisense.

Type Parameters

Generated using TypeDoc