@lorenzopant/tmdb 1.19.0 → 1.20.1
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 +198 -60
- package/dist/index.d.mts +583 -9
- package/dist/index.mjs +1 -4411
- package/package.json +2 -2
package/dist/index.d.mts
CHANGED
|
@@ -522,6 +522,43 @@ declare class TMDBError extends Error {
|
|
|
522
522
|
constructor(message: string, http_status: number, tmdb_status_code?: number);
|
|
523
523
|
}
|
|
524
524
|
//#endregion
|
|
525
|
+
//#region src/utils/cache.d.ts
|
|
526
|
+
type CacheOptions = {
|
|
527
|
+
/**
|
|
528
|
+
* How long (in milliseconds) each cached entry remains valid.
|
|
529
|
+
* @default 300_000 (5 minutes)
|
|
530
|
+
*/
|
|
531
|
+
ttl?: number;
|
|
532
|
+
/**
|
|
533
|
+
* Maximum number of entries to hold in memory.
|
|
534
|
+
* When the store is full the oldest entry is evicted before a new one is inserted.
|
|
535
|
+
* Defaults to unlimited.
|
|
536
|
+
*/
|
|
537
|
+
max_size?: number;
|
|
538
|
+
/**
|
|
539
|
+
* Endpoints that should never be cached.
|
|
540
|
+
*
|
|
541
|
+
* Each pattern is matched against the full cache key (`endpoint?param=value&…`).
|
|
542
|
+
* - A `string` is matched with `key.startsWith(pattern)`.
|
|
543
|
+
* - A `RegExp` is tested with `pattern.test(key)`.
|
|
544
|
+
*
|
|
545
|
+
* `RegExp` patterns with the global (`g`) or sticky (`y`) flag are automatically
|
|
546
|
+
* normalized by stripping those flags. Stateful `lastIndex` mutations would otherwise
|
|
547
|
+
* cause flaky cache behaviour across repeated calls.
|
|
548
|
+
*
|
|
549
|
+
* @example
|
|
550
|
+
* ```ts
|
|
551
|
+
* // Never cache trending or any discover endpoint
|
|
552
|
+
* const tmdb = new TMDB(token, {
|
|
553
|
+
* cache: {
|
|
554
|
+
* excluded_endpoints: ["/trending", /\/discover\//],
|
|
555
|
+
* },
|
|
556
|
+
* });
|
|
557
|
+
* ```
|
|
558
|
+
*/
|
|
559
|
+
excluded_endpoints?: (string | RegExp)[];
|
|
560
|
+
};
|
|
561
|
+
//#endregion
|
|
525
562
|
//#region src/utils/logger.d.ts
|
|
526
563
|
type TMDBLoggerEntry = {
|
|
527
564
|
type: "request" | "response" | "error";
|
|
@@ -542,6 +579,20 @@ declare class TMDBLogger {
|
|
|
542
579
|
private static defaultLogger;
|
|
543
580
|
}
|
|
544
581
|
//#endregion
|
|
582
|
+
//#region src/utils/rate-limiter.d.ts
|
|
583
|
+
type RateLimitOptions = {
|
|
584
|
+
/**
|
|
585
|
+
* Maximum number of requests allowed within the window.
|
|
586
|
+
* @default 40
|
|
587
|
+
*/
|
|
588
|
+
max_requests?: number;
|
|
589
|
+
/**
|
|
590
|
+
* Window size in milliseconds.
|
|
591
|
+
* @default 1_000
|
|
592
|
+
*/
|
|
593
|
+
per_ms?: number;
|
|
594
|
+
};
|
|
595
|
+
//#endregion
|
|
545
596
|
//#region src/types/config/timezones.d.ts
|
|
546
597
|
type Timezone = TimezoneTuple[number];
|
|
547
598
|
type TimezoneTuple = (typeof TIMEZONE_DATA)[number]["zones"];
|
|
@@ -1439,6 +1490,49 @@ type TMDBOptions = {
|
|
|
1439
1490
|
onError?: ResponseErrorInterceptor;
|
|
1440
1491
|
};
|
|
1441
1492
|
};
|
|
1493
|
+
/**
|
|
1494
|
+
* When enabled, outgoing requests are queued to stay within TMDB's API rate limits.
|
|
1495
|
+
*
|
|
1496
|
+
* - `true` — uses the default limits (approximately 40 requests per second).
|
|
1497
|
+
* - Pass a {@link RateLimitOptions} object to customize `max_requests` and/or `per_ms`.
|
|
1498
|
+
*
|
|
1499
|
+
* Requests that exceed the budget are held in a FIFO queue and dispatched as
|
|
1500
|
+
* slots become available. This is especially useful for bulk data-fetching scripts.
|
|
1501
|
+
*
|
|
1502
|
+
* @default false (disabled)
|
|
1503
|
+
*
|
|
1504
|
+
* @example
|
|
1505
|
+
* ```ts
|
|
1506
|
+
* // Enable with defaults (~40 req / s)
|
|
1507
|
+
* const tmdb = new TMDB(token, { rate_limit: true });
|
|
1508
|
+
*
|
|
1509
|
+
* // Custom budget
|
|
1510
|
+
* const tmdb = new TMDB(token, { rate_limit: { max_requests: 30, per_ms: 1_000 } });
|
|
1511
|
+
* ```
|
|
1512
|
+
*/
|
|
1513
|
+
rate_limit?: boolean | RateLimitOptions;
|
|
1514
|
+
/**
|
|
1515
|
+
* Enables in-memory TTL-based caching for GET requests.
|
|
1516
|
+
*
|
|
1517
|
+
* - `true` — uses the default TTL of 5 minutes with no size limit.
|
|
1518
|
+
* - Pass a {@link CacheOptions} object to customize `ttl` and/or `max_size`.
|
|
1519
|
+
*
|
|
1520
|
+
* Cached responses are served immediately without hitting the network.
|
|
1521
|
+
* Entries expire lazily on access once the TTL has elapsed.
|
|
1522
|
+
* Only `GET` requests are cached; mutations are never cached.
|
|
1523
|
+
*
|
|
1524
|
+
* @default false (disabled)
|
|
1525
|
+
*
|
|
1526
|
+
* @example
|
|
1527
|
+
* ```ts
|
|
1528
|
+
* // Enable with defaults (5-minute TTL)
|
|
1529
|
+
* const tmdb = new TMDB(token, { cache: true });
|
|
1530
|
+
*
|
|
1531
|
+
* // Custom TTL and bounded size
|
|
1532
|
+
* const tmdb = new TMDB(token, { cache: { ttl: 60_000, max_size: 500 } });
|
|
1533
|
+
* ```
|
|
1534
|
+
*/
|
|
1535
|
+
cache?: boolean | CacheOptions;
|
|
1442
1536
|
};
|
|
1443
1537
|
//#endregion
|
|
1444
1538
|
//#region src/types/common/certifications.d.ts
|
|
@@ -3400,6 +3494,237 @@ type V4AuthDeleteAccessTokenResponse = {
|
|
|
3400
3494
|
status_message: string;
|
|
3401
3495
|
};
|
|
3402
3496
|
//#endregion
|
|
3497
|
+
//#region src/types/v4/lists.d.ts
|
|
3498
|
+
/** A media type used in v4 list items. */
|
|
3499
|
+
type V4ListMediaType = "movie" | "tv";
|
|
3500
|
+
/**
|
|
3501
|
+
* A single item reference used when adding, updating, or removing items from a v4 list.
|
|
3502
|
+
*/
|
|
3503
|
+
type V4ListItemInput = {
|
|
3504
|
+
/** The TMDB media type. */media_type: V4ListMediaType; /** The TMDB media ID. */
|
|
3505
|
+
media_id: number; /** Optional per-item comment. */
|
|
3506
|
+
comment?: string;
|
|
3507
|
+
};
|
|
3508
|
+
/** Standard status/success response returned by mutating v4 list endpoints. */
|
|
3509
|
+
type V4ListStatusResponse = {
|
|
3510
|
+
/** Always `true` on success. */success: boolean; /** TMDB internal status code. */
|
|
3511
|
+
status_code: number; /** Human-readable status message. */
|
|
3512
|
+
status_message: string;
|
|
3513
|
+
};
|
|
3514
|
+
/** Request body for POST /4/list. */
|
|
3515
|
+
type V4CreateListBody = {
|
|
3516
|
+
/** The name of the list. */name: string; /** ISO 639-1 language code (e.g. `"en"`). */
|
|
3517
|
+
iso_639_1: string; /** Optional description for the list. */
|
|
3518
|
+
description?: string; /** Whether the list is public. Defaults to `true`. */
|
|
3519
|
+
public?: boolean;
|
|
3520
|
+
};
|
|
3521
|
+
/**
|
|
3522
|
+
* Response from POST /4/list.
|
|
3523
|
+
* Returns the new list's ID alongside a standard status payload.
|
|
3524
|
+
*/
|
|
3525
|
+
type V4CreateListResponse = V4ListStatusResponse & {
|
|
3526
|
+
/** The TMDB ID of the newly created list. */id: number;
|
|
3527
|
+
};
|
|
3528
|
+
/** Parameters for GET /4/list/{list_id}. */
|
|
3529
|
+
type V4ListDetailsParams = {
|
|
3530
|
+
/** The TMDB list ID. */list_id: number; /** Language for localized fields. Defaults to `en-US`. */
|
|
3531
|
+
language?: Language; /** Page number. Defaults to `1`. */
|
|
3532
|
+
page?: number;
|
|
3533
|
+
};
|
|
3534
|
+
/**
|
|
3535
|
+
* A single media item returned inside a v4 list's results array.
|
|
3536
|
+
* Fields vary slightly between movie and TV show entries; common fields are listed here.
|
|
3537
|
+
*/
|
|
3538
|
+
type V4ListResult = {
|
|
3539
|
+
/** Whether the item is adult-only content. */adult: boolean; /** Backdrop image path, or `null` if unavailable. */
|
|
3540
|
+
backdrop_path?: string; /** TMDB ID. */
|
|
3541
|
+
id: number; /** The media type. */
|
|
3542
|
+
media_type: V4ListMediaType; /** Original language. */
|
|
3543
|
+
original_language: string; /** Poster image path, or `null` if unavailable. */
|
|
3544
|
+
poster_path?: string; /** Popularity score. */
|
|
3545
|
+
popularity: number; /** Vote average. */
|
|
3546
|
+
vote_average: number; /** Total vote count. */
|
|
3547
|
+
vote_count: number; /** Movie: original title. */
|
|
3548
|
+
original_title?: string; /** Movie: release date (YYYY-MM-DD). */
|
|
3549
|
+
release_date?: string; /** Movie: title. */
|
|
3550
|
+
title?: string; /** Movie: whether the movie has a video. */
|
|
3551
|
+
video?: boolean; /** TV: original name. */
|
|
3552
|
+
original_name?: string; /** TV: first air date (YYYY-MM-DD). */
|
|
3553
|
+
first_air_date?: string; /** TV: name. */
|
|
3554
|
+
name?: string; /** TV: origin countries. */
|
|
3555
|
+
origin_country?: string[];
|
|
3556
|
+
};
|
|
3557
|
+
/**
|
|
3558
|
+
* Full list detail response from GET /4/list/{list_id}.
|
|
3559
|
+
* Includes paginated results.
|
|
3560
|
+
*/
|
|
3561
|
+
type V4ListDetails = {
|
|
3562
|
+
/** The TMDB list ID. */id: number; /** Display name. */
|
|
3563
|
+
name: string; /** Description text. */
|
|
3564
|
+
description: string; /** Username of the list creator. */
|
|
3565
|
+
created_by: string; /** Backdrop image path, or `null`. */
|
|
3566
|
+
backdrop_path?: string; /** Cover poster image path, or `null`. */
|
|
3567
|
+
poster_path?: string; /** Whether the list is publicly visible. */
|
|
3568
|
+
public: boolean; /** ISO 639-1 language code. */
|
|
3569
|
+
iso_639_1: string; /** ISO 3166-1 country code. */
|
|
3570
|
+
iso_3166_1: string; /** Total number of items in the list. */
|
|
3571
|
+
item_count: number; /** Average rating across all rated items. */
|
|
3572
|
+
average_rating: number; /** Total combined runtime of all items (minutes). */
|
|
3573
|
+
runtime: number; /** Active sort_by mode. */
|
|
3574
|
+
sort_by: string; /** Total revenue of items in the list. */
|
|
3575
|
+
revenue: number; /** Per-item comments keyed by `"movie:{id}"` or `"tv:{id}"`. */
|
|
3576
|
+
comments: Record<string, string | null>; /** Internal TMDB object IDs. */
|
|
3577
|
+
object_ids: Record<string, string>; /** Current page of results. */
|
|
3578
|
+
page: number; /** Total number of pages. */
|
|
3579
|
+
total_pages: number; /** Total number of items. */
|
|
3580
|
+
total_results: number; /** Paginated media items. */
|
|
3581
|
+
results: V4ListResult[];
|
|
3582
|
+
};
|
|
3583
|
+
/** Request body for PUT /4/list/{list_id}. */
|
|
3584
|
+
type V4UpdateListBody = {
|
|
3585
|
+
/** The TMDB list ID. */list_id: number; /** New display name. */
|
|
3586
|
+
name?: string; /** New description. */
|
|
3587
|
+
description?: string; /** Change visibility. */
|
|
3588
|
+
public?: boolean; /** Sort field (e.g. `"original_order.asc"`, `"vote_average.desc"`). */
|
|
3589
|
+
sort_by?: string;
|
|
3590
|
+
};
|
|
3591
|
+
/** Parameters for DELETE /4/list/{list_id}. */
|
|
3592
|
+
type V4DeleteListParams = {
|
|
3593
|
+
/** The TMDB list ID. */list_id: number;
|
|
3594
|
+
};
|
|
3595
|
+
/** Request body for POST /4/list/{list_id}/items. */
|
|
3596
|
+
type V4AddListItemsBody = {
|
|
3597
|
+
/** Array of items to add. */items: V4ListItemInput[];
|
|
3598
|
+
};
|
|
3599
|
+
/** Per-item result within an add/update items response. */
|
|
3600
|
+
type V4ListItemResult = {
|
|
3601
|
+
/** Whether this individual item was successfully processed. */success: boolean; /** The media type. */
|
|
3602
|
+
media_type: V4ListMediaType; /** The TMDB media ID. */
|
|
3603
|
+
media_id: number;
|
|
3604
|
+
};
|
|
3605
|
+
/** Response from POST /4/list/{list_id}/items (add) and PUT /4/list/{list_id}/items (update). */
|
|
3606
|
+
type V4AddListItemsResponse = V4ListStatusResponse & {
|
|
3607
|
+
/** Per-item success status. */results: V4ListItemResult[];
|
|
3608
|
+
};
|
|
3609
|
+
/** Request body for PUT /4/list/{list_id}/items (update comments). */
|
|
3610
|
+
type V4UpdateListItemsBody = V4AddListItemsBody;
|
|
3611
|
+
/** Response from PUT /4/list/{list_id}/items. */
|
|
3612
|
+
type V4UpdateListItemsResponse = V4AddListItemsResponse;
|
|
3613
|
+
/** Request body for DELETE /4/list/{list_id}/items. */
|
|
3614
|
+
type V4RemoveListItemsBody = {
|
|
3615
|
+
/** Array of items to remove. */items: Pick<V4ListItemInput, "media_type" | "media_id">[];
|
|
3616
|
+
};
|
|
3617
|
+
/** Parameters for GET /4/list/{list_id}/item_status. */
|
|
3618
|
+
type V4ListItemStatusParams = {
|
|
3619
|
+
/** The TMDB list ID. */list_id: number; /** The media type to check. */
|
|
3620
|
+
media_type: V4ListMediaType; /** The TMDB media ID to check. */
|
|
3621
|
+
media_id: number;
|
|
3622
|
+
};
|
|
3623
|
+
/**
|
|
3624
|
+
* Response from GET /4/list/{list_id}/item_status.
|
|
3625
|
+
*/
|
|
3626
|
+
type V4ListItemStatusResponse = {
|
|
3627
|
+
/** The TMDB list ID. */id: number; /** The media type. */
|
|
3628
|
+
media_type: V4ListMediaType; /** The TMDB media ID. */
|
|
3629
|
+
media_id: number;
|
|
3630
|
+
};
|
|
3631
|
+
//#endregion
|
|
3632
|
+
//#region src/types/guest_sessions.d.ts
|
|
3633
|
+
/** Common query params for paginated guest session rated lists. */
|
|
3634
|
+
type GuestSessionRatedParams = {
|
|
3635
|
+
/** The guest session ID. */guest_session_id: string; /** Sort direction for the results. */
|
|
3636
|
+
sort_by?: AccountSortBy;
|
|
3637
|
+
} & WithLanguage & WithPage;
|
|
3638
|
+
/** Paginated response of rated movies for a guest session. */
|
|
3639
|
+
type GuestSessionRatedMoviesResponse = PaginatedResponse<AccountRatedMovieItem>;
|
|
3640
|
+
/** Paginated response of rated TV shows for a guest session. */
|
|
3641
|
+
type GuestSessionRatedTVResponse = PaginatedResponse<AccountRatedTVItem>;
|
|
3642
|
+
/** Paginated response of rated TV episodes for a guest session. */
|
|
3643
|
+
type GuestSessionRatedEpisodesResponse = PaginatedResponse<AccountRatedEpisodeItem>;
|
|
3644
|
+
//#endregion
|
|
3645
|
+
//#region src/types/lists.d.ts
|
|
3646
|
+
/** Standard mutation response returned by add_movie, remove_movie, clear, and delete. */
|
|
3647
|
+
type ListMutationResponse = {
|
|
3648
|
+
/** TMDB internal status code. */status_code: number; /** Human-readable status message. */
|
|
3649
|
+
status_message: string;
|
|
3650
|
+
};
|
|
3651
|
+
/** Query params for list mutation endpoints that require a session and a list ID. */
|
|
3652
|
+
type ListMutationParams = {
|
|
3653
|
+
/** TMDB list ID. */list_id: number; /** v3 session ID (required). */
|
|
3654
|
+
session_id: string;
|
|
3655
|
+
};
|
|
3656
|
+
/** A single item inside a TMDB v3 list (movie with media_type). */
|
|
3657
|
+
type ListItem = {
|
|
3658
|
+
/** Whether the item is adult content. */adult: boolean; /** Path to the backdrop image, if available. */
|
|
3659
|
+
backdrop_path?: string; /** Array of genre IDs. */
|
|
3660
|
+
genre_ids: number[]; /** Unique TMDB ID of the item. */
|
|
3661
|
+
id: number; /** Media type — always `"movie"` for v3 lists. */
|
|
3662
|
+
media_type: string; /** ISO 639-1 original language code. */
|
|
3663
|
+
original_language: string; /** Original title. */
|
|
3664
|
+
original_title: string; /** Plot overview. */
|
|
3665
|
+
overview: string; /** Popularity score. */
|
|
3666
|
+
popularity: number; /** Path to the poster image, if available. */
|
|
3667
|
+
poster_path?: string; /** Release date (YYYY-MM-DD). */
|
|
3668
|
+
release_date: string; /** Localized title. */
|
|
3669
|
+
title: string; /** Whether the item has a video. */
|
|
3670
|
+
video: boolean; /** Average TMDB vote score. */
|
|
3671
|
+
vote_average: number; /** Total number of TMDB votes. */
|
|
3672
|
+
vote_count: number;
|
|
3673
|
+
};
|
|
3674
|
+
/** Full details of a TMDB v3 list. */
|
|
3675
|
+
type ListDetails = {
|
|
3676
|
+
/** Display name of the list creator. */created_by: string; /** Description of the list. */
|
|
3677
|
+
description: string; /** Number of users who have favorited this list. */
|
|
3678
|
+
favorite_count: number; /** Unique TMDB list ID (returned as a string by the API). */
|
|
3679
|
+
id: string; /** Array of items in the list. */
|
|
3680
|
+
items: ListItem[]; /** Total number of items in the list. */
|
|
3681
|
+
item_count: number; /** ISO 639-1 language the list is written in. */
|
|
3682
|
+
iso_639_1: string; /** Display name of the list. */
|
|
3683
|
+
name: string; /** Path to the list's poster image, if set. */
|
|
3684
|
+
poster_path?: string;
|
|
3685
|
+
};
|
|
3686
|
+
/** Query params for the list details endpoint. */
|
|
3687
|
+
type ListDetailsParams = {
|
|
3688
|
+
/** TMDB list ID. */list_id: number;
|
|
3689
|
+
} & WithLanguage & WithPage;
|
|
3690
|
+
/** Request body for creating a new list. */
|
|
3691
|
+
type ListCreateBody = {
|
|
3692
|
+
/** Display name of the list. */name: string; /** Description of the list. */
|
|
3693
|
+
description: string; /** ISO 639-1 language code for the list. */
|
|
3694
|
+
language: string;
|
|
3695
|
+
};
|
|
3696
|
+
/** Query params for the create list endpoint. */
|
|
3697
|
+
type ListCreateParams = {
|
|
3698
|
+
/** v3 session ID (required). */session_id: string;
|
|
3699
|
+
};
|
|
3700
|
+
/** Response from creating a new list. */
|
|
3701
|
+
type ListCreateResponse = {
|
|
3702
|
+
/** Human-readable status message. */status_message: string; /** Whether the list was created successfully. */
|
|
3703
|
+
success: boolean; /** TMDB internal status code. */
|
|
3704
|
+
status_code: number; /** The ID of the newly created list. */
|
|
3705
|
+
list_id: number;
|
|
3706
|
+
};
|
|
3707
|
+
/** Request body for add_movie and remove_movie. */
|
|
3708
|
+
type ListMovieBody = {
|
|
3709
|
+
/** TMDB movie ID to add or remove. */media_id: number;
|
|
3710
|
+
};
|
|
3711
|
+
/** Query params for clearing all items from a list. */
|
|
3712
|
+
type ListClearParams = {
|
|
3713
|
+
/** TMDB list ID. */list_id: number; /** v3 session ID (required). */
|
|
3714
|
+
session_id: string; /** Must be `true` to confirm the operation. */
|
|
3715
|
+
confirm: boolean;
|
|
3716
|
+
};
|
|
3717
|
+
/** Query params for the check item status endpoint. */
|
|
3718
|
+
type ListItemStatusParams = {
|
|
3719
|
+
/** TMDB list ID. */list_id: number; /** TMDB movie ID to check. */
|
|
3720
|
+
movie_id?: number;
|
|
3721
|
+
} & WithLanguage;
|
|
3722
|
+
/** Response from the check item status endpoint. */
|
|
3723
|
+
type ListItemStatusResponse = {
|
|
3724
|
+
/** The TMDB list ID. */id: number; /** Whether the movie is present in the list. */
|
|
3725
|
+
item_present: boolean;
|
|
3726
|
+
};
|
|
3727
|
+
//#endregion
|
|
3403
3728
|
//#region src/client.d.ts
|
|
3404
3729
|
declare class ApiClient {
|
|
3405
3730
|
private accessToken;
|
|
@@ -3413,15 +3738,19 @@ declare class ApiClient {
|
|
|
3413
3738
|
*/
|
|
3414
3739
|
private inflightRequests;
|
|
3415
3740
|
private deduplication;
|
|
3741
|
+
private rateLimiter?;
|
|
3416
3742
|
private requestInterceptors;
|
|
3417
3743
|
private onSuccessInterceptor?;
|
|
3418
3744
|
private onErrorInterceptor?;
|
|
3419
3745
|
private imageApi?;
|
|
3746
|
+
private responseCache?;
|
|
3420
3747
|
constructor(accessToken: string, options?: {
|
|
3421
3748
|
/** @internal API version to target. Used by TMDBv4 — not exposed in TMDBOptions. */version?: 3 | 4;
|
|
3422
3749
|
logger?: boolean | TMDBLoggerFn;
|
|
3423
3750
|
deduplication?: boolean;
|
|
3424
3751
|
images?: ImagesConfig;
|
|
3752
|
+
rate_limit?: boolean | RateLimitOptions;
|
|
3753
|
+
cache?: boolean | CacheOptions;
|
|
3425
3754
|
interceptors?: {
|
|
3426
3755
|
request?: RequestInterceptor | RequestInterceptor[];
|
|
3427
3756
|
response?: {
|
|
@@ -3455,6 +3784,20 @@ declare class ApiClient {
|
|
|
3455
3784
|
* `TMDBOptions.deduplication = false`.
|
|
3456
3785
|
*/
|
|
3457
3786
|
request<T>(endpoint: string, params?: Record<string, unknown | undefined>): Promise<T>;
|
|
3787
|
+
/**
|
|
3788
|
+
* Removes a single entry from the response cache.
|
|
3789
|
+
*
|
|
3790
|
+
* The key is built from `endpoint` + `params` using the same deterministic algorithm
|
|
3791
|
+
* as the cache itself, so the arguments must match exactly what was used in the original
|
|
3792
|
+
* request (including parameter values and casing).
|
|
3793
|
+
*
|
|
3794
|
+
* @returns `true` if an entry was found and removed, `false` if it was not cached.
|
|
3795
|
+
*/
|
|
3796
|
+
invalidateCache(endpoint: string, params?: Record<string, unknown>): boolean;
|
|
3797
|
+
/** Removes all entries from the response cache. */
|
|
3798
|
+
clearCache(): void;
|
|
3799
|
+
/** Returns the number of entries currently held in the response cache. */
|
|
3800
|
+
get cacheSize(): number;
|
|
3458
3801
|
/**
|
|
3459
3802
|
* Runs all registered request interceptors in order, threading the context through each one.
|
|
3460
3803
|
* If an interceptor returns a new context, it replaces the current context for the next interceptor.
|
|
@@ -3468,18 +3811,26 @@ declare class ApiClient {
|
|
|
3468
3811
|
private sanitizeNulls;
|
|
3469
3812
|
private handleError;
|
|
3470
3813
|
/**
|
|
3471
|
-
* Makes an authenticated mutation request
|
|
3472
|
-
* Unlike `request()`, mutations are never deduplicated since they change server state.
|
|
3814
|
+
* Makes an authenticated mutation request to the TMDB API.
|
|
3815
|
+
* Unlike `request()`, mutations are **never deduplicated** since they change server state.
|
|
3816
|
+
*
|
|
3817
|
+
* Accepts `"GET"` in addition to the standard mutation verbs for the rare TMDB endpoints
|
|
3818
|
+
* (e.g. `GET /4/list/{id}/clear`) that are specified as GET but carry side effects and
|
|
3819
|
+
* must therefore not be collapsed by the deduplication layer.
|
|
3473
3820
|
*
|
|
3474
3821
|
* @param method - HTTP method to use
|
|
3475
3822
|
* @param endpoint - API path (e.g. "/account/123/favorite")
|
|
3476
|
-
* @param body - JSON body to send (omit for DELETE requests without a body)
|
|
3823
|
+
* @param body - JSON body to send (omit for DELETE/GET requests without a body)
|
|
3477
3824
|
* @param params - Optional query string parameters (e.g. session_id)
|
|
3478
3825
|
*/
|
|
3479
|
-
mutate<T>(method: "POST" | "PUT" | "DELETE", endpoint: string, body?: Record<string, unknown>, params?: Record<string, unknown | undefined>): Promise<T>;
|
|
3826
|
+
mutate<T>(method: "GET" | "POST" | "PUT" | "DELETE", endpoint: string, body?: Record<string, unknown>, params?: Record<string, unknown | undefined>): Promise<T>;
|
|
3480
3827
|
/**
|
|
3481
3828
|
* Shared fetch + response-parsing pipeline used by both `request` and `mutate`.
|
|
3482
3829
|
* Handles URL construction, auth, logging, error mapping, and null sanitisation.
|
|
3830
|
+
*
|
|
3831
|
+
* When called from `request()`, interceptors have already been applied and
|
|
3832
|
+
* `endpoint`/`params` are the effective (post-interceptor) values — interceptors
|
|
3833
|
+
* are skipped. When called from `mutate()`, interceptors run here as normal.
|
|
3483
3834
|
*/
|
|
3484
3835
|
private execute;
|
|
3485
3836
|
}
|
|
@@ -5151,6 +5502,111 @@ declare class AuthenticationAPI extends TMDBAPIBase {
|
|
|
5151
5502
|
delete_session(body: AuthDeleteSessionBody): Promise<AuthDeleteSessionResponse>;
|
|
5152
5503
|
}
|
|
5153
5504
|
//#endregion
|
|
5505
|
+
//#region src/endpoints/guest_sessions.d.ts
|
|
5506
|
+
declare class GuestSessionsAPI extends TMDBAPIBase {
|
|
5507
|
+
private guestSessionPath;
|
|
5508
|
+
private guestSessionSubPath;
|
|
5509
|
+
/**
|
|
5510
|
+
* Rated Movies
|
|
5511
|
+
* GET - https://api.themoviedb.org/3/guest_session/{guest_session_id}/rated/movies
|
|
5512
|
+
*
|
|
5513
|
+
* Get the rated movies for a guest session.
|
|
5514
|
+
* @param params Guest session ID, optional language, page, and sort_by.
|
|
5515
|
+
* @reference https://developer.themoviedb.org/reference/guest-session-rated-movies
|
|
5516
|
+
*/
|
|
5517
|
+
rated_movies(params: GuestSessionRatedParams): Promise<GuestSessionRatedMoviesResponse>;
|
|
5518
|
+
/**
|
|
5519
|
+
* Rated TV
|
|
5520
|
+
* GET - https://api.themoviedb.org/3/guest_session/{guest_session_id}/rated/tv
|
|
5521
|
+
*
|
|
5522
|
+
* Get the rated TV shows for a guest session.
|
|
5523
|
+
* @param params Guest session ID, optional language, page, and sort_by.
|
|
5524
|
+
* @reference https://developer.themoviedb.org/reference/guest-session-rated-tv
|
|
5525
|
+
*/
|
|
5526
|
+
rated_tv(params: GuestSessionRatedParams): Promise<GuestSessionRatedTVResponse>;
|
|
5527
|
+
/**
|
|
5528
|
+
* Rated TV Episodes
|
|
5529
|
+
* GET - https://api.themoviedb.org/3/guest_session/{guest_session_id}/rated/tv/episodes
|
|
5530
|
+
*
|
|
5531
|
+
* Get the rated TV episodes for a guest session.
|
|
5532
|
+
* @param params Guest session ID, optional language, page, and sort_by.
|
|
5533
|
+
* @reference https://developer.themoviedb.org/reference/guest-session-rated-tv-episodes
|
|
5534
|
+
*/
|
|
5535
|
+
rated_tv_episodes(params: GuestSessionRatedParams): Promise<GuestSessionRatedEpisodesResponse>;
|
|
5536
|
+
}
|
|
5537
|
+
//#endregion
|
|
5538
|
+
//#region src/endpoints/lists.d.ts
|
|
5539
|
+
declare class ListsAPI extends TMDBAPIBase {
|
|
5540
|
+
private listPath;
|
|
5541
|
+
private listSubPath;
|
|
5542
|
+
/**
|
|
5543
|
+
* Details
|
|
5544
|
+
* GET - https://api.themoviedb.org/3/list/{list_id}
|
|
5545
|
+
*
|
|
5546
|
+
* Get the details of a list.
|
|
5547
|
+
* @param params List ID and optional language and page.
|
|
5548
|
+
* @reference https://developer.themoviedb.org/reference/list-details
|
|
5549
|
+
*/
|
|
5550
|
+
details(params: ListDetailsParams): Promise<ListDetails>;
|
|
5551
|
+
/**
|
|
5552
|
+
* Create
|
|
5553
|
+
* POST - https://api.themoviedb.org/3/list
|
|
5554
|
+
*
|
|
5555
|
+
* Create a new list.
|
|
5556
|
+
* @param params session_id query param (required).
|
|
5557
|
+
* @param body name, description, and language for the new list.
|
|
5558
|
+
* @reference https://developer.themoviedb.org/reference/list-create
|
|
5559
|
+
*/
|
|
5560
|
+
create(params: ListCreateParams, body: ListCreateBody): Promise<ListCreateResponse>;
|
|
5561
|
+
/**
|
|
5562
|
+
* Delete
|
|
5563
|
+
* DELETE - https://api.themoviedb.org/3/list/{list_id}
|
|
5564
|
+
*
|
|
5565
|
+
* Delete a list.
|
|
5566
|
+
* @param params List ID and session_id (required).
|
|
5567
|
+
* @reference https://developer.themoviedb.org/reference/list-delete
|
|
5568
|
+
*/
|
|
5569
|
+
delete(params: ListMutationParams): Promise<ListMutationResponse>;
|
|
5570
|
+
/**
|
|
5571
|
+
* Add Movie
|
|
5572
|
+
* POST - https://api.themoviedb.org/3/list/{list_id}/add_item
|
|
5573
|
+
*
|
|
5574
|
+
* Add a movie to a list.
|
|
5575
|
+
* @param params List ID and session_id (required).
|
|
5576
|
+
* @param body media_id of the movie to add.
|
|
5577
|
+
* @reference https://developer.themoviedb.org/reference/list-add-movie
|
|
5578
|
+
*/
|
|
5579
|
+
add_movie(params: ListMutationParams, body: ListMovieBody): Promise<ListMutationResponse>;
|
|
5580
|
+
/**
|
|
5581
|
+
* Remove Movie
|
|
5582
|
+
* POST - https://api.themoviedb.org/3/list/{list_id}/remove_item
|
|
5583
|
+
*
|
|
5584
|
+
* Remove a movie from a list.
|
|
5585
|
+
* @param params List ID and session_id (required).
|
|
5586
|
+
* @param body media_id of the movie to remove.
|
|
5587
|
+
* @reference https://developer.themoviedb.org/reference/list-remove-movie
|
|
5588
|
+
*/
|
|
5589
|
+
remove_movie(params: ListMutationParams, body: ListMovieBody): Promise<ListMutationResponse>;
|
|
5590
|
+
/**
|
|
5591
|
+
* Check Item Status
|
|
5592
|
+
* GET - https://api.themoviedb.org/3/list/{list_id}/item_status
|
|
5593
|
+
*
|
|
5594
|
+
* Check if a movie has already been added to a list.
|
|
5595
|
+
* @param params List ID and optional movie_id and language.
|
|
5596
|
+
* @reference https://developer.themoviedb.org/reference/list-check-item-status
|
|
5597
|
+
*/
|
|
5598
|
+
check_item_status(params: ListItemStatusParams): Promise<ListItemStatusResponse>;
|
|
5599
|
+
/**
|
|
5600
|
+
* Clear
|
|
5601
|
+
* POST - https://api.themoviedb.org/3/list/{list_id}/clear
|
|
5602
|
+
*
|
|
5603
|
+
* Clear all items from a list. Pass `confirm: true` to confirm the operation.
|
|
5604
|
+
* @param params List ID, session_id, and confirm flag (required).
|
|
5605
|
+
* @reference https://developer.themoviedb.org/reference/list-clear
|
|
5606
|
+
*/
|
|
5607
|
+
clear(params: ListClearParams): Promise<ListMutationResponse>;
|
|
5608
|
+
}
|
|
5609
|
+
//#endregion
|
|
5154
5610
|
//#region src/endpoints/v4/auth.d.ts
|
|
5155
5611
|
declare class V4AuthAPI extends TMDBAPIBase {
|
|
5156
5612
|
/**
|
|
@@ -5192,7 +5648,105 @@ declare class V4AuthAPI extends TMDBAPIBase {
|
|
|
5192
5648
|
declare class V4AccountAPI extends TMDBAPIBase {}
|
|
5193
5649
|
//#endregion
|
|
5194
5650
|
//#region src/endpoints/v4/lists.d.ts
|
|
5195
|
-
declare class V4ListsAPI extends TMDBAPIBase {
|
|
5651
|
+
declare class V4ListsAPI extends TMDBAPIBase {
|
|
5652
|
+
private listPath;
|
|
5653
|
+
/**
|
|
5654
|
+
* Create List
|
|
5655
|
+
* POST - https://api.themoviedb.org/4/list
|
|
5656
|
+
*
|
|
5657
|
+
* Create a new v4 list. The authenticated user becomes the owner.
|
|
5658
|
+
* @param body List name and ISO 639-1 language code are required.
|
|
5659
|
+
* @reference https://developer.themoviedb.org/reference/list-create
|
|
5660
|
+
*/
|
|
5661
|
+
create(body: V4CreateListBody): Promise<V4CreateListResponse>;
|
|
5662
|
+
/**
|
|
5663
|
+
* List Details
|
|
5664
|
+
* GET - https://api.themoviedb.org/4/list/{list_id}
|
|
5665
|
+
*
|
|
5666
|
+
* Retrieve the details and paginated items of a specific list.
|
|
5667
|
+
* @param params `list_id` is required. Optionally pass `language` and `page`.
|
|
5668
|
+
* @reference https://developer.themoviedb.org/reference/list-details
|
|
5669
|
+
*/
|
|
5670
|
+
details({
|
|
5671
|
+
list_id,
|
|
5672
|
+
...params
|
|
5673
|
+
}: V4ListDetailsParams): Promise<V4ListDetails>;
|
|
5674
|
+
/**
|
|
5675
|
+
* Update List
|
|
5676
|
+
* PUT - https://api.themoviedb.org/4/list/{list_id}
|
|
5677
|
+
*
|
|
5678
|
+
* Update the metadata (name, description, visibility, sort order) of an existing list.
|
|
5679
|
+
* @param body `list_id` plus any fields to change.
|
|
5680
|
+
* @reference https://developer.themoviedb.org/reference/list-update
|
|
5681
|
+
*/
|
|
5682
|
+
update({
|
|
5683
|
+
list_id,
|
|
5684
|
+
...body
|
|
5685
|
+
}: V4UpdateListBody): Promise<V4ListStatusResponse>;
|
|
5686
|
+
/**
|
|
5687
|
+
* Delete List
|
|
5688
|
+
* DELETE - https://api.themoviedb.org/4/list/{list_id}
|
|
5689
|
+
*
|
|
5690
|
+
* Permanently delete a list. This action cannot be undone.
|
|
5691
|
+
* @param params.list_id The TMDB list ID to delete.
|
|
5692
|
+
* @reference https://developer.themoviedb.org/reference/list-delete
|
|
5693
|
+
*/
|
|
5694
|
+
delete({
|
|
5695
|
+
list_id
|
|
5696
|
+
}: V4DeleteListParams): Promise<V4ListStatusResponse>;
|
|
5697
|
+
/**
|
|
5698
|
+
* Add Items
|
|
5699
|
+
* POST - https://api.themoviedb.org/4/list/{list_id}/items
|
|
5700
|
+
*
|
|
5701
|
+
* Add one or more movies or TV shows to a list. For each item the response
|
|
5702
|
+
* includes whether it was added successfully.
|
|
5703
|
+
* @param list_id The TMDB list ID.
|
|
5704
|
+
* @param body Array of `{ media_type, media_id }` objects to add.
|
|
5705
|
+
* @reference https://developer.themoviedb.org/reference/list-add-items
|
|
5706
|
+
*/
|
|
5707
|
+
add_items(list_id: number, body: V4AddListItemsBody): Promise<V4AddListItemsResponse>;
|
|
5708
|
+
/**
|
|
5709
|
+
* Update Items
|
|
5710
|
+
* PUT - https://api.themoviedb.org/4/list/{list_id}/items
|
|
5711
|
+
*
|
|
5712
|
+
* Update per-item comments for items already in the list.
|
|
5713
|
+
* @param list_id The TMDB list ID.
|
|
5714
|
+
* @param body Array of `{ media_type, media_id, comment }` objects.
|
|
5715
|
+
* @reference https://developer.themoviedb.org/reference/list-update-items
|
|
5716
|
+
*/
|
|
5717
|
+
update_items(list_id: number, body: V4UpdateListItemsBody): Promise<V4UpdateListItemsResponse>;
|
|
5718
|
+
/**
|
|
5719
|
+
* Remove Items
|
|
5720
|
+
* DELETE - https://api.themoviedb.org/4/list/{list_id}/items
|
|
5721
|
+
*
|
|
5722
|
+
* Remove one or more items from the list.
|
|
5723
|
+
* @param list_id The TMDB list ID.
|
|
5724
|
+
* @param body Array of `{ media_type, media_id }` objects to remove.
|
|
5725
|
+
* @reference https://developer.themoviedb.org/reference/list-remove-items
|
|
5726
|
+
*/
|
|
5727
|
+
remove_items(list_id: number, body: V4RemoveListItemsBody): Promise<V4ListStatusResponse>;
|
|
5728
|
+
/**
|
|
5729
|
+
* Check Item Status
|
|
5730
|
+
* GET - https://api.themoviedb.org/4/list/{list_id}/item_status
|
|
5731
|
+
*
|
|
5732
|
+
* Check whether a specific movie or TV show is already present in the list.
|
|
5733
|
+
* @param params `list_id`, `media_type`, and `media_id` are all required.
|
|
5734
|
+
* @reference https://developer.themoviedb.org/reference/list-item-status
|
|
5735
|
+
*/
|
|
5736
|
+
item_status({
|
|
5737
|
+
list_id,
|
|
5738
|
+
...params
|
|
5739
|
+
}: V4ListItemStatusParams): Promise<V4ListItemStatusResponse>;
|
|
5740
|
+
/**
|
|
5741
|
+
* Clear List
|
|
5742
|
+
* GET - https://api.themoviedb.org/4/list/{list_id}/clear
|
|
5743
|
+
*
|
|
5744
|
+
* Remove all items from the list without deleting the list itself.
|
|
5745
|
+
* @param list_id The TMDB list ID to clear.
|
|
5746
|
+
* @reference https://developer.themoviedb.org/reference/list-clear
|
|
5747
|
+
*/
|
|
5748
|
+
clear(list_id: number): Promise<V4ListStatusResponse>;
|
|
5749
|
+
}
|
|
5196
5750
|
//#endregion
|
|
5197
5751
|
//#region src/tmdb.v4.d.ts
|
|
5198
5752
|
/**
|
|
@@ -5221,11 +5775,8 @@ declare class V4ListsAPI extends TMDBAPIBase {}
|
|
|
5221
5775
|
*/
|
|
5222
5776
|
declare class TMDBv4 {
|
|
5223
5777
|
private client;
|
|
5224
|
-
/** v4 authentication — request token → access token → logout. */
|
|
5225
5778
|
auth: V4AuthAPI;
|
|
5226
|
-
/** v4 account — details, lists, favorites, watchlist, rated. */
|
|
5227
5779
|
account: V4AccountAPI;
|
|
5228
|
-
/** v4 lists — full CRUD for user-created lists. */
|
|
5229
5780
|
lists: V4ListsAPI;
|
|
5230
5781
|
constructor(accessToken: string, options?: TMDBOptions);
|
|
5231
5782
|
}
|
|
@@ -5262,12 +5813,35 @@ declare class TMDB {
|
|
|
5262
5813
|
people: PeopleAPI;
|
|
5263
5814
|
account: AccountAPI;
|
|
5264
5815
|
authentication: AuthenticationAPI;
|
|
5816
|
+
guest_sessions: GuestSessionsAPI;
|
|
5817
|
+
lists: ListsAPI;
|
|
5265
5818
|
/**
|
|
5266
5819
|
* TMDB API v4 namespaces. Access via `tmdb.v4.auth`, `tmdb.v4.account`, `tmdb.v4.lists`.
|
|
5267
5820
|
* Requires a Bearer (JWT) access token — throws if the instance was created with an API key.
|
|
5268
5821
|
*/
|
|
5269
5822
|
get v4(): TMDBv4;
|
|
5270
5823
|
private _v4;
|
|
5824
|
+
/**
|
|
5825
|
+
* Response cache controls. Only available when `cache` was set in the constructor options.
|
|
5826
|
+
*
|
|
5827
|
+
* - `clear()` — remove all cached entries (e.g. after a user signs out or state resets).
|
|
5828
|
+
* - `invalidate(endpoint, params?)` — remove a single entry by endpoint + params.
|
|
5829
|
+
* - `size` — number of entries currently held in memory.
|
|
5830
|
+
*
|
|
5831
|
+
* @example
|
|
5832
|
+
* ```ts
|
|
5833
|
+
* // Invalidate now_playing after a mutation
|
|
5834
|
+
* tmdb.cache?.invalidate("/movie/now_playing");
|
|
5835
|
+
*
|
|
5836
|
+
* // Clear everything
|
|
5837
|
+
* tmdb.cache?.clear();
|
|
5838
|
+
* ```
|
|
5839
|
+
*/
|
|
5840
|
+
get cache(): {
|
|
5841
|
+
clear(): void;
|
|
5842
|
+
invalidate(endpoint: string, params?: Record<string, unknown>): boolean;
|
|
5843
|
+
readonly size: number;
|
|
5844
|
+
} | undefined;
|
|
5271
5845
|
/**
|
|
5272
5846
|
* Creates a new TMDB instance.
|
|
5273
5847
|
* @param accessToken The TMDB API access token.
|
|
@@ -5312,4 +5886,4 @@ declare function hasLogoPath(data: unknown): data is {
|
|
|
5312
5886
|
logo_path: string;
|
|
5313
5887
|
};
|
|
5314
5888
|
//#endregion
|
|
5315
|
-
export { AccountAPI, AccountAddFavoriteBody, AccountAddToWatchlistBody, AccountAvatar, AccountDetails, AccountDetailsParams, AccountListItem, AccountListsParams, AccountListsResponse, AccountMediaListParams, AccountMovieItem, AccountMovieListResponse, AccountMutationParams, AccountMutationResponse, AccountRatedEpisodeItem, AccountRatedEpisodesResponse, AccountRatedMovieItem, AccountRatedMoviesResponse, AccountRatedTVItem, AccountRatedTVResponse, AccountSortBy, AccountTVItem, AccountTVListResponse, AlternativeName, AlternativeNamesResult, AlternativeTitle, AuthCreateSessionBody, AuthCreateSessionResponse, AuthCreateSessionWithLoginBody, AuthDeleteSessionBody, AuthDeleteSessionResponse, AuthGuestSessionResponse, AuthRequestTokenResponse, AuthValidateKeyResponse, AuthenticationAPI, BACKDROP_SIZES, BackdropSize, Cast, CertificationItem, Certifications, CertificationsAPI, Change, ChangeItem, ChangeResultItem, Changes, ChangesAPI, Collection, CollectionBaseParam, CollectionDetailsParams, CollectionImages, CollectionImagesParams, CollectionItem, CollectionResultItem, CollectionTranslationData, CollectionTranslations, CollectionsAPI, CompaniesAPI, Company, CompanyAlternativeName, CompanyAlternativeNames, CompanyAlternativeNamesParams, CompanyBaseParam, CompanyDetailsParams, CompanyImages, CompanyImagesParams, CompanyResultItem, CompanySummary, ConfigurationAPI, ConfigurationCountriesParams, ConfigurationCountry, ConfigurationJob, ConfigurationLanguage, ConfigurationResponse, ConfigurationTimezone, ContentRating, CountryISO3166_1, Credit, CreditBaseParam, CreditDetails, CreditDetailsMedia, CreditDetailsMovieMedia, CreditDetailsParams, CreditDetailsPerson, CreditDetailsTVEpisode, CreditDetailsTVMedia, CreditDetailsTVSeason, CreditsAPI, Crew, DateRange, DefaultImageSizesConfig, DiscoverAPI, DiscoverFilterExpression, DiscoverMovieParams, DiscoverMovieSortBy, DiscoverTVParams, DiscoverTVResultItem, DiscoverTVSortBy, DiscoverTVStatus, DiscoverTVType, FileType, FindAPI, FindByIDParams, FindExternalSource, FindMovieResultItem, FindPersonResultItem, FindResults, FindTVEpisodeResultItem, FindTVResultItem, FindTVSeasonResultItem, Genre, GenresAPI, GenresResponse, IMAGE_BASE_URL, IMAGE_SECURE_BASE_URL, ImageCollectionKey, ImageConfiguration, ImageItem, ImageSize, ImageSizeTypes, ImagesConfig, ImagesResult, Keyword, KeywordBaseParam, KeywordDetailsParams, KeywordMoviesParams, KeywordResultItem, KeywordsAPI, KnownForItem, KnownForMovie, KnownForTV, LOGO_SIZES, Language, LanguageISO6391, LiteralUnion, LogoSize, MediaType, MediaWatchProviders, MovieAlternativeTitles, MovieAlternativeTitlesParams, MovieAppendToResponseNamespace, MovieAppendableMap, MovieChanges, MovieChangesParams, MovieCollection, MovieCredits, MovieCreditsParams, MovieDetails, MovieDetailsParams, MovieDetailsWithAppends, MovieExternalIDs, MovieExternalIDsParams, MovieImages, MovieImagesParams, MovieKeywords, MovieKeywordsParams, MovieListParams, MovieListsAPI, MovieRecommendations, MovieRecommendationsParams, MovieReleaseDate, MovieReleaseDateResult, MovieReleaseDates, MovieReleaseDatesParams, MovieResultItem, MovieReviews, MovieReviewsParams, MovieSimilar, MovieSimilarParams, MovieTranslationData, MovieTranslations, MovieTranslationsParams, MovieVideos, MovieVideosParams, MovieWatchProvidersParams, MoviesAPI, MultiSearchResultItem, Network, NetworkBaseParams, NetworkImages, NetworkItem, NetworksAPI, OrganizationImage, POSTER_SIZES, PROFILE_SIZES, PaginatedResponse, PeopleAPI, PeopleListParams, PeopleListsAPI, PersonAppendToResponseNamespace, PersonAppendableMap, PersonBaseParam, PersonChanges, PersonChangesParams, PersonCombinedCastCredit, PersonCombinedCredits, PersonCombinedCrewCredit, PersonCreditsParams, PersonDetails, PersonDetailsParams, PersonDetailsWithAppends, PersonExternalIDs, PersonExternalIDsParams, PersonImages, PersonImagesParams, PersonMovieCastCredit, PersonMovieCredits, PersonMovieCrewCredit, PersonResultItem, PersonTVCastCredit, PersonTVCredits, PersonTVCrewCredit, PersonTaggedImage, PersonTaggedImageMedia, PersonTaggedImages, PersonTaggedImagesParams, PersonTranslationData, PersonTranslations, PersonTranslationsParams, PosterSize, Prettify, PrimaryTranslations, ProductionCompany, ProductionCountry, ProfileSize, RequestInterceptor, RequestInterceptorContext, ResponseErrorInterceptor, ResponseSuccessInterceptor, Review, ReviewAuthorDetails, ReviewDetails, ReviewDetailsParams, ReviewsAPI, STILL_SIZES, SearchAPI, SearchCollectionsParams, SearchCompanyParams, SearchKeywordsParams, SearchMoviesParams, SearchMultiParams, SearchPersonParams, SearchTVSeriesParams, SpokenLanguage, StillSize, TMDB, TMDBCountries, TMDBError, TMDBLogger, TMDBLoggerEntry, TMDBLoggerFn, TMDBOptions, TMDBQueryParams, TMDBv4, TVAggregateCredits, TVAggregateCreditsCastItem, TVAggregateCreditsCrewItem, TVAggregateCreditsParams, TVAlternativeTitles, TVAppendToResponseNamespace, TVAppendableMap, TVBaseParam, TVChangeParams, TVContentRatings, TVCreditJob, TVCreditRole, TVCredits, TVCreditsParams, TVDetailsParams, TVDetailsWithAppends, TVEpisode, TVEpisodeAppendToResponseNamespace, TVEpisodeAppendableMap, TVEpisodeBaseParams, TVEpisodeCredits, TVEpisodeCreditsParams, TVEpisodeDetailsParams, TVEpisodeDetailsWithAppends, TVEpisodeExternalIDs, TVEpisodeGroupDetails, TVEpisodeGroupDetailsItem, TVEpisodeGroupEpisode, TVEpisodeGroupItem, TVEpisodeGroupParams, TVEpisodeGroupType, TVEpisodeGroups, TVEpisodeGroupsAPI, TVEpisodeId, TVEpisodeImages, TVEpisodeImagesParams, TVEpisodeItem, TVEpisodeTranslationData, TVEpisodeTranslations, TVEpisodeVideos, TVEpisodesAPI, TVExternalIDs, TVImageItem, TVImages, TVImagesParams, TVKeywords, TVRecommendations, TVRecommendationsParams, TVReviews, TVReviewsParams, TVScreenedTheatrically, TVScreeningItem, TVSeason, TVSeasonAggregateCredits, TVSeasonAggregateCreditsParams, TVSeasonAppendToResponseNamespace, TVSeasonAppendableMap, TVSeasonBaseParams, TVSeasonChanges, TVSeasonChangesParams, TVSeasonCredits, TVSeasonCreditsParams, TVSeasonDetailsParams, TVSeasonDetailsWithAppends, TVSeasonEpisode, TVSeasonExternalIDs, TVSeasonId, TVSeasonImages, TVSeasonImagesParams, TVSeasonItem, TVSeasonTranslationData, TVSeasonTranslations, TVSeasonVideos, TVSeasonVideosParams, TVSeasonWatchProvidersParams, TVSeasonsAPI, TVSeriesAPI, TVSeriesChanges, TVSeriesDetails, TVSeriesListItem, TVSeriesListParams, TVSeriesLists, TVSeriesListsAPI, TVSeriesListsParams, TVSeriesResultItem, TVSimilar, TVSimilarParams, TVTranslationData, TVTranslations, TVVideos, Timezone, Translation, TranslationResults, TrendingAPI, TrendingAllResult, TrendingMovieResult, TrendingParams, TrendingPersonResult, TrendingTVResult, TrendingTimeWindow, V4AccountAPI, V4AuthAPI, V4AuthAccessTokenResponse, V4AuthCreateAccessTokenBody, V4AuthCreateRequestTokenBody, V4AuthDeleteAccessTokenBody, V4AuthDeleteAccessTokenResponse, V4AuthRequestTokenResponse, V4ListsAPI, VideoItem, VideoResults, WatchMonetizationType, WatchProvider, WatchProviderDisplayPriorities, WatchProviderItem, WatchProviderListItem, WatchProviderListParams, WatchProviderListResponse, WatchProviderRegionsParams, WatchProviderRegionsResponse, WatchProvidersAPI, WithLanguage, WithLanguagePage, WithPage, WithPageAndDateRange, WithParams, WithRegion, hasBackdropPath, hasLogoPath, hasPosterPath, hasProfilePath, hasStillPath, isJwt, isKnownForMovie, isKnownForTV, isPlainObject, isRecord };
|
|
5889
|
+
export { AccountAPI, AccountAddFavoriteBody, AccountAddToWatchlistBody, AccountAvatar, AccountDetails, AccountDetailsParams, AccountListItem, AccountListsParams, AccountListsResponse, AccountMediaListParams, AccountMovieItem, AccountMovieListResponse, AccountMutationParams, AccountMutationResponse, AccountRatedEpisodeItem, AccountRatedEpisodesResponse, AccountRatedMovieItem, AccountRatedMoviesResponse, AccountRatedTVItem, AccountRatedTVResponse, AccountSortBy, AccountTVItem, AccountTVListResponse, AlternativeName, AlternativeNamesResult, AlternativeTitle, AuthCreateSessionBody, AuthCreateSessionResponse, AuthCreateSessionWithLoginBody, AuthDeleteSessionBody, AuthDeleteSessionResponse, AuthGuestSessionResponse, AuthRequestTokenResponse, AuthValidateKeyResponse, AuthenticationAPI, BACKDROP_SIZES, BackdropSize, Cast, CertificationItem, Certifications, CertificationsAPI, Change, ChangeItem, ChangeResultItem, Changes, ChangesAPI, Collection, CollectionBaseParam, CollectionDetailsParams, CollectionImages, CollectionImagesParams, CollectionItem, CollectionResultItem, CollectionTranslationData, CollectionTranslations, CollectionsAPI, CompaniesAPI, Company, CompanyAlternativeName, CompanyAlternativeNames, CompanyAlternativeNamesParams, CompanyBaseParam, CompanyDetailsParams, CompanyImages, CompanyImagesParams, CompanyResultItem, CompanySummary, ConfigurationAPI, ConfigurationCountriesParams, ConfigurationCountry, ConfigurationJob, ConfigurationLanguage, ConfigurationResponse, ConfigurationTimezone, ContentRating, CountryISO3166_1, Credit, CreditBaseParam, CreditDetails, CreditDetailsMedia, CreditDetailsMovieMedia, CreditDetailsParams, CreditDetailsPerson, CreditDetailsTVEpisode, CreditDetailsTVMedia, CreditDetailsTVSeason, CreditsAPI, Crew, DateRange, DefaultImageSizesConfig, DiscoverAPI, DiscoverFilterExpression, DiscoverMovieParams, DiscoverMovieSortBy, DiscoverTVParams, DiscoverTVResultItem, DiscoverTVSortBy, DiscoverTVStatus, DiscoverTVType, FileType, FindAPI, FindByIDParams, FindExternalSource, FindMovieResultItem, FindPersonResultItem, FindResults, FindTVEpisodeResultItem, FindTVResultItem, FindTVSeasonResultItem, Genre, GenresAPI, GenresResponse, GuestSessionRatedEpisodesResponse, GuestSessionRatedMoviesResponse, GuestSessionRatedParams, GuestSessionRatedTVResponse, GuestSessionsAPI, IMAGE_BASE_URL, IMAGE_SECURE_BASE_URL, ImageCollectionKey, ImageConfiguration, ImageItem, ImageSize, ImageSizeTypes, ImagesConfig, ImagesResult, Keyword, KeywordBaseParam, KeywordDetailsParams, KeywordMoviesParams, KeywordResultItem, KeywordsAPI, KnownForItem, KnownForMovie, KnownForTV, LOGO_SIZES, Language, LanguageISO6391, ListClearParams, ListCreateBody, ListCreateParams, ListCreateResponse, ListDetails, ListDetailsParams, ListItem, ListItemStatusParams, ListItemStatusResponse, ListMovieBody, ListMutationParams, ListMutationResponse, ListsAPI, LiteralUnion, LogoSize, MediaType, MediaWatchProviders, MovieAlternativeTitles, MovieAlternativeTitlesParams, MovieAppendToResponseNamespace, MovieAppendableMap, MovieChanges, MovieChangesParams, MovieCollection, MovieCredits, MovieCreditsParams, MovieDetails, MovieDetailsParams, MovieDetailsWithAppends, MovieExternalIDs, MovieExternalIDsParams, MovieImages, MovieImagesParams, MovieKeywords, MovieKeywordsParams, MovieListParams, MovieListsAPI, MovieRecommendations, MovieRecommendationsParams, MovieReleaseDate, MovieReleaseDateResult, MovieReleaseDates, MovieReleaseDatesParams, MovieResultItem, MovieReviews, MovieReviewsParams, MovieSimilar, MovieSimilarParams, MovieTranslationData, MovieTranslations, MovieTranslationsParams, MovieVideos, MovieVideosParams, MovieWatchProvidersParams, MoviesAPI, MultiSearchResultItem, Network, NetworkBaseParams, NetworkImages, NetworkItem, NetworksAPI, OrganizationImage, POSTER_SIZES, PROFILE_SIZES, PaginatedResponse, PeopleAPI, PeopleListParams, PeopleListsAPI, PersonAppendToResponseNamespace, PersonAppendableMap, PersonBaseParam, PersonChanges, PersonChangesParams, PersonCombinedCastCredit, PersonCombinedCredits, PersonCombinedCrewCredit, PersonCreditsParams, PersonDetails, PersonDetailsParams, PersonDetailsWithAppends, PersonExternalIDs, PersonExternalIDsParams, PersonImages, PersonImagesParams, PersonMovieCastCredit, PersonMovieCredits, PersonMovieCrewCredit, PersonResultItem, PersonTVCastCredit, PersonTVCredits, PersonTVCrewCredit, PersonTaggedImage, PersonTaggedImageMedia, PersonTaggedImages, PersonTaggedImagesParams, PersonTranslationData, PersonTranslations, PersonTranslationsParams, PosterSize, Prettify, PrimaryTranslations, ProductionCompany, ProductionCountry, ProfileSize, RequestInterceptor, RequestInterceptorContext, ResponseErrorInterceptor, ResponseSuccessInterceptor, Review, ReviewAuthorDetails, ReviewDetails, ReviewDetailsParams, ReviewsAPI, STILL_SIZES, SearchAPI, SearchCollectionsParams, SearchCompanyParams, SearchKeywordsParams, SearchMoviesParams, SearchMultiParams, SearchPersonParams, SearchTVSeriesParams, SpokenLanguage, StillSize, TMDB, TMDBCountries, TMDBError, TMDBLogger, TMDBLoggerEntry, TMDBLoggerFn, TMDBOptions, TMDBQueryParams, TMDBv4, TVAggregateCredits, TVAggregateCreditsCastItem, TVAggregateCreditsCrewItem, TVAggregateCreditsParams, TVAlternativeTitles, TVAppendToResponseNamespace, TVAppendableMap, TVBaseParam, TVChangeParams, TVContentRatings, TVCreditJob, TVCreditRole, TVCredits, TVCreditsParams, TVDetailsParams, TVDetailsWithAppends, TVEpisode, TVEpisodeAppendToResponseNamespace, TVEpisodeAppendableMap, TVEpisodeBaseParams, TVEpisodeCredits, TVEpisodeCreditsParams, TVEpisodeDetailsParams, TVEpisodeDetailsWithAppends, TVEpisodeExternalIDs, TVEpisodeGroupDetails, TVEpisodeGroupDetailsItem, TVEpisodeGroupEpisode, TVEpisodeGroupItem, TVEpisodeGroupParams, TVEpisodeGroupType, TVEpisodeGroups, TVEpisodeGroupsAPI, TVEpisodeId, TVEpisodeImages, TVEpisodeImagesParams, TVEpisodeItem, TVEpisodeTranslationData, TVEpisodeTranslations, TVEpisodeVideos, TVEpisodesAPI, TVExternalIDs, TVImageItem, TVImages, TVImagesParams, TVKeywords, TVRecommendations, TVRecommendationsParams, TVReviews, TVReviewsParams, TVScreenedTheatrically, TVScreeningItem, TVSeason, TVSeasonAggregateCredits, TVSeasonAggregateCreditsParams, TVSeasonAppendToResponseNamespace, TVSeasonAppendableMap, TVSeasonBaseParams, TVSeasonChanges, TVSeasonChangesParams, TVSeasonCredits, TVSeasonCreditsParams, TVSeasonDetailsParams, TVSeasonDetailsWithAppends, TVSeasonEpisode, TVSeasonExternalIDs, TVSeasonId, TVSeasonImages, TVSeasonImagesParams, TVSeasonItem, TVSeasonTranslationData, TVSeasonTranslations, TVSeasonVideos, TVSeasonVideosParams, TVSeasonWatchProvidersParams, TVSeasonsAPI, TVSeriesAPI, TVSeriesChanges, TVSeriesDetails, TVSeriesListItem, TVSeriesListParams, TVSeriesLists, TVSeriesListsAPI, TVSeriesListsParams, TVSeriesResultItem, TVSimilar, TVSimilarParams, TVTranslationData, TVTranslations, TVVideos, Timezone, Translation, TranslationResults, TrendingAPI, TrendingAllResult, TrendingMovieResult, TrendingParams, TrendingPersonResult, TrendingTVResult, TrendingTimeWindow, V4AccountAPI, V4AddListItemsBody, V4AddListItemsResponse, V4AuthAPI, V4AuthAccessTokenResponse, V4AuthCreateAccessTokenBody, V4AuthCreateRequestTokenBody, V4AuthDeleteAccessTokenBody, V4AuthDeleteAccessTokenResponse, V4AuthRequestTokenResponse, V4CreateListBody, V4CreateListResponse, V4DeleteListParams, V4ListDetails, V4ListDetailsParams, V4ListItemInput, V4ListItemResult, V4ListItemStatusParams, V4ListItemStatusResponse, V4ListMediaType, V4ListResult, V4ListStatusResponse, V4ListsAPI, V4RemoveListItemsBody, V4UpdateListBody, V4UpdateListItemsBody, V4UpdateListItemsResponse, VideoItem, VideoResults, WatchMonetizationType, WatchProvider, WatchProviderDisplayPriorities, WatchProviderItem, WatchProviderListItem, WatchProviderListParams, WatchProviderListResponse, WatchProviderRegionsParams, WatchProviderRegionsResponse, WatchProvidersAPI, WithLanguage, WithLanguagePage, WithPage, WithPageAndDateRange, WithParams, WithRegion, hasBackdropPath, hasLogoPath, hasPosterPath, hasProfilePath, hasStillPath, isJwt, isKnownForMovie, isKnownForTV, isPlainObject, isRecord };
|