chenyc
2025-05-29 92f69c57b920cf62ecc9f15f9ed196fa26dbf2ac
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
export type WithAge<TSource> = TSource & {
  age: number
}
 
export function isWithAge(obj: any): obj is WithAge<{}> {
  return typeof obj.age === 'number';
}
 
export function extendWithAge<
  TSource
>(
  sourceObj: TSource,
  age: number,
): WithAge<TSource> {
  const extension = { age };
  return { ...sourceObj, ...extension };
}