zhitong.yu
8 天以前 378d781e6f35f89652aa36e079a8b7fc44cea77e
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
type ObjToKeyValUnion<T> = {
  [K in keyof T]: { key: K; value: T[K] };
}[keyof T];
 
type ObjToKeyValArray<T> = {
  [K in keyof T]: [K, T[K]];
}[keyof T];
 
type ObjToSelectedValueUnion<T> = {
  [K in keyof T]: T[K];
}[keyof T];
 
type Optional<T, K extends keyof T> = Omit<T, K> & Partial<Pick<T, K>>;
 
type GetOptional<T> = {
  [P in keyof T as T[P] extends Required<T>[P] ? never : P]: T[P];
};