@datocms/cma-client 5.1.3 → 5.1.4

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.
Files changed (84) hide show
  1. package/dist/cjs/fieldTypes/lat_lon.js +6 -6
  2. package/dist/cjs/fieldTypes/lat_lon.js.map +1 -1
  3. package/dist/cjs/fieldTypes/rich_text.js.map +1 -1
  4. package/dist/cjs/fieldTypes/single_block.js.map +1 -1
  5. package/dist/cjs/fieldTypes/structured_text.js.map +1 -1
  6. package/dist/cjs/generated/Client.js +1 -1
  7. package/dist/cjs/generated/resources/Item.js +41 -23
  8. package/dist/cjs/generated/resources/Item.js.map +1 -1
  9. package/dist/cjs/generated/resources/ScheduledPublication.js +4 -2
  10. package/dist/cjs/generated/resources/ScheduledPublication.js.map +1 -1
  11. package/dist/cjs/generated/resources/ScheduledUnpublishing.js +4 -2
  12. package/dist/cjs/generated/resources/ScheduledUnpublishing.js.map +1 -1
  13. package/dist/cjs/generated/resources/Upload.js +4 -2
  14. package/dist/cjs/generated/resources/Upload.js.map +1 -1
  15. package/dist/cjs/index.js +1 -0
  16. package/dist/cjs/index.js.map +1 -1
  17. package/dist/cjs/utilities/buildBlockRecord.js.map +1 -1
  18. package/dist/cjs/utilities/itemDefinition.js +3 -0
  19. package/dist/cjs/utilities/itemDefinition.js.map +1 -0
  20. package/dist/esm/fieldTypes/lat_lon.d.ts +5 -5
  21. package/dist/esm/fieldTypes/lat_lon.js +3 -3
  22. package/dist/esm/fieldTypes/lat_lon.js.map +1 -1
  23. package/dist/esm/fieldTypes/rich_text.d.ts +8 -7
  24. package/dist/esm/fieldTypes/rich_text.js.map +1 -1
  25. package/dist/esm/fieldTypes/single_block.d.ts +15 -14
  26. package/dist/esm/fieldTypes/single_block.js.map +1 -1
  27. package/dist/esm/fieldTypes/structured_text.d.ts +13 -12
  28. package/dist/esm/fieldTypes/structured_text.js.map +1 -1
  29. package/dist/esm/generated/ApiTypes.d.ts +67 -62
  30. package/dist/esm/generated/Client.js +1 -1
  31. package/dist/esm/generated/RawApiTypes.d.ts +116 -121
  32. package/dist/esm/generated/resources/Field.d.ts +230 -230
  33. package/dist/esm/generated/resources/Item.d.ts +42 -24
  34. package/dist/esm/generated/resources/Item.js +41 -23
  35. package/dist/esm/generated/resources/Item.js.map +1 -1
  36. package/dist/esm/generated/resources/ItemVersion.d.ts +1 -1
  37. package/dist/esm/generated/resources/ScheduledPublication.d.ts +5 -2
  38. package/dist/esm/generated/resources/ScheduledPublication.js +4 -2
  39. package/dist/esm/generated/resources/ScheduledPublication.js.map +1 -1
  40. package/dist/esm/generated/resources/ScheduledUnpublishing.d.ts +5 -2
  41. package/dist/esm/generated/resources/ScheduledUnpublishing.js +4 -2
  42. package/dist/esm/generated/resources/ScheduledUnpublishing.js.map +1 -1
  43. package/dist/esm/generated/resources/Upload.d.ts +10 -2
  44. package/dist/esm/generated/resources/Upload.js +4 -2
  45. package/dist/esm/generated/resources/Upload.js.map +1 -1
  46. package/dist/esm/index.d.ts +1 -0
  47. package/dist/esm/index.js +1 -0
  48. package/dist/esm/index.js.map +1 -1
  49. package/dist/esm/utilities/buildBlockRecord.d.ts +5 -31
  50. package/dist/esm/utilities/buildBlockRecord.js.map +1 -1
  51. package/dist/esm/utilities/itemDefinition.d.ts +74 -0
  52. package/dist/esm/utilities/itemDefinition.js +2 -0
  53. package/dist/esm/utilities/itemDefinition.js.map +1 -0
  54. package/dist/types/fieldTypes/lat_lon.d.ts +5 -5
  55. package/dist/types/fieldTypes/rich_text.d.ts +8 -7
  56. package/dist/types/fieldTypes/single_block.d.ts +15 -14
  57. package/dist/types/fieldTypes/structured_text.d.ts +13 -12
  58. package/dist/types/generated/ApiTypes.d.ts +67 -62
  59. package/dist/types/generated/RawApiTypes.d.ts +116 -121
  60. package/dist/types/generated/resources/Field.d.ts +230 -230
  61. package/dist/types/generated/resources/Item.d.ts +42 -24
  62. package/dist/types/generated/resources/ItemVersion.d.ts +1 -1
  63. package/dist/types/generated/resources/ScheduledPublication.d.ts +5 -2
  64. package/dist/types/generated/resources/ScheduledUnpublishing.d.ts +5 -2
  65. package/dist/types/generated/resources/Upload.d.ts +10 -2
  66. package/dist/types/index.d.ts +1 -0
  67. package/dist/types/utilities/buildBlockRecord.d.ts +5 -31
  68. package/dist/types/utilities/itemDefinition.d.ts +74 -0
  69. package/package.json +5 -5
  70. package/resources.json +564 -0
  71. package/src/fieldTypes/lat_lon.ts +7 -9
  72. package/src/fieldTypes/rich_text.ts +22 -13
  73. package/src/fieldTypes/single_block.ts +42 -32
  74. package/src/fieldTypes/structured_text.ts +60 -23
  75. package/src/generated/ApiTypes.ts +110 -70
  76. package/src/generated/Client.ts +1 -1
  77. package/src/generated/RawApiTypes.ts +160 -138
  78. package/src/generated/resources/Item.ts +360 -108
  79. package/src/generated/resources/ScheduledPublication.ts +31 -11
  80. package/src/generated/resources/ScheduledUnpublishing.ts +31 -11
  81. package/src/generated/resources/Upload.ts +54 -12
  82. package/src/index.ts +1 -0
  83. package/src/utilities/buildBlockRecord.ts +19 -3
  84. package/src/utilities/itemDefinition.ts +229 -0
