GetValueType<T>: T extends StringField
    ? string
    : T extends StringField<null>
        ? string | null
        : T extends NumberField
            ? number
            : T extends IntegerField
                ? number
                : T extends BooleanField
                    ? boolean
                    : T extends DateField
                        ? string
                        : T extends EnumField<any>
                            ? string
                            : T extends ArrayField<infer V>
                                ? V[]
                                : T extends ArrayField<infer V, null>
                                    ? ((...) | (...))[]
                                    : T extends AnyField
                                        ? any
                                        : (...) extends (...)
                                            ? (...)
                                            : (...)

Type Parameters

  • T