@retropak/types 1.0.0-draft2 → 1.0.0-draft6

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.
@@ -129,14 +129,28 @@ export interface RetropakManifest {
129
129
  * GameFAQs ID.
130
130
  */
131
131
  gamefaqs?: number;
132
- [k: string]: unknown;
133
132
  };
134
133
  rating?: AgeRating;
134
+ /**
135
+ * European Article Number (EAN-13) barcode from product packaging. Also covers JAN (Japanese Article Number).
136
+ */
137
+ ean?: string;
138
+ /**
139
+ * Universal Product Code (UPC-A) barcode from product packaging.
140
+ */
141
+ upc?: string;
142
+ /**
143
+ * International Standard Book Number (ISBN-10 or ISBN-13) if applicable.
144
+ */
145
+ isbn?: string;
146
+ /**
147
+ * International Standard Serial Number (ISSN) for magazine coverdisks.
148
+ */
149
+ issn?: string;
135
150
  /**
136
151
  * Additional notes, warnings, or information (e.g. access codes, compatibility notes, copy protection details).
137
152
  */
138
153
  notes?: string;
139
- [k: string]: unknown;
140
154
  };
141
155
  /**
142
156
  * The media files (ROMs, disc images, tapes, etc.) included in this package.
@@ -171,13 +185,11 @@ export interface RetropakManifest {
171
185
  * Soundtrack or audio files from the game.
172
186
  */
173
187
  music?: MusicTrack[];
174
- [k: string]: unknown;
175
188
  };
176
189
  /**
177
190
  * External configuration files for emulators or platforms.
178
191
  */
179
192
  config?: ConfigFile[];
180
- [k: string]: unknown;
181
193
  }
182
194
  /**
183
195
  * Multiplayer capabilities.
@@ -195,7 +207,6 @@ export interface Players {
195
207
  * Whether cooperative play is supported.
196
208
  */
197
209
  coop?: boolean;
198
- [k: string]: unknown;
199
210
  }
200
211
  /**
201
212
  * Input devices, peripherals, and capabilities.
@@ -209,7 +220,6 @@ export interface Features {
209
220
  * Optional features the title supports.
210
221
  */
211
222
  supported?: Feature[];
212
- [k: string]: unknown;
213
223
  }
214
224
  /**
215
225
  * A person credited for work on the title.
@@ -223,7 +233,6 @@ export interface CreditEntry {
223
233
  * Job titles or roles (e.g. 'Director', 'Lead Programmer', 'Composer').
224
234
  */
225
235
  roles?: string[];
226
- [k: string]: unknown;
227
236
  }
228
237
  /**
229
238
  * Age/content ratings from various rating boards.
@@ -265,16 +274,11 @@ export interface AgeRating {
265
274
  * BBFC rating (United Kingdom).
266
275
  */
267
276
  bbfc?: "u" | "pg" | "12" | "12a" | "15" | "18" | "r18";
268
- [k: string]: unknown;
269
277
  }
270
278
  /**
271
279
  * A media file (ROM, disc image, tape, etc.).
272
280
  */
273
281
  export interface MediaItem {
274
- /**
275
- * Unique identifier for this media item, used for referencing in other fields.
276
- */
277
- id?: string;
278
282
  /**
279
283
  * Relative path to the media file within the archive.
280
284
  */
@@ -319,14 +323,13 @@ export interface MediaItem {
319
323
  */
320
324
  source?: string;
321
325
  /**
322
- * Official product serial/catalog number from the original media.
326
+ * Official product code or catalog number from the original media (e.g. 'SLUS-00594', 'MK-1491', 'DOL-GALE-USA').
323
327
  */
324
- serial?: string;
328
+ productCode?: string;
325
329
  /**
326
330
  * Additional notes about this specific media file (e.g. distribution method, requirements, known issues).
327
331
  */
328
332
  notes?: string;
329
- [k: string]: unknown;
330
333
  }
331
334
  /**
332
335
  * Front box/case cover image.
@@ -340,7 +343,6 @@ export interface Image {
340
343
  * Alternative text describing the image for accessibility.
341
344
  */
342
345
  alt?: string;
343
- [k: string]: unknown;
344
346
  }
345
347
  /**
346
348
  * Back box/case cover image.
@@ -354,7 +356,6 @@ export interface Image1 {
354
356
  * Alternative text describing the image for accessibility.
355
357
  */
356
358
  alt?: string;
357
- [k: string]: unknown;
358
359
  }
359
360
  /**
360
361
  * Box/case spine image.
@@ -368,7 +369,6 @@ export interface Image2 {
368
369
  * Alternative text describing the image for accessibility.
369
370
  */
370
371
  alt?: string;
371
- [k: string]: unknown;
372
372
  }
373
373
  /**
374
374
  * An image of physical media (cartridge, disc, tape, etc.).
@@ -382,12 +382,7 @@ export interface PhysicalMediaImage {
382
382
  * Alternative text describing the image for accessibility.
383
383
  */
