@brigadasos/nadeshiko-sdk 1.4.0-dev.6f733b8 → 1.4.0-dev.7a7fd76

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.
@@ -221,13 +221,13 @@ export type SearchHealthCheckResponse = {
221
221
  cursor?: Array<number>;
222
222
  };
223
223
  /**
224
- * Error Response schema for all cases
224
+ * Unauthorized error response
225
225
  */
226
- export type Error = {
226
+ export type Error401 = {
227
227
  /**
228
228
  * Specific error code for programmatic handling
229
229
  */
230
- code: string;
230
+ code: 'AUTH_CREDENTIALS_REQUIRED' | 'AUTH_CREDENTIALS_INVALID' | 'AUTH_CREDENTIALS_EXPIRED' | 'EMAIL_NOT_VERIFIED';
231
231
  /**
232
232
  * A short, human-readable summary of the problem
233
233
  */
@@ -247,7 +247,112 @@ export type Error = {
247
247
  /**
248
248
  * The HTTP status code
249
249
  */
250
- status: number;
250
+ status: 401;
251
+ /**
252
+ * Optional map of field names to their error messages (for validation errors)
253
+ */
254
+ errors?: {
255
+ [key: string]: string;
256
+ };
257
+ };
258
+ /**
259
+ * Forbidden error response
260
+ */
261
+ export type Error403 = {
262
+ /**
263
+ * Specific error code for programmatic handling
264
+ */
265
+ code: 'ACCESS_DENIED' | 'INSUFFICIENT_PERMISSIONS';
266
+ /**
267
+ * A short, human-readable summary of the problem
268
+ */
269
+ title: string;
270
+ /**
271
+ * A human-readable explanation specific to this occurrence
272
+ */
273
+ detail: string;
274
+ /**
275
+ * A URI reference that identifies the problem type (e.g., GitHub issues link)
276
+ */
277
+ type?: string;
278
+ /**
279
+ * A URI reference that identifies the specific occurrence (e.g., trace ID)
280
+ */
281
+ instance?: string;
282
+ /**
283
+ * The HTTP status code
284
+ */
285
+ status: 403;
286
+ /**
287
+ * Optional map of field names to their error messages (for validation errors)
288
+ */
289
+ errors?: {
290
+ [key: string]: string;
291
+ };
292
+ };
293
+ /**
294
+ * Too Many Requests error response
295
+ */
296
+ export type Error429 = {
297
+ /**
298
+ * Specific error code for programmatic handling
299
+ */
300
+ code: 'RATE_LIMIT_EXCEEDED' | 'QUOTA_EXCEEDED';
301
+ /**
302
+ * A short, human-readable summary of the problem
303
+ */
304
+ title: string;
305
+ /**
306
+ * A human-readable explanation specific to this occurrence
307
+ */
308
+ detail: string;
309
+ /**
310
+ * A URI reference that identifies the problem type (e.g., GitHub issues link)
311
+ */
312
+ type?: string;
313
+ /**
314
+ * A URI reference that identifies the specific occurrence (e.g., trace ID)
315
+ */
316
+ instance?: string;
317
+ /**
318
+ * The HTTP status code
319
+ */
320
+ status: 429;
321
+ /**
322
+ * Optional map of field names to their error messages (for validation errors)
323
+ */
324
+ errors?: {
325
+ [key: string]: string;
326
+ };
327
+ };
328
+ /**
329
+ * Internal Server Error response
330
+ */
331
+ export type Error500 = {
332
+ /**
333
+ * Specific error code for programmatic handling
334
+ */
335
+ code: 'INTERNAL_SERVER_EXCEPTION';
336
+ /**
337
+ * A short, human-readable summary of the problem
338
+ */
339
+ title: string;
340
+ /**
341
+ * A human-readable explanation specific to this occurrence
342
+ */
343
+ detail: string;
344
+ /**
345
+ * A URI reference that identifies the problem type (e.g., GitHub issues link)
346
+ */
347
+ type?: string;
348
+ /**
349
+ * A URI reference that identifies the specific occurrence (e.g., trace ID)
350
+ */
351
+ instance?: string;
352
+ /**
353
+ * The HTTP status code
354
+ */
355
+ status: 500;
251
356
  /**
252
357
  * Optional map of field names to their error messages (for validation errors)
253
358
  */
@@ -331,6 +436,41 @@ export type SearchResponse = {
331
436
  */
332
437
  cursor?: Array<number>;
333
438
  };
439
+ /**
440
+ * Bad Request error response
441
+ */
442
+ export type Error400 = {
443
+ /**
444
+ * Specific error code for programmatic handling
445
+ */
446
+ code: 'VALIDATION_FAILED' | 'INVALID_JSON' | 'INVALID_REQUEST';
447
+ /**
448
+ * A short, human-readable summary of the problem
449
+ */
450
+ title: string;
451
+ /**
452
+ * A human-readable explanation specific to this occurrence
453
+ */
454
+ detail: string;
455
+ /**
456
+ * A URI reference that identifies the problem type (e.g., GitHub issues link)
457
+ */
458
+ type?: string;
459
+ /**
460
+ * A URI reference that identifies the specific occurrence (e.g., trace ID)
461
+ */
462
+ instance?: string;
463
+ /**
464
+ * The HTTP status code
465
+ */
466
+ status: 400;
467
+ /**
468
+ * Optional map of field names to their error messages (for validation errors)
469
+ */
470
+ errors?: {
471
+ [key: string]: string;
472
+ };
473
+ };
334
474
  export type SearchStatsRequest = {
335
475
  /**
336
476
  * Text or sentence to search
@@ -470,141 +610,22 @@ export type WordMatch = {
470
610
  export type SearchMultipleResponse = {
471
611
  results?: Array<WordMatch>;
472
612
  };
473
- export type SegmentContextRequest = {
474
- /**
475
- * Media ID
476
- */
477
- mediaId: number;
478
- /**
479
- * Episode number
480
- */
481
- episodeNumber: number;
482
- /**
483
- * Segment position in the episode
484
- */
485
- segmentPosition: number;
486
- /**
487
- * Number of surrounding segments to retrieve
488
- */
489
- limit?: number;
490
- };
491
- export type SegmentContextResponse = {
492
- segments: Array<SearchResult>;
493
- };
494
- /**
495
- * Statistics about media and segments for browse view
496
- */
497
- export type MediaBrowseStats = {
498
- /**
499
- * Number of media entries matching current search/filter
500
- */
501
- filteredMediaCount?: number;
502
- /**
503
- * Number of segments in the filtered media
504
- */
505
- filteredSegmentCount?: number;
506
- /**
507
- * Total number of media entries in the entire database
508
- */
509
- totalMediaCount?: number;
510
- /**
511
- * Total number of segments in the entire database
512
- */
513
- totalSegmentCount?: number;
514
- };
515
613
  /**
516
- * Summary information about a media entry for browse/list views
614
+ * Map of external IDs keyed by source. Only sources with values are included.
517
615
  */
518
- export type MediaSummary = {
519
- /**
520
- * Unique identifier for the media
521
- */
522
- id: number;
523
- /**
524
- * AniList database ID for the media
525
- */
526
- anilistId?: number;
527
- /**
528
- * TMDB (The Movie Database) ID for the media
529
- */
530
- tmdbId?: number;
531
- category?: Category;
616
+ export type ExternalId = {
532
617
  /**
533
- * Timestamp when the media entry was created in the database
534
- */
535
- createdAt?: string;
536
- /**
537
- * Timestamp when the media entry was last updated
538
- */
539
- updatedAt?: number;
540
- /**
541
- * Romaji transliteration of the media name
542
- */
543
- nameRomaji?: string;
544
- /**
545
- * English name of the media
546
- */
547
- nameEn?: string;
548
- /**
549
- * Original Japanese name of the media
550
- */
551
- nameJa?: string;
552
- /**
553
- * Format of the media release (e.g., TV, OVA, Movie)
554
- */
555
- airingFormat?: string;
556
- /**
557
- * Current airing status (FINISHED, RELEASING)
558
- */
559
- airingStatus?: string;
560
- /**
561
- * Start date of the media (YYYY-MM-DD)
562
- */
563
- startDate?: string;
564
- /**
565
- * End date of the media (null if unknown) (YYYY-MM-DD)
566
- */
567
- endDate?: string;
568
- /**
569
- * Folder name used for storing media files
570
- */
571
- folderMediaName?: string;
572
- /**
573
- * List of genres associated with the media
574
- */
575
- genres?: Array<string>;
576
- /**
577
- * URL to the cover image
578
- */
579
- coverUrl?: string;
580
- /**
581
- * URL to the banner image
582
- */
583
- bannerUrl?: string;
584
- /**
585
- * Version identifier for the media entry
586
- */
587
- version?: string;
588
- /**
589
- * Total number of subtitle segments available
590
- */
591
- segmentCount?: number;
592
- /**
593
- * Total number of episodes available
618
+ * AniList ID
594
619
  */
595
- episodeCount?: number;
596
- };
597
- export type MediaBrowseResponse = {
598
- stats?: MediaBrowseStats;
599
- results?: Array<MediaSummary>;
620
+ anilist?: string;
600
621
  /**
601
- * Next cursor for pagination
622
+ * IMDB ID
602
623
  */
603
- cursor?: number;
624
+ imdb?: string;
604
625
  /**
605
- * Whether more results are available
626
+ * TVDB ID
606
627
  */
607
- hasMore?: boolean;
628
+ tvdb?: string;
608
629
  };
609
630
  /**
610
631
  * Japanese voice actor (seiyuu)
@@ -692,10 +713,7 @@ export type Media = {
692
713
  * Unique identifier for the media
693
714
  */
694
715
  id: number;
695
- /**
696
- * AniList database ID for the media
697
- */
698
- anilistId: number;
716
+ externalIds?: ExternalId;
699
717
  /**
700
718
  * Original Japanese name of the media
701
719
  */
@@ -851,10 +869,7 @@ export type ListInput = {
851
869
  * Request body for creating a new media entry
852
870
  */
853
871
  export type MediaCreateRequest = {
854
- /**
855
- * AniList database ID for the media
856
- */
857
- anilistId: number;
872
+ externalIds?: ExternalId;
858
873
  /**
859
874
  * Original Japanese name of the media
860
875
  */
@@ -925,13 +940,80 @@ export type MediaCreateRequest = {
925
940
  lists?: Array<ListInput>;
926
941
  };
927
942
  /**
928
- * Request body for updating an existing media entry (all fields optional)
943
+ * Conflict error response
929
944
  */
930
- export type MediaUpdateRequest = {
945
+ export type Error409 = {
946
+ /**
947
+ * Specific error code for programmatic handling
948
+ */
949
+ code: 'ACCOUNT_CONFLICT' | 'DUPLICATE_KEY';
950
+ /**
951
+ * A short, human-readable summary of the problem
952
+ */
953
+ title: string;
954
+ /**
955
+ * A human-readable explanation specific to this occurrence
956
+ */
957
+ detail: string;
958
+ /**
959
+ * A URI reference that identifies the problem type (e.g., GitHub issues link)
960
+ */
961
+ type?: string;
962
+ /**
963
+ * A URI reference that identifies the specific occurrence (e.g., trace ID)
964
+ */
965
+ instance?: string;
966
+ /**
967
+ * The HTTP status code
968
+ */
969
+ status: 409;
970
+ /**
971
+ * Optional map of field names to their error messages (for validation errors)
972
+ */
973
+ errors?: {
974
+ [key: string]: string;
975
+ };
976
+ };
977
+ /**
978
+ * Not Found error response
979
+ */
980
+ export type Error404 = {
981
+ /**
982
+ * Specific error code for programmatic handling
983
+ */
984
+ code: 'NOT_FOUND';
985
+ /**
986
+ * A short, human-readable summary of the problem
987
+ */
988
+ title: string;
989
+ /**
990
+ * A human-readable explanation specific to this occurrence
991
+ */
992
+ detail: string;
931
993
  /**
932
- * AniList database ID for the media
994
+ * A URI reference that identifies the problem type (e.g., GitHub issues link)
995
+ */
996
+ type?: string;
997
+ /**
998
+ * A URI reference that identifies the specific occurrence (e.g., trace ID)
999
+ */
1000
+ instance?: string;
1001
+ /**
1002
+ * The HTTP status code
933
1003
  */
934
- anilistId?: number;
1004
+ status: 404;
1005
+ /**
1006
+ * Optional map of field names to their error messages (for validation errors)
1007
+ */
1008
+ errors?: {
1009
+ [key: string]: string;
1010
+ };
1011
+ };
1012
+ /**
1013
+ * Request body for updating an existing media entry (all fields optional)
1014
+ */
1015
+ export type MediaUpdateRequest = {
1016
+ externalIds?: ExternalId;
935
1017
  /**
936
1018
  * Original Japanese name of the media
937
1019
  */
@@ -1014,10 +1096,6 @@ export type Episode = {
1014
1096
  * Episode number within the media
1015
1097
  */
1016
1098
  episodeNumber: number;
1017
- /**
1018
- * AniList episode ID for external reference
1019
- */
1020
- anilistEpisodeId?: number;
1021
1099
  /**
1022
1100
  * English title of the episode
1023
1101
  */
@@ -1066,10 +1144,6 @@ export type EpisodeListResponse = {
1066
1144
  hasMore: boolean;
1067
1145
  };
1068
1146
  export type EpisodeCreateRequest = {
1069
- /**
1070
- * AniList episode ID for external reference
1071
- */
1072
- anilistEpisodeId?: number;
1073
1147
  /**
1074
1148
  * English title of the episode
1075
1149
  */
@@ -1107,10 +1181,6 @@ export type EpisodeCreateRequest = {
1107
1181
  * All fields are optional for partial updates
1108
1182
  */
1109
1183
  export type EpisodeUpdateRequest = {
1110
- /**
1111
- * AniList episode ID for external reference
1112
- */
1113
- anilistEpisodeId?: number;
1114
1184
  /**
1115
1185
  * English title of the episode
1116
1186
  */
@@ -1360,6 +1430,9 @@ export type SegmentUpdateRequest = {
1360
1430
  */
1361
1431
  hashedId?: string;
1362
1432
  };
1433
+ export type SegmentContextResponse = {
1434
+ segments: Array<SearchResult>;
1435
+ };
1363
1436
  /**
1364
1437
  * Character with all media appearances
1365
1438
  */
@@ -1456,41 +1529,55 @@ export type Report = {
1456
1529
  */
1457
1530
  id: number;
1458
1531
  /**
1459
- * Type of the reported entity
1532
+ * Who created this report
1533
+ */
1534
+ source: 'USER' | 'AUTO';
1535
+ /**
1536
+ * What level the report targets
1460
1537
  */
1461
- reportType: 'SEGMENT' | 'MEDIA';
1538
+ targetType: 'SEGMENT' | 'EPISODE' | 'MEDIA';
1462
1539
  /**
1463
- * ID of the reported entity (segment UUID or media ID)
1540
+ * Media ID this report targets
1464
1541
  */
1465
- targetId: string;
1542
+ targetMediaId: number;
1543
+ /**
1544
+ * Episode number (for EPISODE/SEGMENT targets)
1545
+ */
1546
+ targetEpisodeNumber?: number;
1547
+ /**
1548
+ * Segment UUID (for SEGMENT targets)
1549
+ */
1550
+ targetSegmentUuid?: string;
1551
+ /**
1552
+ * ID of the auto-check run that created this report (AUTO only)
1553
+ */
1554
+ reviewCheckRunId?: number;
1466
1555
  /**
1467
1556
  * Reason for the report
1468
1557
  */
1469
- reason: 'WRONG_TRANSLATION' | 'WRONG_TIMING' | 'WRONG_AUDIO' | 'NSFW_NOT_TAGGED' | 'DUPLICATE_SEGMENT' | 'WRONG_METADATA' | 'MISSING_EPISODES' | 'WRONG_COVER_IMAGE' | 'INAPPROPRIATE_CONTENT' | 'OTHER';
1558
+ reason: 'WRONG_TRANSLATION' | 'WRONG_TIMING' | 'WRONG_AUDIO' | 'NSFW_NOT_TAGGED' | 'DUPLICATE_SEGMENT' | 'WRONG_METADATA' | 'MISSING_EPISODES' | 'WRONG_COVER_IMAGE' | 'INAPPROPRIATE_CONTENT' | 'OTHER' | 'LOW_SEGMENT_MEDIA' | 'EMPTY_EPISODES' | 'MISSING_EPISODES_AUTO' | 'BAD_SEGMENT_RATIO' | 'MEDIA_WITH_NO_EPISODES' | 'MISSING_TRANSLATIONS' | 'DB_ES_SYNC_ISSUES' | 'HIGH_REPORT_DENSITY';
1470
1559
  /**
1471
1560
  * Optional description with additional details
1472
1561
  */
1473
1562
  description?: string;
1563
+ /**
1564
+ * Check-specific metrics (AUTO reports) or null (USER reports)
1565
+ */
1566
+ data?: {
1567
+ [key: string]: unknown;
1568
+ };
1474
1569
  /**
1475
1570
  * Current status of the report
1476
1571
  */
1477
- status: 'PENDING' | 'ACCEPTED' | 'REJECTED' | 'RESOLVED';
1572
+ status: 'PENDING' | 'CONCERN' | 'ACCEPTED' | 'REJECTED' | 'RESOLVED' | 'IGNORED';
1478
1573
  /**
1479
1574
  * Notes from the admin who reviewed the report
1480
1575
  */
1481
1576
  adminNotes?: string;
1482
1577
  /**
1483
- * When the report was resolved
1484
- */
1485
- resolvedAt?: string;
1486
- /**
1487
- * ID of the user who submitted the report
1578
+ * ID of the user who submitted the report (USER reports only)
1488
1579
  */
1489
- userId: number;
1490
- /**
1491
- * ID of the admin who resolved the report
1492
- */
1493
- resolvedById?: number;
1580
+ userId?: number;
1494
1581
  /**
1495
1582
  * When the report was created
1496
1583
  */
@@ -1515,11 +1602,15 @@ export type CreateReportRequest = {
1515
1602
  /**
1516
1603
  * Type of the entity being reported
1517
1604
  */
1518
- reportType: 'SEGMENT' | 'MEDIA';
1605
+ targetType: 'SEGMENT' | 'MEDIA';
1519
1606
  /**
1520
- * ID of the entity being reported (segment UUID or media ID as string)
1607
+ * Media ID of the reported entity
1521
1608
  */
1522
- targetId: string;
1609
+ targetMediaId: number;
1610
+ /**
1611
+ * Segment UUID (required when targetType is SEGMENT)
1612
+ */
1613
+ targetSegmentUuid?: string;
1523
1614
  /**
1524
1615
  * Reason for the report
1525
1616
  */
@@ -1529,6 +1620,54 @@ export type CreateReportRequest = {
1529
1620
  */
1530
1621
  description?: string;
1531
1622
  };
1623
+ export type UserPreferences = {
1624
+ /**
1625
+ * Lab feature opt-in flags keyed by feature key
1626
+ */
1627
+ labs?: {
1628
+ [key: string]: boolean;
1629
+ };
1630
+ /**
1631
+ * Preferred language for media names display
1632
+ */
1633
+ mediaNameLanguage?: 'english' | 'japanese' | 'romaji';
1634
+ searchHistory?: {
1635
+ /**
1636
+ * Whether activity tracking is enabled (default true)
1637
+ */
1638
+ enabled?: boolean;
1639
+ };
1640
+ };
1641
+ /**
1642
+ * Type of user activity
1643
+ */
1644
+ export type ActivityType = 'SEARCH' | 'ANKI_EXPORT' | 'SEGMENT_PLAY' | 'LIST_ADD_SEGMENT';
1645
+ export type UserActivity = {
1646
+ id: number;
1647
+ activityType: ActivityType;
1648
+ segmentUuid?: string;
1649
+ mediaId?: number;
1650
+ searchQuery?: string;
1651
+ createdAt: string;
1652
+ };
1653
+ export type LabFeature = {
1654
+ /**
1655
+ * Unique identifier for the lab feature
1656
+ */
1657
+ key: string;
1658
+ /**
1659
+ * Human-readable feature name
1660
+ */
1661
+ name: string;
1662
+ /**
1663
+ * Description of what the feature does
1664
+ */
1665
+ description: string;
1666
+ /**
1667
+ * Whether the feature is globally available
1668
+ */
1669
+ enabled: boolean;
1670
+ };
1532
1671
  /**
1533
1672
  * Request body for creating a new standalone list
1534
1673
  */
@@ -1700,32 +1839,167 @@ export type AdminReport = Report & {
1700
1839
  /**
1701
1840
  * Number of reports for the same target
1702
1841
  */
1703
- reportCount: number;
1842
+ reportCount: number;
1843
+ /**
1844
+ * Name of the user who submitted this report
1845
+ */
1846
+ reporterName: string;
1847
+ };
1848
+ export type AdminReportListResponse = {
1849
+ data: Array<AdminReport>;
1850
+ /**
1851
+ * Whether more results are available
1852
+ */
1853
+ hasMore: boolean;
1854
+ /**
1855
+ * Cursor for next page
1856
+ */
1857
+ cursor?: number;
1858
+ };
1859
+ export type UpdateReportRequest = {
1860
+ /**
1861
+ * New status for the report
1862
+ */
1863
+ status?: 'PENDING' | 'CONCERN' | 'ACCEPTED' | 'REJECTED' | 'RESOLVED' | 'IGNORED';
1864
+ /**
1865
+ * Admin notes about the report
1866
+ */
1867
+ adminNotes?: string;
1868
+ };
1869
+ export type RunReviewResponse = {
1870
+ /**
1871
+ * Category filter used
1872
+ */
1873
+ category: string;
1874
+ checksRun: Array<{
1875
+ /**
1876
+ * Check identifier
1877
+ */
1878
+ checkName: string;
1879
+ /**
1880
+ * Human-readable check name
1881
+ */
1882
+ label: string;
1883
+ /**
1884
+ * Number of reports created
1885
+ */
1886
+ resultCount: number;
1887
+ /**
1888
+ * ID of the created run record
1889
+ */
1890
+ runId: number;
1891
+ }>;
1892
+ /**
1893
+ * Total reports created across all checks
1894
+ */
1895
+ totalReports: number;
1896
+ };
1897
+ export type ReviewCheck = {
1898
+ /**
1899
+ * Check ID
1900
+ */
1901
+ id: number;
1902
+ /**
1903
+ * Unique check identifier
1904
+ */
1905
+ name: string;
1906
+ /**
1907
+ * Human-readable label
1908
+ */
1909
+ label: string;
1910
+ /**
1911
+ * What this check does
1912
+ */
1913
+ description: string;
1914
+ /**
1915
+ * What level this check operates on
1916
+ */
1917
+ targetType: 'MEDIA' | 'EPISODE';
1918
+ /**
1919
+ * Current threshold configuration
1920
+ */
1921
+ threshold: {
1922
+ [key: string]: unknown;
1923
+ };
1924
+ /**
1925
+ * Whether this check is active
1926
+ */
1927
+ enabled: boolean;
1928
+ /**
1929
+ * Schema for threshold fields (from registry)
1930
+ */
1931
+ thresholdSchema?: Array<{
1932
+ key?: string;
1933
+ label?: string;
1934
+ type?: 'number' | 'boolean';
1935
+ default?: number | boolean;
1936
+ min?: number;
1937
+ max?: number;
1938
+ }>;
1939
+ /**
1940
+ * Latest run info for this check
1941
+ */
1942
+ latestRun?: {
1943
+ id?: number;
1944
+ resultCount?: number;
1945
+ createdAt?: string;
1946
+ };
1947
+ createdAt?: string;
1948
+ updatedAt?: string;
1949
+ };
1950
+ export type ReviewCheckRun = {
1951
+ /**
1952
+ * Run ID
1953
+ */
1954
+ id: number;
1955
+ /**
1956
+ * Name of the check that was run
1957
+ */
1958
+ checkName: string;
1959
+ /**
1960
+ * Category filter used (ANIME/JDRAMA) or null for all
1961
+ */
1962
+ category?: string;
1963
+ /**
1964
+ * Number of reports created in this run
1965
+ */
1966
+ resultCount: number;
1967
+ /**
1968
+ * Snapshot of threshold at run time
1969
+ */
1970
+ thresholdUsed: {
1971
+ [key: string]: unknown;
1972
+ };
1973
+ /**
1974
+ * When this run was executed
1975
+ */
1976
+ createdAt: string;
1977
+ };
1978
+ export type ReviewAllowlist = {
1979
+ /**
1980
+ * Allowlist entry ID
1981
+ */
1982
+ id: number;
1704
1983
  /**
1705
- * Name of the user who submitted this report
1984
+ * Name of the check this entry applies to
1706
1985
  */
1707
- reporterName: string;
1708
- };
1709
- export type AdminReportListResponse = {
1710
- data: Array<AdminReport>;
1986
+ checkName: string;
1711
1987
  /**
1712
- * Whether more results are available
1988
+ * Media ID to exclude
1713
1989
  */
1714
- hasMore: boolean;
1990
+ mediaId: number;
1715
1991
  /**
1716
- * Cursor for next page
1992
+ * Episode number to exclude (null for media-level checks)
1717
1993
  */
1718
- cursor?: number;
1719
- };
1720
- export type UpdateReportRequest = {
1994
+ episodeNumber?: number;
1721
1995
  /**
1722
- * New status for the report
1996
+ * Why this was allowlisted
1723
1997
  */
1724
- status?: 'PENDING' | 'ACCEPTED' | 'REJECTED' | 'RESOLVED';
1998
+ reason?: string;
1725
1999
  /**
1726
- * Admin notes about the report
2000
+ * When this entry was created
1727
2001
  */
1728
- adminNotes?: string;
2002
+ createdAt: string;
1729
2003
  };
1730
2004
  export type HealthCheckData = {
1731
2005
  body?: never;
@@ -1737,19 +2011,19 @@ export type HealthCheckErrors = {
1737
2011
  /**
1738
2012
  * Unauthorized
1739
2013
  */
1740
- 401: Error;
2014
+ 401: Error401;
1741
2015
  /**
1742
2016
  * Forbidden
1743
2017
  */
1744
- 403: Error;
2018
+ 403: Error403;
1745
2019
  /**
1746
2020
  * Too Many Requests
1747
2021
  */
1748
- 429: Error;
2022
+ 429: Error429;
1749
2023
  /**
1750
2024
  * Internal Server Error
1751
2025
  */
1752
- 500: Error;
2026
+ 500: Error500;
1753
2027
  };
1754
2028
  export type HealthCheckError = HealthCheckErrors[keyof HealthCheckErrors];
1755
2029
  export type HealthCheckResponses = {
@@ -1759,78 +2033,78 @@ export type HealthCheckResponses = {
1759
2033
  200: SearchHealthCheckResponse;
1760
2034
  };
1761
2035
  export type HealthCheckResponse = HealthCheckResponses[keyof HealthCheckResponses];
1762
- export type SearchSegmentsData = {
2036
+ export type SearchIndexData = {
1763
2037
  body?: SearchRequest;
1764
2038
  path?: never;
1765
2039
  query?: never;
1766
- url: '/v1/search/segments';
2040
+ url: '/v1/search';
1767
2041
  };
1768
- export type SearchSegmentsErrors = {
2042
+ export type SearchIndexErrors = {
1769
2043
  /**
1770
2044
  * Bad Request
1771
2045
  */
1772
- 400: Error;
2046
+ 400: Error400;
1773
2047
  /**
1774
2048
  * Unauthorized
1775
2049
  */
1776
- 401: Error;
2050
+ 401: Error401;
1777
2051
  /**
1778
2052
  * Forbidden
1779
2053
  */
1780
- 403: Error;
2054
+ 403: Error403;
1781
2055
  /**
1782
2056
  * Too Many Requests
1783
2057
  */
1784
- 429: Error;
2058
+ 429: Error429;
1785
2059
  /**
1786
2060
  * Internal Server Error
1787
2061
  */
1788
- 500: Error;
2062
+ 500: Error500;
1789
2063
  };
1790
- export type SearchSegmentsError = SearchSegmentsErrors[keyof SearchSegmentsErrors];
1791
- export type SearchSegmentsResponses = {
2064
+ export type SearchIndexError = SearchIndexErrors[keyof SearchIndexErrors];
2065
+ export type SearchIndexResponses = {
1792
2066
  /**
1793
2067
  * OK
1794
2068
  */
1795
2069
  200: SearchResponse;
1796
2070
  };
1797
- export type SearchSegmentsResponse = SearchSegmentsResponses[keyof SearchSegmentsResponses];
1798
- export type GetSearchStatsData = {
2071
+ export type SearchIndexResponse = SearchIndexResponses[keyof SearchIndexResponses];
2072
+ export type SearchStatsData = {
1799
2073
  body?: SearchStatsRequest;
1800
2074
  path?: never;
1801
2075
  query?: never;
1802
2076
  url: '/v1/search/stats';
1803
2077
  };
1804
- export type GetSearchStatsErrors = {
2078
+ export type SearchStatsErrors = {
1805
2079
  /**
1806
2080
  * Bad Request
1807
2081
  */
1808
- 400: Error;
2082
+ 400: Error400;
1809
2083
  /**
1810
2084
  * Unauthorized
1811
2085
  */
1812
- 401: Error;
2086
+ 401: Error401;
1813
2087
  /**
1814
2088
  * Forbidden
1815
2089
  */
1816
- 403: Error;
2090
+ 403: Error403;
1817
2091
  /**
1818
2092
  * Too Many Requests
1819
2093
  */
1820
- 429: Error;
2094
+ 429: Error429;
1821
2095
  /**
1822
2096
  * Internal Server Error
1823
2097
  */
1824
- 500: Error;
2098
+ 500: Error500;
1825
2099
  };
1826
- export type GetSearchStatsError = GetSearchStatsErrors[keyof GetSearchStatsErrors];
1827
- export type GetSearchStatsResponses = {
2100
+ export type SearchStatsError = SearchStatsErrors[keyof SearchStatsErrors];
2101
+ export type SearchStatsResponses = {
1828
2102
  /**
1829
2103
  * OK
1830
2104
  */
1831
2105
  200: SearchStatsResponse;
1832
2106
  };
1833
- export type GetSearchStatsResponse = GetSearchStatsResponses[keyof GetSearchStatsResponses];
2107
+ export type SearchStatsResponse2 = SearchStatsResponses[keyof SearchStatsResponses];
1834
2108
  export type SearchWordsData = {
1835
2109
  body: SearchMultipleRequest;
1836
2110
  path?: never;
@@ -1841,23 +2115,23 @@ export type SearchWordsErrors = {
1841
2115
  /**
1842
2116
  * Bad Request
1843
2117
  */
1844
- 400: Error;
2118
+ 400: Error400;
1845
2119
  /**
1846
2120
  * Unauthorized
1847
2121
  */
1848
- 401: Error;
2122
+ 401: Error401;
1849
2123
  /**
1850
2124
  * Forbidden
1851
2125
  */
1852
- 403: Error;
2126
+ 403: Error403;
1853
2127
  /**
1854
2128
  * Too Many Requests
1855
2129
  */
1856
- 429: Error;
2130
+ 429: Error429;
1857
2131
  /**
1858
2132
  * Internal Server Error
1859
2133
  */
1860
- 500: Error;
2134
+ 500: Error500;
1861
2135
  };
1862
2136
  export type SearchWordsError = SearchWordsErrors[keyof SearchWordsErrors];
1863
2137
  export type SearchWordsResponses = {
@@ -1867,95 +2141,6 @@ export type SearchWordsResponses = {
1867
2141
  200: SearchMultipleResponse;
1868
2142
  };
1869
2143
  export type SearchWordsResponse = SearchWordsResponses[keyof SearchWordsResponses];
1870
- export type GetSegmentContextData = {
1871
- body: SegmentContextRequest;
1872
- path?: never;
1873
- query?: never;
1874
- url: '/v1/search/context';
1875
- };
1876
- export type GetSegmentContextErrors = {
1877
- /**
1878
- * Bad Request
1879
- */
1880
- 400: Error;
1881
- /**
1882
- * Unauthorized
1883
- */
1884
- 401: Error;
1885
- /**
1886
- * Forbidden
1887
- */
1888
- 403: Error;
1889
- /**
1890
- * Not Found
1891
- */
1892
- 404: Error;
1893
- /**
1894
- * Too Many Requests
1895
- */
1896
- 429: Error;
1897
- /**
1898
- * Internal Server Error
1899
- */
1900
- 500: Error;
1901
- };
1902
- export type GetSegmentContextError = GetSegmentContextErrors[keyof GetSegmentContextErrors];
1903
- export type GetSegmentContextResponses = {
1904
- /**
1905
- * OK
1906
- */
1907
- 200: SegmentContextResponse;
1908
- };
1909
- export type GetSegmentContextResponse = GetSegmentContextResponses[keyof GetSegmentContextResponses];
1910
- export type BrowseMediaData = {
1911
- body?: never;
1912
- path?: never;
1913
- query?: {
1914
- /**
1915
- * Number of results per page
1916
- */
1917
- size?: number;
1918
- /**
1919
- * Pagination cursor offset
1920
- */
1921
- cursor?: number;
1922
- /**
1923
- * Search query for filtering media
1924
- */
1925
- query?: string;
1926
- /**
1927
- * Filter by media category
1928
- */
1929
- type?: 'anime' | 'liveaction' | 'audiobook';
1930
- };
1931
- url: '/v1/media/browse';
1932
- };
1933
- export type BrowseMediaErrors = {
1934
- /**
1935
- * Unauthorized
1936
- */
1937
- 401: Error;
1938
- /**
1939
- * Forbidden
1940
- */
1941
- 403: Error;
1942
- /**
1943
- * Too Many Requests
1944
- */
1945
- 429: Error;
1946
- /**
1947
- * Internal Server Error
1948
- */
1949
- 500: Error;
1950
- };
1951
- export type BrowseMediaError = BrowseMediaErrors[keyof BrowseMediaErrors];
1952
- export type BrowseMediaResponses = {
1953
- /**
1954
- * OK
1955
- */
1956
- 200: MediaBrowseResponse;
1957
- };
1958
- export type BrowseMediaResponse = BrowseMediaResponses[keyof BrowseMediaResponses];
1959
2144
  export type MediaIndexData = {
1960
2145
  body?: never;
1961
2146
  path?: never;
@@ -1972,6 +2157,10 @@ export type MediaIndexData = {
1972
2157
  * Filter by media category
1973
2158
  */
1974
2159
  category?: 'ANIME' | 'JDRAMA';
2160
+ /**
2161
+ * Search query for filtering media by name
2162
+ */
2163
+ query?: string;
1975
2164
  };
1976
2165
  url: '/v1/media';
1977
2166
  };
@@ -1979,23 +2168,23 @@ export type MediaIndexErrors = {
1979
2168
  /**
1980
2169
  * Bad Request
1981
2170
  */
1982
- 400: Error;
2171
+ 400: Error400;
1983
2172
  /**
1984
2173
  * Unauthorized
1985
2174
  */
1986
- 401: Error;
2175
+ 401: Error401;
1987
2176
  /**
1988
2177
  * Forbidden
1989
2178
  */
1990
- 403: Error;
2179
+ 403: Error403;
1991
2180
  /**
1992
2181
  * Too Many Requests
1993
2182
  */
1994
- 429: Error;
2183
+ 429: Error429;
1995
2184
  /**
1996
2185
  * Internal Server Error
1997
2186
  */
1998
- 500: Error;
2187
+ 500: Error500;
1999
2188
  };
2000
2189
  export type MediaIndexError = MediaIndexErrors[keyof MediaIndexErrors];
2001
2190
  export type MediaIndexResponses = {
@@ -2015,27 +2204,27 @@ export type MediaCreateErrors = {
2015
2204
  /**
2016
2205
  * Bad Request
2017
2206
  */
2018
- 400: Error;
2207
+ 400: Error400;
2019
2208
  /**
2020
2209
  * Unauthorized
2021
2210
  */
2022
- 401: Error;
2211
+ 401: Error401;
2023
2212
  /**
2024
2213
  * Forbidden
2025
2214
  */
2026
- 403: Error;
2215
+ 403: Error403;
2027
2216
  /**
2028
2217
  * Conflict
2029
2218
  */
2030
- 409: Error;
2219
+ 409: Error409;
2031
2220
  /**
2032
2221
  * Too Many Requests
2033
2222
  */
2034
- 429: Error;
2223
+ 429: Error429;
2035
2224
  /**
2036
2225
  * Internal Server Error
2037
2226
  */
2038
- 500: Error;
2227
+ 500: Error500;
2039
2228
  };
2040
2229
  export type MediaCreateError = MediaCreateErrors[keyof MediaCreateErrors];
2041
2230
  export type MediaCreateResponses = {
@@ -2060,27 +2249,27 @@ export type MediaDestroyErrors = {
2060
2249
  /**
2061
2250
  * Bad Request
2062
2251
  */
2063
- 400: Error;
2252
+ 400: Error400;
2064
2253
  /**
2065
2254
  * Unauthorized
2066
2255
  */
2067
- 401: Error;
2256
+ 401: Error401;
2068
2257
  /**
2069
2258
  * Forbidden
2070
2259
  */
2071
- 403: Error;
2260
+ 403: Error403;
2072
2261
  /**
2073
2262
  * Not Found
2074
2263
  */
2075
- 404: Error;
2264
+ 404: Error404;
2076
2265
  /**
2077
2266
  * Too Many Requests
2078
2267
  */
2079
- 429: Error;
2268
+ 429: Error429;
2080
2269
  /**
2081
2270
  * Internal Server Error
2082
2271
  */
2083
- 500: Error;
2272
+ 500: Error500;
2084
2273
  };
2085
2274
  export type MediaDestroyError = MediaDestroyErrors[keyof MediaDestroyErrors];
2086
2275
  export type MediaDestroyResponses = {
@@ -2108,27 +2297,27 @@ export type MediaShowErrors = {
2108
2297
  /**
2109
2298
  * Bad Request
2110
2299
  */
2111
- 400: Error;
2300
+ 400: Error400;
2112
2301
  /**
2113
2302
  * Unauthorized
2114
2303
  */
2115
- 401: Error;
2304
+ 401: Error401;
2116
2305
  /**
2117
2306
  * Forbidden
2118
2307
  */
2119
- 403: Error;
2308
+ 403: Error403;
2120
2309
  /**
2121
2310
  * Not Found
2122
2311
  */
2123
- 404: Error;
2312
+ 404: Error404;
2124
2313
  /**
2125
2314
  * Too Many Requests
2126
2315
  */
2127
- 429: Error;
2316
+ 429: Error429;
2128
2317
  /**
2129
2318
  * Internal Server Error
2130
2319
  */
2131
- 500: Error;
2320
+ 500: Error500;
2132
2321
  };
2133
2322
  export type MediaShowError = MediaShowErrors[keyof MediaShowErrors];
2134
2323
  export type MediaShowResponses = {
@@ -2153,27 +2342,27 @@ export type MediaUpdateErrors = {
2153
2342
  /**
2154
2343
  * Bad Request
2155
2344
  */
2156
- 400: Error;
2345
+ 400: Error400;
2157
2346
  /**
2158
2347
  * Unauthorized
2159
2348
  */
2160
- 401: Error;
2349
+ 401: Error401;
2161
2350
  /**
2162
2351
  * Forbidden
2163
2352
  */
2164
- 403: Error;
2353
+ 403: Error403;
2165
2354
  /**
2166
2355
  * Not Found
2167
2356
  */
2168
- 404: Error;
2357
+ 404: Error404;
2169
2358
  /**
2170
2359
  * Too Many Requests
2171
2360
  */
2172
- 429: Error;
2361
+ 429: Error429;
2173
2362
  /**
2174
2363
  * Internal Server Error
2175
2364
  */
2176
- 500: Error;
2365
+ 500: Error500;
2177
2366
  };
2178
2367
  export type MediaUpdateError = MediaUpdateErrors[keyof MediaUpdateErrors];
2179
2368
  export type MediaUpdateResponses = {
@@ -2207,27 +2396,27 @@ export type EpisodeIndexErrors = {
2207
2396
  /**
2208
2397
  * Bad Request
2209
2398
  */
2210
- 400: Error;
2399
+ 400: Error400;
2211
2400
  /**
2212
2401
  * Unauthorized
2213
2402
  */
2214
- 401: Error;
2403
+ 401: Error401;
2215
2404
  /**
2216
2405
  * Forbidden
2217
2406
  */
2218
- 403: Error;
2407
+ 403: Error403;
2219
2408
  /**
2220
2409
  * Not Found
2221
2410
  */
2222
- 404: Error;
2411
+ 404: Error404;
2223
2412
  /**
2224
2413
  * Too Many Requests
2225
2414
  */
2226
- 429: Error;
2415
+ 429: Error429;
2227
2416
  /**
2228
2417
  * Internal Server Error
2229
2418
  */
2230
- 500: Error;
2419
+ 500: Error500;
2231
2420
  };
2232
2421
  export type EpisodeIndexError = EpisodeIndexErrors[keyof EpisodeIndexErrors];
2233
2422
  export type EpisodeIndexResponses = {
@@ -2252,31 +2441,31 @@ export type EpisodeCreateErrors = {
2252
2441
  /**
2253
2442
  * Bad Request
2254
2443
  */
2255
- 400: Error;
2444
+ 400: Error400;
2256
2445
  /**
2257
2446
  * Unauthorized
2258
2447
  */
2259
- 401: Error;
2448
+ 401: Error401;
2260
2449
  /**
2261
2450
  * Forbidden
2262
2451
  */
2263
- 403: Error;
2452
+ 403: Error403;
2264
2453
  /**
2265
2454
  * Not Found
2266
2455
  */
2267
- 404: Error;
2456
+ 404: Error404;
2268
2457
  /**
2269
2458
  * Conflict
2270
2459
  */
2271
- 409: Error;
2460
+ 409: Error409;
2272
2461
  /**
2273
2462
  * Too Many Requests
2274
2463
  */
2275
- 429: Error;
2464
+ 429: Error429;
2276
2465
  /**
2277
2466
  * Internal Server Error
2278
2467
  */
2279
- 500: Error;
2468
+ 500: Error500;
2280
2469
  };
2281
2470
  export type EpisodeCreateError = EpisodeCreateErrors[keyof EpisodeCreateErrors];
2282
2471
  export type EpisodeCreateResponses = {
@@ -2305,27 +2494,27 @@ export type EpisodeDestroyErrors = {
2305
2494
  /**
2306
2495
  * Bad Request
2307
2496
  */
2308
- 400: Error;
2497
+ 400: Error400;
2309
2498
  /**
2310
2499
  * Unauthorized
2311
2500
  */
2312
- 401: Error;
2501
+ 401: Error401;
2313
2502
  /**
2314
2503
  * Forbidden
2315
2504
  */
2316
- 403: Error;
2505
+ 403: Error403;
2317
2506
  /**
2318
2507
  * Not Found
2319
2508
  */
2320
- 404: Error;
2509
+ 404: Error404;
2321
2510
  /**
2322
2511
  * Too Many Requests
2323
2512
  */
2324
- 429: Error;
2513
+ 429: Error429;
2325
2514
  /**
2326
2515
  * Internal Server Error
2327
2516
  */
2328
- 500: Error;
2517
+ 500: Error500;
2329
2518
  };
2330
2519
  export type EpisodeDestroyError = EpisodeDestroyErrors[keyof EpisodeDestroyErrors];
2331
2520
  export type EpisodeDestroyResponses = {
@@ -2354,27 +2543,27 @@ export type EpisodeShowErrors = {
2354
2543
  /**
2355
2544
  * Bad Request
2356
2545
  */
2357
- 400: Error;
2546
+ 400: Error400;
2358
2547
  /**
2359
2548
  * Unauthorized
2360
2549
  */
2361
- 401: Error;
2550
+ 401: Error401;
2362
2551
  /**
2363
2552
  * Forbidden
2364
2553
  */
2365
- 403: Error;
2554
+ 403: Error403;
2366
2555
  /**
2367
2556
  * Not Found
2368
2557
  */
2369
- 404: Error;
2558
+ 404: Error404;
2370
2559
  /**
2371
2560
  * Too Many Requests
2372
2561
  */
2373
- 429: Error;
2562
+ 429: Error429;
2374
2563
  /**
2375
2564
  * Internal Server Error
2376
2565
  */
2377
- 500: Error;
2566
+ 500: Error500;
2378
2567
  };
2379
2568
  export type EpisodeShowError = EpisodeShowErrors[keyof EpisodeShowErrors];
2380
2569
  export type EpisodeShowResponses = {
@@ -2403,27 +2592,27 @@ export type EpisodeUpdateErrors = {
2403
2592
  /**
2404
2593
  * Bad Request
2405
2594
  */
2406
- 400: Error;
2595
+ 400: Error400;
2407
2596
  /**
2408
2597
  * Unauthorized
2409
2598
  */
2410
- 401: Error;
2599
+ 401: Error401;
2411
2600
  /**
2412
2601
  * Forbidden
2413
2602
  */
2414
- 403: Error;
2603
+ 403: Error403;
2415
2604
  /**
2416
2605
  * Not Found
2417
2606
  */
2418
- 404: Error;
2607
+ 404: Error404;
2419
2608
  /**
2420
2609
  * Too Many Requests
2421
2610
  */
2422
- 429: Error;
2611
+ 429: Error429;
2423
2612
  /**
2424
2613
  * Internal Server Error
2425
2614
  */
2426
- 500: Error;
2615
+ 500: Error500;
2427
2616
  };
2428
2617
  export type EpisodeUpdateError = EpisodeUpdateErrors[keyof EpisodeUpdateErrors];
2429
2618
  export type EpisodeUpdateResponses = {
@@ -2461,27 +2650,27 @@ export type SegmentIndexErrors = {
2461
2650
  /**
2462
2651
  * Bad Request
2463
2652
  */
2464
- 400: Error;
2653
+ 400: Error400;
2465
2654
  /**
2466
2655
  * Unauthorized
2467
2656
  */
2468
- 401: Error;
2657
+ 401: Error401;
2469
2658
  /**
2470
2659
  * Forbidden
2471
2660
  */
2472
- 403: Error;
2661
+ 403: Error403;
2473
2662
  /**
2474
2663
  * Not Found
2475
2664
  */
2476
- 404: Error;
2665
+ 404: Error404;
2477
2666
  /**
2478
2667
  * Too Many Requests
2479
2668
  */
2480
- 429: Error;
2669
+ 429: Error429;
2481
2670
  /**
2482
2671
  * Internal Server Error
2483
2672
  */
2484
- 500: Error;
2673
+ 500: Error500;
2485
2674
  };
2486
2675
  export type SegmentIndexError = SegmentIndexErrors[keyof SegmentIndexErrors];
2487
2676
  export type SegmentIndexResponses = {
@@ -2510,31 +2699,31 @@ export type SegmentCreateErrors = {
2510
2699
  /**
2511
2700
  * Bad Request
2512
2701
  */
2513
- 400: Error;
2702
+ 400: Error400;
2514
2703
  /**
2515
2704
  * Unauthorized
2516
2705
  */
2517
- 401: Error;
2706
+ 401: Error401;
2518
2707
  /**
2519
2708
  * Forbidden
2520
2709
  */
2521
- 403: Error;
2710
+ 403: Error403;
2522
2711
  /**
2523
2712
  * Not Found
2524
2713
  */
2525
- 404: Error;
2714
+ 404: Error404;
2526
2715
  /**
2527
2716
  * Conflict
2528
2717
  */
2529
- 409: Error;
2718
+ 409: Error409;
2530
2719
  /**
2531
2720
  * Too Many Requests
2532
2721
  */
2533
- 429: Error;
2722
+ 429: Error429;
2534
2723
  /**
2535
2724
  * Internal Server Error
2536
2725
  */
2537
- 500: Error;
2726
+ 500: Error500;
2538
2727
  };
2539
2728
  export type SegmentCreateError = SegmentCreateErrors[keyof SegmentCreateErrors];
2540
2729
  export type SegmentCreateResponses = {
@@ -2567,27 +2756,27 @@ export type SegmentDestroyErrors = {
2567
2756
  /**
2568
2757
  * Bad Request
2569
2758
  */
2570
- 400: Error;
2759
+ 400: Error400;
2571
2760
  /**
2572
2761
  * Unauthorized
2573
2762
  */
2574
- 401: Error;
2763
+ 401: Error401;
2575
2764
  /**
2576
2765
  * Forbidden
2577
2766
  */
2578
- 403: Error;
2767
+ 403: Error403;
2579
2768
  /**
2580
2769
  * Not Found
2581
2770
  */
2582
- 404: Error;
2771
+ 404: Error404;
2583
2772
  /**
2584
2773
  * Too Many Requests
2585
2774
  */
2586
- 429: Error;
2775
+ 429: Error429;
2587
2776
  /**
2588
2777
  * Internal Server Error
2589
2778
  */
2590
- 500: Error;
2779
+ 500: Error500;
2591
2780
  };
2592
2781
  export type SegmentDestroyError = SegmentDestroyErrors[keyof SegmentDestroyErrors];
2593
2782
  export type SegmentDestroyResponses = {
@@ -2620,27 +2809,27 @@ export type SegmentShowErrors = {
2620
2809
  /**
2621
2810
  * Bad Request
2622
2811
  */
2623
- 400: Error;
2812
+ 400: Error400;
2624
2813
  /**
2625
2814
  * Unauthorized
2626
2815
  */
2627
- 401: Error;
2816
+ 401: Error401;
2628
2817
  /**
2629
2818
  * Forbidden
2630
2819
  */
2631
- 403: Error;
2820
+ 403: Error403;
2632
2821
  /**
2633
2822
  * Not Found
2634
2823
  */
2635
- 404: Error;
2824
+ 404: Error404;
2636
2825
  /**
2637
2826
  * Too Many Requests
2638
2827
  */
2639
- 429: Error;
2828
+ 429: Error429;
2640
2829
  /**
2641
2830
  * Internal Server Error
2642
2831
  */
2643
- 500: Error;
2832
+ 500: Error500;
2644
2833
  };
2645
2834
  export type SegmentShowError = SegmentShowErrors[keyof SegmentShowErrors];
2646
2835
  export type SegmentShowResponses = {
@@ -2673,27 +2862,27 @@ export type SegmentUpdateErrors = {
2673
2862
  /**
2674
2863
  * Bad Request
2675
2864
  */
2676
- 400: Error;
2865
+ 400: Error400;
2677
2866
  /**
2678
2867
  * Unauthorized
2679
2868
  */
2680
- 401: Error;
2869
+ 401: Error401;
2681
2870
  /**
2682
2871
  * Forbidden
2683
2872
  */
2684
- 403: Error;
2873
+ 403: Error403;
2685
2874
  /**
2686
2875
  * Not Found
2687
2876
  */
2688
- 404: Error;
2877
+ 404: Error404;
2689
2878
  /**
2690
2879
  * Too Many Requests
2691
2880
  */
2692
- 429: Error;
2881
+ 429: Error429;
2693
2882
  /**
2694
2883
  * Internal Server Error
2695
2884
  */
2696
- 500: Error;
2885
+ 500: Error500;
2697
2886
  };
2698
2887
  export type SegmentUpdateError = SegmentUpdateErrors[keyof SegmentUpdateErrors];
2699
2888
  export type SegmentUpdateResponses = {
@@ -2718,33 +2907,83 @@ export type SegmentShowByUuidErrors = {
2718
2907
  /**
2719
2908
  * Bad Request
2720
2909
  */
2721
- 400: Error;
2910
+ 400: Error400;
2722
2911
  /**
2723
2912
  * Unauthorized
2724
2913
  */
2725
- 401: Error;
2914
+ 401: Error401;
2726
2915
  /**
2727
2916
  * Forbidden
2728
2917
  */
2729
- 403: Error;
2918
+ 403: Error403;
2730
2919
  /**
2731
2920
  * Not Found
2732
2921
  */
2733
- 404: Error;
2922
+ 404: Error404;
2734
2923
  /**
2735
2924
  * Too Many Requests
2736
2925
  */
2737
- 429: Error;
2926
+ 429: Error429;
2738
2927
  /**
2739
2928
  * Internal Server Error
2740
2929
  */
2741
- 500: Error;
2930
+ 500: Error500;
2742
2931
  };
2743
2932
  export type SegmentShowByUuidError = SegmentShowByUuidErrors[keyof SegmentShowByUuidErrors];
2744
2933
  export type SegmentShowByUuidResponses = {
2745
2934
  200: Segment;
2746
2935
  };
2747
2936
  export type SegmentShowByUuidResponse = SegmentShowByUuidResponses[keyof SegmentShowByUuidResponses];
2937
+ export type SegmentContextShowData = {
2938
+ body?: never;
2939
+ path: {
2940
+ /**
2941
+ * Segment UUID
2942
+ */
2943
+ uuid: string;
2944
+ };
2945
+ query?: {
2946
+ /**
2947
+ * Number of segments to return before and after the target
2948
+ */
2949
+ limit?: number;
2950
+ };
2951
+ url: '/v1/media/segments/{uuid}/context';
2952
+ };
2953
+ export type SegmentContextShowErrors = {
2954
+ /**
2955
+ * Bad Request
2956
+ */
2957
+ 400: Error400;
2958
+ /**
2959
+ * Unauthorized
2960
+ */
2961
+ 401: Error401;
2962
+ /**
2963
+ * Forbidden
2964
+ */
2965
+ 403: Error403;
2966
+ /**
2967
+ * Not Found
2968
+ */
2969
+ 404: Error404;
2970
+ /**
2971
+ * Too Many Requests
2972
+ */
2973
+ 429: Error429;
2974
+ /**
2975
+ * Internal Server Error
2976
+ */
2977
+ 500: Error500;
2978
+ };
2979
+ export type SegmentContextShowError = SegmentContextShowErrors[keyof SegmentContextShowErrors];
2980
+ export type SegmentContextShowResponses = {
2981
+ /**
2982
+ * OK
2983
+ */
2984
+ 200: SegmentContextResponse;
2985
+ };
2986
+ export type SegmentContextShowResponse = SegmentContextShowResponses[keyof SegmentContextShowResponses];
2748
2987
  export type CharacterShowData = {
2749
2988
  body?: never;
2750
2989
  path: {
@@ -2760,27 +2999,27 @@ export type CharacterShowErrors = {
2760
2999
  /**
2761
3000
  * Bad Request
2762
3001
  */
2763
- 400: Error;
3002
+ 400: Error400;
2764
3003
  /**
2765
3004
  * Unauthorized
2766
3005
  */
2767
- 401: Error;
3006
+ 401: Error401;
2768
3007
  /**
2769
3008
  * Forbidden
2770
3009
  */
2771
- 403: Error;
3010
+ 403: Error403;
2772
3011
  /**
2773
3012
  * Not Found
2774
3013
  */
2775
- 404: Error;
3014
+ 404: Error404;
2776
3015
  /**
2777
3016
  * Too Many Requests
2778
3017
  */
2779
- 429: Error;
3018
+ 429: Error429;
2780
3019
  /**
2781
3020
  * Internal Server Error
2782
3021
  */
2783
- 500: Error;
3022
+ 500: Error500;
2784
3023
  };
2785
3024
  export type CharacterShowError = CharacterShowErrors[keyof CharacterShowErrors];
2786
3025
  export type CharacterShowResponses = {
@@ -2805,27 +3044,27 @@ export type SeiyuuShowErrors = {
2805
3044
  /**
2806
3045
  * Bad Request
2807
3046
  */
2808
- 400: Error;
3047
+ 400: Error400;
2809
3048
  /**
2810
3049
  * Unauthorized
2811
3050
  */
2812
- 401: Error;
3051
+ 401: Error401;
2813
3052
  /**
2814
3053
  * Forbidden
2815
3054
  */
2816
- 403: Error;
3055
+ 403: Error403;
2817
3056
  /**
2818
3057
  * Not Found
2819
3058
  */
2820
- 404: Error;
3059
+ 404: Error404;
2821
3060
  /**
2822
3061
  * Too Many Requests
2823
3062
  */
2824
- 429: Error;
3063
+ 429: Error429;
2825
3064
  /**
2826
3065
  * Internal Server Error
2827
3066
  */
2828
- 500: Error;
3067
+ 500: Error500;
2829
3068
  };
2830
3069
  export type SeiyuuShowError = SeiyuuShowErrors[keyof SeiyuuShowErrors];
2831
3070
  export type SeiyuuShowResponses = {
@@ -2835,31 +3074,31 @@ export type SeiyuuShowResponses = {
2835
3074
  200: SeiyuuWithRoles;
2836
3075
  };
2837
3076
  export type SeiyuuShowResponse = SeiyuuShowResponses[keyof SeiyuuShowResponses];
2838
- export type GetUserQuotaData = {
3077
+ export type UserQuotaShowData = {
2839
3078
  body?: never;
2840
3079
  path?: never;
2841
3080
  query?: never;
2842
3081
  url: '/v1/user/quota';
2843
3082
  };
2844
- export type GetUserQuotaErrors = {
3083
+ export type UserQuotaShowErrors = {
2845
3084
  /**
2846
3085
  * Unauthorized
2847
3086
  */
2848
- 401: Error;
3087
+ 401: Error401;
2849
3088
  /**
2850
3089
  * Internal Server Error
2851
3090
  */
2852
- 500: Error;
3091
+ 500: Error500;
2853
3092
  };
2854
- export type GetUserQuotaError = GetUserQuotaErrors[keyof GetUserQuotaErrors];
2855
- export type GetUserQuotaResponses = {
3093
+ export type UserQuotaShowError = UserQuotaShowErrors[keyof UserQuotaShowErrors];
3094
+ export type UserQuotaShowResponses = {
2856
3095
  /**
2857
3096
  * OK
2858
3097
  */
2859
3098
  200: UserQuotaResponse;
2860
3099
  };
2861
- export type GetUserQuotaResponse = GetUserQuotaResponses[keyof GetUserQuotaResponses];
2862
- export type GetUserReportsData = {
3100
+ export type UserQuotaShowResponse = UserQuotaShowResponses[keyof UserQuotaShowResponses];
3101
+ export type UserReportIndexData = {
2863
3102
  body?: never;
2864
3103
  path?: never;
2865
3104
  query?: {
@@ -2874,60 +3113,277 @@ export type GetUserReportsData = {
2874
3113
  /**
2875
3114
  * Filter by report status
2876
3115
  */
2877
- status?: 'PENDING' | 'ACCEPTED' | 'REJECTED' | 'RESOLVED';
3116
+ status?: 'PENDING' | 'CONCERN' | 'ACCEPTED' | 'REJECTED' | 'RESOLVED' | 'IGNORED';
2878
3117
  };
2879
3118
  url: '/v1/user/reports';
2880
3119
  };
2881
- export type GetUserReportsErrors = {
3120
+ export type UserReportIndexErrors = {
3121
+ /**
3122
+ * Unauthorized
3123
+ */
3124
+ 401: Error401;
3125
+ /**
3126
+ * Internal Server Error
3127
+ */
3128
+ 500: Error500;
3129
+ };
3130
+ export type UserReportIndexError = UserReportIndexErrors[keyof UserReportIndexErrors];
3131
+ export type UserReportIndexResponses = {
3132
+ /**
3133
+ * OK
3134
+ */
3135
+ 200: ReportListResponse;
3136
+ };
3137
+ export type UserReportIndexResponse = UserReportIndexResponses[keyof UserReportIndexResponses];
3138
+ export type UserReportCreateData = {
3139
+ body: CreateReportRequest;
3140
+ path?: never;
3141
+ query?: never;
3142
+ url: '/v1/user/reports';
3143
+ };
3144
+ export type UserReportCreateErrors = {
3145
+ /**
3146
+ * Bad Request
3147
+ */
3148
+ 400: Error400;
3149
+ /**
3150
+ * Unauthorized
3151
+ */
3152
+ 401: Error401;
3153
+ /**
3154
+ * Not Found
3155
+ */
3156
+ 404: Error404;
3157
+ /**
3158
+ * Internal Server Error
3159
+ */
3160
+ 500: Error500;
3161
+ };
3162
+ export type UserReportCreateError = UserReportCreateErrors[keyof UserReportCreateErrors];
3163
+ export type UserReportCreateResponses = {
3164
+ /**
3165
+ * Report created successfully
3166
+ */
3167
+ 201: Report;
3168
+ };
3169
+ export type UserReportCreateResponse = UserReportCreateResponses[keyof UserReportCreateResponses];
3170
+ export type UserPreferencesShowData = {
3171
+ body?: never;
3172
+ path?: never;
3173
+ query?: never;
3174
+ url: '/v1/user/preferences';
3175
+ };
3176
+ export type UserPreferencesShowErrors = {
3177
+ /**
3178
+ * Unauthorized
3179
+ */
3180
+ 401: Error401;
3181
+ /**
3182
+ * Internal Server Error
3183
+ */
3184
+ 500: Error500;
3185
+ };
3186
+ export type UserPreferencesShowError = UserPreferencesShowErrors[keyof UserPreferencesShowErrors];
3187
+ export type UserPreferencesShowResponses = {
3188
+ /**
3189
+ * OK
3190
+ */
3191
+ 200: UserPreferences;
3192
+ };
3193
+ export type UserPreferencesShowResponse = UserPreferencesShowResponses[keyof UserPreferencesShowResponses];
3194
+ export type UserPreferencesUpdateData = {
3195
+ body: UserPreferences;
3196
+ path?: never;
3197
+ query?: never;
3198
+ url: '/v1/user/preferences';
3199
+ };
3200
+ export type UserPreferencesUpdateErrors = {
3201
+ /**
3202
+ * Unauthorized
3203
+ */
3204
+ 401: Error401;
3205
+ /**
3206
+ * Internal Server Error
3207
+ */
3208
+ 500: Error500;
3209
+ };
3210
+ export type UserPreferencesUpdateError = UserPreferencesUpdateErrors[keyof UserPreferencesUpdateErrors];
3211
+ export type UserPreferencesUpdateResponses = {
3212
+ /**
3213
+ * OK
3214
+ */
3215
+ 200: UserPreferences;
3216
+ };
3217
+ export type UserPreferencesUpdateResponse = UserPreferencesUpdateResponses[keyof UserPreferencesUpdateResponses];
3218
+ export type UserActivityDestroyData = {
3219
+ body?: never;
3220
+ path?: never;
3221
+ query?: {
3222
+ /**
3223
+ * Only clear activities of this type
3224
+ */
3225
+ activityType?: ActivityType;
3226
+ };
3227
+ url: '/v1/user/activity';
3228
+ };
3229
+ export type UserActivityDestroyErrors = {
3230
+ /**
3231
+ * Unauthorized
3232
+ */
3233
+ 401: Error401;
3234
+ /**
3235
+ * Internal Server Error
3236
+ */
3237
+ 500: Error500;
3238
+ };
3239
+ export type UserActivityDestroyError = UserActivityDestroyErrors[keyof UserActivityDestroyErrors];
3240
+ export type UserActivityDestroyResponses = {
3241
+ /**
3242
+ * OK
3243
+ */
3244
+ 200: {
3245
+ message: string;
3246
+ deletedCount: number;
3247
+ };
3248
+ };
3249
+ export type UserActivityDestroyResponse = UserActivityDestroyResponses[keyof UserActivityDestroyResponses];
3250
+ export type UserActivityIndexData = {
3251
+ body?: never;
3252
+ path?: never;
3253
+ query?: {
3254
+ /**
3255
+ * Cursor for pagination (activity ID to start after)
3256
+ */
3257
+ cursor?: number;
3258
+ /**
3259
+ * Number of results per page
3260
+ */
3261
+ size?: number;
3262
+ /**
3263
+ * Filter by activity type
3264
+ */
3265
+ activityType?: ActivityType;
3266
+ };
3267
+ url: '/v1/user/activity';
3268
+ };
3269
+ export type UserActivityIndexErrors = {
3270
+ /**
3271
+ * Unauthorized
3272
+ */
3273
+ 401: Error401;
3274
+ /**
3275
+ * Internal Server Error
3276
+ */
3277
+ 500: Error500;
3278
+ };
3279
+ export type UserActivityIndexError = UserActivityIndexErrors[keyof UserActivityIndexErrors];
3280
+ export type UserActivityIndexResponses = {
3281
+ /**
3282
+ * OK
3283
+ */
3284
+ 200: {
3285
+ data: Array<UserActivity>;
3286
+ hasMore: boolean;
3287
+ cursor?: number;
3288
+ };
3289
+ };
3290
+ export type UserActivityIndexResponse = UserActivityIndexResponses[keyof UserActivityIndexResponses];
3291
+ export type UserActivityStatsShowData = {
3292
+ body?: never;
3293
+ path?: never;
3294
+ query?: never;
3295
+ url: '/v1/user/activity/stats';
3296
+ };
3297
+ export type UserActivityStatsShowErrors = {
3298
+ /**
3299
+ * Unauthorized
3300
+ */
3301
+ 401: Error401;
3302
+ /**
3303
+ * Internal Server Error
3304
+ */
3305
+ 500: Error500;
3306
+ };
3307
+ export type UserActivityStatsShowError = UserActivityStatsShowErrors[keyof UserActivityStatsShowErrors];
3308
+ export type UserActivityStatsShowResponses = {
3309
+ /**
3310
+ * OK
3311
+ */
3312
+ 200: {
3313
+ totalSearches: number;
3314
+ totalExports: number;
3315
+ totalPlays: number;
3316
+ totalListAdds: number;
3317
+ /**
3318
+ * Consecutive days with at least one activity
3319
+ */
3320
+ streakDays: number;
3321
+ topMedia: Array<{
3322
+ mediaId: number;
3323
+ count: number;
3324
+ }>;
3325
+ };
3326
+ };
3327
+ export type UserActivityStatsShowResponse = UserActivityStatsShowResponses[keyof UserActivityStatsShowResponses];
3328
+ export type UserExportShowData = {
3329
+ body?: never;
3330
+ path?: never;
3331
+ query?: never;
3332
+ url: '/v1/user/export';
3333
+ };
3334
+ export type UserExportShowErrors = {
2882
3335
  /**
2883
3336
  * Unauthorized
2884
3337
  */
2885
- 401: Error;
3338
+ 401: Error401;
2886
3339
  /**
2887
3340
  * Internal Server Error
2888
3341
  */
2889
- 500: Error;
3342
+ 500: Error500;
2890
3343
  };
2891
- export type GetUserReportsError = GetUserReportsErrors[keyof GetUserReportsErrors];
2892
- export type GetUserReportsResponses = {
3344
+ export type UserExportShowError = UserExportShowErrors[keyof UserExportShowErrors];
3345
+ export type UserExportShowResponses = {
2893
3346
  /**
2894
3347
  * OK
2895
3348
  */
2896
- 200: ReportListResponse;
3349
+ 200: {
3350
+ profile: {
3351
+ id?: number;
3352
+ username?: string;
3353
+ email?: string;
3354
+ createdAt?: string;
3355
+ };
3356
+ preferences: UserPreferences;
3357
+ activity: Array<UserActivity>;
3358
+ lists: Array<{
3359
+ [key: string]: unknown;
3360
+ }>;
3361
+ reports: Array<{
3362
+ [key: string]: unknown;
3363
+ }>;
3364
+ };
2897
3365
  };
2898
- export type GetUserReportsResponse = GetUserReportsResponses[keyof GetUserReportsResponses];
2899
- export type CreateReportData = {
2900
- body: CreateReportRequest;
3366
+ export type UserExportShowResponse = UserExportShowResponses[keyof UserExportShowResponses];
3367
+ export type LabIndexData = {
3368
+ body?: never;
2901
3369
  path?: never;
2902
3370
  query?: never;
2903
- url: '/v1/user/reports';
3371
+ url: '/v1/labs';
2904
3372
  };
2905
- export type CreateReportErrors = {
2906
- /**
2907
- * Bad Request
2908
- */
2909
- 400: Error;
2910
- /**
2911
- * Unauthorized
2912
- */
2913
- 401: Error;
2914
- /**
2915
- * Not Found
2916
- */
2917
- 404: Error;
3373
+ export type LabIndexErrors = {
2918
3374
  /**
2919
3375
  * Internal Server Error
2920
3376
  */
2921
- 500: Error;
3377
+ 500: Error500;
2922
3378
  };
2923
- export type CreateReportError = CreateReportErrors[keyof CreateReportErrors];
2924
- export type CreateReportResponses = {
3379
+ export type LabIndexError = LabIndexErrors[keyof LabIndexErrors];
3380
+ export type LabIndexResponses = {
2925
3381
  /**
2926
- * Report created successfully
3382
+ * OK
2927
3383
  */
2928
- 201: Report;
3384
+ 200: Array<LabFeature>;
2929
3385
  };
2930
- export type CreateReportResponse = CreateReportResponses[keyof CreateReportResponses];
3386
+ export type LabIndexResponse = LabIndexResponses[keyof LabIndexResponses];
2931
3387
  export type ListIndexData = {
2932
3388
  body?: never;
2933
3389
  path?: never;
@@ -2955,23 +3411,23 @@ export type ListIndexErrors = {
2955
3411
  /**
2956
3412
  * Bad Request
2957
3413
  */
2958
- 400: Error;
3414
+ 400: Error400;
2959
3415
  /**
2960
3416
  * Unauthorized
2961
3417
  */
2962
- 401: Error;
3418
+ 401: Error401;
2963
3419
  /**
2964
3420
  * Forbidden
2965
3421
  */
2966
- 403: Error;
3422
+ 403: Error403;
2967
3423
  /**
2968
3424
  * Too Many Requests
2969
3425
  */
2970
- 429: Error;
3426
+ 429: Error429;
2971
3427
  /**
2972
3428
  * Internal Server Error
2973
3429
  */
2974
- 500: Error;
3430
+ 500: Error500;
2975
3431
  };
2976
3432
  export type ListIndexError = ListIndexErrors[keyof ListIndexErrors];
2977
3433
  export type ListIndexResponses = {
@@ -2991,23 +3447,23 @@ export type ListCreateErrors = {
2991
3447
  /**
2992
3448
  * Bad Request
2993
3449
  */
2994
- 400: Error;
3450
+ 400: Error400;
2995
3451
  /**
2996
3452
  * Unauthorized
2997
3453
  */
2998
- 401: Error;
3454
+ 401: Error401;
2999
3455
  /**
3000
3456
  * Forbidden
3001
3457
  */
3002
- 403: Error;
3458
+ 403: Error403;
3003
3459
  /**
3004
3460
  * Too Many Requests
3005
3461
  */
3006
- 429: Error;
3462
+ 429: Error429;
3007
3463
  /**
3008
3464
  * Internal Server Error
3009
3465
  */
3010
- 500: Error;
3466
+ 500: Error500;
3011
3467
  };
3012
3468
  export type ListCreateError = ListCreateErrors[keyof ListCreateErrors];
3013
3469
  export type ListCreateResponses = {
@@ -3032,27 +3488,27 @@ export type ListDestroyErrors = {
3032
3488
  /**
3033
3489
  * Bad Request
3034
3490
  */
3035
- 400: Error;
3491
+ 400: Error400;
3036
3492
  /**
3037
3493
  * Unauthorized
3038
3494
  */
3039
- 401: Error;
3495
+ 401: Error401;
3040
3496
  /**
3041
3497
  * Forbidden
3042
3498
  */
3043
- 403: Error;
3499
+ 403: Error403;
3044
3500
  /**
3045
3501
  * Not Found
3046
3502
  */
3047
- 404: Error;
3503
+ 404: Error404;
3048
3504
  /**
3049
3505
  * Too Many Requests
3050
3506
  */
3051
- 429: Error;
3507
+ 429: Error429;
3052
3508
  /**
3053
3509
  * Internal Server Error
3054
3510
  */
3055
- 500: Error;
3511
+ 500: Error500;
3056
3512
  };
3057
3513
  export type ListDestroyError = ListDestroyErrors[keyof ListDestroyErrors];
3058
3514
  export type ListDestroyResponses = {
@@ -3080,27 +3536,27 @@ export type ListShowErrors = {
3080
3536
  /**
3081
3537
  * Bad Request
3082
3538
  */
3083
- 400: Error;
3539
+ 400: Error400;
3084
3540
  /**
3085
3541
  * Unauthorized
3086
3542
  */
3087
- 401: Error;
3543
+ 401: Error401;
3088
3544
  /**
3089
3545
  * Forbidden
3090
3546
  */
3091
- 403: Error;
3547
+ 403: Error403;
3092
3548
  /**
3093
3549
  * Not Found
3094
3550
  */
3095
- 404: Error;
3551
+ 404: Error404;
3096
3552
  /**
3097
3553
  * Too Many Requests
3098
3554
  */
3099
- 429: Error;
3555
+ 429: Error429;
3100
3556
  /**
3101
3557
  * Internal Server Error
3102
3558
  */
3103
- 500: Error;
3559
+ 500: Error500;
3104
3560
  };
3105
3561
  export type ListShowError = ListShowErrors[keyof ListShowErrors];
3106
3562
  export type ListShowResponses = {
@@ -3128,27 +3584,27 @@ export type ListUpdateErrors = {
3128
3584
  /**
3129
3585
  * Bad Request
3130
3586
  */
3131
- 400: Error;
3587
+ 400: Error400;
3132
3588
  /**
3133
3589
  * Unauthorized
3134
3590
  */
3135
- 401: Error;
3591
+ 401: Error401;
3136
3592
  /**
3137
3593
  * Forbidden
3138
3594
  */
3139
- 403: Error;
3595
+ 403: Error403;
3140
3596
  /**
3141
3597
  * Not Found
3142
3598
  */
3143
- 404: Error;
3599
+ 404: Error404;
3144
3600
  /**
3145
3601
  * Too Many Requests
3146
3602
  */
3147
- 429: Error;
3603
+ 429: Error429;
3148
3604
  /**
3149
3605
  * Internal Server Error
3150
3606
  */
3151
- 500: Error;
3607
+ 500: Error500;
3152
3608
  };
3153
3609
  export type ListUpdateError = ListUpdateErrors[keyof ListUpdateErrors];
3154
3610
  export type ListUpdateResponses = {
@@ -3179,31 +3635,31 @@ export type ListAddItemErrors = {
3179
3635
  /**
3180
3636
  * Bad Request
3181
3637
  */
3182
- 400: Error;
3638
+ 400: Error400;
3183
3639
  /**
3184
3640
  * Unauthorized
3185
3641
  */
3186
- 401: Error;
3642
+ 401: Error401;
3187
3643
  /**
3188
3644
  * Forbidden
3189
3645
  */
3190
- 403: Error;
3646
+ 403: Error403;
3191
3647
  /**
3192
3648
  * Not Found
3193
3649
  */
3194
- 404: Error;
3650
+ 404: Error404;
3195
3651
  /**
3196
3652
  * Conflict
3197
3653
  */
3198
- 409: Error;
3654
+ 409: Error409;
3199
3655
  /**
3200
3656
  * Too Many Requests
3201
3657
  */
3202
- 429: Error;
3658
+ 429: Error429;
3203
3659
  /**
3204
3660
  * Internal Server Error
3205
3661
  */
3206
- 500: Error;
3662
+ 500: Error500;
3207
3663
  };
3208
3664
  export type ListAddItemError = ListAddItemErrors[keyof ListAddItemErrors];
3209
3665
  export type ListAddItemResponses = {
@@ -3234,27 +3690,27 @@ export type ListRemoveItemErrors = {
3234
3690
  /**
3235
3691
  * Bad Request
3236
3692
  */
3237
- 400: Error;
3693
+ 400: Error400;
3238
3694
  /**
3239
3695
  * Unauthorized
3240
3696
  */
3241
- 401: Error;
3697
+ 401: Error401;
3242
3698
  /**
3243
3699
  * Forbidden
3244
3700
  */
3245
- 403: Error;
3701
+ 403: Error403;
3246
3702
  /**
3247
3703
  * Not Found
3248
3704
  */
3249
- 404: Error;
3705
+ 404: Error404;
3250
3706
  /**
3251
3707
  * Too Many Requests
3252
3708
  */
3253
- 429: Error;
3709
+ 429: Error429;
3254
3710
  /**
3255
3711
  * Internal Server Error
3256
3712
  */
3257
- 500: Error;
3713
+ 500: Error500;
3258
3714
  };
3259
3715
  export type ListRemoveItemError = ListRemoveItemErrors[keyof ListRemoveItemErrors];
3260
3716
  export type ListRemoveItemResponses = {
@@ -3290,27 +3746,27 @@ export type ListUpdateItemErrors = {
3290
3746
  /**
3291
3747
  * Bad Request
3292
3748
  */
3293
- 400: Error;
3749
+ 400: Error400;
3294
3750
  /**
3295
3751
  * Unauthorized
3296
3752
  */
3297
- 401: Error;
3753
+ 401: Error401;
3298
3754
  /**
3299
3755
  * Forbidden
3300
3756
  */
3301
- 403: Error;
3757
+ 403: Error403;
3302
3758
  /**
3303
3759
  * Not Found
3304
3760
  */
3305
- 404: Error;
3761
+ 404: Error404;
3306
3762
  /**
3307
3763
  * Too Many Requests
3308
3764
  */
3309
- 429: Error;
3765
+ 429: Error429;
3310
3766
  /**
3311
3767
  * Internal Server Error
3312
3768
  */
3313
- 500: Error;
3769
+ 500: Error500;
3314
3770
  };
3315
3771
  export type ListUpdateItemError = ListUpdateItemErrors[keyof ListUpdateItemErrors];
3316
3772
  export type ListUpdateItemResponses = {
@@ -3346,27 +3802,27 @@ export type ListGetSegmentsErrors = {
3346
3802
  /**
3347
3803
  * Bad Request
3348
3804
  */
3349
- 400: Error;
3805
+ 400: Error400;
3350
3806
  /**
3351
3807
  * Unauthorized
3352
3808
  */
3353
- 401: Error;
3809
+ 401: Error401;
3354
3810
  /**
3355
3811
  * Forbidden
3356
3812
  */
3357
- 403: Error;
3813
+ 403: Error403;
3358
3814
  /**
3359
3815
  * Not Found
3360
3816
  */
3361
- 404: Error;
3817
+ 404: Error404;
3362
3818
  /**
3363
3819
  * Too Many Requests
3364
3820
  */
3365
- 429: Error;
3821
+ 429: Error429;
3366
3822
  /**
3367
3823
  * Internal Server Error
3368
3824
  */
3369
- 500: Error;
3825
+ 500: Error500;
3370
3826
  };
3371
3827
  export type ListGetSegmentsError = ListGetSegmentsErrors[keyof ListGetSegmentsErrors];
3372
3828
  export type ListGetSegmentsResponses = {
@@ -3400,31 +3856,31 @@ export type ListAddSegmentErrors = {
3400
3856
  /**
3401
3857
  * Bad Request
3402
3858
  */
3403
- 400: Error;
3859
+ 400: Error400;
3404
3860
  /**
3405
3861
  * Unauthorized
3406
3862
  */
3407
- 401: Error;
3863
+ 401: Error401;
3408
3864
  /**
3409
3865
  * Forbidden
3410
3866
  */
3411
- 403: Error;
3867
+ 403: Error403;
3412
3868
  /**
3413
3869
  * Not Found
3414
3870
  */
3415
- 404: Error;
3871
+ 404: Error404;
3416
3872
  /**
3417
3873
  * Conflict
3418
3874
  */
3419
- 409: Error;
3875
+ 409: Error409;
3420
3876
  /**
3421
3877
  * Too Many Requests
3422
3878
  */
3423
- 429: Error;
3879
+ 429: Error429;
3424
3880
  /**
3425
3881
  * Internal Server Error
3426
3882
  */
3427
- 500: Error;
3883
+ 500: Error500;
3428
3884
  };
3429
3885
  export type ListAddSegmentError = ListAddSegmentErrors[keyof ListAddSegmentErrors];
3430
3886
  export type ListAddSegmentResponses = {
@@ -3455,27 +3911,27 @@ export type ListRemoveSegmentErrors = {
3455
3911
  /**
3456
3912
  * Bad Request
3457
3913
  */
3458
- 400: Error;
3914
+ 400: Error400;
3459
3915
  /**
3460
3916
  * Unauthorized
3461
3917
  */
3462
- 401: Error;
3918
+ 401: Error401;
3463
3919
  /**
3464
3920
  * Forbidden
3465
3921
  */
3466
- 403: Error;
3922
+ 403: Error403;
3467
3923
  /**
3468
3924
  * Not Found
3469
3925
  */
3470
- 404: Error;
3926
+ 404: Error404;
3471
3927
  /**
3472
3928
  * Too Many Requests
3473
3929
  */
3474
- 429: Error;
3930
+ 429: Error429;
3475
3931
  /**
3476
3932
  * Internal Server Error
3477
3933
  */
3478
- 500: Error;
3934
+ 500: Error500;
3479
3935
  };
3480
3936
  export type ListRemoveSegmentError = ListRemoveSegmentErrors[keyof ListRemoveSegmentErrors];
3481
3937
  export type ListRemoveSegmentResponses = {
@@ -3515,27 +3971,27 @@ export type ListUpdateSegmentErrors = {
3515
3971
  /**
3516
3972
  * Bad Request
3517
3973
  */
3518
- 400: Error;
3974
+ 400: Error400;
3519
3975
  /**
3520
3976
  * Unauthorized
3521
3977
  */
3522
- 401: Error;
3978
+ 401: Error401;
3523
3979
  /**
3524
3980
  * Forbidden
3525
3981
  */
3526
- 403: Error;
3982
+ 403: Error403;
3527
3983
  /**
3528
3984
  * Not Found
3529
3985
  */
3530
- 404: Error;
3986
+ 404: Error404;
3531
3987
  /**
3532
3988
  * Too Many Requests
3533
3989
  */
3534
- 429: Error;
3990
+ 429: Error429;
3535
3991
  /**
3536
3992
  * Internal Server Error
3537
3993
  */
3538
- 500: Error;
3994
+ 500: Error500;
3539
3995
  };
3540
3996
  export type ListUpdateSegmentError = ListUpdateSegmentErrors[keyof ListUpdateSegmentErrors];
3541
3997
  export type ListUpdateSegmentResponses = {
@@ -3547,72 +4003,72 @@ export type ListUpdateSegmentResponses = {
3547
4003
  };
3548
4004
  };
3549
4005
  export type ListUpdateSegmentResponse = ListUpdateSegmentResponses[keyof ListUpdateSegmentResponses];
3550
- export type ReindexElasticsearchData = {
4006
+ export type AdminReindexCreateData = {
3551
4007
  body?: ReindexRequest;
3552
4008
  path?: never;
3553
4009
  query?: never;
3554
4010
  url: '/v1/admin/reindex';
3555
4011
  };
3556
- export type ReindexElasticsearchErrors = {
4012
+ export type AdminReindexCreateErrors = {
3557
4013
  /**
3558
4014
  * Bad Request
3559
4015
  */
3560
- 400: Error;
4016
+ 400: Error400;
3561
4017
  /**
3562
4018
  * Unauthorized
3563
4019
  */
3564
- 401: Error;
4020
+ 401: Error401;
3565
4021
  /**
3566
4022
  * Forbidden
3567
4023
  */
3568
- 403: Error;
4024
+ 403: Error403;
3569
4025
  /**
3570
4026
  * Too Many Requests
3571
4027
  */
3572
- 429: Error;
4028
+ 429: Error429;
3573
4029
  /**
3574
4030
  * Internal Server Error
3575
4031
  */
3576
- 500: Error;
4032
+ 500: Error500;
3577
4033
  };
3578
- export type ReindexElasticsearchError = ReindexElasticsearchErrors[keyof ReindexElasticsearchErrors];
3579
- export type ReindexElasticsearchResponses = {
4034
+ export type AdminReindexCreateError = AdminReindexCreateErrors[keyof AdminReindexCreateErrors];
4035
+ export type AdminReindexCreateResponses = {
3580
4036
  /**
3581
4037
  * Reindex operation completed
3582
4038
  */
3583
4039
  200: ReindexResponse;
3584
4040
  };
3585
- export type ReindexElasticsearchResponse = ReindexElasticsearchResponses[keyof ReindexElasticsearchResponses];
3586
- export type GetQueueStatsData = {
4041
+ export type AdminReindexCreateResponse = AdminReindexCreateResponses[keyof AdminReindexCreateResponses];
4042
+ export type AdminQueueStatsIndexData = {
3587
4043
  body?: never;
3588
4044
  path?: never;
3589
4045
  query?: never;
3590
4046
  url: '/v1/admin/queues/stats';
3591
4047
  };
3592
- export type GetQueueStatsErrors = {
4048
+ export type AdminQueueStatsIndexErrors = {
3593
4049
  /**
3594
4050
  * Bad Request
3595
4051
  */
3596
- 400: Error;
4052
+ 400: Error400;
3597
4053
  /**
3598
4054
  * Unauthorized
3599
4055
  */
3600
- 401: Error;
4056
+ 401: Error401;
3601
4057
  /**
3602
4058
  * Forbidden
3603
4059
  */
3604
- 403: Error;
4060
+ 403: Error403;
3605
4061
  /**
3606
4062
  * Too Many Requests
3607
4063
  */
3608
- 429: Error;
4064
+ 429: Error429;
3609
4065
  /**
3610
4066
  * Internal Server Error
3611
4067
  */
3612
- 500: Error;
4068
+ 500: Error500;
3613
4069
  };
3614
- export type GetQueueStatsError = GetQueueStatsErrors[keyof GetQueueStatsErrors];
3615
- export type GetQueueStatsResponses = {
4070
+ export type AdminQueueStatsIndexError = AdminQueueStatsIndexErrors[keyof AdminQueueStatsIndexErrors];
4071
+ export type AdminQueueStatsIndexResponses = {
3616
4072
  /**
3617
4073
  * Queue statistics retrieved successfully
3618
4074
  */
@@ -3628,8 +4084,8 @@ export type GetQueueStatsResponses = {
3628
4084
  failedCount?: number;
3629
4085
  }>;
3630
4086
  };
3631
- export type GetQueueStatsResponse = GetQueueStatsResponses[keyof GetQueueStatsResponses];
3632
- export type GetQueueDetailsData = {
4087
+ export type AdminQueueStatsIndexResponse = AdminQueueStatsIndexResponses[keyof AdminQueueStatsIndexResponses];
4088
+ export type AdminQueueShowData = {
3633
4089
  body?: never;
3634
4090
  path: {
3635
4091
  /**
@@ -3640,34 +4096,34 @@ export type GetQueueDetailsData = {
3640
4096
  query?: never;
3641
4097
  url: '/v1/admin/queues/{queueName}';
3642
4098
  };
3643
- export type GetQueueDetailsErrors = {
4099
+ export type AdminQueueShowErrors = {
3644
4100
  /**
3645
4101
  * Bad Request
3646
4102
  */
3647
- 400: Error;
4103
+ 400: Error400;
3648
4104
  /**
3649
4105
  * Unauthorized
3650
4106
  */
3651
- 401: Error;
4107
+ 401: Error401;
3652
4108
  /**
3653
4109
  * Forbidden
3654
4110
  */
3655
- 403: Error;
4111
+ 403: Error403;
3656
4112
  /**
3657
4113
  * Not Found
3658
4114
  */
3659
- 404: Error;
4115
+ 404: Error404;
3660
4116
  /**
3661
4117
  * Too Many Requests
3662
4118
  */
3663
- 429: Error;
4119
+ 429: Error429;
3664
4120
  /**
3665
4121
  * Internal Server Error
3666
4122
  */
3667
- 500: Error;
4123
+ 500: Error500;
3668
4124
  };
3669
- export type GetQueueDetailsError = GetQueueDetailsErrors[keyof GetQueueDetailsErrors];
3670
- export type GetQueueDetailsResponses = {
4125
+ export type AdminQueueShowError = AdminQueueShowErrors[keyof AdminQueueShowErrors];
4126
+ export type AdminQueueShowResponses = {
3671
4127
  /**
3672
4128
  * Queue details retrieved successfully
3673
4129
  */
@@ -3699,8 +4155,8 @@ export type GetQueueDetailsResponses = {
3699
4155
  cancelled?: number;
3700
4156
  };
3701
4157
  };
3702
- export type GetQueueDetailsResponse = GetQueueDetailsResponses[keyof GetQueueDetailsResponses];
3703
- export type GetFailedJobsData = {
4158
+ export type AdminQueueShowResponse = AdminQueueShowResponses[keyof AdminQueueShowResponses];
4159
+ export type AdminQueueFailedIndexData = {
3704
4160
  body?: never;
3705
4161
  path: {
3706
4162
  /**
@@ -3711,30 +4167,30 @@ export type GetFailedJobsData = {
3711
4167
  query?: never;
3712
4168
  url: '/v1/admin/queues/{queueName}/failed';
3713
4169
  };
3714
- export type GetFailedJobsErrors = {
4170
+ export type AdminQueueFailedIndexErrors = {
3715
4171
  /**
3716
4172
  * Bad Request
3717
4173
  */
3718
- 400: Error;
4174
+ 400: Error400;
3719
4175
  /**
3720
4176
  * Unauthorized
3721
4177
  */
3722
- 401: Error;
4178
+ 401: Error401;
3723
4179
  /**
3724
4180
  * Forbidden
3725
4181
  */
3726
- 403: Error;
4182
+ 403: Error403;
3727
4183
  /**
3728
4184
  * Too Many Requests
3729
4185
  */
3730
- 429: Error;
4186
+ 429: Error429;
3731
4187
  /**
3732
4188
  * Internal Server Error
3733
4189
  */
3734
- 500: Error;
4190
+ 500: Error500;
3735
4191
  };
3736
- export type GetFailedJobsError = GetFailedJobsErrors[keyof GetFailedJobsErrors];
3737
- export type GetFailedJobsResponses = {
4192
+ export type AdminQueueFailedIndexError = AdminQueueFailedIndexErrors[keyof AdminQueueFailedIndexErrors];
4193
+ export type AdminQueueFailedIndexResponses = {
3738
4194
  /**
3739
4195
  * Failed jobs retrieved successfully
3740
4196
  */
@@ -3757,8 +4213,8 @@ export type GetFailedJobsResponses = {
3757
4213
  createdOn?: string;
3758
4214
  }>;
3759
4215
  };
3760
- export type GetFailedJobsResponse = GetFailedJobsResponses[keyof GetFailedJobsResponses];
3761
- export type RetryQueueJobsData = {
4216
+ export type AdminQueueFailedIndexResponse = AdminQueueFailedIndexResponses[keyof AdminQueueFailedIndexResponses];
4217
+ export type AdminQueueRetryCreateData = {
3762
4218
  body?: never;
3763
4219
  path: {
3764
4220
  /**
@@ -3769,30 +4225,30 @@ export type RetryQueueJobsData = {
3769
4225
  query?: never;
3770
4226
  url: '/v1/admin/queues/{queueName}/retry';
3771
4227
  };
3772
- export type RetryQueueJobsErrors = {
4228
+ export type AdminQueueRetryCreateErrors = {
3773
4229
  /**
3774
4230
  * Bad Request
3775
4231
  */
3776
- 400: Error;
4232
+ 400: Error400;
3777
4233
  /**
3778
4234
  * Unauthorized
3779
4235
  */
3780
- 401: Error;
4236
+ 401: Error401;
3781
4237
  /**
3782
4238
  * Forbidden
3783
4239
  */
3784
- 403: Error;
4240
+ 403: Error403;
3785
4241
  /**
3786
4242
  * Too Many Requests
3787
4243
  */
3788
- 429: Error;
4244
+ 429: Error429;
3789
4245
  /**
3790
4246
  * Internal Server Error
3791
4247
  */
3792
- 500: Error;
4248
+ 500: Error500;
3793
4249
  };
3794
- export type RetryQueueJobsError = RetryQueueJobsErrors[keyof RetryQueueJobsErrors];
3795
- export type RetryQueueJobsResponses = {
4250
+ export type AdminQueueRetryCreateError = AdminQueueRetryCreateErrors[keyof AdminQueueRetryCreateErrors];
4251
+ export type AdminQueueRetryCreateResponses = {
3796
4252
  /**
3797
4253
  * Jobs queued for retry
3798
4254
  */
@@ -3805,8 +4261,8 @@ export type RetryQueueJobsResponses = {
3805
4261
  message?: string;
3806
4262
  };
3807
4263
  };
3808
- export type RetryQueueJobsResponse = RetryQueueJobsResponses[keyof RetryQueueJobsResponses];
3809
- export type PurgeFailedJobsData = {
4264
+ export type AdminQueueRetryCreateResponse = AdminQueueRetryCreateResponses[keyof AdminQueueRetryCreateResponses];
4265
+ export type AdminQueueFailedDestroyData = {
3810
4266
  body?: never;
3811
4267
  path: {
3812
4268
  /**
@@ -3817,30 +4273,30 @@ export type PurgeFailedJobsData = {
3817
4273
  query?: never;
3818
4274
  url: '/v1/admin/queues/{queueName}/purge';
3819
4275
  };
3820
- export type PurgeFailedJobsErrors = {
4276
+ export type AdminQueueFailedDestroyErrors = {
3821
4277
  /**
3822
4278
  * Bad Request
3823
4279
  */
3824
- 400: Error;
4280
+ 400: Error400;
3825
4281
  /**
3826
4282
  * Unauthorized
3827
4283
  */
3828
- 401: Error;
4284
+ 401: Error401;
3829
4285
  /**
3830
4286
  * Forbidden
3831
4287
  */
3832
- 403: Error;
4288
+ 403: Error403;
3833
4289
  /**
3834
4290
  * Too Many Requests
3835
4291
  */
3836
- 429: Error;
4292
+ 429: Error429;
3837
4293
  /**
3838
4294
  * Internal Server Error
3839
4295
  */
3840
- 500: Error;
4296
+ 500: Error500;
3841
4297
  };
3842
- export type PurgeFailedJobsError = PurgeFailedJobsErrors[keyof PurgeFailedJobsErrors];
3843
- export type PurgeFailedJobsResponses = {
4298
+ export type AdminQueueFailedDestroyError = AdminQueueFailedDestroyErrors[keyof AdminQueueFailedDestroyErrors];
4299
+ export type AdminQueueFailedDestroyResponses = {
3844
4300
  /**
3845
4301
  * Failed jobs purged successfully
3846
4302
  */
@@ -3853,14 +4309,14 @@ export type PurgeFailedJobsResponses = {
3853
4309
  message?: string;
3854
4310
  };
3855
4311
  };
3856
- export type PurgeFailedJobsResponse = PurgeFailedJobsResponses[keyof PurgeFailedJobsResponses];
3857
- export type MorphemeBackfillData = {
4312
+ export type AdminQueueFailedDestroyResponse = AdminQueueFailedDestroyResponses[keyof AdminQueueFailedDestroyResponses];
4313
+ export type AdminMorphemeBackfillCreateData = {
3858
4314
  body?: never;
3859
4315
  path?: never;
3860
4316
  query?: never;
3861
4317
  url: '/v1/admin/morpheme-backfill';
3862
4318
  };
3863
- export type MorphemeBackfillResponses = {
4319
+ export type AdminMorphemeBackfillCreateResponses = {
3864
4320
  /**
3865
4321
  * Backfill completed
3866
4322
  */
@@ -3874,8 +4330,8 @@ export type MorphemeBackfillResponses = {
3874
4330
  };
3875
4331
  };
3876
4332
  };
3877
- export type MorphemeBackfillResponse = MorphemeBackfillResponses[keyof MorphemeBackfillResponses];
3878
- export type GetAdminReportsData = {
4333
+ export type AdminMorphemeBackfillCreateResponse = AdminMorphemeBackfillCreateResponses[keyof AdminMorphemeBackfillCreateResponses];
4334
+ export type AdminReportIndexData = {
3879
4335
  body?: never;
3880
4336
  path?: never;
3881
4337
  query?: {
@@ -3890,45 +4346,53 @@ export type GetAdminReportsData = {
3890
4346
  /**
3891
4347
  * Filter by report status
3892
4348
  */
3893
- status?: 'PENDING' | 'ACCEPTED' | 'REJECTED' | 'RESOLVED';
4349
+ status?: 'PENDING' | 'CONCERN' | 'ACCEPTED' | 'REJECTED' | 'RESOLVED' | 'IGNORED';
4350
+ /**
4351
+ * Filter by report source
4352
+ */
4353
+ source?: 'USER' | 'AUTO';
4354
+ /**
4355
+ * Filter by target type
4356
+ */
4357
+ targetType?: 'SEGMENT' | 'EPISODE' | 'MEDIA';
3894
4358
  /**
3895
- * Filter by report type
4359
+ * Filter by target media ID
3896
4360
  */
3897
- reportType?: 'SEGMENT' | 'MEDIA';
4361
+ targetMediaId?: number;
3898
4362
  /**
3899
- * Filter by target ID
4363
+ * Filter by review check run ID
3900
4364
  */
3901
- targetId?: string;
4365
+ reviewCheckRunId?: number;
3902
4366
  };
3903
4367
  url: '/v1/admin/reports';
3904
4368
  };
3905
- export type GetAdminReportsErrors = {
4369
+ export type AdminReportIndexErrors = {
3906
4370
  /**
3907
4371
  * Unauthorized
3908
4372
  */
3909
- 401: Error;
4373
+ 401: Error401;
3910
4374
  /**
3911
4375
  * Forbidden
3912
4376
  */
3913
- 403: Error;
4377
+ 403: Error403;
3914
4378
  /**
3915
4379
  * Too Many Requests
3916
4380
  */
3917
- 429: Error;
4381
+ 429: Error429;
3918
4382
  /**
3919
4383
  * Internal Server Error
3920
4384
  */
3921
- 500: Error;
4385
+ 500: Error500;
3922
4386
  };
3923
- export type GetAdminReportsError = GetAdminReportsErrors[keyof GetAdminReportsErrors];
3924
- export type GetAdminReportsResponses = {
4387
+ export type AdminReportIndexError = AdminReportIndexErrors[keyof AdminReportIndexErrors];
4388
+ export type AdminReportIndexResponses = {
3925
4389
  /**
3926
4390
  * OK
3927
4391
  */
3928
4392
  200: AdminReportListResponse;
3929
4393
  };
3930
- export type GetAdminReportsResponse = GetAdminReportsResponses[keyof GetAdminReportsResponses];
3931
- export type UpdateReportData = {
4394
+ export type AdminReportIndexResponse = AdminReportIndexResponses[keyof AdminReportIndexResponses];
4395
+ export type AdminReportUpdateData = {
3932
4396
  body: UpdateReportRequest;
3933
4397
  path: {
3934
4398
  /**
@@ -3939,38 +4403,391 @@ export type UpdateReportData = {
3939
4403
  query?: never;
3940
4404
  url: '/v1/admin/reports/{id}';
3941
4405
  };
3942
- export type UpdateReportErrors = {
4406
+ export type AdminReportUpdateErrors = {
3943
4407
  /**
3944
4408
  * Bad Request
3945
4409
  */
3946
- 400: Error;
4410
+ 400: Error400;
3947
4411
  /**
3948
4412
  * Unauthorized
3949
4413
  */
3950
- 401: Error;
4414
+ 401: Error401;
3951
4415
  /**
3952
4416
  * Forbidden
3953
4417
  */
3954
- 403: Error;
4418
+ 403: Error403;
3955
4419
  /**
3956
4420
  * Not Found
3957
4421
  */
3958
- 404: Error;
4422
+ 404: Error404;
3959
4423
  /**
3960
4424
  * Too Many Requests
3961
4425
  */
3962
- 429: Error;
4426
+ 429: Error429;
3963
4427
  /**
3964
4428
  * Internal Server Error
3965
4429
  */
3966
- 500: Error;
4430
+ 500: Error500;
3967
4431
  };
3968
- export type UpdateReportError = UpdateReportErrors[keyof UpdateReportErrors];
3969
- export type UpdateReportResponses = {
4432
+ export type AdminReportUpdateError = AdminReportUpdateErrors[keyof AdminReportUpdateErrors];
4433
+ export type AdminReportUpdateResponses = {
3970
4434
  /**
3971
4435
  * Report updated successfully
3972
4436
  */
3973
4437
  200: Report;
3974
4438
  };
3975
- export type UpdateReportResponse = UpdateReportResponses[keyof UpdateReportResponses];
4439
+ export type AdminReportUpdateResponse = AdminReportUpdateResponses[keyof AdminReportUpdateResponses];
4440
+ export type AdminReviewRunCreateData = {
4441
+ body?: never;
4442
+ path?: never;
4443
+ query?: {
4444
+ /**
4445
+ * Optional category filter
4446
+ */
4447
+ category?: 'ANIME' | 'JDRAMA';
4448
+ };
4449
+ url: '/v1/admin/review/run';
4450
+ };
4451
+ export type AdminReviewRunCreateErrors = {
4452
+ /**
4453
+ * Unauthorized
4454
+ */
4455
+ 401: Error401;
4456
+ /**
4457
+ * Forbidden
4458
+ */
4459
+ 403: Error403;
4460
+ /**
4461
+ * Too Many Requests
4462
+ */
4463
+ 429: Error429;
4464
+ /**
4465
+ * Internal Server Error
4466
+ */
4467
+ 500: Error500;
4468
+ };
4469
+ export type AdminReviewRunCreateError = AdminReviewRunCreateErrors[keyof AdminReviewRunCreateErrors];
4470
+ export type AdminReviewRunCreateResponses = {
4471
+ /**
4472
+ * Check run completed
4473
+ */
4474
+ 200: RunReviewResponse;
4475
+ };
4476
+ export type AdminReviewRunCreateResponse = AdminReviewRunCreateResponses[keyof AdminReviewRunCreateResponses];
4477
+ export type AdminReviewCheckIndexData = {
4478
+ body?: never;
4479
+ path?: never;
4480
+ query?: never;
4481
+ url: '/v1/admin/review/checks';
4482
+ };
4483
+ export type AdminReviewCheckIndexErrors = {
4484
+ /**
4485
+ * Unauthorized
4486
+ */
4487
+ 401: Error401;
4488
+ /**
4489
+ * Forbidden
4490
+ */
4491
+ 403: Error403;
4492
+ /**
4493
+ * Too Many Requests
4494
+ */
4495
+ 429: Error429;
4496
+ /**
4497
+ * Internal Server Error
4498
+ */
4499
+ 500: Error500;
4500
+ };
4501
+ export type AdminReviewCheckIndexError = AdminReviewCheckIndexErrors[keyof AdminReviewCheckIndexErrors];
4502
+ export type AdminReviewCheckIndexResponses = {
4503
+ /**
4504
+ * OK
4505
+ */
4506
+ 200: Array<ReviewCheck>;
4507
+ };
4508
+ export type AdminReviewCheckIndexResponse = AdminReviewCheckIndexResponses[keyof AdminReviewCheckIndexResponses];
4509
+ export type AdminReviewCheckUpdateData = {
4510
+ body: {
4511
+ /**
4512
+ * New threshold values
4513
+ */
4514
+ threshold?: {
4515
+ [key: string]: unknown;
4516
+ };
4517
+ /**
4518
+ * Enable or disable this check
4519
+ */
4520
+ enabled?: boolean;
4521
+ };
4522
+ path: {
4523
+ /**
4524
+ * Check name identifier
4525
+ */
4526
+ name: string;
4527
+ };
4528
+ query?: never;
4529
+ url: '/v1/admin/review/checks/{name}';
4530
+ };
4531
+ export type AdminReviewCheckUpdateErrors = {
4532
+ /**
4533
+ * Bad Request
4534
+ */
4535
+ 400: Error400;
4536
+ /**
4537
+ * Unauthorized
4538
+ */
4539
+ 401: Error401;
4540
+ /**
4541
+ * Forbidden
4542
+ */
4543
+ 403: Error403;
4544
+ /**
4545
+ * Not Found
4546
+ */
4547
+ 404: Error404;
4548
+ /**
4549
+ * Too Many Requests
4550
+ */
4551
+ 429: Error429;
4552
+ /**
4553
+ * Internal Server Error
4554
+ */
4555
+ 500: Error500;
4556
+ };
4557
+ export type AdminReviewCheckUpdateError = AdminReviewCheckUpdateErrors[keyof AdminReviewCheckUpdateErrors];
4558
+ export type AdminReviewCheckUpdateResponses = {
4559
+ /**
4560
+ * Check updated successfully
4561
+ */
4562
+ 200: ReviewCheck;
4563
+ };
4564
+ export type AdminReviewCheckUpdateResponse = AdminReviewCheckUpdateResponses[keyof AdminReviewCheckUpdateResponses];
4565
+ export type AdminReviewRunIndexData = {
4566
+ body?: never;
4567
+ path?: never;
4568
+ query?: {
4569
+ /**
4570
+ * Filter by check name
4571
+ */
4572
+ checkName?: string;
4573
+ /**
4574
+ * Cursor for pagination
4575
+ */
4576
+ cursor?: number;
4577
+ /**
4578
+ * Number of results per page
4579
+ */
4580
+ size?: number;
4581
+ };
4582
+ url: '/v1/admin/review/runs';
4583
+ };
4584
+ export type AdminReviewRunIndexErrors = {
4585
+ /**
4586
+ * Unauthorized
4587
+ */
4588
+ 401: Error401;
4589
+ /**
4590
+ * Forbidden
4591
+ */
4592
+ 403: Error403;
4593
+ /**
4594
+ * Too Many Requests
4595
+ */
4596
+ 429: Error429;
4597
+ /**
4598
+ * Internal Server Error
4599
+ */
4600
+ 500: Error500;
4601
+ };
4602
+ export type AdminReviewRunIndexError = AdminReviewRunIndexErrors[keyof AdminReviewRunIndexErrors];
4603
+ export type AdminReviewRunIndexResponses = {
4604
+ /**
4605
+ * OK
4606
+ */
4607
+ 200: {
4608
+ data: Array<ReviewCheckRun>;
4609
+ hasMore: boolean;
4610
+ cursor?: number;
4611
+ };
4612
+ };
4613
+ export type AdminReviewRunIndexResponse = AdminReviewRunIndexResponses[keyof AdminReviewRunIndexResponses];
4614
+ export type AdminReviewRunShowData = {
4615
+ body?: never;
4616
+ path: {
4617
+ /**
4618
+ * Run ID
4619
+ */
4620
+ id: number;
4621
+ };
4622
+ query?: never;
4623
+ url: '/v1/admin/review/runs/{id}';
4624
+ };
4625
+ export type AdminReviewRunShowErrors = {
4626
+ /**
4627
+ * Unauthorized
4628
+ */
4629
+ 401: Error401;
4630
+ /**
4631
+ * Forbidden
4632
+ */
4633
+ 403: Error403;
4634
+ /**
4635
+ * Not Found
4636
+ */
4637
+ 404: Error404;
4638
+ /**
4639
+ * Too Many Requests
4640
+ */
4641
+ 429: Error429;
4642
+ /**
4643
+ * Internal Server Error
4644
+ */
4645
+ 500: Error500;
4646
+ };
4647
+ export type AdminReviewRunShowError = AdminReviewRunShowErrors[keyof AdminReviewRunShowErrors];
4648
+ export type AdminReviewRunShowResponses = {
4649
+ /**
4650
+ * OK
4651
+ */
4652
+ 200: {
4653
+ run: ReviewCheckRun;
4654
+ reports: Array<Report>;
4655
+ };
4656
+ };
4657
+ export type AdminReviewRunShowResponse = AdminReviewRunShowResponses[keyof AdminReviewRunShowResponses];
4658
+ export type AdminReviewAllowlistIndexData = {
4659
+ body?: never;
4660
+ path?: never;
4661
+ query?: {
4662
+ /**
4663
+ * Filter by check name
4664
+ */
4665
+ checkName?: string;
4666
+ };
4667
+ url: '/v1/admin/review/allowlist';
4668
+ };
4669
+ export type AdminReviewAllowlistIndexErrors = {
4670
+ /**
4671
+ * Unauthorized
4672
+ */
4673
+ 401: Error401;
4674
+ /**
4675
+ * Forbidden
4676
+ */
4677
+ 403: Error403;
4678
+ /**
4679
+ * Too Many Requests
4680
+ */
4681
+ 429: Error429;
4682
+ /**
4683
+ * Internal Server Error
4684
+ */
4685
+ 500: Error500;
4686
+ };
4687
+ export type AdminReviewAllowlistIndexError = AdminReviewAllowlistIndexErrors[keyof AdminReviewAllowlistIndexErrors];
4688
+ export type AdminReviewAllowlistIndexResponses = {
4689
+ /**
4690
+ * OK
4691
+ */
4692
+ 200: Array<ReviewAllowlist>;
4693
+ };
4694
+ export type AdminReviewAllowlistIndexResponse = AdminReviewAllowlistIndexResponses[keyof AdminReviewAllowlistIndexResponses];
4695
+ export type AdminReviewAllowlistCreateData = {
4696
+ body: {
4697
+ /**
4698
+ * Check name to allowlist for
4699
+ */
4700
+ checkName: string;
4701
+ /**
4702
+ * Media ID to allowlist
4703
+ */
4704
+ mediaId: number;
4705
+ /**
4706
+ * Episode number (for episode-level checks)
4707
+ */
4708
+ episodeNumber?: number;
4709
+ /**
4710
+ * Reason for allowlisting
4711
+ */
4712
+ reason?: string;
4713
+ };
4714
+ path?: never;
4715
+ query?: never;
4716
+ url: '/v1/admin/review/allowlist';
4717
+ };
4718
+ export type AdminReviewAllowlistCreateErrors = {
4719
+ /**
4720
+ * Bad Request
4721
+ */
4722
+ 400: Error400;
4723
+ /**
4724
+ * Unauthorized
4725
+ */
4726
+ 401: Error401;
4727
+ /**
4728
+ * Forbidden
4729
+ */
4730
+ 403: Error403;
4731
+ /**
4732
+ * Conflict
4733
+ */
4734
+ 409: Error409;
4735
+ /**
4736
+ * Too Many Requests
4737
+ */
4738
+ 429: Error429;
4739
+ /**
4740
+ * Internal Server Error
4741
+ */
4742
+ 500: Error500;
4743
+ };
4744
+ export type AdminReviewAllowlistCreateError = AdminReviewAllowlistCreateErrors[keyof AdminReviewAllowlistCreateErrors];
4745
+ export type AdminReviewAllowlistCreateResponses = {
4746
+ /**
4747
+ * Added to allowlist
4748
+ */
4749
+ 201: ReviewAllowlist;
4750
+ };
4751
+ export type AdminReviewAllowlistCreateResponse = AdminReviewAllowlistCreateResponses[keyof AdminReviewAllowlistCreateResponses];
4752
+ export type AdminReviewAllowlistDestroyData = {
4753
+ body?: never;
4754
+ path: {
4755
+ /**
4756
+ * Allowlist entry ID
4757
+ */
4758
+ id: number;
4759
+ };
4760
+ query?: never;
4761
+ url: '/v1/admin/review/allowlist/{id}';
4762
+ };
4763
+ export type AdminReviewAllowlistDestroyErrors = {
4764
+ /**
4765
+ * Unauthorized
4766
+ */
4767
+ 401: Error401;
4768
+ /**
4769
+ * Forbidden
4770
+ */
4771
+ 403: Error403;
4772
+ /**
4773
+ * Not Found
4774
+ */
4775
+ 404: Error404;
4776
+ /**
4777
+ * Too Many Requests
4778
+ */
4779
+ 429: Error429;
4780
+ /**
4781
+ * Internal Server Error
4782
+ */
4783
+ 500: Error500;
4784
+ };
4785
+ export type AdminReviewAllowlistDestroyError = AdminReviewAllowlistDestroyErrors[keyof AdminReviewAllowlistDestroyErrors];
4786
+ export type AdminReviewAllowlistDestroyResponses = {
4787
+ /**
4788
+ * Removed from allowlist
4789
+ */
4790
+ 204: void;
4791
+ };
4792
+ export type AdminReviewAllowlistDestroyResponse = AdminReviewAllowlistDestroyResponses[keyof AdminReviewAllowlistDestroyResponses];
3976
4793
  //# sourceMappingURL=types.gen.d.ts.map