import { T as TraktComment, d as TraktList, q as TraktPrivateUser } from '../../trakt-list.model-DUX3arQu.cjs';
import { TraktTranslation, TraktGenericRating, TraktExtendedRatings } from '../../models/trakt-entity.model.cjs';
import { BaseTraktPerson, TraktPersonExtended, TraktPersonJobs } from '../../models/trakt-people.model.cjs';
import { TraktEpisodeShort, TraktEpisodeExtended, TraktEpisodeStats } from '../../models/trakt-episode.model.cjs';
import { TraktClientEndpoint, TraktApiParamsExtended, TraktApiParamsPagination } from '../../models/trakt-client.model.cjs';
import '@dvcol/common-utils/common/models';
import '../../models/trakt-id.model.cjs';
import '../../models/trakt-movie.model.cjs';
import '../../models/trakt-image.model.cjs';
import '@dvcol/base-http-client';
import '@dvcol/common-utils/http/fetch';
import '../trakt-api.filters.cjs';
import '../../models/trakt-season.model.cjs';
import '../../models/trakt-show.model.cjs';
type BaseEpisodeParam = {
/** Trakt ID, Trakt slug, or IMDB ID */
id: string | number;
/** season number */
season: number;
/** episode number */
episode: number;
};
declare const episodes: {
/**
* Returns a single episode's details. All date and times are in UTC and were calculated using the episode's air_date and show's country and air_time.
*
* * Note
*
* If the first_aired is unknown, it will be set to null.
*
* * Note
*
* When getting full extended info, the episode_type field can have a value of standard, series_premiere (season 1, episode 1), season_premiere (episode 1), mid_season_finale, mid_season_premiere (the next episode after the mid season finale), season_finale, or series_finale (last episode to air for an ended show).
*
* @extended true - {@link TraktApiExtended.Full} | {@link TraktApiExtended.Images}
*
* @see [get-a-single-episode-for-a-show]{@link https://trakt.docs.apiary.io/#reference/episodes/summary/get-a-single-episode-for-a-show}
*/
summary: TraktClientEndpoint, TraktEpisodeShort & Partial, true>;
/**
* Returns all translations for an episode, including language and translated values for title and overview.
*
* @see [get-all-episode-translations]{@link https://trakt.docs.apiary.io/#reference/episodes/translations/get-all-episode-translations}
*/
translations: TraktClientEndpoint;
/**
* Returns all top level comments for an episode. By default, the newest comments are returned first.
* Other sorting options include oldest, most likes, most replies, highest rated, lowest rated, and most plays.
*
* @pagination true - {@link TraktApiPagination}
* @emoji true - [documentation]{@link https://trakt.docs.apiary.io/#introduction/emojis}
* @auth optional
*
* @see [get-all-episode-comments]{@link https://trakt.docs.apiary.io/#reference/episodes/comments/get-all-episode-comments}
*/
comments: TraktClientEndpoint;
/**
* Returns all lists that contain this episode. By default, personal lists are returned sorted by the most popular.
*
* @pagination true - {@link TraktApiPagination}
* @emoji true - [documentation]{@link https://trakt.docs.apiary.io/#introduction/emojis}
*
* @see [get-lists-containing-this-episode]{@link https://trakt.docs.apiary.io/#reference/episodes/lists/get-lists-containing-this-episode}
*/
lists: TraktClientEndpoint;
/**
* Returns all cast and crew for an episode. Each cast member will have a characters array and a standard person object.
*
* The crew object will be broken up by department into production, art, crew, costume & make-up, directing, writing, sound, camera, visual effects, lighting, and editing (if there are people for those crew positions).
* Each of those members will have a jobs array and a standard person object.
*
* * Guest Stars
*
* If you add ?extended=guest_stars to the URL, it will return all guest stars that appeared in the episode.
*
* * Note
*
* This returns a lot of data, so please only use this extended parameter if you actually need it!
*
* @extended true - {@link TraktApiExtended.GuestStars}
*
* @see [get-all-people-for-an-episode]{@link https://trakt.docs.apiary.io/#reference/episodes/people/get-all-people-for-an-episode}
*/
people: TraktClientEndpoint, {
cast: {
characters: string[];
person: BaseTraktPerson & Partial;
}[];
crew: Partial;
}[]>>;
} & Partial<{
cast: {
characters: string[];
person: BaseTraktPerson & Partial;
}[];
crew: Partial;
}[]>>;
} & {
guest_stars: {
characters: string[];
person: BaseTraktPerson & Partial;
}[];
}>, true>;
/**
* Returns rating (between 0 and 10) and distribution for an episode.
*
* @see [get-episode-ratings]{@link https://trakt.docs.apiary.io/#reference/episodes/ratings/get-episode-ratings}
*/
ratings: TraktClientEndpoint, TraktGenericRating | TraktExtendedRatings, true>;
/**
* Returns lots of episode stats.
*
* @see [get-episode-stats]{@link https://trakt.docs.apiary.io/#reference/episodes/stats/get-episode-stats}
*/
stats: TraktClientEndpoint;
/**
* Returns all users watching this episode right now.
*
* @extended true - {@link TraktApiExtended.Full}
*
* @see [get-users-watching-right-now]{@link https://trakt.docs.apiary.io/#reference/episodes/watching/get-users-watching-right-now}
*/
watching: TraktClientEndpoint, (TraktPrivateUser & {
name: string;
vip: boolean;
vip_ep: boolean;
} & Partial)[], true>;
};
export { episodes };