@datocms/cma-client 5.1.10 → 5.1.12

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 (253) hide show
  1. package/README.md +569 -0
  2. package/dist/cjs/fieldTypes/boolean.js +2 -2
  3. package/dist/cjs/fieldTypes/boolean.js.map +1 -1
  4. package/dist/cjs/fieldTypes/color.js +2 -2
  5. package/dist/cjs/fieldTypes/color.js.map +1 -1
  6. package/dist/cjs/fieldTypes/date.js +2 -3
  7. package/dist/cjs/fieldTypes/date.js.map +1 -1
  8. package/dist/cjs/fieldTypes/date_time.js +2 -2
  9. package/dist/cjs/fieldTypes/date_time.js.map +1 -1
  10. package/dist/cjs/fieldTypes/file.js +33 -5
  11. package/dist/cjs/fieldTypes/file.js.map +1 -1
  12. package/dist/cjs/fieldTypes/float.js +2 -2
  13. package/dist/cjs/fieldTypes/float.js.map +1 -1
  14. package/dist/cjs/fieldTypes/gallery.js +20 -5
  15. package/dist/cjs/fieldTypes/gallery.js.map +1 -1
  16. package/dist/cjs/fieldTypes/index.js +2 -2
  17. package/dist/cjs/fieldTypes/index.js.map +1 -1
  18. package/dist/cjs/fieldTypes/integer.js +2 -2
  19. package/dist/cjs/fieldTypes/integer.js.map +1 -1
  20. package/dist/cjs/fieldTypes/json.js +2 -3
  21. package/dist/cjs/fieldTypes/json.js.map +1 -1
  22. package/dist/cjs/fieldTypes/lat_lon.js +2 -2
  23. package/dist/cjs/fieldTypes/lat_lon.js.map +1 -1
  24. package/dist/cjs/fieldTypes/link.js +4 -4
  25. package/dist/cjs/fieldTypes/link.js.map +1 -1
  26. package/dist/cjs/fieldTypes/links.js +5 -3
  27. package/dist/cjs/fieldTypes/links.js.map +1 -1
  28. package/dist/cjs/fieldTypes/rich_text.js +18 -18
  29. package/dist/cjs/fieldTypes/rich_text.js.map +1 -1
  30. package/dist/cjs/fieldTypes/schema.js +3 -0
  31. package/dist/cjs/fieldTypes/schema.js.map +1 -0
  32. package/dist/cjs/fieldTypes/seo.js +2 -3
  33. package/dist/cjs/fieldTypes/seo.js.map +1 -1
  34. package/dist/cjs/fieldTypes/single_block.js +20 -19
  35. package/dist/cjs/fieldTypes/single_block.js.map +1 -1
  36. package/dist/cjs/fieldTypes/slug.js +2 -3
  37. package/dist/cjs/fieldTypes/slug.js.map +1 -1
  38. package/dist/cjs/fieldTypes/string.js +2 -2
  39. package/dist/cjs/fieldTypes/string.js.map +1 -1
  40. package/dist/cjs/fieldTypes/structured_text.js +17 -18
  41. package/dist/cjs/fieldTypes/structured_text.js.map +1 -1
  42. package/dist/cjs/fieldTypes/text.js +2 -3
  43. package/dist/cjs/fieldTypes/text.js.map +1 -1
  44. package/dist/cjs/fieldTypes/video.js +2 -2
  45. package/dist/cjs/fieldTypes/video.js.map +1 -1
  46. package/dist/cjs/generated/Client.js +1 -1
  47. package/dist/cjs/generated/resources/Item.js.map +1 -1
  48. package/dist/cjs/generated/resources/ScheduledPublication.js.map +1 -1
  49. package/dist/cjs/generated/resources/ScheduledUnpublishing.js.map +1 -1
  50. package/dist/cjs/generated/resources/Upload.js.map +1 -1
  51. package/dist/cjs/index.js +5 -4
  52. package/dist/cjs/index.js.map +1 -1
  53. package/dist/cjs/utilities/buildBlockRecord.js +1 -45
  54. package/dist/cjs/utilities/buildBlockRecord.js.map +1 -1
  55. package/dist/cjs/utilities/duplicateBlockRecord.js +49 -0
  56. package/dist/cjs/utilities/duplicateBlockRecord.js.map +1 -0
  57. package/dist/cjs/utilities/inspectItem.js +427 -0
  58. package/dist/cjs/utilities/inspectItem.js.map +1 -0
  59. package/dist/cjs/utilities/{blocks.js → nonRecursiveBlocks.js} +60 -234
  60. package/dist/cjs/utilities/nonRecursiveBlocks.js.map +1 -0
  61. package/dist/cjs/utilities/{fieldValue.js → normalizedFieldValues.js} +53 -41
  62. package/dist/cjs/utilities/normalizedFieldValues.js.map +1 -0
  63. package/dist/cjs/utilities/recursiveBlocks.js +73 -92
  64. package/dist/cjs/utilities/recursiveBlocks.js.map +1 -1
  65. package/dist/cjs/utilities/schemaRepository.js +2 -2
  66. package/dist/esm/fieldTypes/boolean.d.ts +1 -1
  67. package/dist/esm/fieldTypes/boolean.js +2 -2
  68. package/dist/esm/fieldTypes/boolean.js.map +1 -1
  69. package/dist/esm/fieldTypes/color.d.ts +1 -1
  70. package/dist/esm/fieldTypes/color.js +2 -2
  71. package/dist/esm/fieldTypes/color.js.map +1 -1
  72. package/dist/esm/fieldTypes/date.d.ts +1 -1
  73. package/dist/esm/fieldTypes/date.js +2 -3
  74. package/dist/esm/fieldTypes/date.js.map +1 -1
  75. package/dist/esm/fieldTypes/date_time.d.ts +1 -1
  76. package/dist/esm/fieldTypes/date_time.js +2 -2
  77. package/dist/esm/fieldTypes/date_time.js.map +1 -1
  78. package/dist/esm/fieldTypes/file.d.ts +68 -1
  79. package/dist/esm/fieldTypes/file.js +29 -3
  80. package/dist/esm/fieldTypes/file.js.map +1 -1
  81. package/dist/esm/fieldTypes/float.d.ts +1 -1
  82. package/dist/esm/fieldTypes/float.js +2 -2
  83. package/dist/esm/fieldTypes/float.js.map +1 -1
  84. package/dist/esm/fieldTypes/gallery.d.ts +27 -11
  85. package/dist/esm/fieldTypes/gallery.js +17 -4
  86. package/dist/esm/fieldTypes/gallery.js.map +1 -1
  87. package/dist/esm/fieldTypes/index.d.ts +2 -2
  88. package/dist/esm/fieldTypes/index.js +2 -2
  89. package/dist/esm/fieldTypes/index.js.map +1 -1
  90. package/dist/esm/fieldTypes/integer.d.ts +1 -1
  91. package/dist/esm/fieldTypes/integer.js +2 -2
  92. package/dist/esm/fieldTypes/integer.js.map +1 -1
  93. package/dist/esm/fieldTypes/json.d.ts +1 -1
  94. package/dist/esm/fieldTypes/json.js +2 -3
  95. package/dist/esm/fieldTypes/json.js.map +1 -1
  96. package/dist/esm/fieldTypes/lat_lon.d.ts +1 -1
  97. package/dist/esm/fieldTypes/lat_lon.js +2 -2
  98. package/dist/esm/fieldTypes/lat_lon.js.map +1 -1
  99. package/dist/esm/fieldTypes/link.d.ts +1 -1
  100. package/dist/esm/fieldTypes/link.js +4 -4
  101. package/dist/esm/fieldTypes/link.js.map +1 -1
  102. package/dist/esm/fieldTypes/links.d.ts +1 -1
  103. package/dist/esm/fieldTypes/links.js +5 -3
  104. package/dist/esm/fieldTypes/links.js.map +1 -1
  105. package/dist/esm/fieldTypes/rich_text.d.ts +9 -10
  106. package/dist/esm/fieldTypes/rich_text.js +13 -13
  107. package/dist/esm/fieldTypes/rich_text.js.map +1 -1
  108. package/dist/esm/fieldTypes/schema.d.ts +59 -0
  109. package/dist/esm/fieldTypes/schema.js +2 -0
  110. package/dist/esm/fieldTypes/schema.js.map +1 -0
  111. package/dist/esm/fieldTypes/seo.d.ts +1 -1
  112. package/dist/esm/fieldTypes/seo.js +2 -3
  113. package/dist/esm/fieldTypes/seo.js.map +1 -1
  114. package/dist/esm/fieldTypes/single_block.d.ts +31 -16
  115. package/dist/esm/fieldTypes/single_block.js +15 -14
  116. package/dist/esm/fieldTypes/single_block.js.map +1 -1
  117. package/dist/esm/fieldTypes/slug.d.ts +1 -1
  118. package/dist/esm/fieldTypes/slug.js +2 -3
  119. package/dist/esm/fieldTypes/slug.js.map +1 -1
  120. package/dist/esm/fieldTypes/string.d.ts +1 -1
  121. package/dist/esm/fieldTypes/string.js +2 -2
  122. package/dist/esm/fieldTypes/string.js.map +1 -1
  123. package/dist/esm/fieldTypes/structured_text.d.ts +15 -16
  124. package/dist/esm/fieldTypes/structured_text.js +12 -13
  125. package/dist/esm/fieldTypes/structured_text.js.map +1 -1
  126. package/dist/esm/fieldTypes/text.d.ts +1 -1
  127. package/dist/esm/fieldTypes/text.js +2 -3
  128. package/dist/esm/fieldTypes/text.js.map +1 -1
  129. package/dist/esm/fieldTypes/video.d.ts +1 -1
  130. package/dist/esm/fieldTypes/video.js +2 -2
  131. package/dist/esm/fieldTypes/video.js.map +1 -1
  132. package/dist/esm/generated/ApiTypes.d.ts +90 -980
  133. package/dist/esm/generated/Client.js +1 -1
  134. package/dist/esm/generated/RawApiTypes.d.ts +156 -999
  135. package/dist/esm/generated/resources/Field.d.ts +200 -200
  136. package/dist/esm/generated/resources/Item.d.ts +34 -34
  137. package/dist/esm/generated/resources/Item.js.map +1 -1
  138. package/dist/esm/generated/resources/ItemVersion.d.ts +3 -1
  139. package/dist/esm/generated/resources/ScheduledPublication.d.ts +3 -3
  140. package/dist/esm/generated/resources/ScheduledPublication.js.map +1 -1
  141. package/dist/esm/generated/resources/ScheduledUnpublishing.d.ts +3 -3
  142. package/dist/esm/generated/resources/ScheduledUnpublishing.js.map +1 -1
  143. package/dist/esm/generated/resources/Upload.d.ts +6 -6
  144. package/dist/esm/generated/resources/Upload.js.map +1 -1
  145. package/dist/esm/index.d.ts +5 -4
  146. package/dist/esm/index.js +5 -4
  147. package/dist/esm/index.js.map +1 -1
  148. package/dist/esm/utilities/buildBlockRecord.d.ts +3 -5
  149. package/dist/esm/utilities/buildBlockRecord.js +0 -43
  150. package/dist/esm/utilities/buildBlockRecord.js.map +1 -1
  151. package/dist/esm/utilities/duplicateBlockRecord.d.ts +6 -0
  152. package/dist/esm/utilities/duplicateBlockRecord.js +45 -0
  153. package/dist/esm/utilities/duplicateBlockRecord.js.map +1 -0
  154. package/dist/esm/utilities/inspectItem.d.ts +8 -0
  155. package/dist/esm/utilities/inspectItem.js +400 -0
  156. package/dist/esm/utilities/inspectItem.js.map +1 -0
  157. package/dist/esm/utilities/itemDefinition.d.ts +45 -23
  158. package/dist/esm/utilities/nonRecursiveBlocks.d.ts +114 -0
  159. package/dist/esm/utilities/{blocks.js → nonRecursiveBlocks.js} +52 -220
  160. package/dist/esm/utilities/nonRecursiveBlocks.js.map +1 -0
  161. package/dist/{types/utilities/fieldValue.d.ts → esm/utilities/normalizedFieldValues.d.ts} +15 -14
  162. package/dist/esm/utilities/{fieldValue.js → normalizedFieldValues.js} +39 -28
  163. package/dist/esm/utilities/normalizedFieldValues.js.map +1 -0
  164. package/dist/esm/utilities/recursiveBlocks.d.ts +124 -11
  165. package/dist/esm/utilities/recursiveBlocks.js +65 -84
  166. package/dist/esm/utilities/recursiveBlocks.js.map +1 -1
  167. package/dist/esm/utilities/schemaRepository.d.ts +2 -2
  168. package/dist/esm/utilities/schemaRepository.js +2 -2
  169. package/dist/types/fieldTypes/boolean.d.ts +1 -1
  170. package/dist/types/fieldTypes/color.d.ts +1 -1
  171. package/dist/types/fieldTypes/date.d.ts +1 -1
  172. package/dist/types/fieldTypes/date_time.d.ts +1 -1
  173. package/dist/types/fieldTypes/file.d.ts +68 -1
  174. package/dist/types/fieldTypes/float.d.ts +1 -1
  175. package/dist/types/fieldTypes/gallery.d.ts +27 -11
  176. package/dist/types/fieldTypes/index.d.ts +2 -2
  177. package/dist/types/fieldTypes/integer.d.ts +1 -1
  178. package/dist/types/fieldTypes/json.d.ts +1 -1
  179. package/dist/types/fieldTypes/lat_lon.d.ts +1 -1
  180. package/dist/types/fieldTypes/link.d.ts +1 -1
  181. package/dist/types/fieldTypes/links.d.ts +1 -1
  182. package/dist/types/fieldTypes/rich_text.d.ts +9 -10
  183. package/dist/types/fieldTypes/schema.d.ts +59 -0
  184. package/dist/types/fieldTypes/seo.d.ts +1 -1
  185. package/dist/types/fieldTypes/single_block.d.ts +31 -16
  186. package/dist/types/fieldTypes/slug.d.ts +1 -1
  187. package/dist/types/fieldTypes/string.d.ts +1 -1
  188. package/dist/types/fieldTypes/structured_text.d.ts +15 -16
  189. package/dist/types/fieldTypes/text.d.ts +1 -1
  190. package/dist/types/fieldTypes/video.d.ts +1 -1
  191. package/dist/types/generated/ApiTypes.d.ts +90 -980
  192. package/dist/types/generated/RawApiTypes.d.ts +156 -999
  193. package/dist/types/generated/resources/Field.d.ts +200 -200
  194. package/dist/types/generated/resources/Item.d.ts +34 -34
  195. package/dist/types/generated/resources/ItemVersion.d.ts +3 -1
  196. package/dist/types/generated/resources/ScheduledPublication.d.ts +3 -3
  197. package/dist/types/generated/resources/ScheduledUnpublishing.d.ts +3 -3
  198. package/dist/types/generated/resources/Upload.d.ts +6 -6
  199. package/dist/types/index.d.ts +5 -4
  200. package/dist/types/utilities/buildBlockRecord.d.ts +3 -5
  201. package/dist/types/utilities/duplicateBlockRecord.d.ts +6 -0
  202. package/dist/types/utilities/inspectItem.d.ts +8 -0
  203. package/dist/types/utilities/itemDefinition.d.ts +45 -23
  204. package/dist/types/utilities/nonRecursiveBlocks.d.ts +114 -0
  205. package/dist/{esm/utilities/fieldValue.d.ts → types/utilities/normalizedFieldValues.d.ts} +15 -14
  206. package/dist/types/utilities/recursiveBlocks.d.ts +124 -11
  207. package/dist/types/utilities/schemaRepository.d.ts +2 -2
  208. package/package.json +4 -4
  209. package/src/fieldTypes/boolean.ts +5 -3
  210. package/src/fieldTypes/color.ts +5 -3
  211. package/src/fieldTypes/date.ts +5 -4
  212. package/src/fieldTypes/date_time.ts +5 -3
  213. package/src/fieldTypes/file.ts +98 -4
  214. package/src/fieldTypes/float.ts +5 -3
  215. package/src/fieldTypes/gallery.ts +53 -20
  216. package/src/fieldTypes/index.ts +2 -3
  217. package/src/fieldTypes/integer.ts +5 -3
  218. package/src/fieldTypes/json.ts +5 -4
  219. package/src/fieldTypes/lat_lon.ts +5 -3
  220. package/src/fieldTypes/link.ts +7 -5
  221. package/src/fieldTypes/links.ts +8 -4
  222. package/src/fieldTypes/rich_text.ts +33 -31
  223. package/src/fieldTypes/schema.ts +657 -0
  224. package/src/fieldTypes/seo.ts +5 -4
  225. package/src/fieldTypes/single_block.ts +71 -46
  226. package/src/fieldTypes/slug.ts +5 -4
  227. package/src/fieldTypes/string.ts +5 -3
  228. package/src/fieldTypes/structured_text.ts +64 -58
  229. package/src/fieldTypes/text.ts +5 -4
  230. package/src/fieldTypes/video.ts +5 -3
  231. package/src/generated/ApiTypes.ts +217 -1880
  232. package/src/generated/Client.ts +1 -1
  233. package/src/generated/RawApiTypes.ts +272 -2113
  234. package/src/generated/resources/Item.ts +93 -187
  235. package/src/generated/resources/ScheduledPublication.ts +4 -15
  236. package/src/generated/resources/ScheduledUnpublishing.ts +4 -15
  237. package/src/generated/resources/Upload.ts +9 -32
  238. package/src/index.ts +5 -4
  239. package/src/utilities/buildBlockRecord.ts +4 -59
  240. package/src/utilities/duplicateBlockRecord.ts +52 -0
  241. package/src/utilities/inspectItem.ts +602 -0
  242. package/src/utilities/itemDefinition.ts +130 -92
  243. package/src/utilities/nonRecursiveBlocks.ts +406 -0
  244. package/src/utilities/{fieldValue.ts → normalizedFieldValues.ts} +70 -30
  245. package/src/utilities/recursiveBlocks.ts +484 -204
  246. package/src/utilities/schemaRepository.ts +2 -2
  247. package/dist/cjs/utilities/blocks.js.map +0 -1
  248. package/dist/cjs/utilities/fieldValue.js.map +0 -1
  249. package/dist/esm/utilities/blocks.d.ts +0 -180
  250. package/dist/esm/utilities/blocks.js.map +0 -1
  251. package/dist/esm/utilities/fieldValue.js.map +0 -1
  252. package/dist/types/utilities/blocks.d.ts +0 -180
  253. package/src/utilities/blocks.ts +0 -626
