export type PartialDeep = { [P in keyof T]?: PartialDeep; }; export type NoInfer = [T][T extends any ? 0 : never]; export type Writable = { -readonly [P in keyof T]: T[P]; };