better-trakt
Version:
A Trakt.tv client with native Typescript support and quality of life features
119 lines • 2.44 kB
TypeScript
import { AxiosInstance } from 'axios';
import { Certifications } from './certifications';
import { Countries } from './countries';
import { Genres } from './genres';
import { Languages } from './languages';
import { Movies } from './movies';
import { Networks } from './networks';
import { Shows } from './shows';
import { Users } from './users';
/**
* Settings provided to Trakt Class
*/
export interface TraktSettings {
/**
* Trakt app's client id
*/
clientId: string;
/**
* Trakt app's client secret
*/
clientSecret?: string;
/**
* Redirect url for oauth
* @default "urn:ietf:wg:oauth:2.0:oob"
*/
redirectUri?: string;
/**
* Trakt api url
* @default "https://api.trakt.tv"
*/
apiUrl?: string;
/**
* User Agent sent in request headers
* @default "better-trakt / <pkg version> (+https://github.com/getaugur/better-trakt/)"
*/
userAgent?: string;
}
/**
* Internal settings object used by sdk
* @internal
*/
export interface TraktClassSettings extends TraktSettings {
redirectUri: string;
apiUrl: string;
userAgent: string;
}
/**
* Interface passed to internal api funcs
* @internal
*/
export interface ApiConfig {
client: AxiosInstance;
apiUrl: string;
}
/**
* Class interface for api namespaces
* @internal
*/
export interface ApiNamespace {
config: ApiConfig;
}
/**
* Trakt.tv SDK
* @example
* SDK with basic config
* ```ts
* import { Trakt } from "better-trakt";
*
* const client = new Trakt({
* clientId: "client id",
* clientSecret: "client secret",
* });
* ```
*/
export declare class Trakt {
/**
* settings for sdk
* @internal
*/
readonly settings: TraktClassSettings;
/**
* axios client
*/
private client;
/**
* User's api
*/
readonly users: Users;
/**
* Shows api
*/
readonly shows: Shows;
/**
* Movies api
*/
readonly movies: Movies;
/**
* Certifications api
*/
readonly certifications: Certifications;
/**
* Countries api
*/
readonly countries: Countries;
/**
* Genres api
*/
readonly genres: Genres;
/**
* Languages api
*/
readonly languages: Languages;
/**
* Networks api
*/
readonly networks: Networks;
constructor(settings: TraktSettings);
}
//# sourceMappingURL=client.d.ts.map