@@ -1,6 +1,6 @@
1
1
  import * as Utils from '@datocms/rest-client-utils';
2
2
  import BaseResource from '../../BaseResource';
3
- import type { ItemTypeDefinition, ToItemDefinition, ToItemDefinitionAsRequest, ToItemDefinitionWithNestedBlocks } from '../../utilities/itemDefinition';
3
+ import type { ItemTypeDefinition } from '../../utilities/itemDefinition';
4
4
  import type * as ApiTypes from '../ApiTypes';
5
5
  import type * as RawApiTypes from '../RawApiTypes';
6
6
  type NoInfer<T> = [T][T extends any ? 0 : never];
@@ -16,10 +16,10 @@ export default class Item extends BaseResource {
16
16
  */
17
17
  list<D extends ItemTypeDefinition = ItemTypeDefinition>(queryParams: ApiTypes.ItemInstancesHrefSchema & {
18
18
  nested: true;
19
- }): Promise<ApiTypes.ItemInstancesTargetSchema<ToItemDefinitionWithNestedBlocks<NoInfer<D>>>>;
19
+ }): Promise<ApiTypes.ItemInstancesTargetSchema<NoInfer<D>, true>>;
20
20
  list<D extends ItemTypeDefinition = ItemTypeDefinition>(queryParams?: ApiTypes.ItemInstancesHrefSchema & {
21
21
  nested?: false | undefined;
22
- }): Promise<ApiTypes.ItemInstancesTargetSchema<ToItemDefinition<NoInfer<D>>>>;
22
+ }): Promise<ApiTypes.ItemInstancesTargetSchema<NoInfer<D>, false>>;
23
23
  /**
24
24
  * List all records
25
25
  *
@@ -30,11 +30,11 @@ export default class Item extends BaseResource {
30
30
  */
