export type DeepPartial = { [P in keyof T]?: T[P] extends (infer U)[] ? DeepPartial[] : T[P] extends ReadonlyArray ? ReadonlyArray> : DeepPartial; }; export type Prettify = { [K in keyof T]: T[K]; } & {};