typed helpers

제네릭 유틸리티 함수 구현

제네릭 유틸리티 함수는 값 처리 로직은 작게 유지하면서 입력 타입과 결과 타입의 관계를 정확히 보존합니다.

pluck

키 기반 값 추출

K extends keyof T로 실제 존재하는 속성만 받아 T[K][] 결과를 만듭니다.

pluck<T, K extends keyof T>
merge

객체 결합

두 객체 타입을 받아 교차 타입처럼 합쳐진 결과를 반환합니다.

T & U
non-null 필터

값 없음 제거

null과 undefined를 제외한 타입으로 배열 요소를 좁힙니다.

value is NonNullable<T>
제네릭 오버로드

입력 조합별 결과

여러 호출 형태가 필요하면 제네릭으로 타입 관계를 묶고 오버로드로 입구를 나눕니다.

overload + T
키 안전성 문자열 키를 그냥 받지 말고 keyof 제약으로 제한합니다.
타입 가드 필터 함수는 boolean보다 value is Type 반환을 고려합니다.
반환 보존 도우미 함수가 any를 반환하면 제네릭을 쓴 의미가 사라집니다.

작은 유틸리티일수록 타입 관계를 정확히 잡아 두면 여러 코드에서 안전하게 재사용됩니다.