31
31
  rawList<D extends ItemTypeDefinition = ItemTypeDefinition>(queryParams: RawApiTypes.ItemInstancesHrefSchema & {
32
32
  nested: true;
33
- }): Promise<RawApiTypes.ItemInstancesTargetSchema<ToItemDefinitionWithNestedBlocks<NoInfer<D>>>>;
33
+ }): Promise<RawApiTypes.ItemInstancesTargetSchema<NoInfer<D>, true>>;
34
34
  rawList<D extends ItemTypeDefinition = ItemTypeDefinition>(queryParams?: RawApiTypes.ItemInstancesHrefSchema & {
35
35
  nested?: false | undefined;
36
- }): Promise<RawApiTypes.ItemInstancesTargetSchema<ToItemDefinition<NoInfer<D>>>>;
37
- rawList<D extends ItemTypeDefinition = ItemTypeDefinition>(queryParams?: RawApiTypes.ItemInstancesHrefSchema): Promise<RawApiTypes.ItemInstancesTargetSchema<ToItemDefinitionWithNestedBlocks<NoInfer<D>>>>;
36
+ }): Promise<RawApiTypes.ItemInstancesTargetSchema<NoInfer<D>, false>>;
37
+ rawList<D extends ItemTypeDefinition = ItemTypeDefinition>(queryParams?: RawApiTypes.ItemInstancesHrefSchema): Promise<RawApiTypes.ItemInstancesTargetSchema<NoInfer<D>, true>>;
38
38
  /**
39
39
  * Async iterator to auto-paginate over elements returned by list()
40
40
  *
@@ -43,7 +43,7 @@ export default class Item extends BaseResource {
43
43
  * @throws {ApiError}
44
44
  * @throws {TimeoutError}
45
45
  */
46
- listPagedIterator<D extends ItemTypeDefinition = ItemTypeDefinition>(queryParams?: Utils.OmitFromKnownKeys<ApiTypes.ItemInstancesHrefSchema, 'page'>, iteratorOptions?: Utils.IteratorOptions): AsyncGenerator<ApiTypes.ApplyItemDefinitionToSchema<ApiTypes.RawItem, ToItemDefinitionWithNestedBlocks<NoInfer<D>>>, void, unknown>;
46
+ listPagedIterator<D extends ItemTypeDefinition = ItemTypeDefinition>(queryParams?: Utils.OmitFromKnownKeys<ApiTypes.ItemInstancesHrefSchema, 'page'>, iteratorOptions?: Utils.IteratorOptions): AsyncGenerator<ApiTypes.ItemInNestedResponse<NoInfer<D>>, void, unknown>;
47
47
  /**
48
48
  * Async iterator to auto-paginate over elements returned by rawList()
49
49
  *
@@ -52,7 +52,7 @@ export default class Item extends BaseResource {
52
52
  * @throws {ApiError}
53
53
  * @throws {TimeoutError}
54
54
  */
55
- rawListPagedIterator<D extends ItemTypeDefinition = ItemTypeDefinition>(queryParams?: Utils.OmitFromKnownKeys<RawApiTypes.ItemInstancesHrefSchema, 'page'>, iteratorOptions?: Utils.IteratorOptions): AsyncGenerator<Awaited<RawApiTypes.ApplyItemDefinitionToSchema<RawApiTypes.RawItem, ToItemDefinitionWithNestedBlocks<NoInfer<D>>>>, void, unknown>;
55
+ rawListPagedIterator<D extends ItemTypeDefinition = ItemTypeDefinition>(queryParams?: Utils.OmitFromKnownKeys<RawApiTypes.ItemInstancesHrefSchema, 'page'>, iteratorOptions?: Utils.IteratorOptions): AsyncGenerator<RawApiTypes.ItemInNestedResponse<NoInfer<D>>, void, unknown>;
56
56
  /**
57
57
  * Validates an existing record field
58
58
  *
@@ -63,7 +63,7 @@ export default class Item extends BaseResource {
63
63
  *
64
64
  * @deprecated This API call is to be considered private and might change without notice
65
65
  */
66
- validateExisting<D extends ItemTypeDefinition = ItemTypeDefinition>(itemId: string | ApiTypes.ItemData, body: ApiTypes.ItemValidateExistingSchema<ToItemDefinitionAsRequest<NoInfer<D>>>): Promise<void>;
66
+ validateExisting<D extends ItemTypeDefinition = ItemTypeDefinition>(itemId: string | ApiTypes.ItemData, body: ApiTypes.ItemValidateExistingSchema<NoInfer<D>>): Promise<void>;
67
67
  /**
68
68
  * Validates an existing record field
69
69
  *
@@ -74,7 +74,7 @@ export default class Item extends BaseResource {
74
74
  *
75
75
  * @deprecated This API call is to be considered private and might change without notice
76
76
  */
77
- rawValidateExisting<D extends ItemTypeDefinition = ItemTypeDefinition>(itemId: string, body: RawApiTypes.ItemValidateExistingSchema<ToItemDefinitionAsRequest<NoInfer<D>>>): Promise<void>;
77
+ rawValidateExisting<D extends ItemTypeDefinition = ItemTypeDefinition>(itemId: string, body: RawApiTypes.ItemValidateExistingSchema<NoInfer<D>>): Promise<void>;
78
78
  /**
79
79
  * Validates a record field
80
80
  *
@@ -85,7 +85,7 @@ export default class Item extends BaseResource {
85
85
  *
86
86
  * @deprecated This API call is to be considered private and might change without notice
87
87
  */
88
- validateNew<D extends ItemTypeDefinition = ItemTypeDefinition>(body: ApiTypes.ItemValidateNewSchema<ToItemDefinitionAsRequest<NoInfer<D>>>): Promise<void>;
88
+ validateNew<D extends ItemTypeDefinition = ItemTypeDefinition>(body: ApiTypes.ItemValidateNewSchema<NoInfer<D>>): Promise<void>;
89
89
  /**
90
90
  * Validates a record field
91
91
  *
@@ -96,7 +96,7 @@ export default class Item extends BaseResource {
96
96
  *
97
97
  * @deprecated This API call is to be considered private and might change without notice
98
98
  */
99
- rawValidateNew<D extends ItemTypeDefinition = ItemTypeDefinition>(body: RawApiTypes.ItemValidateNewSchema<ToItemDefinitionAsRequest<NoInfer<D>>>): Promise<void>;
99
+ rawValidateNew<D extends ItemTypeDefinition = ItemTypeDefinition>(body: RawApiTypes.ItemValidateNewSchema<NoInfer<D>>): Promise<void>;
100
100
  /**
101
101
  * Create a new record
102
102
  *
@@ -105,7 +105,7 @@ export default class Item extends BaseResource {
105
105
  * @throws {ApiError}
106
106
  * @throws {TimeoutError}
107
107
  */
108
- create<D extends ItemTypeDefinition = ItemTypeDefinition>(body: ApiTypes.ItemCreateSchema<ToItemDefinitionAsRequest<NoInfer<D>>>): Promise<ApiTypes.ApplyItemDefinitionToSchema<ApiTypes.RawItem, ToItemDefinition<NoInfer<D>>>>;
108
+ create<D extends ItemTypeDefinition = ItemTypeDefinition>(body: ApiTypes.ItemCreateSchema<NoInfer<D>>): Promise<ApiTypes.Item<NoInfer<D>>>;
109
109
  /**
110
110
  * Create a new record
111
111
  *
@@ -114,7 +114,7 @@ export default class Item extends BaseResource {
114
114
  * @throws {ApiError}
115
115
  * @throws {TimeoutError}
116
116
  */
117
- rawCreate<D extends ItemTypeDefinition = ItemTypeDefinition>(body: RawApiTypes.ItemCreateSchema<ToItemDefinitionAsRequest<NoInfer<D>>>): Promise<RawApiTypes.ItemCreateTargetSchema<ToItemDefinitionWithNestedBlocks<NoInfer<D>>>>;
117
+ rawCreate<D extends ItemTypeDefinition = ItemTypeDefinition>(body: RawApiTypes.ItemCreateSchema<NoInfer<D>>): Promise<RawApiTypes.ItemCreateTargetSchema<NoInfer<D>, true>>;
118
118
  /**
119
119
  * Duplicate a record
120
120
  *
@@ -123,7 +123,7 @@ export default class Item extends BaseResource {
123
123
  * @throws {ApiError}
124
124
  * @throws {TimeoutError}
125
125
  */
