@brigadasos/nadeshiko-sdk 1.5.0-dev.cd60faf → 1.5.0-dev.d843a63

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.
@@ -6,9 +6,9 @@ export type ClientOptions = {
6
6
  */
7
7
  export type MediaFilterItem = {
8
8
  /**
9
- * Media ID to filter
9
+ * Media identifier (publicId or AniList external ID)
10
10
  */
11
- mediaId: number;
11
+ mediaId: string;
12
12
  /**
13
13
  * Specific episodes (omit for all episodes)
14
14
  */
@@ -132,6 +132,35 @@ export type SearchRequest = {
132
132
  */
133
133
  include?: Array<IncludeExpansion>;
134
134
  };
135
+ /**
136
+ * Morphological token from Japanese text analysis
137
+ */
138
+ export type Token = {
139
+ /**
140
+ * Surface form (the text as it appears in the sentence)
141
+ */
142
+ s: string;
143
+ /**
144
+ * Dictionary form (base/lemma form for search)
145
+ */
146
+ d: string;
147
+ /**
148
+ * Reading in katakana
149
+ */
150
+ r: string;
151
+ /**
152
+ * Begin character offset in textJa.content
153
+ */
154
+ b: number;
155
+ /**
156
+ * End character offset in textJa.content
157
+ */
158
+ e: number;
159
+ /**
160
+ * Primary part-of-speech tag
161
+ */
162
+ p: string;
163
+ };
135
164
  /**
136
165
  * Segment with content, optional highlights, and media URLs
137
166
  */
@@ -173,6 +202,10 @@ export type Segment = {
173
202
  * Media ID this segment belongs to
174
203
  */
175
204
  mediaId: number;
205
+ /**
206
+ * Public ID of the media this segment belongs to
207
+ */
208
+ mediaPublicId: string;
176
209
  textJa: {
177
210
  /**
178
211
  * Original Japanese content
@@ -182,6 +215,10 @@ export type Segment = {
182
215
  * Japanese content with search terms highlighted
183
216
  */
184
217
  highlight?: string;
218
+ /**
219
+ * Morphological tokens for interactive display (Labs feature)
220
+ */
221
+ tokens?: Array<Token>;
185
222
  };
186
223
  textEn: {
187
224
  /**
@@ -245,6 +282,10 @@ export type ExternalId = {
245
282
  * TVDB ID
246
283
  */
247
284
  tvdb?: string;
285
+ /**
286
+ * TMDB ID
287
+ */
288
+ tmdb?: string;
248
289
  };
249
290
  /**
250
291
  * Japanese voice actor (seiyuu)
@@ -363,7 +404,7 @@ export type Media = {
363
404
  /**
364
405
  * Animation studio that produced the media
365
406
  */
366
- studio: string;
407
+ studio?: string;
367
408
  /**
368
409
  * Airing season label for the media
369
410
  */
@@ -402,7 +443,7 @@ export type SearchResponse = {
402
443
  segments: Array<Segment>;
403
444
  includes: {
404
445
  /**
405
- * Media objects keyed by mediaId
446
+ * Media objects keyed by media publicId
406
447
  */
407
448
  media: {
408
449
  [key: string]: Media;
@@ -613,6 +654,10 @@ export type MediaSearchStats = {
613
654
  * Media identifier (look up full details in includes.media)
614
655
  */
615
656
  mediaId: number;
657
+ /**
658
+ * Public identifier for use in URLs and filters
659
+ */
660
+ publicId: string;
616
661
  /**
617
662
  * Number of matching segments found in this media
618
663
  */
@@ -639,7 +684,7 @@ export type SearchStatsResponse = {
639
684
  categories: Array<CategoryCount>;
640
685
  includes: {
641
686
  /**
642
- * Media objects keyed by mediaId
687
+ * Media objects keyed by media publicId
643
688
  */
644
689
  media: {
645
690
  [key: string]: Media;
@@ -731,6 +776,20 @@ export type OpaqueCursorPagination = {
731
776
  export type MediaListResponse = {
732
777
  media: Array<Media>;
733
778
  pagination: OpaqueCursorPagination;
779
+ stats: {
780
+ /**
781
+ * Total number of media across all pages
782
+ */
783
+ totalMedia: number;
784
+ /**
785
+ * Total number of non-deleted segments
786
+ */
787
+ totalSegments: number;
788
+ /**
789
+ * Total number of episodes
790
+ */
791
+ totalEpisodes: number;
792
+ };
734
793
  };
735
794
  /**
736
795
  * Character data for creating/updating media
@@ -825,7 +884,7 @@ export type MediaCreateRequest = {
825
884
  /**
826
885
  * Animation studio that produced the media
827
886
  */
828
- studio: string;
887
+ studio?: string;
829
888
  /**
830
889
  * Airing season label for the media
831
890
  */
@@ -1084,6 +1143,10 @@ export type Series = {
1084
1143
  * Series ID
1085
1144
  */
1086
1145
  id: number;
1146
+ /**
1147
+ * Public identifier for the series
1148
+ */
1149
+ publicId: string;
1087
1150
  /**
1088
1151
  * Japanese name of the series
1089
1152
  */
@@ -1500,39 +1563,39 @@ export type ReportTargetMedia = {
1500
1563
  */
1501
1564
  type: 'MEDIA';
1502
1565
  /**
1503
- * Media ID this report targets
1566
+ * Public ID of the media this report targets
1504
1567
  */
1505
- mediaId: number;
1568
+ mediaId: string;
1506
1569
  };
1507
- export type ReportTargetSegment = {
1570
+ export type ReportTargetSegmentInput = {
1508
1571
  /**
1509
1572
  * Report target type
1510
1573
  */
1511
1574
  type: 'SEGMENT';
1512
1575
  /**
1513
- * Media ID this report targets
1576
+ * Public ID of the media this report targets
1514
1577
  */
1515
- mediaId: number;
1578
+ mediaId: string;
1516
1579
  /**
1517
1580
  * Episode number containing the segment
1518
1581
  */
1519
1582
  episodeNumber?: number;
1520
1583
  /**
1521
- * Segment UUID this report targets
1584
+ * Segment public ID or UUID
1522
1585
  */
1523
- segmentUuid: string;
1586
+ segmentId: string;
1524
1587
  };
1525
1588
  export type UserReportTarget = ({
1526
1589
  type: 'MEDIA';
1527
1590
  } & ReportTargetMedia) | ({
1528
1591
  type: 'SEGMENT';
1529
- } & ReportTargetSegment);
1592
+ } & ReportTargetSegmentInput);
1530
1593
  export type CreateReportRequest = {
1531
1594
  target: UserReportTarget;
1532
1595
  /**
1533
1596
  * Reason for the report
1534
1597
  */
1535
- reason: 'WRONG_TRANSLATION' | 'WRONG_TIMING' | 'WRONG_AUDIO' | 'NSFW_NOT_TAGGED' | 'DUPLICATE_SEGMENT' | 'WRONG_METADATA' | 'MISSING_EPISODES' | 'WRONG_COVER_IMAGE' | 'INAPPROPRIATE_CONTENT' | 'OTHER';
1598
+ reason: 'WRONG_TRANSLATION' | 'WRONG_TIMING' | 'WRONG_AUDIO' | 'WRONG_JAPANESE_TEXT' | 'LOW_QUALITY_AUDIO' | 'NSFW_NOT_TAGGED' | 'DUPLICATE_SEGMENT' | 'WRONG_TITLE' | 'DUPLICATE_MEDIA' | 'WRONG_EPISODE_NUMBER' | 'IMAGE_ISSUE' | 'MISSING_EPISODES' | 'INAPPROPRIATE_CONTENT' | 'OTHER';
1536
1599
  /**
1537
1600
  * Optional description with additional details
1538
1601
  */
@@ -1544,14 +1607,32 @@ export type ReportTargetEpisode = {
1544
1607
  */
1545
1608
  type: 'EPISODE';
1546
1609
  /**
1547
- * Media ID this report targets
1610
+ * Public ID of the media this report targets
1548
1611
  */
1549
- mediaId: number;
1612
+ mediaId: string;
1550
1613
  /**
1551
1614
  * Episode number this report targets
1552
1615
  */
1553
1616
  episodeNumber: number;
1554
1617
  };
1618
+ export type ReportTargetSegment = {
1619
+ /**
1620
+ * Report target type
1621
+ */
1622
+ type: 'SEGMENT';
1623
+ /**
1624
+ * Public ID of the media this report targets
1625
+ */
1626
+ mediaId: string;
1627
+ /**
1628
+ * Episode number containing the segment
1629
+ */
1630
+ episodeNumber?: number;
1631
+ /**
1632
+ * Segment public ID or UUID
1633
+ */
1634
+ segmentId: string;
1635
+ };
1555
1636
  export type ReportTarget = ({
1556
1637
  type: 'MEDIA';
1557
1638
  } & ReportTargetMedia) | ({
@@ -1576,7 +1657,7 @@ export type Report = {
1576
1657
  /**
1577
1658
  * Reason for the report
1578
1659
  */
1579
- 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';
1660
+ reason: 'WRONG_TRANSLATION' | 'WRONG_TIMING' | 'WRONG_AUDIO' | 'WRONG_JAPANESE_TEXT' | 'LOW_QUALITY_AUDIO' | 'NSFW_NOT_TAGGED' | 'DUPLICATE_SEGMENT' | 'WRONG_METADATA' | 'MISSING_EPISODES' | 'WRONG_COVER_IMAGE' | 'WRONG_TITLE' | 'DUPLICATE_MEDIA' | 'WRONG_EPISODE_NUMBER' | 'IMAGE_ISSUE' | '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';
1580
1661
  /**
1581
1662
  * Optional description with additional details
1582
1663
  */
@@ -1659,7 +1740,7 @@ export type ActivityType = 'SEARCH' | 'ANKI_EXPORT' | 'SEGMENT_PLAY' | 'SHARE';
1659
1740
  export type UserActivity = {
1660
1741
  id: number;
1661
1742
  activityType: ActivityType;
1662
- segmentUuid: string;
1743
+ segmentId: string;
1663
1744
  mediaId: number;
1664
1745
  searchQuery: string;
1665
1746
  mediaName: string;
@@ -1683,6 +1764,10 @@ export type Collection = {
1683
1764
  * Collection ID
1684
1765
  */
1685
1766
  id: number;
1767
+ /**
1768
+ * Public identifier for the collection
1769
+ */
1770
+ publicId: string;
1686
1771
  /**
1687
1772
  * Name of the collection
1688
1773
  */
@@ -1710,9 +1795,9 @@ export type Collection = {
1710
1795
  };
1711
1796
  export type UserExportCollection = Collection & {
1712
1797
  /**
1713
- * Segment UUIDs in saved order
1798
+ * Segment IDs in saved order
1714
1799
  */
1715
- segmentUuids: Array<string>;
1800
+ segmentIds: Array<number>;
1716
1801
  };
1717
1802
  /**
1718
1803
  * User data export payload (identifier-oriented references)
@@ -1735,21 +1820,17 @@ export type UserLabFeature = {
1735
1820
  */
1736
1821
  key: string;
1737
1822
  /**
1738
- * Human-readable feature name (only present for labs)
1823
+ * Human-readable feature name
1739
1824
  */
1740
1825
  name?: string;
1741
1826
  /**
1742
- * Description of what the feature does (only present for labs)
1827
+ * Description of what the feature does
1743
1828
  */
1744
1829
  description?: string;
1745
1830
  /**
1746
1831
  * Whether this feature is currently active for the user
1747
1832
  */
1748
1833
  active: boolean;
1749
- /**
1750
- * Whether the user can toggle this feature (lab=true, flag=false)
1751
- */
1752
- userControllable: boolean;
1753
1834
  };
1754
1835
  /**
1755
1836
  * Paginated collection list response
@@ -1909,6 +1990,20 @@ export type AdminReportListResponse = {
1909
1990
  reports: Array<AdminReport>;
1910
1991
  pagination: OpaqueCursorPagination;
1911
1992
  };
1993
+ export type BatchUpdateReportsRequest = {
1994
+ /**
1995
+ * Report IDs to update
1996
+ */
1997
+ ids: Array<number>;
1998
+ /**
1999
+ * New status for all selected reports
2000
+ */
2001
+ status: 'PENDING' | 'CONCERN' | 'ACCEPTED' | 'REJECTED' | 'RESOLVED' | 'IGNORED';
2002
+ /**
2003
+ * Optional admin notes to set on all selected reports
2004
+ */
2005
+ adminNotes?: string;
2006
+ };
1912
2007
  export type UpdateReportRequest = {
1913
2008
  /**
1914
2009
  * New status for the report
@@ -2580,9 +2675,9 @@ export type DeleteSeriesData = {
2580
2675
  body?: never;
2581
2676
  path: {
2582
2677
  /**
2583
- * Series ID
2678
+ * Series public ID
2584
2679
  */
2585
- id: number;
2680
+ id: string;
2586
2681
  };
2587
2682
  query?: never;
2588
2683
  url: '/v1/media/series/{id}';
@@ -2625,9 +2720,9 @@ export type GetSeriesData = {
2625
2720
  body?: never;
2626
2721
  path: {
2627
2722
  /**
2628
- * Series ID
2723
+ * Series public ID
2629
2724
  */
2630
- id: number;
2725
+ id: string;
2631
2726
  };
2632
2727
  query?: {
2633
2728
  /**
@@ -2688,9 +2783,9 @@ export type UpdateSeriesData = {
2688
2783
  };
2689
2784
  path: {
2690
2785
  /**
2691
- * Series ID
2786
+ * Series public ID
2692
2787
  */
2693
- id: number;
2788
+ id: string;
2694
2789
  };
2695
2790
  query?: never;
2696
2791
  url: '/v1/media/series/{id}';
@@ -2732,9 +2827,9 @@ export type UpdateSeriesResponse = UpdateSeriesResponses[keyof UpdateSeriesRespo
2732
2827
  export type AddMediaToSeriesData = {
2733
2828
  body: {
2734
2829
  /**
2735
- * Media ID to add
2830
+ * Media public ID to add
2736
2831
  */
2737
- mediaId: number;
2832
+ mediaId: string;
2738
2833
  /**
2739
2834
  * Position in the series (1-indexed)
2740
2835
  */
@@ -2742,9 +2837,9 @@ export type AddMediaToSeriesData = {
2742
2837
  };
2743
2838
  path: {
2744
2839
  /**
2745
- * Series ID
2840
+ * Series public ID
2746
2841
  */
2747
- id: number;
2842
+ id: string;
2748
2843
  };
2749
2844
  query?: never;
2750
2845
  url: '/v1/media/series/{id}/media';
@@ -2787,13 +2882,13 @@ export type RemoveMediaFromSeriesData = {
2787
2882
  body?: never;
2788
2883
  path: {
2789
2884
  /**
2790
- * Series ID
2885
+ * Series public ID
2791
2886
  */
2792
- id: number;
2887
+ id: string;
2793
2888
  /**
2794
- * Media ID
2889
+ * Media public ID
2795
2890
  */
2796
- mediaId: number;
2891
+ mediaId: string;
2797
2892
  };
2798
2893
  query?: never;
2799
2894
  url: '/v1/media/series/{id}/media/{mediaId}';
@@ -2841,13 +2936,13 @@ export type UpdateSeriesMediaData = {
2841
2936
  };
2842
2937
  path: {
2843
2938
  /**
2844
- * Series ID
2939
+ * Series public ID
2845
2940
  */
2846
- id: number;
2941
+ id: string;
2847
2942
  /**
2848
- * Media ID
2943
+ * Media public ID
2849
2944
  */
2850
- mediaId: number;
2945
+ mediaId: string;
2851
2946
  };
2852
2947
  query?: never;
2853
2948
  url: '/v1/media/series/{id}/media/{mediaId}';
@@ -2890,7 +2985,7 @@ export type GetCharacterData = {
2890
2985
  body?: never;
2891
2986
  path: {
2892
2987
  /**
2893
- * Internal character ID
2988
+ * Character ID
2894
2989
  */
2895
2990
  id: number;
2896
2991
  };
@@ -2980,9 +3075,9 @@ export type DeleteMediaData = {
2980
3075
  body?: never;
2981
3076
  path: {
2982
3077
  /**
2983
- * Media ID
3078
+ * Media public ID
2984
3079
  */
2985
- id: number;
3080
+ id: string;
2986
3081
  };
2987
3082
  query?: never;
2988
3083
  url: '/v1/media/{id}';
@@ -3025,9 +3120,9 @@ export type GetMediaData = {
3025
3120
  body?: never;
3026
3121
  path: {
3027
3122
  /**
3028
- * Media ID
3123
+ * Media public ID
3029
3124
  */
3030
- id: number;
3125
+ id: string;
3031
3126
  };
3032
3127
  query?: {
3033
3128
  /**
@@ -3075,9 +3170,9 @@ export type UpdateMediaData = {
3075
3170
  body: MediaUpdateRequest;
3076
3171
  path: {
3077
3172
  /**
3078
- * Media ID
3173
+ * Media public ID
3079
3174
  */
3080
- id: number;
3175
+ id: string;
3081
3176
  };
3082
3177
  query?: never;
3083
3178
  url: '/v1/media/{id}';
@@ -3120,9 +3215,9 @@ export type ListEpisodesData = {
3120
3215
  body?: never;
3121
3216
  path: {
3122
3217
  /**
3123
- * ID of the media
3218
+ * Public ID of the media
3124
3219
  */
3125
- mediaId: number;
3220
+ mediaId: string;
3126
3221
  };
3127
3222
  query?: {
3128
3223
  /**
@@ -3174,9 +3269,9 @@ export type CreateEpisodeData = {
3174
3269
  body: EpisodeCreateRequest;
3175
3270
  path: {
3176
3271
  /**
3177
- * ID of the media
3272
+ * Public ID of the media
3178
3273
  */
3179
- mediaId: number;
3274
+ mediaId: string;
3180
3275
  };
3181
3276
  query?: never;
3182
3277
  url: '/v1/media/{mediaId}/episodes';
@@ -3223,9 +3318,9 @@ export type DeleteEpisodeData = {
3223
3318
  body?: never;
3224
3319
  path: {
3225
3320
  /**
3226
- * ID of the media
3321
+ * Public ID of the media
3227
3322
  */
3228
- mediaId: number;
3323
+ mediaId: string;
3229
3324
  /**
3230
3325
  * Episode number
3231
3326
  */
@@ -3272,9 +3367,9 @@ export type GetEpisodeData = {
3272
3367
  body?: never;
3273
3368
  path: {
3274
3369
  /**
3275
- * ID of the media
3370
+ * Public ID of the media
3276
3371
  */
3277
- mediaId: number;
3372
+ mediaId: string;
3278
3373
  /**
3279
3374
  * Episode number
3280
3375
  */
@@ -3321,9 +3416,9 @@ export type UpdateEpisodeData = {
3321
3416
  body: EpisodeUpdateRequest;
3322
3417
  path: {
3323
3418
  /**
3324
- * ID of the media
3419
+ * Public ID of the media
3325
3420
  */
3326
- mediaId: number;
3421
+ mediaId: string;
3327
3422
  /**
3328
3423
  * Episode number
3329
3424
  */
@@ -3370,9 +3465,9 @@ export type ListSegmentsData = {
3370
3465
  body?: never;
3371
3466
  path: {
3372
3467
  /**
3373
- * ID of the media
3468
+ * Public ID of the media
3374
3469
  */
3375
- mediaId: number;
3470
+ mediaId: string;
3376
3471
  /**
3377
3472
  * Episode number
3378
3473
  */
@@ -3434,9 +3529,9 @@ export type CreateSegmentData = {
3434
3529
  body: SegmentCreateRequest;
3435
3530
  path: {
3436
3531
  /**
3437
- * ID of the media
3532
+ * Public ID of the media
3438
3533
  */
3439
- mediaId: number;
3534
+ mediaId: string;
3440
3535
  /**
3441
3536
  * Episode number
3442
3537
  */
@@ -3487,9 +3582,9 @@ export type CreateSegmentsBatchData = {
3487
3582
  body: SegmentBatchCreateRequest;
3488
3583
  path: {
3489
3584
  /**
3490
- * ID of the media
3585
+ * Public ID of the media
3491
3586
  */
3492
- mediaId: number;
3587
+ mediaId: string;
3493
3588
  /**
3494
3589
  * Episode number
3495
3590
  */
@@ -3545,9 +3640,9 @@ export type DeleteSegmentData = {
3545
3640
  body?: never;
3546
3641
  path: {
3547
3642
  /**
3548
- * ID of the media
3643
+ * Public ID of the media
3549
3644
  */
3550
- mediaId: number;
3645
+ mediaId: string;
3551
3646
  /**
3552
3647
  * Episode number
3553
3648
  */
@@ -3598,9 +3693,9 @@ export type GetSegmentData = {
3598
3693
  body?: never;
3599
3694
  path: {
3600
3695
  /**
3601
- * ID of the media
3696
+ * Public ID of the media
3602
3697
  */
3603
- mediaId: number;
3698
+ mediaId: string;
3604
3699
  /**
3605
3700
  * Episode number
3606
3701
  */
@@ -3651,9 +3746,9 @@ export type UpdateSegmentData = {
3651
3746
  body: SegmentUpdateRequest;
3652
3747
  path: {
3653
3748
  /**
3654
- * ID of the media
3749
+ * Public ID of the media
3655
3750
  */
3656
- mediaId: number;
3751
+ mediaId: string;
3657
3752
  /**
3658
3753
  * Episode number
3659
3754
  */
@@ -3889,11 +3984,12 @@ export type ListUserActivityResponses = {
3889
3984
  export type ListUserActivityResponse = ListUserActivityResponses[keyof ListUserActivityResponses];
3890
3985
  export type TrackUserActivityData = {
3891
3986
  body: {
3892
- activityType: 'SEGMENT_PLAY' | 'SHARE';
3893
- segmentUuid?: string;
3987
+ activityType: 'SEARCH' | 'SEGMENT_PLAY' | 'SHARE';
3988
+ segmentId?: string;
3894
3989
  mediaId?: number;
3895
3990
  mediaName?: string;
3896
3991
  japaneseText?: string;
3992
+ searchQuery?: string;
3897
3993
  };
3898
3994
  path?: never;
3899
3995
  query?: never;
@@ -4263,9 +4359,9 @@ export type DeleteCollectionData = {
4263
4359
  body?: never;
4264
4360
  path: {
4265
4361
  /**
4266
- * Collection ID
4362
+ * Collection public ID
4267
4363
  */
4268
- id: number;
4364
+ id: string;
4269
4365
  };
4270
4366
  query?: never;
4271
4367
  url: '/v1/collections/{id}';
@@ -4308,9 +4404,9 @@ export type GetCollectionData = {
4308
4404
  body?: never;
4309
4405
  path: {
4310
4406
  /**
4311
- * Collection ID
4407
+ * Collection public ID
4312
4408
  */
4313
- id: number;
4409
+ id: string;
4314
4410
  };
4315
4411
  query?: {
4316
4412
  /**
@@ -4365,9 +4461,9 @@ export type UpdateCollectionData = {
4365
4461
  };
4366
4462
  path: {
4367
4463
  /**
4368
- * Collection ID
4464
+ * Collection public ID
4369
4465
  */
4370
- id: number;
4466
+ id: string;
4371
4467
  };
4372
4468
  query?: never;
4373
4469
  url: '/v1/collections/{id}';
@@ -4409,9 +4505,9 @@ export type UpdateCollectionResponse = UpdateCollectionResponses[keyof UpdateCol
4409
4505
  export type AddSegmentToCollectionData = {
4410
4506
  body: {
4411
4507
  /**
4412
- * UUID of the segment to add
4508
+ * Public ID or UUID of the segment to add
4413
4509
  */
4414
- segmentUuid: string;
4510
+ segmentId: string;
4415
4511
  /**
4416
4512
  * Optional annotation
4417
4513
  */
@@ -4419,9 +4515,9 @@ export type AddSegmentToCollectionData = {
4419
4515
  };
4420
4516
  path: {
4421
4517
  /**
4422
- * Collection ID
4518
+ * Collection public ID
4423
4519
  */
4424
- id: number;
4520
+ id: string;
4425
4521
  };
4426
4522
  query?: never;
4427
4523
  url: '/v1/collections/{id}/segments';
@@ -4464,16 +4560,16 @@ export type RemoveSegmentFromCollectionData = {
4464
4560
  body?: never;
4465
4561
  path: {
4466
4562
  /**
4467
- * Collection ID
4563
+ * Collection public ID
4468
4564
  */
4469
- id: number;
4565
+ id: string;
4470
4566
  /**
4471
- * Segment UUID
4567
+ * Segment ID
4472
4568
  */
4473
- uuid: string;
4569
+ segmentId: number;
4474
4570
  };
4475
4571
  query?: never;
4476
- url: '/v1/collections/{id}/segments/{uuid}';
4572
+ url: '/v1/collections/{id}/segments/{segmentId}';
4477
4573
  };
4478
4574
  export type RemoveSegmentFromCollectionErrors = {
4479
4575
  /**
@@ -4522,16 +4618,16 @@ export type UpdateCollectionSegmentData = {
4522
4618
  };
4523
4619
  path: {
4524
4620
  /**
4525
- * Collection ID
4621
+ * Collection public ID
4526
4622
  */
4527
- id: number;
4623
+ id: string;
4528
4624
  /**
4529
- * Segment UUID
4625
+ * Segment ID
4530
4626
  */
4531
- uuid: string;
4627
+ segmentId: number;
4532
4628
  };
4533
4629
  query?: never;
4534
- url: '/v1/collections/{id}/segments/{uuid}';
4630
+ url: '/v1/collections/{id}/segments/{segmentId}';
4535
4631
  };
4536
4632
  export type UpdateCollectionSegmentErrors = {
4537
4633
  /**
@@ -4571,9 +4667,9 @@ export type SearchCollectionSegmentsData = {
4571
4667
  body?: never;
4572
4668
  path: {
4573
4669
  /**
4574
- * Collection ID
4670
+ * Collection public ID
4575
4671
  */
4576
- id: number;
4672
+ id: string;
4577
4673
  };
4578
4674
  query?: {
4579
4675
  /**
@@ -4625,9 +4721,9 @@ export type GetCollectionStatsData = {
4625
4721
  body?: never;
4626
4722
  path: {
4627
4723
  /**
4628
- * Collection ID
4724
+ * Collection public ID
4629
4725
  */
4630
- id: number;
4726
+ id: string;
4631
4727
  };
4632
4728
  query?: never;
4633
4729
  url: '/v1/collections/{id}/stats';
@@ -5228,9 +5324,10 @@ export type ListAdminReportsData = {
5228
5324
  */
5229
5325
  take?: number;
5230
5326
  /**
5231
- * Filter by report status
5327
+ * Filter by report status. Accepts a single value or comma-separated list (e.g. "PENDING,ACCEPTED"). Valid values: PENDING, CONCERN, ACCEPTED, REJECTED, RESOLVED, IGNORED.
5328
+ *
5232
5329
  */
5233
- status?: 'PENDING' | 'CONCERN' | 'ACCEPTED' | 'REJECTED' | 'RESOLVED' | 'IGNORED';
5330
+ status?: string;
5234
5331
  /**
5235
5332
  * Filter by report source
5236
5333
  */
@@ -5248,9 +5345,9 @@ export type ListAdminReportsData = {
5248
5345
  */
5249
5346
  'target.episodeNumber'?: number;
5250
5347
  /**
5251
- * Filter by target segment UUID
5348
+ * Filter by target segment ID
5252
5349
  */
5253
- 'target.segmentUuid'?: string;
5350
+ 'target.segmentId'?: number;
5254
5351
  /**
5255
5352
  * Filter by audit run ID
5256
5353
  */
@@ -5284,6 +5381,47 @@ export type ListAdminReportsResponses = {
5284
5381
  200: AdminReportListResponse;
5285
5382
  };
5286
5383
  export type ListAdminReportsResponse = ListAdminReportsResponses[keyof ListAdminReportsResponses];
5384
+ export type BatchUpdateAdminReportsData = {
5385
+ body: BatchUpdateReportsRequest;
5386
+ path?: never;
5387
+ query?: never;
5388
+ url: '/v1/admin/reports/batch';
5389
+ };
5390
+ export type BatchUpdateAdminReportsErrors = {
5391
+ /**
5392
+ * Bad Request
5393
+ */
5394
+ 400: Error400;
5395
+ /**
5396
+ * Unauthorized (session)
5397
+ */
5398
+ 401: Error401;
5399
+ /**
5400
+ * Forbidden
5401
+ */
5402
+ 403: Error403;
5403
+ /**
5404
+ * Too Many Requests
5405
+ */
5406
+ 429: Error429;
5407
+ /**
5408
+ * Internal Server Error
5409
+ */
5410
+ 500: Error500;
5411
+ };
5412
+ export type BatchUpdateAdminReportsError = BatchUpdateAdminReportsErrors[keyof BatchUpdateAdminReportsErrors];
5413
+ export type BatchUpdateAdminReportsResponses = {
5414
+ /**
5415
+ * Reports updated successfully
5416
+ */
5417
+ 200: {
5418
+ /**
5419
+ * Number of reports updated
5420
+ */
5421
+ updated: number;
5422
+ };
5423
+ };
5424
+ export type BatchUpdateAdminReportsResponse = BatchUpdateAdminReportsResponses[keyof BatchUpdateAdminReportsResponses];
5287
5425
  export type UpdateAdminReportData = {
5288
5426
  body: UpdateReportRequest;
5289
5427
  path: {
@@ -5555,4 +5693,80 @@ export type GetAdminMediaAuditRunResponses = {
5555
5693
  };
5556
5694
  };
5557
5695
  export type GetAdminMediaAuditRunResponse = GetAdminMediaAuditRunResponses[keyof GetAdminMediaAuditRunResponses];
5696
+ export type GetAnnouncementData = {
5697
+ body?: never;
5698
+ path?: never;
5699
+ query?: never;
5700
+ url: '/v1/admin/announcement';
5701
+ };
5702
+ export type GetAnnouncementErrors = {
5703
+ /**
5704
+ * Too Many Requests
5705
+ */
5706
+ 429: Error429;
5707
+ /**
5708
+ * Internal Server Error
5709
+ */
5710
+ 500: Error500;
5711
+ };
5712
+ export type GetAnnouncementError = GetAnnouncementErrors[keyof GetAnnouncementErrors];
5713
+ export type GetAnnouncementResponses = {
5714
+ /**
5715
+ * OK
5716
+ */
5717
+ 200: {
5718
+ message: string;
5719
+ type: 'info' | 'warning' | 'maintenance';
5720
+ active: boolean;
5721
+ };
5722
+ /**
5723
+ * No announcement set
5724
+ */
5725
+ 204: void;
5726
+ };
5727
+ export type GetAnnouncementResponse = GetAnnouncementResponses[keyof GetAnnouncementResponses];
5728
+ export type UpdateAnnouncementData = {
5729
+ body: {
5730
+ message: string;
5731
+ type: 'info' | 'warning' | 'maintenance';
5732
+ active: boolean;
5733
+ };
5734
+ path?: never;
5735
+ query?: never;
5736
+ url: '/v1/admin/announcement';
5737
+ };
5738
+ export type UpdateAnnouncementErrors = {
5739
+ /**
5740
+ * Bad Request
5741
+ */
5742
+ 400: Error400;
5743
+ /**
5744
+ * Unauthorized (session)
5745
+ */
5746
+ 401: Error401;
5747
+ /**
5748
+ * Forbidden
5749
+ */
5750
+ 403: Error403;
5751
+ /**
5752
+ * Too Many Requests
5753
+ */
5754
+ 429: Error429;
5755
+ /**
5756
+ * Internal Server Error
5757
+ */
5758
+ 500: Error500;
5759
+ };
5760
+ export type UpdateAnnouncementError = UpdateAnnouncementErrors[keyof UpdateAnnouncementErrors];
5761
+ export type UpdateAnnouncementResponses = {
5762
+ /**
5763
+ * Announcement updated
5764
+ */
5765
+ 200: {
5766
+ message: string;
5767
+ type: 'info' | 'warning' | 'maintenance';
5768
+ active: boolean;
5769
+ };
5770
+ };
5771
+ export type UpdateAnnouncementResponse = UpdateAnnouncementResponses[keyof UpdateAnnouncementResponses];
5558
5772
  //# sourceMappingURL=types.gen.d.ts.map