1. TypeScript > partial 과 intersection type 사용해서 유니온타입 대신 타입단언하기

// MEMO: UseInfiniteQueryResult 의 data 타입은 UseQueryResult 와 동일하게 맞추도록 커스텀 2024.7.17 문희

export type CustomUseInfiniteQueryResult<T> = Omit<UseInfiniteQueryResult<T, ApiError>, 'data'> & {
data: T;
};
select: (response) => {
	return {
	data: response.pages.flatMap((page) => page.data),
	pageable: response.pages.flatMap((page) => page.pageable),
	pages: [],
	pageParams: [],
};
},
type CombinedQueryResult = UseQueryResult<PaginatedCatalogsData, ApiError> &
Partial<CustomUseInfiniteQueryResult<PaginatedCatalogsData>>;