126
- duplicate<D extends ItemTypeDefinition = ItemTypeDefinition>(itemId: string | ApiTypes.ItemData): Promise<ApiTypes.ApplyItemDefinitionToSchema<ApiTypes.RawItem, ToItemDefinition<NoInfer<D>>>>;
126
+ duplicate<D extends ItemTypeDefinition = ItemTypeDefinition>(itemId: string | ApiTypes.ItemData): Promise<ApiTypes.Item<NoInfer<D>>>;
127
127
  /**
128
128
  * Duplicate a record
129
129
  *
@@ -132,7 +132,7 @@ export default class Item extends BaseResource {
132
132
  * @throws {ApiError}
133
133
  * @throws {TimeoutError}
134
134
  */
135
- rawDuplicate<D extends ItemTypeDefinition = ItemTypeDefinition>(itemId: string): Promise<RawApiTypes.ItemDuplicateJobSchema<ToItemDefinitionWithNestedBlocks<NoInfer<D>>>>;
135
+ rawDuplicate<D extends ItemTypeDefinition = ItemTypeDefinition>(itemId: string): Promise<RawApiTypes.ItemDuplicateJobSchema<NoInfer<D>, true>>;
136
136
  /**
137
137
  * Update a record
138
138
  *
@@ -141,7 +141,7 @@ export default class Item extends BaseResource {
141
141
  * @throws {ApiError}
142
142
  * @throws {TimeoutError}
143
143
  */
144
- update<D extends ItemTypeDefinition = ItemTypeDefinition>(itemId: string | ApiTypes.ItemData, body: ApiTypes.ItemUpdateSchema<ToItemDefinitionAsRequest<NoInfer<D>>>): Promise<ApiTypes.ApplyItemDefinitionToSchema<ApiTypes.RawItem, ToItemDefinition<NoInfer<D>>>>;
144
+ update<D extends ItemTypeDefinition = ItemTypeDefinition>(itemId: string | ApiTypes.ItemData, body: ApiTypes.ItemUpdateSchema<NoInfer<D>>): Promise<ApiTypes.Item<NoInfer<D>>>;
145
145
  /**
146
146
  * Update a record
147
147
  *
@@ -150,7 +150,7 @@ export default class Item extends BaseResource {
150
150
  * @throws {ApiError}
151
151
  * @throws {TimeoutError}
152
152
  */
153
- rawUpdate<D extends ItemTypeDefinition = ItemTypeDefinition>(itemId: string, body: RawApiTypes.ItemUpdateSchema<ToItemDefinitionAsRequest<NoInfer<D>>>): Promise<RawApiTypes.ItemUpdateTargetSchema<ToItemDefinitionWithNestedBlocks<NoInfer<D>>>>;
153
+ rawUpdate<D extends ItemTypeDefinition = ItemTypeDefinition>(itemId: string, body: RawApiTypes.ItemUpdateSchema<NoInfer<D>>): Promise<RawApiTypes.ItemUpdateTargetSchema<NoInfer<D>, true>>;
154
154
  /**
155
155
  * Referenced records
156
156
  *
@@ -161,10 +161,10 @@ export default class Item extends BaseResource {
161
161
  */
162
162
  references<D extends ItemTypeDefinition = ItemTypeDefinition>(itemId: string | ApiTypes.ItemData, queryParams: ApiTypes.ItemReferencesHrefSchema & {
163
163
  nested: true;
164
- }): Promise<ApiTypes.ItemReferencesTargetSchema<ToItemDefinitionWithNestedBlocks<NoInfer<D>>>>;
164
+ }): Promise<ApiTypes.ItemReferencesTargetSchema<NoInfer<D>, true>>;
165
165
  references<D extends ItemTypeDefinition = ItemTypeDefinition>(itemId: string | ApiTypes.ItemData, queryParams?: ApiTypes.ItemReferencesHrefSchema & {
166
166
  nested?: false | undefined;
167
- }): Promise<ApiTypes.ItemReferencesTargetSchema<ToItemDefinition<NoInfer<D>>>>;
167
+ }): Promise<ApiTypes.ItemReferencesTargetSchema<NoInfer<D>, false>>;
168
168
  /**
169
169
  * Referenced records
170
170
  *
@@ -175,11 +175,11 @@ export default class Item extends BaseResource {
175
175
  */
176
176
  rawReferences<D extends ItemTypeDefinition = ItemTypeDefinition>(itemId: string, queryParams: RawApiTypes.ItemReferencesHrefSchema & {
177
177
  nested: true;
178
- }): Promise<RawApiTypes.ItemReferencesTargetSchema<ToItemDefinitionWithNestedBlocks<NoInfer<D>>>>;
178
+ }): Promise<RawApiTypes.ItemReferencesTargetSchema<NoInfer<D>, true>>;
179
179
  rawReferences<D extends ItemTypeDefinition = ItemTypeDefinition>(itemId: string, queryParams?: RawApiTypes.ItemReferencesHrefSchema & {
180
180
  nested?: false | undefined;
181
- }): Promise<RawApiTypes.ItemReferencesTargetSchema<ToItemDefinition<NoInfer<D>>>>;
182
- rawReferences<D extends ItemTypeDefinition = ItemTypeDefinition>(itemId: string, queryParams?: RawApiTypes.ItemReferencesHrefSchema): Promise<RawApiTypes.ItemReferencesTargetSchema<ToItemDefinitionWithNestedBlocks<NoInfer<D>>>>;
181
+ }): Promise<RawApiTypes.ItemReferencesTargetSchema<NoInfer<D>, false>>;
182
+ rawReferences<D extends ItemTypeDefinition = ItemTypeDefinition>(itemId: string, queryParams?: RawApiTypes.ItemReferencesHrefSchema): Promise<RawApiTypes.ItemReferencesTargetSchema<NoInfer<D>, true>>;
183
183
  /**
184
184
  * Retrieve a record
185
185
  *
@@ -190,10 +190,10 @@ export default class Item extends BaseResource {
190
190
  */
191
191
  find<D extends ItemTypeDefinition = ItemTypeDefinition>(itemId: string | ApiTypes.ItemData, queryParams: ApiTypes.ItemSelfHrefSchema & {
192
192
  nested: true;
193
- }): Promise<ApiTypes.ItemSelfTargetSchema<ToItemDefinitionWithNestedBlocks<NoInfer<D>>>>;
193
+ }): Promise<ApiTypes.ItemSelfTargetSchema<NoInfer<D>, true>>;
194
194
  find<D extends ItemTypeDefinition = ItemTypeDefinition>(itemId: string | ApiTypes.ItemData, queryParams?: ApiTypes.ItemSelfHrefSchema & {
195
195
  nested?: false | undefined;
196
- }): Promise<ApiTypes.ItemSelfTargetSchema<ToItemDefinition<NoInfer<D>>>>;
196
+ }): Promise<ApiTypes.ItemSelfTargetSchema<NoInfer<D>, false>>;
197
197
  /**
198
198
  * Retrieve a record
199
199
  *
@@ -204,11 +204,11 @@ export default class Item extends BaseResource {
204
204
  */
205
205
  rawFind<D extends ItemTypeDefinition = ItemTypeDefinition>(itemId: string, queryParams: RawApiTypes.ItemSelfHrefSchema & {
206
206
  nested: true;
207
- }): Promise<RawApiTypes.ItemSelfTargetSchema<ToItemDefinitionWithNestedBlocks<NoInfer<D>>>>;
207
+ }): Promise<RawApiTypes.ItemSelfTargetSchema<NoInfer<D>, true>>;
208
208
  rawFind<D extends ItemTypeDefinition = ItemTypeDefinition>(itemId: string, queryParams?: RawApiTypes.ItemSelfHrefSchema & {
209
209
  nested?: false | undefined;
210
- }): Promise<RawApiTypes.ItemSelfTargetSchema<ToItemDefinition<NoInfer<D>>>>;
211
- rawFind<D extends ItemTypeDefinition = ItemTypeDefinition>(itemId: string, queryParams?: RawApiTypes.ItemSelfHrefSchema): Promise<RawApiTypes.ItemSelfTargetSchema<ToItemDefinitionWithNestedBlocks<NoInfer<D>>>>;
210
+ }): Promise<RawApiTypes.ItemSelfTargetSchema<NoInfer<D>, false>>;
211
+ rawFind<D extends ItemTypeDefinition = ItemTypeDefinition>(itemId: string, queryParams?: RawApiTypes.ItemSelfHrefSchema): Promise<RawApiTypes.ItemSelfTargetSchema<NoInfer<D>, true>>;
212
212
  /**
213
213
  * Retrieve information regarding changes between current and published versions of the record
214
214
  *
@@ -239,7 +239,7 @@ export default class Item extends BaseResource {
239
239
  * @throws {ApiError}
240
240
  * @throws {TimeoutError}
241
241
  */
242
- destroy<D extends ItemTypeDefinition = ItemTypeDefinition>(itemId: string | ApiTypes.ItemData): Promise<ApiTypes.ApplyItemDefinitionToSchema<ApiTypes.RawItem, ToItemDefinition<NoInfer<D>>>>;
242
+ destroy<D extends ItemTypeDefinition = ItemTypeDefinition>(itemId: string | ApiTypes.ItemData): Promise<ApiTypes.Item<NoInfer<D>>>;
243
243
  /**
244
244
  * Delete a record
245
245
  *
@@ -248,7 +248,7 @@ export default class Item extends BaseResource {
248
248
  * @throws {ApiError}
249
249
  * @throws {TimeoutError}
250
250
  */
