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 / (+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