@@ -1,4 +1,5 @@
1
- import type { BooleanFieldAppearance, BooleanFieldValidators, BooleanFieldValue, ColorFieldAppearance, ColorFieldValidators, ColorFieldValue, DateFieldAppearance, DateFieldValidators, DateFieldValue, DateTimeFieldAppearance, DateTimeFieldValidators, DateTimeFieldValue, FileFieldAppearance, FileFieldValidators, FloatFieldAppearance, FloatFieldValidators, FloatFieldValue, GalleryFieldAppearance, GalleryFieldValidators, IntegerFieldAppearance, IntegerFieldValidators, IntegerFieldValue, JsonFieldAppearance, JsonFieldValidators, JsonFieldValue, LinkFieldAppearance, LinkFieldValidators, LinksFieldAppearance, LinksFieldValidators, LocationFieldAppearance, LocationFieldValidators, LocationFieldValue, RichTextFieldAppearance, RichTextFieldValidators, SeoFieldAppearance, SeoFieldValidators, SingleBlockFieldAppearance, SingleBlockFieldValidators, SlugFieldAppearance, SlugFieldValidators, StringFieldAppearance, StringFieldValidators, StringFieldValue, StructuredTextFieldAppearance, StructuredTextFieldValidators, TextFieldAppearance, TextFieldValidators, TextFieldValue, VideoFieldAppearance, VideoFieldValidators } from '../fieldTypes';
1
+ import type { BooleanFieldAppearance, BooleanFieldValidators, BooleanFieldValue, ColorFieldAppearance, ColorFieldValidators, ColorFieldValue, DateFieldAppearance, DateFieldValidators, DateFieldValue, DateTimeFieldAppearance, DateTimeFieldValidators, DateTimeFieldValue, FileFieldAppearance, FileFieldValidators, FloatFieldAppearance, FloatFieldValidators, FloatFieldValue, GalleryFieldAppearance, GalleryFieldValidators, IntegerFieldAppearance, IntegerFieldValidators, IntegerFieldValue, JsonFieldAppearance, JsonFieldValidators, JsonFieldValue, LatLonFieldAppearance, LatLonFieldValidators, LatLonFieldValue, LinkFieldAppearance, LinkFieldValidators, LinksFieldAppearance, LinksFieldValidators, RichTextFieldAppearance, RichTextFieldValidators, SeoFieldAppearance, SeoFieldValidators, SingleBlockFieldAppearance, SingleBlockFieldValidators, SlugFieldAppearance, SlugFieldValidators, StringFieldAppearance, StringFieldValidators, StringFieldValue, StructuredTextFieldAppearance, StructuredTextFieldValidators, TextFieldAppearance, TextFieldValidators, TextFieldValue, VideoFieldAppearance, VideoFieldValidators } from '../fieldTypes';
2
+ import type { ItemDefinition } from '../utilities/itemDefinition';
2
3
  /**
3
4
  * Enhanced appearance configuration with field-specific types and addon support
4
5
  */
@@ -27,7 +28,7 @@ type LocalizedFieldAttributesForFieldType<SourceType, FieldType extends RawField
27
28
  * Union of localized and non-localized field configurations for attributes
28
29
  */
29
30
  type FieldAttributesForFieldType<SourceType, FieldType extends RawFieldAttributes['field_type'], FieldValue, FieldValidators, FieldAppearance> = NonLocalizedFieldAttributesForFieldType<SourceType, FieldType, FieldValue, FieldValidators, FieldAppearance> | LocalizedFieldAttributesForFieldType<SourceType, FieldType, FieldValue, FieldValidators, FieldAppearance>;
30
- type GenericFieldAttributes<SourceType> = FieldAttributesForFieldType<SourceType, 'boolean', BooleanFieldValue, BooleanFieldValidators, BooleanFieldAppearance> | FieldAttributesForFieldType<SourceType, 'color', ColorFieldValue, ColorFieldValidators, ColorFieldAppearance> | FieldAttributesForFieldType<SourceType, 'date', DateFieldValue, DateFieldValidators, DateFieldAppearance> | FieldAttributesForFieldType<SourceType, 'date_time', DateTimeFieldValue, DateTimeFieldValidators, DateTimeFieldAppearance> | FieldAttributesForFieldType<SourceType, 'file', null, FileFieldValidators, FileFieldAppearance> | FieldAttributesForFieldType<SourceType, 'float', FloatFieldValue, FloatFieldValidators, FloatFieldAppearance> | FieldAttributesForFieldType<SourceType, 'gallery', null, GalleryFieldValidators, GalleryFieldAppearance> | FieldAttributesForFieldType<SourceType, 'integer', IntegerFieldValue, IntegerFieldValidators, IntegerFieldAppearance> | FieldAttributesForFieldType<SourceType, 'json', JsonFieldValue, JsonFieldValidators, JsonFieldAppearance> | FieldAttributesForFieldType<SourceType, 'lat_lon', LocationFieldValue, LocationFieldValidators, LocationFieldAppearance> | FieldAttributesForFieldType<SourceType, 'link', null, LinkFieldValidators, LinkFieldAppearance> | FieldAttributesForFieldType<SourceType, 'links', null, LinksFieldValidators, LinksFieldAppearance> | FieldAttributesForFieldType<SourceType, 'rich_text', null, RichTextFieldValidators, RichTextFieldAppearance> | FieldAttributesForFieldType<SourceType, 'seo', null, SeoFieldValidators, SeoFieldAppearance> | FieldAttributesForFieldType<SourceType, 'single_block', null, SingleBlockFieldValidators, SingleBlockFieldAppearance> | FieldAttributesForFieldType<SourceType, 'slug', null, SlugFieldValidators, SlugFieldAppearance> | FieldAttributesForFieldType<SourceType, 'string', StringFieldValue, StringFieldValidators, StringFieldAppearance> | FieldAttributesForFieldType<SourceType, 'structured_text', null, StructuredTextFieldValidators, StructuredTextFieldAppearance> | FieldAttributesForFieldType<SourceType, 'text', TextFieldValue, TextFieldValidators, TextFieldAppearance> | FieldAttributesForFieldType<SourceType, 'video', null, VideoFieldValidators, VideoFieldAppearance>;
31
+ type GenericFieldAttributes<SourceType> = FieldAttributesForFieldType<SourceType, 'boolean', BooleanFieldValue, BooleanFieldValidators, BooleanFieldAppearance> | FieldAttributesForFieldType<SourceType, 'color', ColorFieldValue, ColorFieldValidators, ColorFieldAppearance> | FieldAttributesForFieldType<SourceType, 'date', DateFieldValue, DateFieldValidators, DateFieldAppearance> | FieldAttributesForFieldType<SourceType, 'date_time', DateTimeFieldValue, DateTimeFieldValidators, DateTimeFieldAppearance> | FieldAttributesForFieldType<SourceType, 'file', null, FileFieldValidators, FileFieldAppearance> | FieldAttributesForFieldType<SourceType, 'float', FloatFieldValue, FloatFieldValidators, FloatFieldAppearance> | FieldAttributesForFieldType<SourceType, 'gallery', null, GalleryFieldValidators, GalleryFieldAppearance> | FieldAttributesForFieldType<SourceType, 'integer', IntegerFieldValue, IntegerFieldValidators, IntegerFieldAppearance> | FieldAttributesForFieldType<SourceType, 'json', JsonFieldValue, JsonFieldValidators, JsonFieldAppearance> | FieldAttributesForFieldType<SourceType, 'lat_lon', LatLonFieldValue, LatLonFieldValidators, LatLonFieldAppearance> | FieldAttributesForFieldType<SourceType, 'link', null, LinkFieldValidators, LinkFieldAppearance> | FieldAttributesForFieldType<SourceType, 'links', null, LinksFieldValidators, LinksFieldAppearance> | FieldAttributesForFieldType<SourceType, 'rich_text', null, RichTextFieldValidators, RichTextFieldAppearance> | FieldAttributesForFieldType<SourceType, 'seo', null, SeoFieldValidators, SeoFieldAppearance> | FieldAttributesForFieldType<SourceType, 'single_block', null, SingleBlockFieldValidators, SingleBlockFieldAppearance> | FieldAttributesForFieldType<SourceType, 'slug', null, SlugFieldValidators, SlugFieldAppearance> | FieldAttributesForFieldType<SourceType, 'string', StringFieldValue, StringFieldValidators, StringFieldAppearance> | FieldAttributesForFieldType<SourceType, 'structured_text', null, StructuredTextFieldValidators, StructuredTextFieldAppearance> | FieldAttributesForFieldType<SourceType, 'text', TextFieldValue, TextFieldValidators, TextFieldAppearance> | FieldAttributesForFieldType<SourceType, 'video', null, VideoFieldValidators, VideoFieldAppearance>;
31
32
  export type FieldAttributes = GenericFieldAttributes<RawFieldAttributes>;