251
- rawDestroy<D extends ItemTypeDefinition = ItemTypeDefinition>(itemId: string): Promise<RawApiTypes.ItemDestroyJobSchema<ToItemDefinitionWithNestedBlocks<NoInfer<D>>>>;
251
+ rawDestroy<D extends ItemTypeDefinition = ItemTypeDefinition>(itemId: string): Promise<RawApiTypes.ItemDestroyJobSchema<NoInfer<D>, true>>;
252
252
  /**
253
253
  * Publish a record
254
254
  *
@@ -257,7 +257,7 @@ export default class Item extends BaseResource {
257
257
  * @throws {ApiError}
258
258
  * @throws {TimeoutError}
259
259
  */
260
- publish<D extends ItemTypeDefinition = ItemTypeDefinition>(itemId: string | ApiTypes.ItemData, body?: ApiTypes.ItemPublishSchema, queryParams?: ApiTypes.ItemPublishHrefSchema): Promise<ApiTypes.ApplyItemDefinitionToSchema<ApiTypes.RawItem, ToItemDefinition<NoInfer<D>>>>;
260
+ publish<D extends ItemTypeDefinition = ItemTypeDefinition>(itemId: string | ApiTypes.ItemData, body?: ApiTypes.ItemPublishSchema, queryParams?: ApiTypes.ItemPublishHrefSchema): Promise<ApiTypes.Item<NoInfer<D>>>;
261
261
  /**
262
262
  * Publish a record
263
263
  *
@@ -266,7 +266,7 @@ export default class Item extends BaseResource {
266
266
  * @throws {ApiError}
267
267
  * @throws {TimeoutError}
268
268
  */
269
- rawPublish<D extends ItemTypeDefinition = ItemTypeDefinition>(itemId: string, body?: RawApiTypes.ItemPublishSchema, queryParams?: RawApiTypes.ItemPublishHrefSchema): Promise<RawApiTypes.ItemPublishTargetSchema<ToItemDefinitionWithNestedBlocks<NoInfer<D>>>>;
269
+ rawPublish<D extends ItemTypeDefinition = ItemTypeDefinition>(itemId: string, body?: RawApiTypes.ItemPublishSchema, queryParams?: RawApiTypes.ItemPublishHrefSchema): Promise<RawApiTypes.ItemPublishTargetSchema<NoInfer<D>, true>>;
270
270
  /**
271
271
  * Unpublish a record
272
272
  *
@@ -275,7 +275,7 @@ export default class Item extends BaseResource {
275
275
  * @throws {ApiError}
276
276
  * @throws {TimeoutError}
277
277
  */
278
- unpublish<D extends ItemTypeDefinition = ItemTypeDefinition>(itemId: string | ApiTypes.ItemData, body?: ApiTypes.ItemUnpublishSchema, queryParams?: ApiTypes.ItemUnpublishHrefSchema): Promise<ApiTypes.ApplyItemDefinitionToSchema<ApiTypes.RawItem, ToItemDefinition<NoInfer<D>>>>;
278
+ unpublish<D extends ItemTypeDefinition = ItemTypeDefinition>(itemId: string | ApiTypes.ItemData, body?: ApiTypes.ItemUnpublishSchema, queryParams?: ApiTypes.ItemUnpublishHrefSchema): Promise<ApiTypes.Item<NoInfer<D>>>;
279
279
  /**
280
280
  * Unpublish a record
281
281
  *
@@ -284,7 +284,7 @@ export default class Item extends BaseResource {
284
284
  * @throws {ApiError}
285
285
  * @throws {TimeoutError}
286
286
  */
287
- rawUnpublish<D extends ItemTypeDefinition = ItemTypeDefinition>(itemId: string, body?: RawApiTypes.ItemUnpublishSchema, queryParams?: RawApiTypes.ItemUnpublishHrefSchema): Promise<RawApiTypes.ItemUnpublishTargetSchema<ToItemDefinitionWithNestedBlocks<NoInfer<D>>>>;
287
+ rawUnpublish<D extends ItemTypeDefinition = ItemTypeDefinition>(itemId: string, body?: RawApiTypes.ItemUnpublishSchema, queryParams?: RawApiTypes.ItemUnpublishHrefSchema): Promise<RawApiTypes.ItemUnpublishTargetSchema<NoInfer<D>, true>>;
288
288
  /**
289
289
  * Publish items in bulk
290
290
  *
@@ -12,7 +12,9 @@ export default class ItemVersion extends BaseResource {
12
12
  * @throws {ApiError}
13
13
  * @throws {TimeoutError}
14
14
  */
15
- restore(itemVersionId: string | ApiTypes.ItemVersionData): Promise<ApiTypes.ItemVersionRestoreJobSchema<import("../..").ItemDefinition<string, Record<string, unknown>>>>;
15
+ restore(itemVersionId: string | ApiTypes.ItemVersionData): Promise<[ApiTypes.Item<import("../..").ItemTypeDefinition<{
16
+ locales: string;
17
+ }, string, {}>>, ApiTypes.ItemVersion]>;
16
18
  /**
17
19
  * Restore an old record version
18
20
  *
@@ -1,5 +1,5 @@
1
1
  import BaseResource from '../../BaseResource';
2
- import type { ItemTypeDefinition, ToItemDefinition, ToItemDefinitionWithNestedBlocks } from '../../utilities/itemDefinition';
2
+ import type { ItemTypeDefinition } from '../../utilities/itemDefinition';
3
3
  import type * as ApiTypes from '../ApiTypes';
4
4
  import type * as RawApiTypes from '../RawApiTypes';
5
5
  type NoInfer<T> = [T][T extends any ? 0 : never];
@@ -31,7 +31,7 @@ export default class ScheduledPublication extends BaseResource {
31
31
  * @throws {ApiError}
32
32
  * @throws {TimeoutError}
33
33
  */
34
- destroy<D extends ItemTypeDefinition = ItemTypeDefinition>(itemId: string | ApiTypes.ItemData): Promise<ApiTypes.ApplyItemDefinitionToSchema<ApiTypes.RawItem, ToItemDefinition<NoInfer<D>>>>;
34
+ destroy<D extends ItemTypeDefinition = ItemTypeDefinition>(itemId: string | ApiTypes.ItemData): Promise<ApiTypes.Item<NoInfer<D>>>;
35
35
  /**
36
36
  * Delete a scheduled publication
37
37
  *
@@ -40,6 +40,6 @@ export default class ScheduledPublication extends BaseResource {
40
40
  * @throws {ApiError}
41
41
  * @throws {TimeoutError}
42
42
  */
43
- rawDestroy<D extends ItemTypeDefinition = ItemTypeDefinition>(itemId: string): Promise<RawApiTypes.ScheduledPublicationDestroyTargetSchema<ToItemDefinitionWithNestedBlocks<NoInfer<D>>>>;
43
+ rawDestroy<D extends ItemTypeDefinition = ItemTypeDefinition>(itemId: string): Promise<RawApiTypes.ScheduledPublicationDestroyTargetSchema<NoInfer<D>, true>>;
44
44
  }
45
45
  export {};
@@ -1,5 +1,5 @@
1
1
  import BaseResource from '../../BaseResource';
2
- import type { ItemTypeDefinition, ToItemDefinition, ToItemDefinitionWithNestedBlocks } from '../../utilities/itemDefinition';
2
+ import type { ItemTypeDefinition } from '../../utilities/itemDefinition';
3
3
  import type * as ApiTypes from '../ApiTypes';
4
4
  import type * as RawApiTypes from '../RawApiTypes';
5
5
  type NoInfer<T> = [T][T extends any ? 0 : never];
@@ -31,7 +31,7 @@ export default class ScheduledUnpublishing extends BaseResource {
31
31
  * @throws {ApiError}
32
32
  * @throws {TimeoutError}
33
33
  */
34
- destroy<D extends ItemTypeDefinition = ItemTypeDefinition>(itemId: string | ApiTypes.ItemData): Promise<ApiTypes.ApplyItemDefinitionToSchema<ApiTypes.RawItem, ToItemDefinition<NoInfer<D>>>>;
34
+ destroy<D extends ItemTypeDefinition = ItemTypeDefinition>(itemId: string | ApiTypes.ItemData): Promise<ApiTypes.Item<NoInfer<D>>>;
35
35
  /**
36
36
  * Delete a scheduled unpublishing
37
37
  *
@@ -40,6 +40,6 @@ export default class ScheduledUnpublishing extends BaseResource {
40
40
  * @throws {ApiError}
41
41
  * @throws {TimeoutError}
42
42
  */
43
- rawDestroy<D extends ItemTypeDefinition = ItemTypeDefinition>(itemId: string): Promise<RawApiTypes.ScheduledUnpublishingDestroyTargetSchema<ToItemDefinitionWithNestedBlocks<NoInfer<D>>>>;
43
+ rawDestroy<D extends ItemTypeDefinition = ItemTypeDefinition>(itemId: string): Promise<RawApiTypes.ScheduledUnpublishingDestroyTargetSchema<NoInfer<D>, true>>;
44
44
  }
45
45
  export {};
@@ -1,6 +1,6 @@
1
1
  import * as Utils from '@datocms/rest-client-utils';
2
2
  import BaseResource from '../../BaseResource';
