File tree Expand file tree Collapse file tree 1 file changed +19
-14
lines changed Expand file tree Collapse file tree 1 file changed +19
-14
lines changed Original file line number Diff line number Diff line change 11import type { Uri } from 'vscode' ;
22import { serializeJsonReplacer } from '@env/json' ;
3+ import type { Container } from '../container' ;
34import type { Branded } from './brand' ;
45
5- // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type
6- export type Serialized < T > = T extends Function
6+ // prettier-ignore
7+ export type Serialized < T > =
8+ // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type
9+ T extends Function | Error | Container
710 ? never
811 : T extends Date
9- ? number
10- : T extends Uri
11- ? string
12- : T extends Branded < infer U , any >
13- ? U
14- : T extends any [ ]
15- ? Serialized < T [ number ] > [ ]
16- : T extends object
17- ? {
18- [ K in keyof T ] : T [ K ] extends Date ? number : Serialized < T [ K ] > ;
19- }
20- : T ;
12+ ? number
13+ : T extends Uri | RegExp
14+ ? string
15+ : T extends Map < infer K , infer V >
16+ ? [ Serialized < K > , Serialized < V > ] [ ]
17+ : T extends Set < infer U >
18+ ? Serialized < U > [ ]
19+ : T extends Branded < infer U , any >
20+ ? U
21+ : T extends any [ ]
22+ ? Serialized < T [ number ] > [ ]
23+ : T extends object
24+ ? { [ K in keyof T ] : T [ K ] extends Date ? number : Serialized < T [ K ] > }
25+ : T ;
2126
2227export function serialize < T extends object > ( obj : T ) : Serialized < T > ;
2328export function serialize < T extends object > ( obj : T | undefined ) : Serialized < T > | undefined ;
You can’t perform that action at this time.
0 commit comments