32
33
  export type Field = RawField;
33
34
  type LocalizedFieldCreateConfigForFieldType<SourceType, FieldType extends RawFieldAttributes['field_type'], FieldValue, FieldValidators, FieldAppearance> = Omit<SourceType, 'field_type' | 'default_value' | 'validators' | 'appearance' | 'localized'> & {
@@ -45,7 +46,7 @@ type NonLocalizedFieldCreateConfigForFieldType<SourceType, FieldType extends Raw
45
46
  appearance?: FieldAppearanceConfig<FieldAppearance>;
46
47
  };
47
48
  type FieldCreateConfigForFieldType<SourceType, FieldType extends RawFieldAttributes['field_type'], FieldValue, FieldValidators, FieldAppearance> = LocalizedFieldCreateConfigForFieldType<SourceType, FieldType, FieldValue, FieldValidators, FieldAppearance> | NonLocalizedFieldCreateConfigForFieldType<SourceType, FieldType, FieldValue, FieldValidators, FieldAppearance>;
48
- type FieldCreateConfig<SourceType> = FieldCreateConfigForFieldType<SourceType, 'boolean', BooleanFieldValue, BooleanFieldValidators, BooleanFieldAppearance> | FieldCreateConfigForFieldType<SourceType, 'color', ColorFieldValue, ColorFieldValidators, ColorFieldAppearance> | FieldCreateConfigForFieldType<SourceType, 'date', DateFieldValue, DateFieldValidators, DateFieldAppearance> | FieldCreateConfigForFieldType<SourceType, 'date_time', DateTimeFieldValue, DateTimeFieldValidators, DateTimeFieldAppearance> | FieldCreateConfigForFieldType<SourceType, 'file', null, FileFieldValidators, FileFieldAppearance> | FieldCreateConfigForFieldType<SourceType, 'float', FloatFieldValue, FloatFieldValidators, FloatFieldAppearance> | FieldCreateConfigForFieldType<SourceType, 'gallery', null, GalleryFieldValidators, GalleryFieldAppearance> | FieldCreateConfigForFieldType<SourceType, 'integer', IntegerFieldValue, IntegerFieldValidators, IntegerFieldAppearance> | FieldCreateConfigForFieldType<SourceType, 'json', JsonFieldValue, JsonFieldValidators, JsonFieldAppearance> | FieldCreateConfigForFieldType<SourceType, 'lat_lon', LocationFieldValue, LocationFieldValidators, LocationFieldAppearance> | FieldCreateConfigForFieldType<SourceType, 'link', null, LinkFieldValidators, LinkFieldAppearance> | FieldCreateConfigForFieldType<SourceType, 'links', null, LinksFieldValidators, LinksFieldAppearance> | FieldCreateConfigForFieldType<SourceType, 'rich_text', null, RichTextFieldValidators, RichTextFieldAppearance> | FieldCreateConfigForFieldType<SourceType, 'seo', null, SeoFieldValidators, SeoFieldAppearance> | FieldCreateConfigForFieldType<SourceType, 'single_block', null, SingleBlockFieldValidators, SingleBlockFieldAppearance> | FieldCreateConfigForFieldType<SourceType, 'slug', null, SlugFieldValidators, SlugFieldAppearance> | FieldCreateConfigForFieldType<SourceType, 'string', StringFieldValue, StringFieldValidators, StringFieldAppearance> | FieldCreateConfigForFieldType<SourceType, 'structured_text', null, StructuredTextFieldValidators, StructuredTextFieldAppearance> | FieldCreateConfigForFieldType<SourceType, 'text', TextFieldValue, TextFieldValidators, TextFieldAppearance> | FieldCreateConfigForFieldType<SourceType, 'video', null, VideoFieldValidators, VideoFieldAppearance>;
49
+ type FieldCreateConfig<SourceType> = FieldCreateConfigForFieldType<SourceType, 'boolean', BooleanFieldValue, BooleanFieldValidators, BooleanFieldAppearance> | FieldCreateConfigForFieldType<SourceType, 'color', ColorFieldValue, ColorFieldValidators, ColorFieldAppearance> | FieldCreateConfigForFieldType<SourceType, 'date', DateFieldValue, DateFieldValidators, DateFieldAppearance> | FieldCreateConfigForFieldType<SourceType, 'date_time', DateTimeFieldValue, DateTimeFieldValidators, DateTimeFieldAppearance> | FieldCreateConfigForFieldType<SourceType, 'file', null, FileFieldValidators, FileFieldAppearance> | FieldCreateConfigForFieldType<SourceType, 'float', FloatFieldValue, FloatFieldValidators, FloatFieldAppearance> | FieldCreateConfigForFieldType<SourceType, 'gallery', null, GalleryFieldValidators, GalleryFieldAppearance> | FieldCreateConfigForFieldType<SourceType, 'integer', IntegerFieldValue, IntegerFieldValidators, IntegerFieldAppearance> | FieldCreateConfigForFieldType<SourceType, 'json', JsonFieldValue, JsonFieldValidators, JsonFieldAppearance> | FieldCreateConfigForFieldType<SourceType, 'lat_lon', LatLonFieldValue, LatLonFieldValidators, LatLonFieldAppearance> | FieldCreateConfigForFieldType<SourceType, 'link', null, LinkFieldValidators, LinkFieldAppearance> | FieldCreateConfigForFieldType<SourceType, 'links', null, LinksFieldValidators, LinksFieldAppearance> | FieldCreateConfigForFieldType<SourceType, 'rich_text', null, RichTextFieldValidators, RichTextFieldAppearance> | FieldCreateConfigForFieldType<SourceType, 'seo', null, SeoFieldValidators, SeoFieldAppearance> | FieldCreateConfigForFieldType<SourceType, 'single_block', null, SingleBlockFieldValidators, SingleBlockFieldAppearance> | FieldCreateConfigForFieldType<SourceType, 'slug', null, SlugFieldValidators, SlugFieldAppearance> | FieldCreateConfigForFieldType<SourceType, 'string', StringFieldValue, StringFieldValidators, StringFieldAppearance> | FieldCreateConfigForFieldType<SourceType, 'structured_text', null, StructuredTextFieldValidators, StructuredTextFieldAppearance> | FieldCreateConfigForFieldType<SourceType, 'text', TextFieldValue, TextFieldValidators, TextFieldAppearance> | FieldCreateConfigForFieldType<SourceType, 'video', null, VideoFieldValidators, VideoFieldAppearance>;
49
50
  export type FieldCreateSchema = Omit<RawFieldCreateSchema, 'data'> & {
50
51
  data: Omit<RawFieldCreateSchema['data'], 'attributes'> & {
51
52
  attributes: FieldCreateConfig<RawFieldCreateSchema['data']['attributes']>;
@@ -61,12 +62,31 @@ type FieldUpdateConfigForFieldType<SourceType, FieldType extends RawFieldAttribu
61
62
  validators?: FieldValidators;
62
63
  appearance?: FieldAppearanceConfig<FieldAppearance>;
63
64
  };
64
- type FieldUpdateConfig<SourceType> = FieldUpdateConfigForFieldType<SourceType, 'boolean', BooleanFieldValue, BooleanFieldValidators, BooleanFieldAppearance> | FieldUpdateConfigForFieldType<SourceType, 'color', ColorFieldValue, ColorFieldValidators, ColorFieldAppearance> | FieldUpdateConfigForFieldType<SourceType, 'date', DateFieldValue, DateFieldValidators, DateFieldAppearance> | FieldUpdateConfigForFieldType<SourceType, 'date_time', DateTimeFieldValue, DateTimeFieldValidators, DateTimeFieldAppearance> | FieldUpdateConfigForFieldType<SourceType, 'file', null, FileFieldValidators, FileFieldAppearance> | FieldUpdateConfigForFieldType<SourceType, 'float', FloatFieldValue, FloatFieldValidators, FloatFieldAppearance> | FieldUpdateConfigForFieldType<SourceType, 'gallery', null, GalleryFieldValidators, GalleryFieldAppearance> | FieldUpdateConfigForFieldType<SourceType, 'integer', IntegerFieldValue, IntegerFieldValidators, IntegerFieldAppearance> | FieldUpdateConfigForFieldType<SourceType, 'json', JsonFieldValue, JsonFieldValidators, JsonFieldAppearance> | FieldUpdateConfigForFieldType<SourceType, 'lat_lon', LocationFieldValue, LocationFieldValidators, LocationFieldAppearance> | FieldUpdateConfigForFieldType<SourceType, 'link', null, LinkFieldValidators, LinkFieldAppearance> | FieldUpdateConfigForFieldType<SourceType, 'links', null, LinksFieldValidators, LinksFieldAppearance> | FieldUpdateConfigForFieldType<SourceType, 'rich_text', null, RichTextFieldValidators, RichTextFieldAppearance> | FieldUpdateConfigForFieldType<SourceType, 'seo', null, SeoFieldValidators, SeoFieldAppearance> | FieldUpdateConfigForFieldType<SourceType, 'single_block', null, SingleBlockFieldValidators, SingleBlockFieldAppearance> | FieldUpdateConfigForFieldType<SourceType, 'slug', null, SlugFieldValidators, SlugFieldAppearance> | FieldUpdateConfigForFieldType<SourceType, 'string', StringFieldValue, StringFieldValidators, StringFieldAppearance> | FieldUpdateConfigForFieldType<SourceType, 'structured_text', null, StructuredTextFieldValidators, StructuredTextFieldAppearance> | FieldUpdateConfigForFieldType<SourceType, 'text', TextFieldValue, TextFieldValidators, TextFieldAppearance> | FieldUpdateConfigForFieldType<SourceType, 'video', null, VideoFieldValidators, VideoFieldAppearance>;
65
+ type FieldUpdateConfig<SourceType> = FieldUpdateConfigForFieldType<SourceType, 'boolean', BooleanFieldValue, BooleanFieldValidators, BooleanFieldAppearance> | FieldUpdateConfigForFieldType<SourceType, 'color', ColorFieldValue, ColorFieldValidators, ColorFieldAppearance> | FieldUpdateConfigForFieldType<SourceType, 'date', DateFieldValue, DateFieldValidators, DateFieldAppearance> | FieldUpdateConfigForFieldType<SourceType, 'date_time', DateTimeFieldValue, DateTimeFieldValidators, DateTimeFieldAppearance> | FieldUpdateConfigForFieldType<SourceType, 'file', null, FileFieldValidators, FileFieldAppearance> | FieldUpdateConfigForFieldType<SourceType, 'float', FloatFieldValue, FloatFieldValidators, FloatFieldAppearance> | FieldUpdateConfigForFieldType<SourceType, 'gallery', null, GalleryFieldValidators, GalleryFieldAppearance> | FieldUpdateConfigForFieldType<SourceType, 'integer', IntegerFieldValue, IntegerFieldValidators, IntegerFieldAppearance> | FieldUpdateConfigForFieldType<SourceType, 'json', JsonFieldValue, JsonFieldValidators, JsonFieldAppearance> | FieldUpdateConfigForFieldType<SourceType, 'lat_lon', LatLonFieldValue, LatLonFieldValidators, LatLonFieldAppearance> | FieldUpdateConfigForFieldType<SourceType, 'link', null, LinkFieldValidators, LinkFieldAppearance> | FieldUpdateConfigForFieldType<SourceType, 'links', null, LinksFieldValidators, LinksFieldAppearance> | FieldUpdateConfigForFieldType<SourceType, 'rich_text', null, RichTextFieldValidators, RichTextFieldAppearance> | FieldUpdateConfigForFieldType<SourceType, 'seo', null, SeoFieldValidators, SeoFieldAppearance> | FieldUpdateConfigForFieldType<SourceType, 'single_block', null, SingleBlockFieldValidators, SingleBlockFieldAppearance> | FieldUpdateConfigForFieldType<SourceType, 'slug', null, SlugFieldValidators, SlugFieldAppearance> | FieldUpdateConfigForFieldType<SourceType, 'string', StringFieldValue, StringFieldValidators, StringFieldAppearance> | FieldUpdateConfigForFieldType<SourceType, 'structured_text', null, StructuredTextFieldValidators, StructuredTextFieldAppearance> | FieldUpdateConfigForFieldType<SourceType, 'text', TextFieldValue, TextFieldValidators, TextFieldAppearance> | FieldUpdateConfigForFieldType<SourceType, 'video', null, VideoFieldValidators, VideoFieldAppearance>;
65
66
  export type FieldUpdateSchema = Omit<RawFieldUpdateSchema, 'data'> & {
66
67
  data: Omit<RawFieldUpdateSchema['data'], 'attributes'> & {
67
68
  attributes: FieldUpdateConfig<RawFieldUpdateSchema['data']['attributes']>;
68
69
  };
69
70
  };
71
+ export type ApplyItemDefinitionToSchema<Schema, D extends ItemDefinition = ItemDefinition> = D extends any ? Schema & {
72
+ attributes: D['fields'];
73
+ } & {
74
+ /** Useful for type narrowing */
75
+ __itemTypeId?: D['itemTypeId'];
76
+ } : never;
77
+ export type Item<D extends ItemDefinition = ItemDefinition> = ApplyItemDefinitionToSchema<RawItem, D>;
78
+ export type ItemValidateExistingSchema<D extends ItemDefinition = ItemDefinition> = {
79
+ data: ApplyItemDefinitionToSchema<RawItemValidateExistingSchema['data'], D>;
80
+ };
81
+ export type ItemValidateNewSchema<D extends ItemDefinition = ItemDefinition> = {
82
+ data: ApplyItemDefinitionToSchema<RawItemValidateNewSchema['data'], D>;
83
+ };
84
+ export type ItemCreateSchema<D extends ItemDefinition = ItemDefinition> = {
85
+ data: ApplyItemDefinitionToSchema<RawItemCreateSchema['data'], D>;
86
+ };
87
+ export type ItemUpdateSchema<D extends ItemDefinition = ItemDefinition> = {
88
+ data: ApplyItemDefinitionToSchema<RawItemUpdateSchema['data'], D>;
89
+ };
70
90
  /**
71
91
  * This file was automatically generated by hyperschema-to-ts: DO NOT MODIFY IT BY HAND.
72
92
  */
@@ -433,17 +453,17 @@ export type UploadCollectionInstancesHrefSchema = {
433
453
  };
434
454
  };
