FormidableLabs / FormidableLabs/ts-simplify
Bug: Date types getting expanded
- Dominant language
- TypeScript
- Stars
- 20
- Forks
- 3
- PR merge metrics
- No merged PRs in 30d
Description
Date properties, when simplified, gets expanded like below
```ts
export type Hello = {
s: Date;
};
```
```ts
/* Types generated from './src/type-d.ts' */
export type Hello = {
s: {
toString: () => string;
toDateString: () => string;
toTimeString: () => string;
toLocaleString: (
locales?:
| string
| {
baseName: string;
language: string;
maximize: () => any;
minimize: () => any;
toString: () => string;
calendar?: string | undefined;
caseFirst?: LocaleCollationCaseFirst | undefined;
collation?: string | undefined;
hourCycle?: LocaleHourCycleKey | undefined;
numberingSystem?: string | undefined;
numeric?: boolean | undefined;
region?: string | undefined;
script?: string | undefined;
}
| readonly (
| string
| {
baseName: string;
language: string;
maximize: () => any;
minimize: () => any;
toString: () => string;
calendar?: string | undefined;
caseFirst?: LocaleCollationCaseFirst | undefined;
collation?: string | undefined;
hourCycle?: LocaleHourCycleKey | undefined;
numberingSystem?: string | undefined;
numeric?: boolean | undefined;
region?: string | undefined;
script?: string | undefined;
}
)[]
| undefined,
options?:
| {
localeMatcher?: "best fit" | "lookup" | undefined;
weekday?: "long" | "short" | "narrow" | undefined;
era?: "long" | "short" | "narrow" | undefined;
year?: "numeric" | "2-digit" | undefined;
month?:
| "numeric"
| "long"
| "short"
| "narrow"
| "2-digit"
| undefined;
day?: "numeric" | "2-digit" | undefined;
hour?: "numeric" | "2-digit" | undefined;
minute?: "numeric" | "2-digit" | undefined;
second?: "numeric" | "2-digit" | undefined;
timeZoneName?:
| "long"
| "short"
| "shortOffset"
| "longOffset"
| "shortGeneric"
| "longGeneric"
| undefined;
formatMatcher?: "best fit" | "basic" | undefined;
hour12?: boolean | undefined;
timeZone?: string | undefined;
calendar?: string | undefined;
dayPeriod?: "long" | "short" | "narrow" | undefined;
numberingSystem?: string | undefined;
dateStyle?: "long" | "short" | "full" | "medium" | undefined;
timeStyle?: "long" | "short" | "full" | "medium" | undefined;
hourCycle?: "h12" | "h23" | "h11" | "h24" | undefined;
fractionalSecondDigits?: 1 | 2 | 3 | undefined;
}
| undefined
) => string;
toLocaleDateString: (
locales?:
| string
| {
baseName: string;
language: string;
maximize: () => any;
minimize: () => any;
toString: () => string;
calendar?: string | undefined;
caseFirst?: LocaleCollationCaseFirst | undefined;
collation?: string | undefined;
hourCycle?: LocaleHourCycleKey | undefined;
numberingSystem?: string | undefined;
numeric?: boolean | undefined;
region?: string | undefined;
script?: string | undefined;
}
| readonly (
| string
| {
baseName: string;
language: string;
maximize: () => any;
minimize: () => any;
toString: () => string;
calendar?: string | undefined;
caseFirst?: LocaleCollationCaseFirst | undefined;
collation?: string | undefined;
hourCycle?: LocaleHourCycleKey | undefined;
numberingSystem?: string | undefined;
numeric?: boolean | undefined;
region?: string | undefined;
script?: string | undefined;
}
)[]
| undefined,
options?:
| {
localeMatcher?: "best fit" | "lookup" | undefined;
weekday?: "long" | "short" | "narrow" | undefined;
era?: "long" | "short" | "narrow" | undefined;
year?: "numeric" | "2-digit" | undefined;
month?:
| "numeric"
| "long"
| "short"
| "narrow"
| "2-digit"
| undefined;
day?: "numeric" | "2-digit" | undefined;
hour?: "numeric" | "2-digit" | undefined;
minute?: "numeric" | "2-digit" | undefined;
second?: "numeric" | "2-digit" | undefined;
timeZoneName?:
| "long"
| "short"
| "shortOffset"
| "longOffset"
| "shortGeneric"
| "longGeneric"
| undefined;
formatMatcher?: "best fit" | "basic" | undefined;
hour12?: boolean | undefined;
timeZone?: string | undefined;
calendar?: string | undefined;
dayPeriod?: "long" | "short" | "narrow" | undefined;
numberingSystem?: string | undefined;
dateStyle?: "long" | "short" | "full" | "medium" | undefined;
timeStyle?: "long" | "short" | "full" | "medium" | undefined;
hourCycle?: "h12" | "h23" | "h11" | "h24" | undefined;
fractionalSecondDigits?: 1 | 2 | 3 | undefined;
}
| undefined
) => string;
toLocaleTimeString: (
locales?:
| string
| {
baseName: string;
language: string;
maximize: () => any;
minimize: () => any;
toString: () => string;
calendar?: string | undefined;
caseFirst?: LocaleCollationCaseFirst | undefined;
collation?: string | undefined;
hourCycle?: LocaleHourCycleKey | undefined;
numberingSystem?: string | undefined;
numeric?: boolean | undefined;
region?: string | undefined;
script?: string | undefined;
}
| readonly (
| string
| {
baseName: string;
language: string;
maximize: () => any;
minimize: () => any;
toString: () => string;
calendar?: string | undefined;
caseFirst?: LocaleCollationCaseFirst | undefined;
collation?: string | undefined;
hourCycle?: LocaleHourCycleKey | undefined;
numberingSystem?: string | undefined;
numeric?: boolean | undefined;
region?: string | undefined;
script?: string | undefined;
}
)[]
| undefined,
options?:
| {
localeMatcher?: "best fit" | "lookup" | undefined;
weekday?: "long" | "short" | "narrow" | undefined;
era?: "long" | "short" | "narrow" | undefined;
year?: "numeric" | "2-digit" | undefined;
month?:
| "numeric"
| "long"
| "short"
| "narrow"
| "2-digit"
| undefined;
day?: "numeric" | "2-digit" | undefined;
hour?: "numeric" | "2-digit" | undefined;
minute?: "numeric" | "2-digit" | undefined;
second?: "numeric" | "2-digit" | undefined;
timeZoneName?:
| "long"
| "short"
| "shortOffset"
| "longOffset"
| "shortGeneric"
| "longGeneric"
| undefined;
formatMatcher?: "best fit" | "basic" | undefined;
hour12?: boolean | undefined;
timeZone?: string | undefined;
calendar?: string | undefined;
dayPeriod?: "long" | "short" | "narrow" | undefined;
numberingSystem?: string | undefined;
dateStyle?: "long" | "short" | "full" | "medium" | undefined;
timeStyle?: "long" | "short" | "full" | "medium" | undefined;
hourCycle?: "h12" | "h23" | "h11" | "h24" | undefined;
fractionalSecondDigits?: 1 | 2 | 3 | undefined;
}
| undefined
) => string;
valueOf: () => number;
getTime: () => number;
getFullYear: () => number;
getUTCFullYear: () => number;
getMonth: () => number;
getUTCMonth: () => number;
getDate: () => number;
getUTCDate: () => number;
getDay: () => number;
getUTCDay: () => number;
getHours: () => number;
getUTCHours: () => number;
getMinutes: () => number;
getUTCMinutes: () => number;
getSeconds: () => number;
getUTCSeconds: () => number;
getMilliseconds: () => number;
getUTCMilliseconds: () => number;
getTimezoneOffset: () => number;
setTime: (time: number) => number;
setMilliseconds: (ms: number) => number;
setUTCMilliseconds: (ms: number) => number;
setSeconds: (sec: number, ms?: number | undefined) => number;
setUTCSeconds: (sec: number, ms?: number | undefined) => number;
setMinutes: (
min: number,
sec?: number | undefined,
ms?: number | undefined
) => number;
setUTCMinutes: (
min: number,
sec?: number | undefined,
ms?: number | undefined
) => number;
setHours: (
hours: number,
min?: number | undefined,
sec?: number | undefined,
ms?: number | undefined
) => number;
setUTCHours: (
hours: number,
min?: number | undefined,
sec?: number | undefined,
ms?: number | undefined
) => number;
setDate: (date: number) => number;
setUTCDate: (date: number) => number;
setMonth: (month: number, date?: number | undefined) => number;
setUTCMonth: (month: number, date?: number | undefined) => number;
setFullYear: (
year: number,
month?: number | undefined,
date?: number | undefined
) => number;
setUTCFullYear: (
year: number,
month?: number | undefined,
date?: number | undefined
) => number;
toUTCString: () => string;
toISOString: () => string;
toJSON: (key?: any) => string;
[Symbol.toPrimitive]: (hint: string) => string | number;
};
};
```
Contributor guide
Assessment
This issue has not been assessed yet.