384
384
  alt?: string;
385
- /**
386
- * References the 'id' field of a media item, if specific to one disc/cart.
387
- */
388
- mediaId?: string;
389
385
  type?: MediaType;
390
- [k: string]: unknown;
391
386
  }
392
387
  /**
393
388
  * Logo/wordmark with transparent background.
@@ -401,7 +396,6 @@ export interface Image3 {
401
396
  * Alternative text describing the image for accessibility.
402
397
  */
403
398
  alt?: string;
404
- [k: string]: unknown;
405
399
  }
406
400
  /**
407
401
  * Widescreen background artwork for TV/big screen interfaces. Should be free of text or logos.
@@ -415,7 +409,6 @@ export interface Image4 {
415
409
  * Alternative text describing the image for accessibility.
416
410
  */
417
411
  alt?: string;
418
- [k: string]: unknown;
419
412
  }
420
413
  /**
421
414
  * Title screen screenshot.
@@ -429,7 +422,6 @@ export interface Image5 {
429
422
  * Alternative text describing the image for accessibility.
430
423
  */
431
424
  alt?: string;
432
- [k: string]: unknown;
433
425
  }
434
426
  /**
435
427
  * An image file with optional alt text for accessibility.
@@ -443,7 +435,6 @@ export interface Image6 {
443
435
  * Alternative text describing the image for accessibility.
444
436
  */
445
437
  alt?: string;
446
- [k: string]: unknown;
447
438
  }
448
439
  /**
449
440
  * An image file with optional alt text for accessibility.
@@ -457,7 +448,6 @@ export interface Image7 {
457
448
  * Alternative text describing the image for accessibility.
458
449
  */
459
450
  alt?: string;
460
- [k: string]: unknown;
461
451
  }
462
452
  /**
463
453
  * A soundtrack or audio file from the title.
@@ -475,7 +465,6 @@ export interface MusicTrack {
475
465
  * Whether this track is suitable for background/menu music when browsing titles.
476
466
  */
477
467
  background?: boolean;
478
- [k: string]: unknown;
479
468
  }
480
469
  /**
481
470
  * An external configuration file for emulator or platform-specific settings.
@@ -493,5 +482,4 @@ export interface ConfigFile {
493
482
  * What this config file does or overrides.
494
483
  */
495
484
  description?: string;
496
- [k: string]: unknown;
497
485
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@retropak/types",
3
- "version": "1.0.0-draft2",
3
+ "version": "1.0.0-draft6",
4
4
  "description": "TypeScript type definitions for Retropak manifests",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
package/src/generated.ts CHANGED
@@ -460,14 +460,28 @@ export interface RetropakManifest {
460
460
  * GameFAQs ID.
461
461
  */
462
462
  gamefaqs?: number;
463
- [k: string]: unknown;
464
463
  };
465
464
  rating?: AgeRating;
465
+ /**
466
+ * European Article Number (EAN-13) barcode from product packaging. Also covers JAN (Japanese Article Number).
467
+ */
468
+ ean?: string;
469
+ /**
470
+ * Universal Product Code (UPC-A) barcode from product packaging.
471
+ */
472
+ upc?: string;
473
+ /**
474
+ * International Standard Book Number (ISBN-10 or ISBN-13) if applicable.
475
+ */
476
+ isbn?: string;
477
+ /**
478
+ * International Standard Serial Number (ISSN) for magazine coverdisks.
479
+ */
480
+ issn?: string;
466
481
  /**
467
482
  * Additional notes, warnings, or information (e.g. access codes, compatibility notes, copy protection details).
468
483
  */
469
484
  notes?: string;
470
- [k: string]: unknown;
471
485
  };
472
486
  /**
473
487
  * The media files (ROMs, disc images, tapes, etc.) included in this package.
@@ -502,13 +516,11 @@ export interface RetropakManifest {
502
516
  * Soundtrack or audio files from the game.
503
517
  */
504
518
  music?: MusicTrack[];
505
- [k: string]: unknown;
506
519
  };
507
520
  /**
508
521
  * External configuration files for emulators or platforms.
509
522
  */
510
523
  config?: ConfigFile[];
511
- [k: string]: unknown;
512
524
  }
513
525
  /**
514
526
  * Multiplayer capabilities.
@@ -526,7 +538,6 @@ export interface Players {
526
538
  * Whether cooperative play is supported.
527
539
  */
528
540
  coop?: boolean;
529
- [k: string]: unknown;
530
541
  }
531
542
  /**
532
543
  * Input devices, peripherals, and capabilities.
@@ -540,7 +551,6 @@ export interface Features {
540
551
  * Optional features the title supports.
541
552
  */
542
553
  supported?: Feature[];
543
- [k: string]: unknown;
544
554
  }
545
555
  /**
546
556
  * A person credited for work on the title.
@@ -554,7 +564,6 @@ export interface CreditEntry {
554
564
  * Job titles or roles (e.g. 'Director', 'Lead Programmer', 'Composer').
555
565
  */
