@tdanks2000/tmdb-wrapper 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +137 -0
- package/dist/@types/endpoints/account.d.ts +16 -0
- package/dist/@types/endpoints/account.d.ts.map +1 -0
- package/dist/@types/endpoints/account.js +2 -0
- package/dist/@types/endpoints/certification.d.ts +19 -0
- package/dist/@types/endpoints/certification.d.ts.map +1 -0
- package/dist/@types/endpoints/certification.js +2 -0
- package/dist/@types/endpoints/changes.d.ts +26 -0
- package/dist/@types/endpoints/changes.d.ts.map +1 -0
- package/dist/@types/endpoints/changes.js +2 -0
- package/dist/@types/endpoints/collection.d.ts +21 -0
- package/dist/@types/endpoints/collection.d.ts.map +1 -0
- package/dist/@types/endpoints/collection.js +2 -0
- package/dist/@types/endpoints/companies.d.ts +29 -0
- package/dist/@types/endpoints/companies.d.ts.map +1 -0
- package/dist/@types/endpoints/companies.js +2 -0
- package/dist/@types/endpoints/configuration.d.ts +105 -0
- package/dist/@types/endpoints/configuration.d.ts.map +1 -0
- package/dist/@types/endpoints/configuration.js +2 -0
- package/dist/@types/endpoints/credits.d.ts +135 -0
- package/dist/@types/endpoints/credits.d.ts.map +1 -0
- package/dist/@types/endpoints/credits.js +2 -0
- package/dist/@types/endpoints/discover.d.ts +15 -0
- package/dist/@types/endpoints/discover.d.ts.map +1 -0
- package/dist/@types/endpoints/discover.js +2 -0
- package/dist/@types/endpoints/find.d.ts +20 -0
- package/dist/@types/endpoints/find.d.ts.map +1 -0
- package/dist/@types/endpoints/find.js +2 -0
- package/dist/@types/endpoints/index.d.ts +22 -0
- package/dist/@types/endpoints/index.d.ts.map +1 -0
- package/dist/@types/endpoints/index.js +37 -0
- package/dist/@types/endpoints/keywords.d.ts +21 -0
- package/dist/@types/endpoints/keywords.d.ts.map +1 -0
- package/dist/@types/endpoints/keywords.js +2 -0
- package/dist/@types/endpoints/movies.d.ts +144 -0
- package/dist/@types/endpoints/movies.d.ts.map +1 -0
- package/dist/@types/endpoints/movies.js +12 -0
- package/dist/@types/endpoints/networks.d.ts +14 -0
- package/dist/@types/endpoints/networks.d.ts.map +1 -0
- package/dist/@types/endpoints/networks.js +2 -0
- package/dist/@types/endpoints/options.d.ts +73 -0
- package/dist/@types/endpoints/options.d.ts.map +1 -0
- package/dist/@types/endpoints/options.js +2 -0
- package/dist/@types/endpoints/people.d.ts +135 -0
- package/dist/@types/endpoints/people.d.ts.map +1 -0
- package/dist/@types/endpoints/people.js +2 -0
- package/dist/@types/endpoints/review.d.ts +8 -0
- package/dist/@types/endpoints/review.d.ts.map +1 -0
- package/dist/@types/endpoints/review.js +2 -0
- package/dist/@types/endpoints/search.d.ts +9 -0
- package/dist/@types/endpoints/search.d.ts.map +1 -0
- package/dist/@types/endpoints/search.js +2 -0
- package/dist/@types/endpoints/trending.d.ts +12 -0
- package/dist/@types/endpoints/trending.d.ts.map +1 -0
- package/dist/@types/endpoints/trending.js +2 -0
- package/dist/@types/endpoints/tvEpisode.d.ts +53 -0
- package/dist/@types/endpoints/tvEpisode.d.ts.map +1 -0
- package/dist/@types/endpoints/tvEpisode.js +2 -0
- package/dist/@types/endpoints/tvSeasons.d.ts +19 -0
- package/dist/@types/endpoints/tvSeasons.d.ts.map +1 -0
- package/dist/@types/endpoints/tvSeasons.js +2 -0
- package/dist/@types/endpoints/tvShows.d.ts +260 -0
- package/dist/@types/endpoints/tvShows.d.ts.map +1 -0
- package/dist/@types/endpoints/tvShows.js +2 -0
- package/dist/@types/endpoints/watchProviders.d.ts +295 -0
- package/dist/@types/endpoints/watchProviders.d.ts.map +1 -0
- package/dist/@types/endpoints/watchProviders.js +2 -0
- package/dist/@types/index.d.ts +4 -0
- package/dist/@types/index.d.ts.map +1 -0
- package/dist/@types/index.js +19 -0
- package/dist/@types/models/baseEndpoint.d.ts +7 -0
- package/dist/@types/models/baseEndpoint.d.ts.map +1 -0
- package/dist/@types/models/baseEndpoint.js +11 -0
- package/dist/@types/models/index.d.ts +2 -0
- package/dist/@types/models/index.d.ts.map +1 -0
- package/dist/@types/models/index.js +17 -0
- package/dist/@types/types.d.ts +174 -0
- package/dist/@types/types.d.ts.map +1 -0
- package/dist/@types/types.js +2 -0
- package/dist/endpoints/account.d.ts +6 -0
- package/dist/endpoints/account.d.ts.map +1 -0
- package/dist/endpoints/account.js +24 -0
- package/dist/endpoints/certification.d.ts +8 -0
- package/dist/endpoints/certification.d.ts.map +1 -0
- package/dist/endpoints/certification.js +30 -0
- package/dist/endpoints/changes.d.ts +9 -0
- package/dist/endpoints/changes.d.ts.map +1 -0
- package/dist/endpoints/changes.js +35 -0
- package/dist/endpoints/collections.d.ts +9 -0
- package/dist/endpoints/collections.d.ts.map +1 -0
- package/dist/endpoints/collections.js +41 -0
- package/dist/endpoints/companies.d.ts +9 -0
- package/dist/endpoints/companies.d.ts.map +1 -0
- package/dist/endpoints/companies.js +35 -0
- package/dist/endpoints/configuration.d.ts +7 -0
- package/dist/endpoints/configuration.d.ts.map +1 -0
- package/dist/endpoints/configuration.js +25 -0
- package/dist/endpoints/credits.d.ts +7 -0
- package/dist/endpoints/credits.d.ts.map +1 -0
- package/dist/endpoints/credits.js +25 -0
- package/dist/endpoints/discover.d.ts +61 -0
- package/dist/endpoints/discover.d.ts.map +1 -0
- package/dist/endpoints/discover.js +30 -0
- package/dist/endpoints/find.d.ts +6 -0
- package/dist/endpoints/find.d.ts.map +1 -0
- package/dist/endpoints/find.js +24 -0
- package/dist/endpoints/genre.d.ts +14 -0
- package/dist/endpoints/genre.d.ts.map +1 -0
- package/dist/endpoints/genre.js +30 -0
- package/dist/endpoints/index.d.ts +19 -0
- package/dist/endpoints/index.d.ts.map +1 -0
- package/dist/endpoints/index.js +34 -0
- package/dist/endpoints/keywords.d.ts +7 -0
- package/dist/endpoints/keywords.d.ts.map +1 -0
- package/dist/endpoints/keywords.js +30 -0
- package/dist/endpoints/movies.d.ts +36 -0
- package/dist/endpoints/movies.d.ts.map +1 -0
- package/dist/endpoints/movies.js +134 -0
- package/dist/endpoints/networks.d.ts +9 -0
- package/dist/endpoints/networks.d.ts.map +1 -0
- package/dist/endpoints/networks.js +35 -0
- package/dist/endpoints/people.d.ts +16 -0
- package/dist/endpoints/people.d.ts.map +1 -0
- package/dist/endpoints/people.js +79 -0
- package/dist/endpoints/review.d.ts +6 -0
- package/dist/endpoints/review.d.ts.map +1 -0
- package/dist/endpoints/review.js +24 -0
- package/dist/endpoints/search.d.ts +39 -0
- package/dist/endpoints/search.d.ts.map +1 -0
- package/dist/endpoints/search.js +56 -0
- package/dist/endpoints/trending.d.ts +6 -0
- package/dist/endpoints/trending.d.ts.map +1 -0
- package/dist/endpoints/trending.js +24 -0
- package/dist/endpoints/tvEpisodes.d.ts +24 -0
- package/dist/endpoints/tvEpisodes.d.ts.map +1 -0
- package/dist/endpoints/tvEpisodes.js +68 -0
- package/dist/endpoints/tvSeasons.d.ts +25 -0
- package/dist/endpoints/tvSeasons.d.ts.map +1 -0
- package/dist/endpoints/tvSeasons.js +73 -0
- package/dist/endpoints/tvShows.d.ts +33 -0
- package/dist/endpoints/tvShows.d.ts.map +1 -0
- package/dist/endpoints/tvShows.js +154 -0
- package/dist/index.d.ts +26 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +43 -0
- package/dist/utils/api.d.ts +7 -0
- package/dist/utils/api.d.ts.map +1 -0
- package/dist/utils/api.js +39 -0
- package/dist/utils/getimagePath.d.ts +12 -0
- package/dist/utils/getimagePath.d.ts.map +1 -0
- package/dist/utils/getimagePath.js +19 -0
- package/dist/utils/index.d.ts +3 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +18 -0
- package/package.json +40 -0
- package/src/@types/endpoints/account.ts +17 -0
- package/src/@types/endpoints/certification.ts +19 -0
- package/src/@types/endpoints/changes.ts +29 -0
- package/src/@types/endpoints/collection.ts +23 -0
- package/src/@types/endpoints/companies.ts +33 -0
- package/src/@types/endpoints/configuration.ts +111 -0
- package/src/@types/endpoints/credits.ts +149 -0
- package/src/@types/endpoints/discover.ts +31 -0
- package/src/@types/endpoints/find.ts +28 -0
- package/src/@types/endpoints/index.ts +21 -0
- package/src/@types/endpoints/keywords.ts +24 -0
- package/src/@types/endpoints/movies.ts +162 -0
- package/src/@types/endpoints/networks.ts +15 -0
- package/src/@types/endpoints/options.ts +189 -0
- package/src/@types/endpoints/people.ts +151 -0
- package/src/@types/endpoints/review.ts +8 -0
- package/src/@types/endpoints/search.ts +10 -0
- package/src/@types/endpoints/trending.ts +20 -0
- package/src/@types/endpoints/tvEpisode.ts +58 -0
- package/src/@types/endpoints/tvSeasons.ts +23 -0
- package/src/@types/endpoints/tvShows.ts +284 -0
- package/src/@types/endpoints/watchProviders.ts +298 -0
- package/src/@types/index.ts +3 -0
- package/src/@types/models/baseEndpoint.ts +9 -0
- package/src/@types/models/index.ts +1 -0
- package/src/@types/types.ts +199 -0
- package/src/endpoints/account.ts +11 -0
- package/src/endpoints/certification.ts +15 -0
- package/src/endpoints/changes.ts +19 -0
- package/src/endpoints/collections.ts +32 -0
- package/src/endpoints/companies.ts +19 -0
- package/src/endpoints/configuration.ts +11 -0
- package/src/endpoints/credits.ts +11 -0
- package/src/endpoints/discover.ts +73 -0
- package/src/endpoints/find.ts +11 -0
- package/src/endpoints/genre.ts +19 -0
- package/src/endpoints/index.ts +18 -0
- package/src/endpoints/keywords.ts +17 -0
- package/src/endpoints/movies.ts +138 -0
- package/src/endpoints/networks.ts +19 -0
- package/src/endpoints/people.ts +79 -0
- package/src/endpoints/review.ts +11 -0
- package/src/endpoints/search.ts +78 -0
- package/src/endpoints/trending.ts +15 -0
- package/src/endpoints/tvEpisodes.ts +88 -0
- package/src/endpoints/tvSeasons.ts +93 -0
- package/src/endpoints/tvShows.ts +151 -0
- package/src/index.ts +66 -0
- package/src/utils/api.ts +31 -0
- package/src/utils/getimagePath.ts +16 -0
- package/src/utils/index.ts +2 -0
- package/tsconfig.json +108 -0
|
@@ -0,0 +1,189 @@
|
|
|
1
|
+
import {
|
|
2
|
+
AlternativeTitles,
|
|
3
|
+
Changes,
|
|
4
|
+
ContentRatings,
|
|
5
|
+
Credits,
|
|
6
|
+
EpisodeGroups,
|
|
7
|
+
ExternalIds,
|
|
8
|
+
Images,
|
|
9
|
+
Keywords,
|
|
10
|
+
MovieChangeValue,
|
|
11
|
+
MovieLists,
|
|
12
|
+
PeopleImages,
|
|
13
|
+
PersonChangeValue,
|
|
14
|
+
PersonCombinedCredits,
|
|
15
|
+
PersonMovieCredit,
|
|
16
|
+
PersonTranslations,
|
|
17
|
+
PersonTvShowCredit,
|
|
18
|
+
Recommendations,
|
|
19
|
+
ReleaseDates,
|
|
20
|
+
Reviews,
|
|
21
|
+
ScreenedTheatrically,
|
|
22
|
+
SimilarMovies,
|
|
23
|
+
Similartv,
|
|
24
|
+
TaggedImages,
|
|
25
|
+
Translations,
|
|
26
|
+
TvEpisodeChangeValue,
|
|
27
|
+
TvEpisodeCredit,
|
|
28
|
+
TvEpisodeTranslations,
|
|
29
|
+
TvSeasonChangeValue,
|
|
30
|
+
TvShowChangeValue,
|
|
31
|
+
Videos,
|
|
32
|
+
WatchProviders,
|
|
33
|
+
} from '..';
|
|
34
|
+
|
|
35
|
+
export interface LanguageOption {
|
|
36
|
+
language?: string;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
export interface RegionOption {
|
|
40
|
+
region?: string;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
export interface TimezoneOption {
|
|
44
|
+
timezone?: string;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
export interface PageOption {
|
|
48
|
+
page?: number;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
export interface ChangeOption extends PageOption {
|
|
52
|
+
start_date?: Date;
|
|
53
|
+
end_date?: Date;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
export type AppendToResponseMovieKey =
|
|
57
|
+
| 'images'
|
|
58
|
+
| 'videos'
|
|
59
|
+
| 'credits'
|
|
60
|
+
| 'recommendations'
|
|
61
|
+
| 'reviews'
|
|
62
|
+
| 'changes'
|
|
63
|
+
| 'similar'
|
|
64
|
+
| 'lists'
|
|
65
|
+
| 'release_dates'
|
|
66
|
+
| 'alternative_titles'
|
|
67
|
+
| 'external_ids'
|
|
68
|
+
| 'translations'
|
|
69
|
+
| 'watch/providers'
|
|
70
|
+
| 'keywords';
|
|
71
|
+
|
|
72
|
+
export type AppendToResponseTvKey =
|
|
73
|
+
| 'content_ratings'
|
|
74
|
+
| 'images'
|
|
75
|
+
| 'videos'
|
|
76
|
+
| 'credits'
|
|
77
|
+
| 'recommendations'
|
|
78
|
+
| 'reviews'
|
|
79
|
+
| 'changes'
|
|
80
|
+
| 'similar'
|
|
81
|
+
| 'alternative_titles'
|
|
82
|
+
| 'external_ids'
|
|
83
|
+
| 'translations'
|
|
84
|
+
| 'watch/providers'
|
|
85
|
+
| 'aggregate_credits'
|
|
86
|
+
| 'episode_groups'
|
|
87
|
+
| 'screened_theatrically'
|
|
88
|
+
| 'keywords';
|
|
89
|
+
|
|
90
|
+
export type AppendToResponsePersonKey =
|
|
91
|
+
| 'images'
|
|
92
|
+
| 'changes'
|
|
93
|
+
| 'movie_credits'
|
|
94
|
+
| 'tv_credits'
|
|
95
|
+
| 'combined_credits'
|
|
96
|
+
| 'external_ids'
|
|
97
|
+
| 'tagged_images'
|
|
98
|
+
| 'translations';
|
|
99
|
+
|
|
100
|
+
export type AppendToResponseTvEpisodeKey = 'images' | 'credits' | 'external_ids' | 'videos' | 'translations';
|
|
101
|
+
|
|
102
|
+
export type AppendToResponseTvSeasonKey =
|
|
103
|
+
| 'images'
|
|
104
|
+
| 'credits'
|
|
105
|
+
| 'external_ids'
|
|
106
|
+
| 'videos'
|
|
107
|
+
| 'aggregate_credits'
|
|
108
|
+
| 'translations';
|
|
109
|
+
|
|
110
|
+
type AppendToResponseAllKeys =
|
|
111
|
+
| AppendToResponseTvKey
|
|
112
|
+
| AppendToResponseMovieKey
|
|
113
|
+
| AppendToResponseTvEpisodeKey
|
|
114
|
+
| AppendToResponseTvSeasonKey
|
|
115
|
+
| AppendToResponsePersonKey;
|
|
116
|
+
|
|
117
|
+
export type AppendToResponseMediaType = 'movie' | 'tvShow' | 'person' | 'tvSeason' | 'tvEpisode';
|
|
118
|
+
|
|
119
|
+
export type AppendToResponse<
|
|
120
|
+
K,
|
|
121
|
+
T extends AppendToResponseAllKeys[] | undefined,
|
|
122
|
+
Media extends AppendToResponseMediaType,
|
|
123
|
+
> = K &
|
|
124
|
+
(T extends undefined
|
|
125
|
+
? object
|
|
126
|
+
: T extends Array<unknown>
|
|
127
|
+
? ('credits' extends T[number]
|
|
128
|
+
? {
|
|
129
|
+
credits: Media extends 'tvEpisode' ? TvEpisodeCredit : Omit<Credits, 'id'>;
|
|
130
|
+
}
|
|
131
|
+
: object) &
|
|
132
|
+
('videos' extends T[number] ? { videos: Omit<Videos, 'id'> } : object) &
|
|
133
|
+
('images' extends T[number]
|
|
134
|
+
? {
|
|
135
|
+
images: Omit<Media extends 'person' ? PeopleImages : Images, 'id'>;
|
|
136
|
+
}
|
|
137
|
+
: object) &
|
|
138
|
+
('recommendations' extends T[number] ? { recommendations: Recommendations } : object) &
|
|
139
|
+
('reviews' extends T[number] ? { reviews: Omit<Reviews, 'id'> } : object) &
|
|
140
|
+
('reviews' extends T[number] ? { reviews: Omit<Translations, 'id'> } : object) &
|
|
141
|
+
('changes' extends T[number]
|
|
142
|
+
? {
|
|
143
|
+
changes: Changes<
|
|
144
|
+
Media extends 'person'
|
|
145
|
+
? PersonChangeValue
|
|
146
|
+
: Media extends 'movie'
|
|
147
|
+
? MovieChangeValue
|
|
148
|
+
: Media extends 'tvShow'
|
|
149
|
+
? TvShowChangeValue
|
|
150
|
+
: Media extends 'tvSeason'
|
|
151
|
+
? TvSeasonChangeValue
|
|
152
|
+
: TvEpisodeChangeValue
|
|
153
|
+
>;
|
|
154
|
+
}
|
|
155
|
+
: object) &
|
|
156
|
+
('keywords' extends T[number] ? { keywords: Omit<Keywords, 'id'> } : object) &
|
|
157
|
+
('lists' extends T[number] ? { lists: Omit<MovieLists, 'id'> } : object) &
|
|
158
|
+
('release_dates' extends T[number] ? { release_dates: Omit<ReleaseDates, 'id'> } : object) &
|
|
159
|
+
('alternative_titles' extends T[number] ? { alternative_titles: Omit<AlternativeTitles, 'id'> } : object) &
|
|
160
|
+
('external_ids' extends T[number] ? { external_ids: Omit<ExternalIds, 'id'> } : object) &
|
|
161
|
+
('translations' extends T[number]
|
|
162
|
+
? {
|
|
163
|
+
translations: Omit<
|
|
164
|
+
Media extends 'person'
|
|
165
|
+
? PersonTranslations
|
|
166
|
+
: Media extends 'tvEpisode'
|
|
167
|
+
? TvEpisodeTranslations
|
|
168
|
+
: Translations,
|
|
169
|
+
'id'
|
|
170
|
+
>;
|
|
171
|
+
}
|
|
172
|
+
: object) &
|
|
173
|
+
('watch/providers' extends T[number] ? { 'watch/providers': Omit<WatchProviders, 'id'> } : object) &
|
|
174
|
+
('aggregate_credits' extends T[number] ? { aggregate_credits: Omit<Credits, 'id'> } : object) &
|
|
175
|
+
('episode_groups' extends T[number] ? { episode_groups: Omit<EpisodeGroups, 'id'> } : object) &
|
|
176
|
+
('screened_theatrically' extends T[number]
|
|
177
|
+
? { screened_theatrically: Omit<ScreenedTheatrically, 'id'> }
|
|
178
|
+
: object) &
|
|
179
|
+
('similar' extends T[number]
|
|
180
|
+
? {
|
|
181
|
+
similar: Media extends 'movie' ? SimilarMovies : Media extends 'tvShow' ? Similartv : unknown;
|
|
182
|
+
}
|
|
183
|
+
: object) &
|
|
184
|
+
('content_ratings' extends T[number] ? { content_ratings: Omit<ContentRatings, 'id'> } : object) &
|
|
185
|
+
('movie_credits' extends T[number] ? { movie_credits: Omit<PersonMovieCredit, 'id'> } : object) &
|
|
186
|
+
('tv_credits' extends T[number] ? { tv_credits: Omit<PersonTvShowCredit, 'id'> } : object) &
|
|
187
|
+
('combined_credits' extends T[number] ? { combined_credits: Omit<PersonCombinedCredits, 'id'> } : object) &
|
|
188
|
+
('tagged_images' extends T[number] ? { tagged_images: TaggedImages } : object)
|
|
189
|
+
: never);
|
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
import { Image, Movie, Person, TV } from '..';
|
|
2
|
+
|
|
3
|
+
interface Cast {
|
|
4
|
+
character: string;
|
|
5
|
+
credit_id: string;
|
|
6
|
+
vote_count: number;
|
|
7
|
+
id: number;
|
|
8
|
+
backdrop_path: string;
|
|
9
|
+
poster_path: string;
|
|
10
|
+
original_language: string;
|
|
11
|
+
vote_average: number;
|
|
12
|
+
genre_ids: number[];
|
|
13
|
+
popularity: number;
|
|
14
|
+
overview: string;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
interface Crew {
|
|
18
|
+
id: number;
|
|
19
|
+
department: string;
|
|
20
|
+
original_language: string;
|
|
21
|
+
credit_id: string;
|
|
22
|
+
overview: string;
|
|
23
|
+
vote_count: number;
|
|
24
|
+
poster_path: string;
|
|
25
|
+
backdrop_path: string;
|
|
26
|
+
popularity: number;
|
|
27
|
+
genre_ids: number[];
|
|
28
|
+
job: string;
|
|
29
|
+
vote_average: number;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
export interface PersonMovieCast extends Cast {
|
|
33
|
+
release_date: string;
|
|
34
|
+
video: boolean;
|
|
35
|
+
adult: boolean;
|
|
36
|
+
title: string;
|
|
37
|
+
original_title: string;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
export interface PersonMovieCrew extends Crew {
|
|
41
|
+
original_title: string;
|
|
42
|
+
video: boolean;
|
|
43
|
+
title: string;
|
|
44
|
+
adult: boolean;
|
|
45
|
+
release_date: string;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
export interface PersonTvShowCrew extends Crew {
|
|
49
|
+
episode_count: number;
|
|
50
|
+
origin_country: string[];
|
|
51
|
+
original_name: string;
|
|
52
|
+
name: string;
|
|
53
|
+
first_air_date: string;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
export interface PersonTvShowCast extends Cast {
|
|
57
|
+
original_name: string;
|
|
58
|
+
name: string;
|
|
59
|
+
episode_count: number;
|
|
60
|
+
first_air_date: string;
|
|
61
|
+
origin_country: string[];
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
export interface PersonMovieCredit {
|
|
65
|
+
cast: PersonMovieCast[];
|
|
66
|
+
crew: PersonMovieCrew[];
|
|
67
|
+
id: number;
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
export interface PersonTvShowCredit {
|
|
71
|
+
cast: PersonTvShowCast[];
|
|
72
|
+
crew: PersonTvShowCrew[];
|
|
73
|
+
id: number;
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
export interface PersonCombinedCredits {
|
|
77
|
+
cast: (PersonMovieCast & PersonTvShowCast)[];
|
|
78
|
+
crew: (PersonMovieCrew & PersonTvShowCrew)[];
|
|
79
|
+
id: number;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
export interface PersonDetails {
|
|
83
|
+
birthday: string;
|
|
84
|
+
known_for_department: string;
|
|
85
|
+
deathday: string;
|
|
86
|
+
id: number;
|
|
87
|
+
name: string;
|
|
88
|
+
also_known_as: string[];
|
|
89
|
+
gender: number;
|
|
90
|
+
biography: string;
|
|
91
|
+
popularity: number;
|
|
92
|
+
place_of_birth: string;
|
|
93
|
+
profile_path: string;
|
|
94
|
+
adult: boolean;
|
|
95
|
+
imdb_id: string;
|
|
96
|
+
homepage: string;
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
export type PersonChangeValue =
|
|
100
|
+
| string
|
|
101
|
+
| {
|
|
102
|
+
profile: {
|
|
103
|
+
file_path: string;
|
|
104
|
+
};
|
|
105
|
+
};
|
|
106
|
+
|
|
107
|
+
export interface PopularPersons {
|
|
108
|
+
page: number;
|
|
109
|
+
results: Person[];
|
|
110
|
+
total_results: number;
|
|
111
|
+
total_pages: number;
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
export interface PeopleImages {
|
|
115
|
+
id: number;
|
|
116
|
+
profiles: Image[];
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
export interface TaggedImage {
|
|
120
|
+
aspect_ratio: number;
|
|
121
|
+
file_path: string;
|
|
122
|
+
height: number;
|
|
123
|
+
id: string;
|
|
124
|
+
iso_639_1: string;
|
|
125
|
+
vote_average: number;
|
|
126
|
+
vote_count: number;
|
|
127
|
+
width: number;
|
|
128
|
+
image_type: string;
|
|
129
|
+
media_type: string;
|
|
130
|
+
media: Movie | TV;
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
export interface TaggedImages {
|
|
134
|
+
page: number;
|
|
135
|
+
results: TaggedImage[];
|
|
136
|
+
total_results: number;
|
|
137
|
+
total_pages: number;
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
export interface PersonTranslations {
|
|
141
|
+
id: number;
|
|
142
|
+
translations: {
|
|
143
|
+
iso_3166_1: string;
|
|
144
|
+
iso_639_1: string;
|
|
145
|
+
name: string;
|
|
146
|
+
english_name: string;
|
|
147
|
+
data: {
|
|
148
|
+
biography: string;
|
|
149
|
+
};
|
|
150
|
+
};
|
|
151
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { MovieWithMediaType, PersonWithMediaType, TVWithMediaType } from '..';
|
|
2
|
+
|
|
3
|
+
export interface Search<T> {
|
|
4
|
+
page: number;
|
|
5
|
+
results: T[];
|
|
6
|
+
total_pages: number;
|
|
7
|
+
total_results: number;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export type MultiSearchResult = MovieWithMediaType | TVWithMediaType | PersonWithMediaType;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { MediaType, Movie, MovieWithMediaType, Person, PersonWithMediaType, TV, TVWithMediaType } from '..';
|
|
2
|
+
|
|
3
|
+
export type TimeWindow = 'day' | 'week';
|
|
4
|
+
|
|
5
|
+
export type TrendingMediaType = MediaType | 'all';
|
|
6
|
+
|
|
7
|
+
type TrendingResult<T extends TrendingMediaType> = T extends 'tv'
|
|
8
|
+
? TV
|
|
9
|
+
: T extends 'movie'
|
|
10
|
+
? Movie
|
|
11
|
+
: T extends 'person'
|
|
12
|
+
? Person
|
|
13
|
+
: TVWithMediaType | MovieWithMediaType | PersonWithMediaType;
|
|
14
|
+
|
|
15
|
+
export interface TrendingResults<T extends TrendingMediaType> {
|
|
16
|
+
page: number;
|
|
17
|
+
results: TrendingResult<T>[];
|
|
18
|
+
total_pages: number;
|
|
19
|
+
total_results: number;
|
|
20
|
+
}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { Credits, Crew } from '..';
|
|
2
|
+
|
|
3
|
+
export interface EpisodeSelection {
|
|
4
|
+
tvShowID: number;
|
|
5
|
+
seasonNumber: number;
|
|
6
|
+
episodeNumber: number;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
export interface Episode {
|
|
10
|
+
air_date: string;
|
|
11
|
+
episode_number: number;
|
|
12
|
+
crew: Crew[];
|
|
13
|
+
guest_stars: GuestStar[];
|
|
14
|
+
id: number;
|
|
15
|
+
name: string;
|
|
16
|
+
overview: string;
|
|
17
|
+
production_code: string;
|
|
18
|
+
season_number: number;
|
|
19
|
+
still_path: string;
|
|
20
|
+
vote_average: number;
|
|
21
|
+
vote_count: number;
|
|
22
|
+
runtime: number;
|
|
23
|
+
show_id: number;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
export interface GuestStar {
|
|
27
|
+
credit_id: string;
|
|
28
|
+
order: number;
|
|
29
|
+
character: string;
|
|
30
|
+
adult: boolean;
|
|
31
|
+
gender: number | null;
|
|
32
|
+
id: number;
|
|
33
|
+
known_for_department: string;
|
|
34
|
+
name: string;
|
|
35
|
+
original_name: string;
|
|
36
|
+
popularity: number;
|
|
37
|
+
profile_path: string | null;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
export interface TvEpisodeCredit extends Credits {
|
|
41
|
+
guest_stars: GuestStar[];
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
export interface TvEpisodeTranslations {
|
|
45
|
+
id: number;
|
|
46
|
+
translations: {
|
|
47
|
+
iso_3166_1: string;
|
|
48
|
+
iso_639_1: string;
|
|
49
|
+
name: string;
|
|
50
|
+
english_name: string;
|
|
51
|
+
data: {
|
|
52
|
+
name: string;
|
|
53
|
+
overview: string;
|
|
54
|
+
};
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
export type TvEpisodeChangeValue = string | unknown;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { Episode } from '..';
|
|
2
|
+
|
|
3
|
+
export interface SeasonSelection {
|
|
4
|
+
tvShowID: number;
|
|
5
|
+
seasonNumber: number;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
export interface SeasonDetails {
|
|
9
|
+
air_date: string;
|
|
10
|
+
episodes: Episode[];
|
|
11
|
+
name: string;
|
|
12
|
+
overview: string;
|
|
13
|
+
id: number;
|
|
14
|
+
poster_path: string | null;
|
|
15
|
+
season_number: number;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export type TvSeasonChangeValue =
|
|
19
|
+
| string
|
|
20
|
+
| {
|
|
21
|
+
episode_id: number;
|
|
22
|
+
episode_number: number;
|
|
23
|
+
};
|