435
455
  /**
436
- * This interface was referenced by `Item`'s JSON-Schema
456
+ * This interface was referenced by `Item<D>`'s JSON-Schema
437
457
  * via the `definition` "type".
438
458
  */
439
459
  export type ItemType1 = 'item';
440
460
  /**
441
461
  * RFC 4122 UUID of record expressed in URL-safe base64 format
442
462
  *
443
- * This interface was referenced by `Item`'s JSON-Schema
463
+ * This interface was referenced by `Item<D>`'s JSON-Schema
444
464
  * via the `definition` "identity".
445
465
  *
446
- * This interface was referenced by `Item`'s JSON-Schema
466
+ * This interface was referenced by `Item<D>`'s JSON-Schema
447
467
  * via the `definition` "id".
448
468
  */
449
469
  export type ItemIdentity = string;
@@ -656,7 +676,7 @@ export type BuildEventInstancesHrefSchema = {
656
676
  [k: string]: unknown;
657
677
  };
658
678
  /**
659
- * This interface was referenced by `Item`'s JSON-Schema
679
+ * This interface was referenced by `Item<D>`'s JSON-Schema
660
680
  * via the `instances.hrefSchema` link.
661
681
  */
662
682
  export type ItemInstancesHrefSchema = {
@@ -720,7 +740,7 @@ export type ItemInstancesHrefSchema = {
720
740
  [k: string]: unknown;
721
741
  };
722
742
  /**
723
- * This interface was referenced by `Item`'s JSON-Schema
743
+ * This interface was referenced by `Item<D>`'s JSON-Schema
724
744
  * via the `references.hrefSchema` link.
725
745
  */
726
746
  export type ItemReferencesHrefSchema = {
@@ -735,7 +755,7 @@ export type ItemReferencesHrefSchema = {
735
755
  [k: string]: unknown;
736
756
  };
737
757
  /**
738
- * This interface was referenced by `Item`'s JSON-Schema
758
+ * This interface was referenced by `Item<D>`'s JSON-Schema
739
759
  * via the `self.hrefSchema` link.
740
760
  */
741
761
  export type ItemSelfHrefSchema = {
@@ -834,7 +854,7 @@ export type ItemVersionInstancesHrefSchema = {
834
854
  [k: string]: unknown;
835
855
  };
836
856
  /**
837
- * This interface was referenced by `Item`'s JSON-Schema
857
+ * This interface was referenced by `Item<D>`'s JSON-Schema
838
858
  * via the `publish.schema` link.
839
859
  */
840
860
  export type ItemPublishSchema = {
@@ -856,7 +876,7 @@ export type ItemPublishSchema = {
856
876
  };
857
877
  } | null;
858
878
  /**
859
- * This interface was referenced by `Item`'s JSON-Schema
879
+ * This interface was referenced by `Item<D>`'s JSON-Schema
860
880
  * via the `publish.hrefSchema` link.
861
881
  */
862
882
  export type ItemPublishHrefSchema = {
@@ -867,7 +887,7 @@ export type ItemPublishHrefSchema = {
867
887
  [k: string]: unknown;
868
888
  };
869
889
  /**
870
- * This interface was referenced by `Item`'s JSON-Schema
890
+ * This interface was referenced by `Item<D>`'s JSON-Schema
871
891
  * via the `unpublish.schema` link.
872
892
  */
873
893
  export type ItemUnpublishSchema = {
@@ -882,7 +902,7 @@ export type ItemUnpublishSchema = {
882
902
  };
883
903
  } | null;
884
904
  /**
885
- * This interface was referenced by `Item`'s JSON-Schema
905
+ * This interface was referenced by `Item<D>`'s JSON-Schema
886
906
  * via the `unpublish.hrefSchema` link.
887
907
  */
888
908
  export type ItemUnpublishHrefSchema = {
@@ -3412,13 +3432,13 @@ export type MenuItemAttributes = {
3412
3432
  */
3413
3433
  export type MenuItemRelationships = {
3414
3434
  /**
3415
- * Item type associated with the menu item
3435
+ * Item<D> type associated with the menu item
3416
3436
  */
3417
3437
  item_type: {
3418
3438
  data: ItemTypeData | null;
3419
3439
  };
3420
3440
  /**
3421
- * Item type filter associated with the menu item (to be used together with `item_type` relationship)
3441
+ * Item<D> type filter associated with the menu item (to be used together with `item_type` relationship)
3422
3442
  */
3423
3443
  item_type_filter: {
3424
3444
  data: ItemTypeFilterData | null;
@@ -3497,13 +3517,13 @@ export type MenuItemCreateSchema = {
3497
3517
  };
3498
3518
  relationships?: {
3499
3519
  /**
3500
- * Item type associated with the menu item
3520
+ * Item<D> type associated with the menu item
3501
3521
  */
3502
3522
  item_type?: {
3503
3523
  data: ItemTypeData | null;
3504
3524
  };
3505
3525
  /**
3506
- * Item type filter associated with the menu item (to be used together with `item_type` relationship)
3526
+ * Item<D> type filter associated with the menu item (to be used together with `item_type` relationship)
3507
3527
  */
3508
3528
  item_type_filter?: {
3509
3529
  data: ItemTypeFilterData | null;
@@ -3555,13 +3575,13 @@ export type MenuItemUpdateSchema = {
3555
3575
  };
3556
3576
  relationships?: {
3557
3577
  /**
3558
- * Item type associated with the menu item
3578
+ * Item<D> type associated with the menu item
3559
3579
  */
3560
3580
  item_type?: {
3561
3581
  data: ItemTypeData | null;
3562
3582
  };
3563
3583
  /**
3564
- * Item type filter associated with the menu item (to be used together with `item_type` relationship)
3584
+ * Item<D> type filter associated with the menu item (to be used together with `item_type` relationship)
3565
3585
  */
3566
3586
  item_type_filter?: {
3567
3587
  data: ItemTypeFilterData | null;
@@ -3702,7 +3722,7 @@ export type SchemaMenuItemAttributes = {
3702
3722
  */
3703
3723
  export type SchemaMenuItemRelationships = {
3704
3724
  /**
3705
- * Item type associated with the schema menu item
3725
+ * Item<D> type associated with the schema menu item
3706
3726
  */
3707
3727
  item_type: {
3708
3728
  data: ItemTypeData | null;
@@ -3757,7 +3777,7 @@ export type SchemaMenuItemCreateSchema = {
3757
3777
  };
3758
3778
  relationships?: {
3759
3779
  /**
3760
- * Item type associated with the menu item
3780
+ * Item<D> type associated with the menu item
3761
3781
  */
3762
3782
  item_type?: {
3763
3783
  data: ItemTypeData | null;
@@ -3805,7 +3825,7 @@ export type SchemaMenuItemUpdateSchema = {
3805
3825
  };
3806
3826
  relationships?: {
3807
3827
  /**
3808
- * Item type associated with the menu item
3828
+ * Item<D> type associated with the menu item
3809
3829
  */
3810
3830
  item_type?: {
3811
3831
  data: ItemTypeData | null;
@@ -4252,7 +4272,7 @@ export type ItemTypeRelationships = {
4252
4272
  /**
4253
4273
  * JSON API data
4254
4274
  *
4255
- * This interface was referenced by `Item`'s JSON-Schema
4275
+ * This interface was referenced by `Item<D>`'s JSON-Schema
4256
4276
  * via the `definition` "data".
4257
4277
  */
4258
4278
  export type ItemData = {
@@ -6735,26 +6755,16 @@ export type BuildEventSelfTargetSchema = {
6735
6755
  * This interface was referenced by `DatoApi`'s JSON-Schema
6736
6756
  * via the `definition` "item".
6737
6757
  */
6738
- export type Item = {
6758
+ export type RawItem = {
6739
6759
  type: ItemType1;
6740
6760
  id: ItemIdentity;
6741
- attributes: ItemAttributes;
6742
6761
  relationships: ItemRelationships;
6743
6762
  meta: ItemMeta;
6744
6763
  };
6745
- /**
6746
- * The JSON data associated to the record
6747
- *
6748
- * This interface was referenced by `Item`'s JSON-Schema
6749
- * via the `definition` "attributes".
6750
- */
6751
- export type ItemAttributes = {
6752
- [k: string]: unknown;
6753
- };
6754
6764
  /**
6755
6765
  * JSON API links
6756
6766
  *
6757
- * This interface was referenced by `Item`'s JSON-Schema
6767
+ * This interface was referenced by `Item<D>`'s JSON-Schema
6758
6768
  * via the `definition` "relationships".
6759
6769
  */
6760
6770
  export type ItemRelationships = {
@@ -6774,7 +6784,7 @@ export type ItemRelationships = {
6774
6784
  /**
6775
6785
  * Meta information regarding the record
6776
6786
  *
6777
- * This interface was referenced by `Item`'s JSON-Schema
6787
+ * This interface was referenced by `Item<D>`'s JSON-Schema
6778
6788
  * via the `definition` "meta".
6779
6789
  */
6780
6790
  export type ItemMeta = {
@@ -6832,29 +6842,32 @@ export type ItemMeta = {
6832
6842
  has_children: null | boolean;
6833
6843
  };
6834
6844
  /**
6835
- * This interface was referenced by `Item`'s JSON-Schema
6845
+ * The JSON data associated to the record
6846
+ *
6847
+ * This interface was referenced by `Item<D>`'s JSON-Schema
6848
+ * via the `definition` "attributes".
6849
+ */
6850
+ export type ItemAttributes = {
6851
+ [k: string]: unknown;
6852
+ };
6853
+ /**
6854
+ * This interface was referenced by `Item<D>`'s JSON-Schema
6836
6855
  * via the `instances.targetSchema` link.
6837
6856
  */
6838
- export type ItemInstancesTargetSchema = {
6839
- data: Item[];
6857
+ export type ItemInstancesTargetSchema<D extends ItemDefinition = ItemDefinition> = {
6858
+ data: Item<D>[];
6840
6859
  meta: {
6841
6860
  total_count: number;
6842
6861
  };
6843
6862
  };
6844
6863
  /**
6845
- * This interface was referenced by `Item`'s JSON-Schema
6864
+ * This interface was referenced by `Item<D>`'s JSON-Schema
6846
6865
  * via the `validate_existing.schema` link.
6847
6866
  */
6848
- export type ItemValidateExistingSchema = {
6867
+ export type RawItemValidateExistingSchema = {
6849
6868
  data: {
6850
6869
  id: ItemIdentity;
6851
6870
  type: ItemType1;
6852
- /**
6853
- * The JSON data associated to the record
6854
- */
6855
- attributes: {
6856
- [k: string]: unknown;
6857
- };
6858
6871
  relationships: {
6859
6872
  /**
6860
6873
  * The record's model
@@ -6872,18 +6885,12 @@ export type ItemValidateExistingSchema = {
6872
6885
  };
6873
6886
  };
6874
6887
  /**
6875
- * This interface was referenced by `Item`'s JSON-Schema
6888
+ * This interface was referenced by `Item<D>`'s JSON-Schema
6876
6889
  * via the `validate_new.schema` link.
6877
6890
  */
6878
- export type ItemValidateNewSchema = {
6891
+ export type RawItemValidateNewSchema = {
6879
6892
  data: {
6880
6893
  type: ItemType1;
6881
- /**
6882
- * The JSON data associated to the record
6883
- */
6884
- attributes: {
6885
- [k: string]: unknown;
6886
- };
6887
6894
  relationships: {
6888
6895
  /**
6889
6896
  * The record's model
@@ -6901,19 +6908,13 @@ export type ItemValidateNewSchema = {
6901
6908
  };
6902
6909
  };
6903
6910
  /**
6904
- * This interface was referenced by `Item`'s JSON-Schema
6911
+ * This interface was referenced by `Item<D>`'s JSON-Schema
6905
6912
  * via the `create.schema` link.
6906
6913
  */
6907
- export type ItemCreateSchema = {
6914
+ export type RawItemCreateSchema = {
6908
6915
  data: {
6909
6916
  id?: ItemIdentity;
6910
6917
  type: ItemType1;
6911
- /**
6912
- * The JSON data associated to the record
6913
- */
6914
- attributes: {
6915
- [k: string]: unknown;
6916
- };
6917
6918
  /**
6918
6919
  * Meta information regarding the record
6919
6920
  */
@@ -6976,42 +6977,36 @@ export type ItemCreateSchema = {
6976
6977
  };
6977
6978
  };
6978
6979
  /**
6979
- * This interface was referenced by `Item`'s JSON-Schema
6980
+ * This interface was referenced by `Item<D>`'s JSON-Schema
6980
6981
  * via the `create.targetSchema` link.
6981
6982
  */
6982
- export type ItemCreateTargetSchema = {
6983
- data: Item;
6983
+ export type ItemCreateTargetSchema<D extends ItemDefinition = ItemDefinition> = {
6984
+ data: Item<D>;
6984
6985
  included: (ItemType | Item)[];
6985
6986
  };
6986
6987
  /**
6987
- * This interface was referenced by `Item`'s JSON-Schema
6988
+ * This interface was referenced by `Item<D>`'s JSON-Schema
6988
6989
  * via the `duplicate.targetSchema` link.
6989
6990
  */
6990
6991
  export type ItemDuplicateTargetSchema = {
6991
6992
  data: Job;
6992
6993
  };
6993
6994
  /**
6994
- * This interface was referenced by `Item`'s JSON-Schema
6995
+ * This interface was referenced by `Item<D>`'s JSON-Schema
6995
6996
  * via the `duplicate.jobSchema` link.
6996
6997
  */
6997
- export type ItemDuplicateJobSchema = {
6998
- data: Item;
6998
+ export type ItemDuplicateJobSchema<D extends ItemDefinition = ItemDefinition> = {
6999
+ data: Item<D>;
6999
7000
  included: ItemType[];
7000
7001
  };
7001
7002
  /**
7002
- * This interface was referenced by `Item`'s JSON-Schema
7003
+ * This interface was referenced by `Item<D>`'s JSON-Schema
7003
7004
  * via the `update.schema` link.
7004
7005
  */
7005
- export type ItemUpdateSchema = {
7006
+ export type RawItemUpdateSchema = {
7006
7007
  data: {
7007
7008
  type: ItemType1;
7008
7009
  id: ItemIdentity;
7009
- /**
7010
- * The JSON data associated to the record
7011
- */
7012
- attributes?: {
7013
- [k: string]: unknown;
7014
- };
7015
7010
  /**
7016
7011
  * Meta information regarding the record
7017
7012
  */
@@ -7086,29 +7081,29 @@ export type ItemUpdateSchema = {
7086
7081
  };
7087
7082
  };
7088
7083
  /**
7089
- * This interface was referenced by `Item`'s JSON-Schema
7084
+ * This interface was referenced by `Item<D>`'s JSON-Schema
7090
7085
  * via the `update.targetSchema` link.
7091
7086
  */
7092
- export type ItemUpdateTargetSchema = {
7093
- data: Item;
7087
+ export type ItemUpdateTargetSchema<D extends ItemDefinition = ItemDefinition> = {
7088
+ data: Item<D>;
7094
7089
  included?: (ItemType | Item)[];
7095
7090
  };
7096
7091
  /**
7097
- * This interface was referenced by `Item`'s JSON-Schema
7092
+ * This interface was referenced by `Item<D>`'s JSON-Schema
7098
7093
  * via the `references.targetSchema` link.
7099
7094
  */
7100
- export type ItemReferencesTargetSchema = {
7101
- data: Item[];
7095
+ export type ItemReferencesTargetSchema<D extends ItemDefinition = ItemDefinition> = {
7096
+ data: Item<D>[];
7102
7097
  };
7103
7098
  /**
7104
- * This interface was referenced by `Item`'s JSON-Schema
7099
+ * This interface was referenced by `Item<D>`'s JSON-Schema
7105
7100
  * via the `self.targetSchema` link.
7106
7101
  */
7107
- export type ItemSelfTargetSchema = {
7108
- data: Item;
7102
+ export type ItemSelfTargetSchema<D extends ItemDefinition = ItemDefinition> = {
7103
+ data: Item<D>;
7109
7104
  };
7110
7105
  /**
7111
- * This interface was referenced by `Item`'s JSON-Schema
7106
+ * This interface was referenced by `Item<D>`'s JSON-Schema
7112
7107
  * via the `current_vs_published_state.targetSchema` link.
7113
7108
  */
7114
7109
  export type ItemCurrentVsPublishedStateTargetSchema = {
@@ -7254,7 +7249,7 @@ export type ScheduledPublicationAttributes = {
7254
7249
  */
7255
7250
  export type ScheduledPublicationRelationships = {
7256
7251
  /**
7257
- * Item
7252
+ * Item<D>
7258
7253
  */
7259
7254
  item: {
7260
7255
  data: ItemData;
@@ -7303,8 +7298,8 @@ export type ScheduledPublicationCreateTargetSchema = {
7303
7298
  * This interface was referenced by `ScheduledPublication`'s JSON-Schema
7304
7299
  * via the `destroy.targetSchema` link.
7305
7300
  */
7306
- export type ScheduledPublicationDestroyTargetSchema = {
7307
- data: Item;
7301
+ export type ScheduledPublicationDestroyTargetSchema<D extends ItemDefinition = ItemDefinition> = {
7302
+ data: Item<D>;
7308
7303
  };
7309
7304
  /**
7310
7305
  * You can create a scheduled unpublishing to unpublish records in the future
@@ -7342,7 +7337,7 @@ export type ScheduledUnpublishingAttributes = {
7342
7337
  */
7343
7338
  export type ScheduledUnpublishingRelationships = {
7344
7339
  /**
7345
- * Item
7340
+ * Item<D>
7346
7341
  */
7347
7342
  item: {
7348
7343
  data: ItemData;
@@ -7382,8 +7377,8 @@ export type ScheduledUnpublishingCreateTargetSchema = {
7382
7377
  * This interface was referenced by `ScheduledUnpublishing`'s JSON-Schema
7383
7378
  * via the `destroy.targetSchema` link.
7384
7379
  */
7385
- export type ScheduledUnpublishingDestroyTargetSchema = {
7386
- data: Item;
7380
+ export type ScheduledUnpublishingDestroyTargetSchema<D extends ItemDefinition = ItemDefinition> = {
7381
+ data: Item<D>;
7387
7382
  };
7388
7383
  /**
7389
7384
  * Every change to a record is stored as a separate record version in DatoCMS.
@@ -7468,8 +7463,8 @@ export type ItemVersionRestoreTargetSchema = {
7468
7463
  * This interface was referenced by `ItemVersion`'s JSON-Schema
7469
7464
  * via the `restore.jobSchema` link.
7470
7465
  */
7471
- export type ItemVersionRestoreJobSchema = {
7472
- data: [Item, ItemVersion];
7466
+ export type ItemVersionRestoreJobSchema<D extends ItemDefinition = ItemDefinition> = {
7467
+ data: [Item<D>, ItemVersion];
7473
7468
  };
7474
7469
  /**
7475
7470
  * This interface was referenced by `ItemVersion`'s JSON-Schema
@@ -7489,37 +7484,37 @@ export type ItemVersionSelfTargetSchema = {
7489
7484
  data: ItemVersion;
7490
7485
  };
7491
7486
  /**
7492
- * This interface was referenced by `Item`'s JSON-Schema
7487
+ * This interface was referenced by `Item<D>`'s JSON-Schema
7493
7488
  * via the `destroy.targetSchema` link.
7494
7489
  */
7495
7490
  export type ItemDestroyTargetSchema = {
7496
7491
  data: Job;
7497
7492
  };
7498
7493
  /**
7499
- * This interface was referenced by `Item`'s JSON-Schema
7494
+ * This interface was referenced by `Item<D>`'s JSON-Schema
7500
7495
  * via the `destroy.jobSchema` link.
7501
7496
  */
7502
- export type ItemDestroyJobSchema = {
7503
- data: Item;
7497
+ export type ItemDestroyJobSchema<D extends ItemDefinition = ItemDefinition> = {
7498
+ data: Item<D>;
7504
7499
  };
7505
7500
  /**
7506
- * This interface was referenced by `Item`'s JSON-Schema
7501
+ * This interface was referenced by `Item<D>`'s JSON-Schema
7507
7502
  * via the `publish.targetSchema` link.
7508
7503
  */
7509
- export type ItemPublishTargetSchema = {
7510
- data: Item;
7504
+ export type ItemPublishTargetSchema<D extends ItemDefinition = ItemDefinition> = {
7505
+ data: Item<D>;
7511
7506
  included?: ItemType[];
7512
7507
  };
7513
7508
  /**
7514
- * This interface was referenced by `Item`'s JSON-Schema
7509
+ * This interface was referenced by `Item<D>`'s JSON-Schema
7515
7510
  * via the `unpublish.targetSchema` link.
7516
7511
  */
7517
- export type ItemUnpublishTargetSchema = {
7518
- data: Item;
7512
+ export type ItemUnpublishTargetSchema<D extends ItemDefinition = ItemDefinition> = {
7513
+ data: Item<D>;
7519
7514
  included?: ItemType[];
7520
7515
  };
7521
7516
  /**
7522
- * This interface was referenced by `Item`'s JSON-Schema
7517
+ * This interface was referenced by `Item<D>`'s JSON-Schema
7523
7518
  * via the `bulk_publish.schema` link.
7524
7519
  */
7525
7520
  export type ItemBulkPublishSchema = {
@@ -7537,14 +7532,14 @@ export type ItemBulkPublishSchema = {
7537
7532
  };
7538
7533
  };
7539
7534
  /**
7540
- * This interface was referenced by `Item`'s JSON-Schema
7535
+ * This interface was referenced by `Item<D>`'s JSON-Schema
7541
7536
  * via the `bulk_publish.targetSchema` link.
7542
7537
  */
7543
7538
  export type ItemBulkPublishTargetSchema = {
7544
7539
  data: Job;
7545
7540
  };
7546
7541
  /**
7547
- * This interface was referenced by `Item`'s JSON-Schema
7542
+ * This interface was referenced by `Item<D>`'s JSON-Schema
7548
7543
  * via the `bulk_publish.jobSchema` link.
7549
7544
  */
7550
7545
  export type ItemBulkPublishJobSchema = {
@@ -7555,7 +7550,7 @@ export type ItemBulkPublishJobSchema = {
7555
7550
  };
7556
7551
  };
7557
7552
  /**
7558
- * This interface was referenced by `Item`'s JSON-Schema
7553
+ * This interface was referenced by `Item<D>`'s JSON-Schema
7559
7554
  * via the `bulk_unpublish.schema` link.
7560
7555
  */
7561
7556
  export type ItemBulkUnpublishSchema = {
@@ -7573,14 +7568,14 @@ export type ItemBulkUnpublishSchema = {
7573
7568
  };
7574
7569
  };
7575
7570
  /**
7576
- * This interface was referenced by `Item`'s JSON-Schema
7571
+ * This interface was referenced by `Item<D>`'s JSON-Schema
7577
7572
  * via the `bulk_unpublish.targetSchema` link.
7578
7573
  */
7579
7574
  export type ItemBulkUnpublishTargetSchema = {
7580
7575
  data: Job;
7581
7576
  };
7582
7577
  /**
7583
- * This interface was referenced by `Item`'s JSON-Schema
7578
+ * This interface was referenced by `Item<D>`'s JSON-Schema
7584
7579
  * via the `bulk_unpublish.jobSchema` link.
7585
7580
  */
7586
7581
  export type ItemBulkUnpublishJobSchema = {
@@ -7591,7 +7586,7 @@ export type ItemBulkUnpublishJobSchema = {
7591
7586
  };
7592
7587
  };
7593
7588
  /**
7594
- * This interface was referenced by `Item`'s JSON-Schema
7589
+ * This interface was referenced by `Item<D>`'s JSON-Schema
7595
7590
  * via the `bulk_destroy.schema` link.
7596
7591
  */
7597
7592
  export type ItemBulkDestroySchema = {
@@ -7609,14 +7604,14 @@ export type ItemBulkDestroySchema = {
7609
7604
  };
7610
7605
  };
7611
7606
  /**
7612
- * This interface was referenced by `Item`'s JSON-Schema
7607
+ * This interface was referenced by `Item<D>`'s JSON-Schema
7613
7608
  * via the `bulk_destroy.targetSchema` link.
7614
7609
  */
7615
7610
  export type ItemBulkDestroyTargetSchema = {
7616
7611
  data: Job;
7617
7612
  };
7618
7613
  /**
7619
- * This interface was referenced by `Item`'s JSON-Schema
7614
+ * This interface was referenced by `Item<D>`'s JSON-Schema
7620
7615
  * via the `bulk_destroy.jobSchema` link.
7621
7616
  */
7622
7617
  export type ItemBulkDestroyJobSchema = {
@@ -7627,7 +7622,7 @@ export type ItemBulkDestroyJobSchema = {
7627
7622
  };
7628
7623
  };
7629
7624
  /**
7630
- * This interface was referenced by `Item`'s JSON-Schema
7625
+ * This interface was referenced by `Item<D>`'s JSON-Schema
7631
7626
  * via the `bulk_move_to_stage.schema` link.
7632
7627
  */
7633
7628
  export type ItemBulkMoveToStageSchema = {
@@ -7651,14 +7646,14 @@ export type ItemBulkMoveToStageSchema = {
7651
7646
  };
7652
7647
  };
7653
7648
  /**
7654
- * This interface was referenced by `Item`'s JSON-Schema
7649
+ * This interface was referenced by `Item<D>`'s JSON-Schema
7655
7650
  * via the `bulk_move_to_stage.targetSchema` link.
7656
7651
  */
7657
7652
  export type ItemBulkMoveToStageTargetSchema = {
7658
7653
  data: Job;
7659
7654
  };
7660
7655
  /**
7661
- * This interface was referenced by `Item`'s JSON-Schema
7656
+ * This interface was referenced by `Item<D>`'s JSON-Schema
7662
7657
  * via the `bulk_move_to_stage.jobSchema` link.
7663
7658
  */
7664
7659
  export type ItemBulkMoveToStageJobSchema = {
@@ -8103,8 +8098,8 @@ export type UploadUpdateJobSchema = {
8103
8098
  * This interface was referenced by `Upload`'s JSON-Schema
8104
8099
  * via the `references.targetSchema` link.
8105
8100
  */
8106
- export type UploadReferencesTargetSchema = {
8107
- data: Item[];
8101
+ export type UploadReferencesTargetSchema<D extends ItemDefinition = ItemDefinition> = {
8102
+ data: Item<D>[];
8108
8103
  };
8109
8104
  /**
8110
8105
  * This interface was referenced by `Upload`'s JSON-Schema