export interface ModelModifiers { nullable?: boolean; number?: boolean; optional?: boolean; trim?: boolean; lazy?: boolean; } export type ApplyModifiers = _Number<_Optional<_Nullable, M>, M>; type _Nullable = M extends { nullable: true; } ? T | null : T; type _Optional = M extends { optional: true; } ? T | undefined : T; type _Number = M extends { number: true; } ? T extends string ? T | number : T : T; export {};