556
566
  roles?: string[];
557
- [k: string]: unknown;
558
567
  }
559
568
  /**
560
569
  * Age/content ratings from various rating boards.
@@ -596,16 +605,11 @@ export interface AgeRating {
596
605
  * BBFC rating (United Kingdom).
597
606
  */
598
607
  bbfc?: "u" | "pg" | "12" | "12a" | "15" | "18" | "r18";
599
- [k: string]: unknown;
600
608
  }
601
609
  /**
602
610
  * A media file (ROM, disc image, tape, etc.).
603
611
  */
604
612
  export interface MediaItem {
605
- /**
606
- * Unique identifier for this media item, used for referencing in other fields.
607
- */
608
- id?: string;
609
613
  /**
610
614
  * Relative path to the media file within the archive.
611
615
  */
@@ -650,14 +654,13 @@ export interface MediaItem {
650
654
  */
651
655
  source?: string;
652
656
  /**
653
- * Official product serial/catalog number from the original media.
657
+ * Official product code or catalog number from the original media (e.g. 'SLUS-00594', 'MK-1491', 'DOL-GALE-USA').
654
658
  */
655
- serial?: string;
659
+ productCode?: string;
656
660
  /**
657
661
  * Additional notes about this specific media file (e.g. distribution method, requirements, known issues).
658
662
  */
659
663
  notes?: string;
660
- [k: string]: unknown;
661
664
  }
662
665
  /**
663
666
  * Front box/case cover image.
@@ -671,7 +674,6 @@ export interface Image {
671
674
  * Alternative text describing the image for accessibility.
672
675
  */
673
676
  alt?: string;
674
- [k: string]: unknown;
675
677
  }
676
678
  /**
677
679
  * Back box/case cover image.
@@ -685,7 +687,6 @@ export interface Image1 {
685
687
  * Alternative text describing the image for accessibility.
686
688
  */
687
689
  alt?: string;
688
- [k: string]: unknown;
689
690
  }
690
691
  /**
691
692
  * Box/case spine image.
@@ -699,7 +700,6 @@ export interface Image2 {
699
700
  * Alternative text describing the image for accessibility.
700
701
  */
701
702
  alt?: string;
702
- [k: string]: unknown;
703
703
  }
704
704
  /**
705
705
  * An image of physical media (cartridge, disc, tape, etc.).
@@ -713,12 +713,7 @@ export interface PhysicalMediaImage {
713
713
  * Alternative text describing the image for accessibility.
714
714
  */
715
715
  alt?: string;
716
- /**
717
- * References the 'id' field of a media item, if specific to one disc/cart.
718
- */
719
- mediaId?: string;
720
716
  type?: MediaType;
721
- [k: string]: unknown;
722
717
  }
723
718
  /**
724
719
  * Logo/wordmark with transparent background.
@@ -732,7 +727,6 @@ export interface Image3 {
732
727
  * Alternative text describing the image for accessibility.
733
728
  */
734
729
  alt?: string;
735
- [k: string]: unknown;
736
730
  }
737
731
  /**
738
732
  * Widescreen background artwork for TV/big screen interfaces. Should be free of text or logos.
@@ -746,7 +740,6 @@ export interface Image4 {
746
740
  * Alternative text describing the image for accessibility.
747
741
  */
748
742
  alt?: string;
749
- [k: string]: unknown;
750
743
  }
751
744
  /**
752
745
  * Title screen screenshot.
@@ -760,7 +753,6 @@ export interface Image5 {
760
753
  * Alternative text describing the image for accessibility.
761
754
  */
762
755
  alt?: string;
763
- [k: string]: unknown;
764
756
  }
765
757
  /**
766
758
  * An image file with optional alt text for accessibility.
@@ -774,7 +766,6 @@ export interface Image6 {
774
766
  * Alternative text describing the image for accessibility.
775
767
  */
776
768
  alt?: string;
777
- [k: string]: unknown;
778
769
  }
779
770
  /**
780
771
  * An image file with optional alt text for accessibility.
@@ -788,7 +779,6 @@ export interface Image7 {
788
779
  * Alternative text describing the image for accessibility.
789
780
  */
790
781
  alt?: string;
791
- [k: string]: unknown;
792
782
  }
793
783
  /**
794
784
  * A soundtrack or audio file from the title.
@@ -806,7 +796,6 @@ export interface MusicTrack {
806
796
  * Whether this track is suitable for background/menu music when browsing titles.
807
797
  */
808
798
  background?: boolean;
809
- [k: string]: unknown;
810
799
  }
811
800
  /**
812
801
  * An external configuration file for emulator or platform-specific settings.
@@ -824,5 +813,4 @@ export interface ConfigFile {
824
813
  * What this config file does or overrides.
825
814
  */
826
815
  description?: string;
827
- [k: string]: unknown;
828
816
  }