import { ExclusiveUnion } from '@dvcol/common-utils/common/models'; import { Any, EntityTypes } from './trakt-entity.model.js'; import { TraktMovie } from './trakt-movie.model.js'; import { TraktShow } from './trakt-show.model.js'; import { u as TraktUser } from '../trakt-list.model-CeURmxQs.js'; import './trakt-client.model.js'; import '@dvcol/base-http-client'; import '@dvcol/common-utils/http/fetch'; import '../api/trakt-api.filters.js'; import './trakt-id.model.js'; import './trakt-image.model.js'; import './trakt-people.model.js'; import './trakt-episode.model.js'; import './trakt-season.model.js'; type BaseTraktRecommendation = { favorited_by: (TraktUser & { notes: string; })[]; }; type TraktRecommendationItem = { movie: TraktMovie; show: TraktShow; }; type TraktRecommendation = T extends 'movie' ? BaseTraktRecommendation & Pick, 'movie'> : T extends 'show' ? BaseTraktRecommendation & Pick, 'show'> : BaseTraktRecommendation & ExclusiveUnion>; export type { TraktRecommendation };