3
- import type { ItemTypeDefinition, ToItemDefinition, ToItemDefinitionWithNestedBlocks } from '../../utilities/itemDefinition';
3
+ import type { ItemTypeDefinition } from '../../utilities/itemDefinition';
4
4
  import type * as ApiTypes from '../ApiTypes';
5
5
  import type * as RawApiTypes from '../RawApiTypes';
6
6
  type NoInfer<T> = [T][T extends any ? 0 : never];
@@ -124,10 +124,10 @@ export default class Upload extends BaseResource {
124
124
  */
125
125
  references<D extends ItemTypeDefinition = ItemTypeDefinition>(uploadId: string | ApiTypes.UploadData, queryParams: ApiTypes.UploadReferencesHrefSchema & {
126
126
  nested: true;
127
- }): Promise<ApiTypes.UploadReferencesTargetSchema<ToItemDefinitionWithNestedBlocks<NoInfer<D>>>>;
127
+ }): Promise<ApiTypes.UploadReferencesTargetSchema<NoInfer<D>, true>>;
128
128
  references<D extends ItemTypeDefinition = ItemTypeDefinition>(uploadId: string | ApiTypes.UploadData, queryParams?: ApiTypes.UploadReferencesHrefSchema & {
129
129
  nested?: false | undefined;
130
- }): Promise<ApiTypes.UploadReferencesTargetSchema<ToItemDefinition<NoInfer<D>>>>;
130
+ }): Promise<ApiTypes.UploadReferencesTargetSchema<NoInfer<D>, false>>;
131
131
  /**
132
132
  * Referenced records
133
133
  *
@@ -138,11 +138,11 @@ export default class Upload extends BaseResource {
138
138
  */
139
139
  rawReferences<D extends ItemTypeDefinition = ItemTypeDefinition>(uploadId: string, queryParams: RawApiTypes.UploadReferencesHrefSchema & {
140
140
  nested: true;
141
- }): Promise<RawApiTypes.UploadReferencesTargetSchema<ToItemDefinitionWithNestedBlocks<NoInfer<D>>>>;
141
+ }): Promise<RawApiTypes.UploadReferencesTargetSchema<NoInfer<D>, true>>;
142
142
  rawReferences<D extends ItemTypeDefinition = ItemTypeDefinition>(uploadId: string, queryParams?: RawApiTypes.UploadReferencesHrefSchema & {
143
143
  nested?: false | undefined;
144
- }): Promise<RawApiTypes.UploadReferencesTargetSchema<ToItemDefinition<NoInfer<D>>>>;
145
- rawReferences<D extends ItemTypeDefinition = ItemTypeDefinition>(uploadId: string, queryParams?: RawApiTypes.UploadReferencesHrefSchema): Promise<RawApiTypes.UploadReferencesTargetSchema<ToItemDefinitionWithNestedBlocks<NoInfer<D>>>>;
144
+ }): Promise<RawApiTypes.UploadReferencesTargetSchema<NoInfer<D>, false>>;
145
+ rawReferences<D extends ItemTypeDefinition = ItemTypeDefinition>(uploadId: string, queryParams?: RawApiTypes.UploadReferencesHrefSchema): Promise<RawApiTypes.UploadReferencesTargetSchema<NoInfer<D>, true>>;
146
146
  /**
147
147
  * Add tags to assets in bulk
148
148
  *
@@ -1,17 +1,18 @@
1
1
  export { ApiError, LogLevel, TimeoutError } from '@datocms/rest-client-utils';
2
2
  export * from './buildClient';
3
+ export * from './fieldTypes';
3
4
  export { Client } from './generated/Client';
4
5
  export type { ClientConfigOptions } from './generated/Client';
5
6
  export * as Resources from './generated/resources';
6
- export * from './utilities/blocks';
7
7
  export * from './utilities/buildBlockRecord';
8
+ export * from './utilities/duplicateBlockRecord';
8
9
  export * from './utilities/fieldsContainingReferences';
9
- export * from './utilities/fieldValue';
10
10
  export * from './utilities/id';
11
+ export * from './utilities/inspectItem';
12
+ export * from './utilities/itemDefinition';
13
+ export * from './utilities/normalizedFieldValues';
11
14
  export * from './utilities/recursiveBlocks';
12
15
  export * from './utilities/schemaRepository';
13
- export * from './utilities/itemDefinition';
14
- export * from './fieldTypes';
15
16
  export type { ApiTypes, RawApiTypes };
16
17
  export type { ApiTypes as SchemaTypes, RawApiTypes as SimpleSchemaTypes };
17
18
  import type * as ApiTypes from './generated/ApiTypes';
@@ -1,8 +1,6 @@
1
- import type { ItemWithOptionalIdAndMeta, NewBlockInARequest } from '../fieldTypes';
1
+ import type { NewBlockInRequest } from '../fieldTypes';
2
2
  import type * as ApiTypes from '../generated/ApiTypes';
3
- import type { ItemTypeDefinition, ToItemDefinitionAsRequest, ToItemDefinitionWithNestedBlocks } from './itemDefinition';
4
- import type { SchemaRepository } from './schemaRepository';
3
+ import type { ItemTypeDefinition } from './itemDefinition';
5
4
  type NoInfer<T> = [T][T extends any ? 0 : never];
6
- export declare function buildBlockRecord<D extends ItemTypeDefinition = ItemTypeDefinition>(body: ApiTypes.ItemUpdateSchema<ToItemDefinitionAsRequest<NoInfer<D>>>): NewBlockInARequest<ToItemDefinitionAsRequest<NoInfer<D>>>;
7
- export declare function duplicateBlockRecord<D extends ItemTypeDefinition = ItemTypeDefinition>(existingBlock: ItemWithOptionalIdAndMeta<ToItemDefinitionWithNestedBlocks<NoInfer<D>>>, schemaRepository: SchemaRepository): Promise<NewBlockInARequest<ToItemDefinitionAsRequest<NoInfer<D>>>>;
5
+ export declare function buildBlockRecord<D extends ItemTypeDefinition = ItemTypeDefinition>(body: ApiTypes.ItemUpdateSchema<NoInfer<D>>): NewBlockInRequest<NoInfer<D>>;
8
6
  export {};
@@ -0,0 +1,6 @@
1
+ import type { ItemWithOptionalIdAndMeta, NewBlockInRequest } from '../fieldTypes';
2
+ import type { ItemTypeDefinition } from './itemDefinition';
3
+ import type { SchemaRepository } from './schemaRepository';
4
+ type NoInfer<T> = [T][T extends any ? 0 : never];
5
+ export declare function duplicateBlockRecord<D extends ItemTypeDefinition = ItemTypeDefinition>(existingBlock: ItemWithOptionalIdAndMeta<NoInfer<D>>, schemaRepository: SchemaRepository): Promise<NewBlockInRequest<NoInfer<D>>>;
6
+ export {};
@@ -0,0 +1,8 @@
1
+ import { type NewBlockInRequest, type UpdatedBlockInRequest } from '../fieldTypes';
2
+ import type { ApiTypes, RawApiTypes } from '../index';
3
+ type Item = ApiTypes.Item | RawApiTypes.Item | NewBlockInRequest | UpdatedBlockInRequest | RawApiTypes.ItemCreateSchema | RawApiTypes.ItemUpdateSchema | ApiTypes.ItemCreateSchema | ApiTypes.ItemUpdateSchema;
4
+ export type InspectItemOptions = {
5
+ maxWidth?: number;
6
+ };
7
+ export declare function inspectItem(item: Item, options?: InspectItemOptions): string;
8
+ export {};
@@ -1,5 +1,5 @@
1
- import type { BooleanFieldValue, ColorFieldValue, DateFieldValue, DateTimeFieldValue, FileFieldValue, FloatFieldValue, GalleryFieldValue, IntegerFieldValue, JsonFieldValue, LatLonFieldValue, LinkFieldValue, LinksFieldValue, RichTextFieldValue, RichTextFieldValueAsRequest, RichTextFieldValueWithNestedBlocks, SeoFieldValue, SingleBlockFieldValue, SingleBlockFieldValueAsRequest, SingleBlockFieldValueWithNestedBlocks, SlugFieldValue, StringFieldValue, StructuredTextFieldValue, StructuredTextFieldValueAsRequest, StructuredTextFieldValueWithNestedBlocks, TextFieldValue, VideoFieldValue } from '../fieldTypes';
2
- import type { LocalizedFieldValue } from './fieldValue';
1
+ import type { BlockInNestedResponse, BlockInRequest, BooleanFieldValue, ColorFieldValue, DateFieldValue, DateTimeFieldValue, FileFieldValue, FileFieldValueInRequest, FloatFieldValue, GalleryFieldValue, GalleryFieldValueInRequest, IntegerFieldValue, JsonFieldValue, LatLonFieldValue, LinkFieldValue, LinksFieldValue, RichTextFieldValue, RichTextFieldValueInNestedResponse, RichTextFieldValueInRequest, SeoFieldValue, SingleBlockFieldValue, SingleBlockFieldValueInNestedResponse, SingleBlockFieldValueInRequest, SlugFieldValue, StringFieldValue, StructuredTextFieldValue, StructuredTextFieldValueInNestedResponse, StructuredTextFieldValueInRequest, TextFieldValue, VideoFieldValue } from '../fieldTypes';
2
+ import type { LocalizedFieldValue } from './normalizedFieldValues';
3
3
  /** Base field definition */
