Skip to content

Instantly share code, notes, and snippets.

@bessgeor
bessgeor / codegenValidator.ts
Last active February 1, 2019 18:24
Typescript compile-time codgen reflection validator
import * as moment from 'moment';
type ArrayLike = any[] & { length: number }; // { length?: number } extends any[] == true
type IsNullable<T> = null extends T ? true : false;
type IsUndefinable<T> = undefined extends T ? true : false;
type Unwrap<T> = T extends (infer U)[] ? U : never;
type IsArray<T> = T extends ArrayLike ? true : false;
type EnumLike<T> =