update readme, started movie endpoints

This commit is contained in:
Blake Joynes
2021-05-15 11:44:02 -04:00
parent 92f84a31f3
commit 9937277752
8 changed files with 128 additions and 5 deletions

View File

@@ -1,4 +1,4 @@
import { BaseEndpoint } from './base';
import { BaseEndpoint } from './base';
import { Certifications } from '../types/certification';
export class CertificationEndpoint extends BaseEndpoint {

19
src/endpoints/genre.ts Normal file
View File

@@ -0,0 +1,19 @@
import { BaseEndpoint } from './base';
export interface Genres {
genres: Array<{id: number, name: string}>
}
export class GenreEndpoint extends BaseEndpoint {
constructor(protected readonly accessToken: string) {
super(accessToken);
}
async movies(): Promise<Genres> {
return await this.api.get<Genres>('/genre/movie/list');
}
async tvShows(): Promise<Genres> {
return await this.api.get<Genres>('/genre/tv/list');
}
}

View File

@@ -5,3 +5,5 @@ export * from './certification';
export * from './changes';
export * from './credits';
export * from './search';
export * from './genre';
export * from './movies';

19
src/endpoints/movies.ts Normal file
View File

@@ -0,0 +1,19 @@
import { BaseEndpoint } from './base';
import { AlternativeTitles, MovieDetails } from '../types/movie';
const BASE_MOVIE = '/movie';
export class MoviesEndpoint extends BaseEndpoint{
constructor(protected readonly accessToken: string) {
super(accessToken);
}
async details(id: number): Promise<MovieDetails>{
return await this.api.get<MovieDetails>(`${BASE_MOVIE}/${id}`);
}
async alternativeTitles(id: number): Promise<AlternativeTitles>{
return await this.api.get<AlternativeTitles>(`${BASE_MOVIE}/${id}/alternative_titles`);
}
}