File size: 414 Bytes
853f6aa
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
export function omit<T extends object, U extends (keyof T)[]>(
  obj: T,
  ...keys: U
): Omit<T, U[number]> {
  const ret: any = { ...obj };
  keys.forEach((key) => delete ret[key]);
  return ret;
}

export function pick<T extends object, U extends (keyof T)[]>(
  obj: T,
  ...keys: U
): Pick<T, U[number]> {
  const ret: any = {};
  keys.forEach((key) => (ret[key] = obj[key]));
  return ret;
}