import { TvAppendOptions, Options, TvShow, PopularTvShows, TopRatedTvShows, AiringTodayTvShows, OnTheAirTvShows, TvCredits, AggregateCredits, TvExternalIds, TvImages, TvVideos, TvReviews, SimilarTvShows, TvRecommendations, TvKeywords, TvTranslations, TvContentRatings, TvWatchProviders, TvAlternativeTitles, TvEpisodeGroups, TvScreenedTheatrically, TvLists, TvChanges, TvAccountStates } from './types/TvShow';
import { BaseService, BaseAppendResponse } from '../utils/BaseService';
type TvAppendResponseMap = {
    credits: TvCredits;
    aggregateCredits: AggregateCredits;
    reviews: TvReviews;
    similar: SimilarTvShows;
    videos: TvVideos;
    images: TvImages;
    recommendations: TvRecommendations;
    keywords: TvKeywords;
    translations: TvTranslations;
    contentRatings: TvContentRatings;
    externalIds: TvExternalIds;
    accountStates: TvAccountStates;
    watchProviders: TvWatchProviders;
    alternativeTitles: TvAlternativeTitles;
    episodeGroups: TvEpisodeGroups;
    screenedTheatrically: TvScreenedTheatrically;
    lists: TvLists;
    changes: TvChanges;
};
declare class Tv extends BaseService<TvAppendOptions, TvAppendResponseMap> {
    getPopular(page?: number): Promise<PopularTvShows>;
    getTopRated(page?: number): Promise<TopRatedTvShows>;
    getAiringToday(page?: number): Promise<AiringTodayTvShows>;
    getOnTheAir(page?: number): Promise<OnTheAirTvShows>;
    getLatest(): Promise<TvShow>;
    getById<T extends TvAppendOptions[]>(id: string | number, options?: Options<T>): Promise<TvShow & BaseAppendResponse<T, TvAppendResponseMap>>;
    getCredits(id: string | number): Promise<TvCredits>;
    getAggregateCredits(id: string | number): Promise<AggregateCredits>;
    getExternalIds(id: string | number): Promise<TvExternalIds>;
    getImages(id: string | number): Promise<TvImages>;
    getVideos(id: string | number): Promise<TvVideos>;
    getReviews(id: string | number, page?: number): Promise<TvReviews>;
    getSimilar(id: string | number, page?: number): Promise<SimilarTvShows>;
    getRecommendations(id: string | number, page?: number): Promise<TvRecommendations>;
    getKeywords(id: string | number): Promise<TvKeywords>;
    getTranslations(id: string | number): Promise<TvTranslations>;
    getContentRatings(id: string | number): Promise<TvContentRatings>;
    getWatchProviders(id: string | number): Promise<TvWatchProviders>;
    getAlternativeTitles(id: string | number): Promise<TvAlternativeTitles>;
    getEpisodeGroups(id: string | number): Promise<TvEpisodeGroups>;
    getScreenedTheatrically(id: string | number): Promise<TvScreenedTheatrically>;
    getLists(id: string | number, page?: number): Promise<TvLists>;
    getChanges(id: string | number, startDate?: string, endDate?: string, page?: number): Promise<TvChanges>;
    getAccountStates(id: string | number): Promise<TvAccountStates>;
}
export default Tv;
//# sourceMappingURL=tv.d.ts.map