4
4
  type BaseFieldDefinition<Type extends string> = {
5
5
  type: Type;
@@ -27,12 +27,7 @@ export type ItemTypeDefinition<Settings extends {
27
27
  itemTypeId: ItemTypeId;
28
28
  fields: FieldDefinitions;
29
29
  };
30
- /** Item definition */
31
- export type ItemDefinition<ItemTypeId extends string = string, FieldValues extends Record<string, unknown> = Record<string, unknown>> = {
32
- itemTypeId: ItemTypeId;
33
- fields: FieldValues;
34
- };
35
- /** Standard field values */
30
+ /** Standard field values (response format) */
36
31
  type FieldTypeToValue = {
37
32
  boolean: BooleanFieldValue;
38
33
  color: ColorFieldValue;
@@ -56,32 +51,59 @@ type FieldTypeToValue = {
56
51
  video: VideoFieldValue;
57
52
  unknown: unknown;
58
53
  };
54
+ /** Request field values (request format with optional metadata) */
55
+ type FieldTypeToValueInRequest = {
56
+ boolean: BooleanFieldValue;
57
+ color: ColorFieldValue;
58
+ date: DateFieldValue;
59
+ date_time: DateTimeFieldValue;
60
+ file: FileFieldValueInRequest;
61
+ float: FloatFieldValue;
62
+ gallery: GalleryFieldValueInRequest;
63
+ integer: IntegerFieldValue;
64
+ json: JsonFieldValue;
65
+ lat_lon: LatLonFieldValue;
66
+ link: LinkFieldValue;
67
+ links: LinksFieldValue;
68
+ rich_text: RichTextFieldValueInRequest;
69
+ seo: SeoFieldValue;
70
+ single_block: SingleBlockFieldValueInRequest;
71
+ slug: SlugFieldValue;
72
+ string: StringFieldValue;
73
+ structured_text: StructuredTextFieldValueInRequest;
74
+ text: TextFieldValue;
75
+ video: VideoFieldValue;
76
+ unknown: unknown;
77
+ };
59
78
  /** Localized wrapper */
60
79
  type LocalizeIfNeeded<T extends FieldDefinition, Value, Locales extends string> = T extends {
61
80
  localized: true;
62
81
  } ? LocalizedFieldValue<Value, Locales> : Value;
63
82
  /** Standard mapping */
64
83
  type FieldDefinitionToFieldValue<T extends FieldDefinition, Locales extends string> = LocalizeIfNeeded<T, FieldTypeToValue[T['type']], Locales>;
65
- /** AsRequest mapping (block fields become generic over allowed blocks) */
66
- type FieldDefinitionToFieldValueAsRequest<T extends FieldDefinition, Locales extends string> = T extends RichTextFieldDefinition<infer B> ? LocalizeIfNeeded<T, RichTextFieldValueAsRequest<ToItemDefinitionAsRequest<B>>, Locales> : T extends SingleBlockFieldDefinition<infer B> ? LocalizeIfNeeded<T, SingleBlockFieldValueAsRequest<ToItemDefinitionAsRequest<B>>, Locales> : T extends StructuredTextFieldDefinition<infer B, infer I> ? LocalizeIfNeeded<T, StructuredTextFieldValueAsRequest<T extends {
84
+ /** InRequest mapping (block fields become generic over allowed blocks) */
85
+ type FieldDefinitionToFieldValueInRequest<T extends FieldDefinition, Locales extends string> = T extends RichTextFieldDefinition<infer B> ? LocalizeIfNeeded<T, RichTextFieldValueInRequest<B>, Locales> : T extends SingleBlockFieldDefinition<infer B> ? LocalizeIfNeeded<T, SingleBlockFieldValueInRequest<B>, Locales> : T extends StructuredTextFieldDefinition<infer B, infer I> ? LocalizeIfNeeded<T, StructuredTextFieldValueInRequest<T extends {
67
86
  blocks: any;
68
- } ? ToItemDefinitionAsRequest<B> : never, T extends {
87
+ } ? B : never, T extends {
69
88
  inline_blocks: any;
70
- } ? ToItemDefinitionAsRequest<I> : never>, Locales> : LocalizeIfNeeded<T, FieldTypeToValue[T['type']], Locales>;
71
- type FieldDefinitionToFieldValueWithNestedBlocks<T extends FieldDefinition, Locales extends string> = T extends RichTextFieldDefinition<infer B> ? LocalizeIfNeeded<T, RichTextFieldValueWithNestedBlocks<ToItemDefinitionWithNestedBlocks<B>>, Locales> : T extends SingleBlockFieldDefinition<infer B> ? LocalizeIfNeeded<T, SingleBlockFieldValueWithNestedBlocks<ToItemDefinitionWithNestedBlocks<B>>, Locales> : T extends StructuredTextFieldDefinition<infer B, infer I> ? LocalizeIfNeeded<T, StructuredTextFieldValueWithNestedBlocks<T extends {
89
+ } ? I : never>, Locales> : LocalizeIfNeeded<T, FieldTypeToValueInRequest[T['type']], Locales>;
90
+ type FieldDefinitionToFieldValueInNestedResponse<T extends FieldDefinition, Locales extends string> = T extends RichTextFieldDefinition<infer B> ? LocalizeIfNeeded<T, RichTextFieldValueInNestedResponse<B>, Locales> : T extends SingleBlockFieldDefinition<infer B> ? LocalizeIfNeeded<T, SingleBlockFieldValueInNestedResponse<B>, Locales> : T extends StructuredTextFieldDefinition<infer B, infer I> ? LocalizeIfNeeded<T, StructuredTextFieldValueInNestedResponse<T extends {
72
91
  blocks: any;
73
- } ? ToItemDefinitionWithNestedBlocks<B> : never, T extends {
92
+ } ? B : never, T extends {
74
93
  inline_blocks: any;
75
- } ? ToItemDefinitionWithNestedBlocks<I> : never>, Locales> : LocalizeIfNeeded<T, FieldTypeToValue[T['type']], Locales>;
94
+ } ? I : never>, Locales> : LocalizeIfNeeded<T, FieldTypeToValue[T['type']], Locales>;
76
95
  /** Transformers */
77
- export type ToItemDefinition<T extends ItemTypeDefinition<any, any, any>> = T extends ItemTypeDefinition<infer Settings, infer ItemTypeId, infer Fields> ? keyof Fields extends never ? ItemDefinition<ItemTypeId> : ItemDefinition<ItemTypeId, {
96
+ export type ToItemAttributes<T extends ItemTypeDefinition<any, any, any>> = T extends ItemTypeDefinition<infer Settings, infer ItemTypeId, infer Fields> ? keyof Fields extends never ? Record<string, unknown> : {
78
97
  [K in keyof Fields]: Fields[K] extends FieldDefinition ? FieldDefinitionToFieldValue<Fields[K], Settings['locales']> : never;
98
+ } : never;
99
+ export type ToItemAttributesInRequest<T extends ItemTypeDefinition<any, any, any>> = T extends ItemTypeDefinition<infer Settings, infer ItemTypeId, infer Fields> ? keyof Fields extends never ? Record<string, unknown> : Partial<{
100
+ [K in keyof Fields]: Fields[K] extends FieldDefinition ? FieldDefinitionToFieldValueInRequest<Fields[K], Settings['locales']> : never;
79
101
  }> : never;
80
- export type ToItemDefinitionAsRequest<T extends ItemTypeDefinition<any, any, any>> = T extends ItemTypeDefinition<infer Settings, infer ItemTypeId, infer Fields> ? keyof Fields extends never ? ItemDefinition<ItemTypeId> : ItemDefinition<ItemTypeId, Partial<{
81
- [K in keyof Fields]: Fields[K] extends FieldDefinition ? FieldDefinitionToFieldValueAsRequest<Fields[K], Settings['locales']> : never;
82
- }>> : never;
83
- export type ToItemDefinitionWithNestedBlocks<T extends ItemTypeDefinition<any, any, any>> = T extends ItemTypeDefinition<infer Settings, infer ItemTypeId, infer Fields> ? keyof Fields extends never ? ItemDefinition<ItemTypeId> : ItemDefinition<ItemTypeId, {
84
- [K in keyof Fields]: Fields[K] extends FieldDefinition ? FieldDefinitionToFieldValueWithNestedBlocks<Fields[K], Settings['locales']> : never;
85
- }> : never;
86
- export type UnknownField = Record<string, unknown>;
102
+ export type ToItemAttributesInNestedResponse<T extends ItemTypeDefinition<any, any, any>> = T extends ItemTypeDefinition<infer Settings, infer ItemTypeId, infer Fields> ? keyof Fields extends never ? Record<string, unknown> : {
103
+ [K in keyof Fields]: Fields[K] extends FieldDefinition ? FieldDefinitionToFieldValueInNestedResponse<Fields[K], Settings['locales']> : never;
104
+ } : never;
105
+ type NestedItemTypeDefinitions<T extends ItemTypeDefinition<any, any, any>, Seen extends string = never> = T extends ItemTypeDefinition<any, infer Id, infer Fields> ? Id extends Seen ? never : {
106
+ [K in keyof Fields]: Fields[K] extends RichTextFieldDefinition<infer B> ? B | NestedItemTypeDefinitions<B, Seen | Id> : Fields[K] extends SingleBlockFieldDefinition<infer B> ? B | NestedItemTypeDefinitions<B, Seen | Id> : Fields[K] extends StructuredTextFieldDefinition<infer B, infer I> ? B | I | NestedItemTypeDefinitions<B, Seen | Id> | NestedItemTypeDefinitions<I, Seen | Id> : never;
107
+ }[keyof Fields] : never;
108
+ export type ExtractNestedBlocksFromFieldValue<T> = T extends RichTextFieldValueInNestedResponse<infer D> ? BlockInNestedResponse<D> | BlockInNestedResponse<NestedItemTypeDefinitions<D>> : T extends SingleBlockFieldValueInNestedResponse<infer D> ? BlockInNestedResponse<D> | BlockInNestedResponse<NestedItemTypeDefinitions<D>> : T extends StructuredTextFieldValueInNestedResponse<infer DB, infer DI> ? BlockInNestedResponse<DB> | BlockInNestedResponse<NestedItemTypeDefinitions<DB>> | BlockInNestedResponse<DI> | BlockInNestedResponse<NestedItemTypeDefinitions<DI>> : T extends StructuredTextFieldValueInNestedResponse<infer D> ? BlockInNestedResponse<D> | BlockInNestedResponse<NestedItemTypeDefinitions<D>> : T extends RichTextFieldValueInRequest<infer D> ? BlockInRequest<D> | BlockInRequest<NestedItemTypeDefinitions<D>> : T extends SingleBlockFieldValueInRequest<infer D> ? BlockInRequest<D> | BlockInRequest<NestedItemTypeDefinitions<D>> : T extends StructuredTextFieldValueInRequest<infer DB, infer DI> ? BlockInRequest<DB> | BlockInRequest<NestedItemTypeDefinitions<DB>> | BlockInRequest<DI> | BlockInRequest<NestedItemTypeDefinitions<DI>> : T extends StructuredTextFieldValueInRequest<infer D> ? BlockInRequest<D> | BlockInRequest<NestedItemTypeDefinitions<D>> : never;
87
109
  export {};
@@ -0,0 +1,114 @@
1
+ /**
2
+ * DatoCMS Block Field Value Processing Utilities
3
+ *
4
+ * This utility provides a unified interface for working with blocks embedded within DatoCMS field values.
5
+ * DatoCMS supports three field types that can contain blocks:
6
+ * - Modular Content fields: arrays of blocks
7
+ * - Single Block fields: a single block
8
+ * - Structured Text fields: complex document structures with embedded blocks
9
+ *
10
+ * The challenge this solves: Each field type stores blocks differently and requires different
11
+ * traversal logic, making it complex to perform operations like transformations, filtering,
12
+ * or searching across blocks regardless of their containing field type.
13
+ *
14
+ * This utility abstracts away these differences, providing a consistent API to:
15
+ * - Visit/iterate through all blocks in any field type
16
+ * - Transform blocks while preserving field structure
17
+ * - Filter blocks based on conditions
18
+ * - Search for specific blocks
19
+ * - Perform functional operations (map, reduce, some, every)
20
+ *
21
+ * All functions come in both sync and async variants to support different use cases,
22
+ * particularly useful when block transformations require async operations like API calls.
23
+ */
24
+ import { type TreePath } from 'datocms-structured-text-utils';
25
+ import type { BlockInRequest } from '../fieldTypes';
26
+ import type * as ApiTypes from '../generated/ApiTypes';
27
+ /**
28
+ * Visit every block in a field value, calling the visitor function for each block found.
29
+ * Supports rich text, single block, and structured text field types.
30
+ *
31
+ * @param fieldType - The type of DatoCMS field definition that determines how the value is processed
32
+ * @param nonLocalizedFieldValue - The non-localized field value containing blocks to visit
33
+ * @param visitor - Asynchronous function called for each block. Receives the block item and its path
34
+ * @returns Promise that resolves when all blocks have been visited
35
+ */
36
+ export declare function nonRecursiveVisitBlocksInNonLocalizedFieldValueAsync(fieldType: ApiTypes.Field['field_type'], nonLocalizedFieldValue: unknown, visitor: (item: BlockInRequest, path: TreePath) => Promise<void>): Promise<void>;
37
+ /**
38
+ * Transform blocks in a field value by applying a mapping function to each block.
39
+ * Creates a new field value structure with transformed blocks while preserving the original structure.
40
+ * Supports rich text, single block, and structured text field types.
41
+ *
42
+ * @param fieldType - The type of DatoCMS field definition that determines how the value is processed
43
+ * @param nonLocalizedFieldValue - The non-localized field value containing blocks to transform
44
+ * @param mapper - Synchronous function that transforms each block. Receives block item and path, returns new block
45
+ * @returns The new field value with transformed blocks
46
+ */
47
+ export declare function nonRecursiveMapBlocksInNonLocalizedFieldValue(fieldType: ApiTypes.Field['field_type'], nonLocalizedFieldValue: unknown, mapper: (item: BlockInRequest, path: TreePath) => BlockInRequest): unknown;
48
+ /**
49
+ * Transform blocks in a field value by applying a mapping function to each block.
50
+ * Creates a new field value structure with transformed blocks while preserving the original structure.
51
+ * Supports rich text, single block, and structured text field types.
52
+ *
53
+ * @param fieldType - The type of DatoCMS field definition that determines how the value is processed
54
+ * @param nonLocalizedFieldValue - The non-localized field value containing blocks to transform
55
+ * @param mapper - Asynchronous function that transforms each block. Receives block item and path, returns new block
56
+ * @returns Promise that resolves to the new field value with transformed blocks
57
+ */
58
+ export declare function nonRecursiveMapBlocksInNonLocalizedFieldValueAsync(fieldType: ApiTypes.Field['field_type'], nonLocalizedFieldValue: unknown, mapper: (item: BlockInRequest, path: TreePath) => Promise<BlockInRequest>): Promise<unknown>;
59
+ /**
60
+ * Find all blocks that match the predicate function.
61
+ * Searches through all blocks in the non-localized field value and returns all matches.
62
+ *
63
+ * @param fieldType - The type of DatoCMS field definition that determines how the value is processed
64
+ * @param nonLocalizedFieldValue - The non-localized field value containing blocks to search
65
+ * @param predicate - Asynchronous function that tests each block. Should return true for matching blocks
66
+ * @returns Promise that resolves to an array of objects, each containing a matching block and its path
67
+ */
68
+ export declare function nonRecursiveFindAllBlocksInNonLocalizedFieldValueAsync(fieldType: ApiTypes.Field['field_type'], nonLocalizedFieldValue: unknown, predicate: (item: BlockInRequest, path: TreePath) => Promise<boolean>): Promise<Array<{
69
+ item: BlockInRequest;
70
+ path: TreePath;
71
+ }>>;
72
+ /**
73
+ * Filter blocks in a field value, removing those that don't match the predicate.
74
+ * Creates a new field value containing only blocks that pass the predicate test.
75
+ * Preserves the original field value structure and hierarchy.
76
+ *
77
+ * @param fieldType - The type of DatoCMS field definition that determines how the value is processed
78
+ * @param nonLocalizedFieldValue - The non-localized field value containing blocks to filter
79
+ * @param predicate - Asynchronous function that tests each block. Blocks returning false are removed
80
+ * @returns Promise that resolves to the new field value with filtered blocks
81
+ */
82
+ export declare function nonRecursiveFilterBlocksInNonLocalizedFieldValueAsync(fieldType: ApiTypes.Field['field_type'], nonLocalizedFieldValue: unknown, predicate: (item: BlockInRequest, path: TreePath) => Promise<boolean>): Promise<unknown>;
83
+ /**
84
+ * Reduce all blocks in a field value to a single value by applying a reducer function.
85
+ * Processes each block in the non-localized field value and accumulates the results into a single value.
86
+ *
87
+ * @template R - The type of the accumulated result
88
+ * @param fieldType - The type of DatoCMS field definition that determines how the value is processed
89
+ * @param nonLocalizedFieldValue - The non-localized field value containing blocks to reduce
90
+ * @param reducer - Asynchronous function that processes each block and updates the accumulator
91
+ * @param initialValue - The initial value for the accumulator
92
+ * @returns Promise that resolves to the final accumulated value
93
+ */
94
+ export declare function nonRecursiveReduceBlocksInNonLocalizedFieldValueAsync<R>(fieldType: ApiTypes.Field['field_type'], nonLocalizedFieldValue: unknown, reducer: (accumulator: R, item: BlockInRequest, path: TreePath) => Promise<R>, initialValue: R): Promise<R>;
95
+ /**
96
+ * Check if any block in the non-localized field value matches the predicate function.
97
+ * Returns true as soon as the first matching block is found (short-circuit evaluation).
98
+ *
99
+ * @param fieldType - The type of DatoCMS field definition that determines how the value is processed
100
+ * @param nonLocalizedFieldValue - The non-localized field value containing blocks to test
101
+ * @param predicate - Asynchronous function that tests each block. Should return true for matching blocks
102
+ * @returns Promise that resolves to true if any block matches, false otherwise
103
+ */
104
+ export declare function nonRecursiveSomeBlocksInNonLocalizedFieldValueAsync(fieldType: ApiTypes.Field['field_type'], nonLocalizedFieldValue: unknown, predicate: (item: BlockInRequest, path: TreePath) => Promise<boolean>): Promise<boolean>;
105
+ /**
106
+ * Check if every block in the non-localized field value matches the predicate function.
107
+ * Returns false as soon as the first non-matching block is found (short-circuit evaluation).
108
+ *
109
+ * @param fieldType - The type of DatoCMS field definition that determines how the value is processed
110
+ * @param nonLocalizedFieldValue - The non-localized field value containing blocks to test
111
+ * @param predicate - Asynchronous function that tests each block. Should return true for valid blocks
112
+ * @returns Promise that resolves to true if all blocks match, false otherwise
113
+ */
114
+ export declare function nonRecursiveEveryBlockInNonLocalizedFieldValueAsync(fieldType: ApiTypes.Field['field_type'], nonLocalizedFieldValue: unknown, predicate: (item: BlockInRequest, path: TreePath) => Promise<boolean>): Promise<boolean>;