ochre-sdk 1.0.76 → 1.0.78

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 (42) hide show
  1. package/dist/constants.d.mts +13 -14
  2. package/dist/fetchers/gallery.d.mts +2 -3
  3. package/dist/fetchers/gallery.mjs +2 -1
  4. package/dist/fetchers/item-children.d.mts +3 -4
  5. package/dist/fetchers/item-children.mjs +2 -1
  6. package/dist/fetchers/item-links.d.mts +2 -3
  7. package/dist/fetchers/item-links.mjs +2 -1
  8. package/dist/fetchers/item-ocr-data.d.mts +2 -3
  9. package/dist/fetchers/item.d.mts +7 -8
  10. package/dist/fetchers/item.mjs +2 -1
  11. package/dist/fetchers/set/items.d.mts +2 -3
  12. package/dist/fetchers/set/items.mjs +2 -1
  13. package/dist/fetchers/set/property-values.d.mts +2 -3
  14. package/dist/fetchers/set/property-values.mjs +56 -49
  15. package/dist/fetchers/website-metadata.d.mts +2 -3
  16. package/dist/fetchers/website.d.mts +2 -3
  17. package/dist/getters.d.mts +40 -41
  18. package/dist/getters.mjs +6 -31
  19. package/dist/helpers.d.mts +3 -4
  20. package/dist/parsers/helpers.d.mts +16 -17
  21. package/dist/parsers/index.d.mts +19 -19
  22. package/dist/parsers/index.mjs +65 -48
  23. package/dist/parsers/mdx.d.mts +3 -4
  24. package/dist/parsers/multilingual.d.mts +9 -10
  25. package/dist/parsers/string.d.mts +5 -6
  26. package/dist/parsers/string.mjs +124 -146
  27. package/dist/parsers/website/index.d.mts +4 -5
  28. package/dist/parsers/website/index.mjs +598 -637
  29. package/dist/parsers/website/reader.d.mts +3 -4
  30. package/dist/query.d.mts +3 -4
  31. package/dist/schemas.d.mts +9 -10
  32. package/dist/types/index.d.mts +118 -119
  33. package/dist/types/website.d.mts +36 -38
  34. package/dist/utilities.d.mts +9 -10
  35. package/dist/utilities.mjs +28 -25
  36. package/dist/xml/dates.d.mts +13 -0
  37. package/dist/xml/dates.mjs +49 -0
  38. package/dist/xml/metadata.d.mts +3 -4
  39. package/dist/xml/schemas.d.mts +8 -9
  40. package/dist/xml/schemas.mjs +20 -27
  41. package/dist/xml/types.d.mts +129 -131
  42. package/package.json +13 -12
@@ -1,55 +1,55 @@
1
1
  import { MultilingualString } from "../parsers/multilingual.mjs";
2
2
  import { Webpage } from "./website.mjs";
3
3
  //#region src/types/index.d.ts
4
- type Prettify<T> = { [K in keyof T]: T[K]; } & {};
4
+ export type Prettify<T> = { [K in keyof T]: T[K]; } & {};
5
5
  /**
6
6
  * Language-code tuple or array used by OCHRE multilingual fields.
7
7
  *
8
8
  * Use the default when the consumer does not need to narrow a value to a
9
9
  * specific language tuple.
10
10
  */
11
- type LanguageCodes = ReadonlyArray<string>;
11
+ export type LanguageCodes = ReadonlyArray<string>;
12
12
  /**
13
13
  * The category of an item in OCHRE
14
14
  */
15
- type ItemCategory = "tree" | "bibliography" | "concept" | "spatialUnit" | "period" | "person" | "propertyVariable" | "propertyValue" | "resource" | "text" | "set";
15
+ export type ItemCategory = "tree" | "bibliography" | "concept" | "spatialUnit" | "period" | "person" | "propertyVariable" | "propertyValue" | "resource" | "text" | "set";
16
16
  /**
17
17
  * OCHRE item categories that can contain other items in API payloads.
18
18
  */
19
- type ItemContainerCategory = Extract<ItemCategory, "tree" | "set">;
19
+ export type ItemContainerCategory = Extract<ItemCategory, "tree" | "set">;
20
20
  /**
21
21
  * OCHRE item categories that expose recursive embedded item payloads.
22
22
  */
23
- type ItemCategoryWithEmbeddedItems = Extract<ItemCategory, "tree" | "bibliography" | "concept" | "spatialUnit" | "period" | "resource" | "set">;
23
+ export type ItemCategoryWithEmbeddedItems = Extract<ItemCategory, "tree" | "bibliography" | "concept" | "spatialUnit" | "period" | "resource" | "set">;
24
24
  /**
25
25
  * The category of items in a Tree
26
26
  */
27
- type TreeItemCategory = Exclude<ItemCategory, "tree">;
27
+ export type TreeItemCategory = Exclude<ItemCategory, "tree">;
28
28
  /**
29
29
  * The category of items in a Set
30
30
  */
31
- type SetItemCategory = ItemCategory;
32
- type ItemCategoryOption<U extends ItemCategory = ItemCategory> = U | ReadonlyArray<U>;
33
- type ItemCategoryFromOption<U extends ItemCategoryOption | undefined = undefined> = U extends ReadonlyArray<infer V> ? Extract<V, ItemCategory> : U extends ItemCategory ? U : ItemCategory;
34
- type ContainedItemCategory<U extends ItemCategory = ItemCategory> = U extends "tree" ? TreeItemCategory : U extends "set" ? SetItemCategory : never;
35
- type ContainedItemCategoryOption<U extends ItemCategory = ItemCategory> = U extends "tree" ? TreeItemCategory : U extends "set" ? SetItemCategory | ReadonlyArray<SetItemCategory> : never;
36
- type ContainedItemCategoryFromOption<U extends ItemCategory = ItemCategory, V extends ContainedItemCategoryOption<U> | undefined = undefined> = V extends ReadonlyArray<infer W> ? Extract<W, ContainedItemCategory<U>> : V extends ContainedItemCategory<U> ? V : ContainedItemCategory<U>;
31
+ export type SetItemCategory = ItemCategory;
32
+ export type ItemCategoryOption<U extends ItemCategory = ItemCategory> = U | ReadonlyArray<U>;
33
+ export type ItemCategoryFromOption<U extends ItemCategoryOption | undefined = undefined> = U extends ReadonlyArray<infer V> ? Extract<V, ItemCategory> : U extends ItemCategory ? U : ItemCategory;
34
+ export type ContainedItemCategory<U extends ItemCategory = ItemCategory> = U extends "tree" ? TreeItemCategory : U extends "set" ? SetItemCategory : never;
35
+ export type ContainedItemCategoryOption<U extends ItemCategory = ItemCategory> = U extends "tree" ? TreeItemCategory : U extends "set" ? SetItemCategory | ReadonlyArray<SetItemCategory> : never;
36
+ export type ContainedItemCategoryFromOption<U extends ItemCategory = ItemCategory, V extends ContainedItemCategoryOption<U> | undefined = undefined> = V extends ReadonlyArray<infer W> ? Extract<W, ContainedItemCategory<U>> : V extends ContainedItemCategory<U> ? V : ContainedItemCategory<U>;
37
37
  /**
38
38
  * The category of items in a heading
39
39
  */
40
- type HeadingItemCategory = Exclude<ItemCategory, "tree" | "bibliography" | "spatialUnit" | "concept" | "period">;
40
+ export type HeadingItemCategory = Exclude<ItemCategory, "tree" | "bibliography" | "spatialUnit" | "concept" | "period">;
41
41
  /**
42
42
  * The category of items that expose recursive subitem structures.
43
43
  */
44
- type RecursiveItemCategory = Exclude<ItemCategory, "tree" | "person" | "propertyVariable" | "propertyValue" | "set">;
44
+ export type RecursiveItemCategory = Exclude<ItemCategory, "tree" | "person" | "propertyVariable" | "propertyValue" | "set">;
45
45
  /**
46
46
  * The category names that can appear in OCHRE context paths
47
47
  */
48
- type ContextItemCategory = Exclude<ItemCategory, "tree" | "person" | "set">;
48
+ export type ContextItemCategory = Exclude<ItemCategory, "tree" | "person" | "set">;
49
49
  /**
50
50
  * Basic identification information
51
51
  */
52
- type Identification<T extends LanguageCodes = LanguageCodes> = {
52
+ export type Identification<T extends LanguageCodes = LanguageCodes> = {
53
53
  label: MultilingualString<T>;
54
54
  abbreviation: MultilingualString<T> | null;
55
55
  code: string | null;
@@ -59,7 +59,7 @@ type Identification<T extends LanguageCodes = LanguageCodes> = {
59
59
  /**
60
60
  * Metadata in OCHRE
61
61
  */
62
- type Metadata<T extends LanguageCodes = LanguageCodes> = {
62
+ export type Metadata<T extends LanguageCodes = LanguageCodes> = {
63
63
  dataset: string;
64
64
  description: string;
65
65
  publisher: string;
@@ -90,7 +90,7 @@ type Metadata<T extends LanguageCodes = LanguageCodes> = {
90
90
  defaultLanguage: T[number];
91
91
  languages: T;
92
92
  };
93
- type BelongsTo = {
93
+ export type BelongsTo = {
94
94
  uuid: string;
95
95
  abbreviation: string;
96
96
  };
@@ -100,7 +100,7 @@ type BelongsTo = {
100
100
  * Direct children of standalone non-Tree items are shallow. Items parsed from
101
101
  * Trees still use "embedded" and can expose recursive descendants.
102
102
  */
103
- type ItemPayloadKind = "topLevel" | "embedded" | "standaloneChild";
103
+ export type ItemPayloadKind = "topLevel" | "embedded" | "standaloneChild";
104
104
  type RecursiveChildPayloadKind<U extends ItemPayloadKind> = U extends "topLevel" ? "standaloneChild" : "embedded";
105
105
  type RecursiveItemChildren<U extends ItemPayloadKind, V> = U extends "standaloneChild" ? Array<never> : Array<V>;
106
106
  type ItemEnvelopeFields<T extends LanguageCodes, U extends ItemPayloadKind> = U extends "topLevel" ? {
@@ -115,14 +115,14 @@ type ItemEnvelopeFields<T extends LanguageCodes, U extends ItemPayloadKind> = U
115
115
  /**
116
116
  * License in OCHRE
117
117
  */
118
- type License = {
118
+ export type License = {
119
119
  content: string;
120
120
  target: string | null;
121
121
  };
122
122
  /**
123
123
  * Context item in OCHRE
124
124
  */
125
- type ContextItem = {
125
+ export type ContextItem = {
126
126
  uuid: string | null;
127
127
  publicationDateTime: Date | null;
128
128
  index: number;
@@ -131,7 +131,7 @@ type ContextItem = {
131
131
  /**
132
132
  * Context node in OCHRE
133
133
  */
134
- type ContextNode<U extends ContextItemCategory = ContextItemCategory> = {
134
+ export type ContextNode<U extends ContextItemCategory = ContextItemCategory> = {
135
135
  tree: ContextItem;
136
136
  project: ContextItem;
137
137
  heading: Array<ContextItem>;
@@ -139,14 +139,14 @@ type ContextNode<U extends ContextItemCategory = ContextItemCategory> = {
139
139
  /**
140
140
  * Context in OCHRE
141
141
  */
142
- type Context<U extends ContextItemCategory = ContextItemCategory> = {
142
+ export type Context<U extends ContextItemCategory = ContextItemCategory> = {
143
143
  nodes: Array<ContextNode<U>>;
144
144
  displayPath: string;
145
145
  };
146
146
  /**
147
147
  * Event in OCHRE
148
148
  */
149
- type Event<T extends LanguageCodes = LanguageCodes> = {
149
+ export type Event<T extends LanguageCodes = LanguageCodes> = {
150
150
  date: Date | {
151
151
  start: Date;
152
152
  end: Date;
@@ -172,7 +172,7 @@ type Event<T extends LanguageCodes = LanguageCodes> = {
172
172
  /**
173
173
  * Source of coordinates in OCHRE
174
174
  */
175
- type CoordinatesSource<T extends LanguageCodes = LanguageCodes> = {
175
+ export type CoordinatesSource<T extends LanguageCodes = LanguageCodes> = {
176
176
  context: "self";
177
177
  uuid: string;
178
178
  label: MultilingualString<T>;
@@ -193,7 +193,7 @@ type CoordinatesSource<T extends LanguageCodes = LanguageCodes> = {
193
193
  /**
194
194
  * Coordinates in OCHRE
195
195
  */
196
- type Coordinates<T extends LanguageCodes = LanguageCodes> = {
196
+ export type Coordinates<T extends LanguageCodes = LanguageCodes> = {
197
197
  type: "point";
198
198
  latitude: number;
199
199
  longitude: number;
@@ -214,7 +214,7 @@ type Coordinates<T extends LanguageCodes = LanguageCodes> = {
214
214
  /**
215
215
  * Image in OCHRE
216
216
  */
217
- type Image<T extends LanguageCodes = LanguageCodes> = {
217
+ export type Image<T extends LanguageCodes = LanguageCodes> = {
218
218
  publicationDateTime: Date | null;
219
219
  identification: Identification<T> | null;
220
220
  href: string | null;
@@ -227,7 +227,7 @@ type Image<T extends LanguageCodes = LanguageCodes> = {
227
227
  /**
228
228
  * Area of an image map in OCHRE
229
229
  */
230
- type ImageMapArea = {
230
+ export type ImageMapArea = {
231
231
  uuid: string;
232
232
  publicationDateTime: Date | null;
233
233
  type: string;
@@ -257,7 +257,7 @@ type ImageMapArea = {
257
257
  /**
258
258
  * Image map in OCHRE
259
259
  */
260
- type ImageMap = {
260
+ export type ImageMap = {
261
261
  areas: Array<ImageMapArea>;
262
262
  width: number;
263
263
  height: number;
@@ -279,7 +279,7 @@ type ImageMap = {
279
279
  * `resourceUuid` is the Resource that owns the OCR layer, which differs from
280
280
  * the requested item when the OCR lives on a child Resource.
281
281
  */
282
- type OcrString = {
282
+ export type OcrString = {
283
283
  resourceUuid: string | null;
284
284
  content: string;
285
285
  x: number | null;
@@ -294,7 +294,7 @@ type OcrString = {
294
294
  /**
295
295
  * Note in OCHRE
296
296
  */
297
- type Note<T extends LanguageCodes = LanguageCodes> = {
297
+ export type Note<T extends LanguageCodes = LanguageCodes> = {
298
298
  number: number;
299
299
  title: MultilingualString<T> | null;
300
300
  content: MultilingualString<T>;
@@ -303,7 +303,7 @@ type Note<T extends LanguageCodes = LanguageCodes> = {
303
303
  /**
304
304
  * Property value content in OCHRE
305
305
  */
306
- type PropertyValueContent<T extends LanguageCodes = LanguageCodes> = Prettify<{
306
+ export type PropertyValueContent<T extends LanguageCodes = LanguageCodes> = Prettify<{
307
307
  hierarchy: {
308
308
  isLeaf: boolean;
309
309
  level: number | null;
@@ -333,7 +333,7 @@ type PropertyValueContent<T extends LanguageCodes = LanguageCodes> = Prettify<{
333
333
  /**
334
334
  * Property in OCHRE
335
335
  */
336
- type Property<T extends LanguageCodes = LanguageCodes> = {
336
+ export type Property<T extends LanguageCodes = LanguageCodes> = {
337
337
  variable: {
338
338
  uuid: string;
339
339
  label: MultilingualString<T>;
@@ -348,7 +348,7 @@ type Property<T extends LanguageCodes = LanguageCodes> = {
348
348
  * Simplified property in OCHRE website payloads. Simplified property variables
349
349
  * expose scalar labels rather than multilingual labels.
350
350
  */
351
- type SimplifiedProperty<T extends LanguageCodes = LanguageCodes> = {
351
+ export type SimplifiedProperty<T extends LanguageCodes = LanguageCodes> = {
352
352
  variable: {
353
353
  uuid: string;
354
354
  label: string;
@@ -362,13 +362,13 @@ type SimplifiedProperty<T extends LanguageCodes = LanguageCodes> = {
362
362
  /**
363
363
  * Property in a Set item. OCHRE exposes Set item properties as a flat list.
364
364
  */
365
- type SetItemProperty<T extends LanguageCodes = LanguageCodes> = Omit<Property<T>, "properties">;
366
- type SetItemSimplifiedProperty<T extends LanguageCodes = LanguageCodes> = Omit<SimplifiedProperty<T>, "properties">;
367
- type PropertyLike<T extends LanguageCodes = LanguageCodes> = Property<T> | SetItemProperty<T> | SimplifiedProperty<T> | SetItemSimplifiedProperty<T>;
368
- type ItemProperty<T extends LanguageCodes = LanguageCodes> = Property<T> | SetItemProperty<T>;
369
- type PropertyValueDataType = PropertyValueContent["dataType"];
370
- type QueryablePropertyValueDataType = Exclude<PropertyValueDataType, "coordinate">;
371
- type PropertyRelation = "related" | "inverse";
365
+ export type SetItemProperty<T extends LanguageCodes = LanguageCodes> = Omit<Property<T>, "properties">;
366
+ export type SetItemSimplifiedProperty<T extends LanguageCodes = LanguageCodes> = Omit<SimplifiedProperty<T>, "properties">;
367
+ export type PropertyLike<T extends LanguageCodes = LanguageCodes> = Property<T> | SetItemProperty<T> | SimplifiedProperty<T> | SetItemSimplifiedProperty<T>;
368
+ export type ItemProperty<T extends LanguageCodes = LanguageCodes> = Property<T> | SetItemProperty<T>;
369
+ export type PropertyValueDataType = PropertyValueContent["dataType"];
370
+ export type QueryablePropertyValueDataType = Exclude<PropertyValueDataType, "coordinate">;
371
+ export type PropertyRelation = "related" | "inverse";
372
372
  type WithSetItemProperties<U extends {
373
373
  properties: Array<Property<T>>;
374
374
  }, T extends LanguageCodes> = U extends {
@@ -379,7 +379,7 @@ type WithSetItemProperties<U extends {
379
379
  /**
380
380
  * Base item in OCHRE
381
381
  */
382
- type BaseItem<U extends ItemCategory = ItemCategory, T extends LanguageCodes = LanguageCodes, V extends ItemPayloadKind = "topLevel"> = ItemEnvelopeFields<T, V> & {
382
+ export type BaseItem<U extends ItemCategory = ItemCategory, T extends LanguageCodes = LanguageCodes, V extends ItemPayloadKind = "topLevel"> = ItemEnvelopeFields<T, V> & {
383
383
  uuid: string;
384
384
  category: U;
385
385
  publicationDateTime: Date | null;
@@ -393,11 +393,11 @@ type BaseItem<U extends ItemCategory = ItemCategory, T extends LanguageCodes = L
393
393
  description: MultilingualString<T> | null;
394
394
  events: Array<Event<T>>;
395
395
  };
396
- type ItemLinkCategory = ItemCategory | "dictionaryUnit";
396
+ export type ItemLinkCategory = ItemCategory | "dictionaryUnit";
397
397
  /**
398
398
  * Base item data exposed by OCHRE link and reverse-link payloads.
399
399
  */
400
- type BaseItemLink<U extends ItemLinkCategory = ItemLinkCategory, T extends LanguageCodes = LanguageCodes> = {
400
+ export type BaseItemLink<U extends ItemLinkCategory = ItemLinkCategory, T extends LanguageCodes = LanguageCodes> = {
401
401
  uuid: string;
402
402
  category: U;
403
403
  publicationDateTime: Date | null;
@@ -406,29 +406,29 @@ type BaseItemLink<U extends ItemLinkCategory = ItemLinkCategory, T extends Langu
406
406
  identification: Identification<T>;
407
407
  description: MultilingualString<T> | null;
408
408
  };
409
- type BibliographySourceDocument = {
409
+ export type BibliographySourceDocument = {
410
410
  uuid: string;
411
411
  content: string;
412
412
  href: string | null;
413
413
  publicationDateTime: Date | null;
414
414
  };
415
- type BibliographyEntryInfo = {
415
+ export type BibliographyEntryInfo = {
416
416
  content: string | null;
417
417
  startIssue: string;
418
418
  startVolume: string;
419
419
  startPage: string;
420
420
  endPage: string;
421
421
  };
422
- type ItemLinks<T extends LanguageCodes = LanguageCodes> = Array<ItemLink<ItemLinkCategory, T>>;
423
- type TreeItemLink<T extends LanguageCodes = LanguageCodes> = Prettify<BaseItemLink<"tree", T> & {
422
+ export type ItemLinks<T extends LanguageCodes = LanguageCodes> = Array<ItemLink<ItemLinkCategory, T>>;
423
+ export type TreeItemLink<T extends LanguageCodes = LanguageCodes> = Prettify<BaseItemLink<"tree", T> & {
424
424
  type: string | null;
425
425
  containedItemCategory: TreeItemCategory | null;
426
426
  }>;
427
- type SetItemLink<T extends LanguageCodes = LanguageCodes> = Prettify<BaseItemLink<"set", T> & {
427
+ export type SetItemLink<T extends LanguageCodes = LanguageCodes> = Prettify<BaseItemLink<"set", T> & {
428
428
  type: string | null;
429
429
  containedItemCategories: Array<SetItemCategory> | null;
430
430
  }>;
431
- type BibliographyItemLink<T extends LanguageCodes = LanguageCodes> = Prettify<BaseItemLink<"bibliography", T> & {
431
+ export type BibliographyItemLink<T extends LanguageCodes = LanguageCodes> = Prettify<BaseItemLink<"bibliography", T> & {
432
432
  type: string | null;
433
433
  zoteroId: string | null;
434
434
  citationDetails: string | null;
@@ -447,30 +447,30 @@ type BibliographyItemLink<T extends LanguageCodes = LanguageCodes> = Prettify<Ba
447
447
  periods: Array<ItemLink<"period", T>>;
448
448
  properties: Array<Property<T>>;
449
449
  }>;
450
- type ConceptItemLink<T extends LanguageCodes = LanguageCodes> = Prettify<BaseItemLink<"concept", T> & {
450
+ export type ConceptItemLink<T extends LanguageCodes = LanguageCodes> = Prettify<BaseItemLink<"concept", T> & {
451
451
  image: Image<T> | null;
452
452
  coordinates: Array<Coordinates<T>>;
453
453
  }>;
454
- type SpatialUnitItemLink<T extends LanguageCodes = LanguageCodes> = Prettify<BaseItemLink<"spatialUnit", T> & {
454
+ export type SpatialUnitItemLink<T extends LanguageCodes = LanguageCodes> = Prettify<BaseItemLink<"spatialUnit", T> & {
455
455
  image: Image<T> | null;
456
456
  coordinates: Array<Coordinates<T>>;
457
457
  }>;
458
- type PeriodItemLink<T extends LanguageCodes = LanguageCodes> = Prettify<BaseItemLink<"period", T> & {
458
+ export type PeriodItemLink<T extends LanguageCodes = LanguageCodes> = Prettify<BaseItemLink<"period", T> & {
459
459
  type: string | null;
460
460
  coordinates: Array<Coordinates<T>>;
461
461
  }>;
462
- type PersonItemLink<T extends LanguageCodes = LanguageCodes> = Prettify<BaseItemLink<"person", T> & {
462
+ export type PersonItemLink<T extends LanguageCodes = LanguageCodes> = Prettify<BaseItemLink<"person", T> & {
463
463
  type: string | null;
464
464
  coordinates: Array<Coordinates<T>>;
465
465
  }>;
466
- type PropertyVariableItemLink<T extends LanguageCodes = LanguageCodes> = Prettify<BaseItemLink<"propertyVariable", T> & {
466
+ export type PropertyVariableItemLink<T extends LanguageCodes = LanguageCodes> = Prettify<BaseItemLink<"propertyVariable", T> & {
467
467
  type: string | null;
468
468
  coordinates: Array<Coordinates<T>>;
469
469
  }>;
470
- type PropertyValueItemLink<T extends LanguageCodes = LanguageCodes> = Prettify<BaseItemLink<"propertyValue", T> & {
470
+ export type PropertyValueItemLink<T extends LanguageCodes = LanguageCodes> = Prettify<BaseItemLink<"propertyValue", T> & {
471
471
  coordinates: Array<Coordinates<T>>;
472
472
  }>;
473
- type ResourceItemLink<T extends LanguageCodes = LanguageCodes> = Prettify<BaseItemLink<"resource", T> & {
473
+ export type ResourceItemLink<T extends LanguageCodes = LanguageCodes> = Prettify<BaseItemLink<"resource", T> & {
474
474
  type: string | null;
475
475
  href: string | null;
476
476
  fileFormat: string | null;
@@ -482,33 +482,33 @@ type ResourceItemLink<T extends LanguageCodes = LanguageCodes> = Prettify<BaseIt
482
482
  image: Image<T> | null;
483
483
  coordinates: Array<Coordinates<T>>;
484
484
  }>;
485
- type TextItemLink<T extends LanguageCodes = LanguageCodes> = Prettify<BaseItemLink<"text", T> & {
485
+ export type TextItemLink<T extends LanguageCodes = LanguageCodes> = Prettify<BaseItemLink<"text", T> & {
486
486
  type: string | null;
487
487
  text: string | null;
488
488
  language: string | null;
489
489
  image: Image<T> | null;
490
490
  coordinates: Array<Coordinates<T>>;
491
491
  }>;
492
- type DictionaryUnitItemLink<T extends LanguageCodes = LanguageCodes> = Prettify<BaseItemLink<"dictionaryUnit", T>>;
492
+ export type DictionaryUnitItemLink<T extends LanguageCodes = LanguageCodes> = Prettify<BaseItemLink<"dictionaryUnit", T>>;
493
493
  /**
494
494
  * An abridged item reference exposed inside OCHRE links and reverse links.
495
495
  */
496
- type ItemLink<U extends ItemLinkCategory = ItemLinkCategory, T extends LanguageCodes = LanguageCodes> = U extends ItemLinkCategory ? U extends "tree" ? TreeItemLink<T> : U extends "set" ? SetItemLink<T> : U extends "bibliography" ? BibliographyItemLink<T> : U extends "concept" ? ConceptItemLink<T> : U extends "spatialUnit" ? SpatialUnitItemLink<T> : U extends "period" ? PeriodItemLink<T> : U extends "person" ? PersonItemLink<T> : U extends "propertyVariable" ? PropertyVariableItemLink<T> : U extends "propertyValue" ? PropertyValueItemLink<T> : U extends "resource" ? ResourceItemLink<T> : U extends "text" ? TextItemLink<T> : U extends "dictionaryUnit" ? DictionaryUnitItemLink<T> : never : never;
496
+ export type ItemLink<U extends ItemLinkCategory = ItemLinkCategory, T extends LanguageCodes = LanguageCodes> = U extends ItemLinkCategory ? U extends "tree" ? TreeItemLink<T> : U extends "set" ? SetItemLink<T> : U extends "bibliography" ? BibliographyItemLink<T> : U extends "concept" ? ConceptItemLink<T> : U extends "spatialUnit" ? SpatialUnitItemLink<T> : U extends "period" ? PeriodItemLink<T> : U extends "person" ? PersonItemLink<T> : U extends "propertyVariable" ? PropertyVariableItemLink<T> : U extends "propertyValue" ? PropertyValueItemLink<T> : U extends "resource" ? ResourceItemLink<T> : U extends "text" ? TextItemLink<T> : U extends "dictionaryUnit" ? DictionaryUnitItemLink<T> : never : never;
497
497
  /**
498
498
  * An Item in OCHRE (can be a tree, set, bibliography, concept, spatial unit, period, person, property value, property variable, or resource)
499
499
  */
500
- type Item<U extends ItemCategory = ItemCategory, V extends ContainedItemCategory<U> = ContainedItemCategory<U>, T extends LanguageCodes = LanguageCodes, W extends ItemPayloadKind = "topLevel"> = U extends ItemCategory ? U extends "tree" ? Tree<Extract<V, TreeItemCategory>, T, W> : U extends "set" ? Set<Extract<V, SetItemCategory>, T, W> : U extends "bibliography" ? Bibliography<T, W> : U extends "concept" ? Concept<T, W> : U extends "spatialUnit" ? SpatialUnit<T, W> : U extends "period" ? Period<T, W> : U extends "person" ? Person<T, W> : U extends "propertyVariable" ? PropertyVariable<T, W> : U extends "propertyValue" ? PropertyValue<T, W> : U extends "resource" ? Resource<T, W> : U extends "text" ? Text<T, W> : never : never;
500
+ export type Item<U extends ItemCategory = ItemCategory, V extends ContainedItemCategory<U> = ContainedItemCategory<U>, T extends LanguageCodes = LanguageCodes, W extends ItemPayloadKind = "topLevel"> = U extends ItemCategory ? U extends "tree" ? Tree<Extract<V, TreeItemCategory>, T, W> : U extends "set" ? Set<Extract<V, SetItemCategory>, T, W> : U extends "bibliography" ? Bibliography<T, W> : U extends "concept" ? Concept<T, W> : U extends "spatialUnit" ? SpatialUnit<T, W> : U extends "period" ? Period<T, W> : U extends "person" ? Person<T, W> : U extends "propertyVariable" ? PropertyVariable<T, W> : U extends "propertyValue" ? PropertyValue<T, W> : U extends "resource" ? Resource<T, W> : U extends "text" ? Text<T, W> : never : never;
501
501
  /**
502
502
  * An item fetched without its embedded item hierarchy.
503
503
  */
504
- type ItemWithoutEmbeddedItems<U extends ItemCategoryWithEmbeddedItems = ItemCategoryWithEmbeddedItems, V extends ContainedItemCategory<U> = ContainedItemCategory<U>, T extends LanguageCodes = LanguageCodes, W extends ItemPayloadKind = "topLevel"> = U extends ItemCategoryWithEmbeddedItems ? U extends "tree" ? Prettify<Omit<Tree<Extract<V, TreeItemCategory>, T, W>, "items">> : U extends "set" ? Prettify<Omit<Set<Extract<V, SetItemCategory>, T, W>, "items">> : U extends "bibliography" ? Prettify<Omit<Bibliography<T, W>, "items">> : U extends "concept" ? Prettify<Omit<Concept<T, W>, "items">> : U extends "spatialUnit" ? Prettify<Omit<SpatialUnit<T, W>, "items">> : U extends "period" ? Prettify<Omit<Period<T, W>, "items">> : U extends "resource" ? Prettify<Omit<Resource<T, W>, "items">> : never : never;
505
- type TopLevelItem<U extends ItemCategory = ItemCategory, V extends ContainedItemCategory<U> = ContainedItemCategory<U>, T extends LanguageCodes = LanguageCodes> = Item<U, V, T, "topLevel">;
506
- type EmbeddedItem<U extends ItemCategory = ItemCategory, V extends ContainedItemCategory<U> = ContainedItemCategory<U>, T extends LanguageCodes = LanguageCodes> = Item<U, V, T, "embedded">;
507
- type AnyItem<U extends ItemCategory = ItemCategory, V extends ContainedItemCategory<U> = ContainedItemCategory<U>, T extends LanguageCodes = LanguageCodes> = Item<U, V, T, ItemPayloadKind>;
504
+ export type ItemWithoutEmbeddedItems<U extends ItemCategoryWithEmbeddedItems = ItemCategoryWithEmbeddedItems, V extends ContainedItemCategory<U> = ContainedItemCategory<U>, T extends LanguageCodes = LanguageCodes, W extends ItemPayloadKind = "topLevel"> = U extends ItemCategoryWithEmbeddedItems ? U extends "tree" ? Prettify<Omit<Tree<Extract<V, TreeItemCategory>, T, W>, "items">> : U extends "set" ? Prettify<Omit<Set<Extract<V, SetItemCategory>, T, W>, "items">> : U extends "bibliography" ? Prettify<Omit<Bibliography<T, W>, "items">> : U extends "concept" ? Prettify<Omit<Concept<T, W>, "items">> : U extends "spatialUnit" ? Prettify<Omit<SpatialUnit<T, W>, "items">> : U extends "period" ? Prettify<Omit<Period<T, W>, "items">> : U extends "resource" ? Prettify<Omit<Resource<T, W>, "items">> : never : never;
505
+ export type TopLevelItem<U extends ItemCategory = ItemCategory, V extends ContainedItemCategory<U> = ContainedItemCategory<U>, T extends LanguageCodes = LanguageCodes> = Item<U, V, T, "topLevel">;
506
+ export type EmbeddedItem<U extends ItemCategory = ItemCategory, V extends ContainedItemCategory<U> = ContainedItemCategory<U>, T extends LanguageCodes = LanguageCodes> = Item<U, V, T, "embedded">;
507
+ export type AnyItem<U extends ItemCategory = ItemCategory, V extends ContainedItemCategory<U> = ContainedItemCategory<U>, T extends LanguageCodes = LanguageCodes> = Item<U, V, T, ItemPayloadKind>;
508
508
  /**
509
509
  * Heading in OCHRE
510
510
  */
511
- type Heading<U extends HeadingItemCategory = HeadingItemCategory, T extends LanguageCodes = LanguageCodes> = {
511
+ export type Heading<U extends HeadingItemCategory = HeadingItemCategory, T extends LanguageCodes = LanguageCodes> = {
512
512
  name: string;
513
513
  headings: Array<Heading<U, T>>;
514
514
  items: Array<Item<U, never, T, "embedded">>;
@@ -516,7 +516,7 @@ type Heading<U extends HeadingItemCategory = HeadingItemCategory, T extends Lang
516
516
  /**
517
517
  * Tree in OCHRE
518
518
  */
519
- type Tree<U extends TreeItemCategory = TreeItemCategory, T extends LanguageCodes = LanguageCodes, V extends ItemPayloadKind = "topLevel"> = Prettify<BaseItem<"tree", T, V> & {
519
+ export type Tree<U extends TreeItemCategory = TreeItemCategory, T extends LanguageCodes = LanguageCodes, V extends ItemPayloadKind = "topLevel"> = Prettify<BaseItem<"tree", T, V> & {
520
520
  type: string | null;
521
521
  containedItemCategory: U | null;
522
522
  links: ItemLinks<T>;
@@ -529,7 +529,7 @@ type Tree<U extends TreeItemCategory = TreeItemCategory, T extends LanguageCodes
529
529
  /**
530
530
  * Set in OCHRE
531
531
  */
532
- type Set<U extends SetItemCategory = SetItemCategory, T extends LanguageCodes = LanguageCodes, V extends ItemPayloadKind = "topLevel"> = Prettify<BaseItem<"set", T, V> & {
532
+ export type Set<U extends SetItemCategory = SetItemCategory, T extends LanguageCodes = LanguageCodes, V extends ItemPayloadKind = "topLevel"> = Prettify<BaseItem<"set", T, V> & {
533
533
  containedItemCategories: Array<U>;
534
534
  isTabularStructure: boolean;
535
535
  isSuppressingBlanks: boolean;
@@ -539,25 +539,25 @@ type Set<U extends SetItemCategory = SetItemCategory, T extends LanguageCodes =
539
539
  properties: Array<Property<T>>;
540
540
  items: Array<SetItem<U, T>>;
541
541
  }>;
542
- type SetBibliography<T extends LanguageCodes = LanguageCodes> = Bibliography<T, "embedded"> extends (infer U) ? U extends {
542
+ export type SetBibliography<T extends LanguageCodes = LanguageCodes> = Bibliography<T, "embedded"> extends (infer U) ? U extends {
543
543
  properties: Array<Property<T>>;
544
544
  } ? Prettify<Omit<U, "properties" | "items"> & {
545
545
  properties: Array<SetItemProperty<T>>;
546
546
  }> : never : never;
547
- type SetConcept<T extends LanguageCodes = LanguageCodes> = Prettify<Omit<Concept<T, "embedded">, "items"> & {
547
+ export type SetConcept<T extends LanguageCodes = LanguageCodes> = Prettify<Omit<Concept<T, "embedded">, "items"> & {
548
548
  properties: Array<SetItemProperty<T>>;
549
549
  }>;
550
- type SetSpatialUnit<T extends LanguageCodes = LanguageCodes> = Prettify<Omit<SpatialUnit<T, "embedded">, "items"> & {
550
+ export type SetSpatialUnit<T extends LanguageCodes = LanguageCodes> = Prettify<Omit<SpatialUnit<T, "embedded">, "items"> & {
551
551
  properties: Array<SetItemProperty<T>>;
552
552
  }>;
553
- type SetPeriod<T extends LanguageCodes = LanguageCodes> = Prettify<Omit<WithSetItemProperties<Period<T, "embedded">, T>, "items">>;
554
- type SetResource<T extends LanguageCodes = LanguageCodes> = Prettify<Omit<WithSetItemProperties<Resource<T, "embedded">, T>, "items">>;
555
- type SetTree<T extends LanguageCodes = LanguageCodes> = Prettify<Omit<WithSetItemProperties<Tree<TreeItemCategory, T, "embedded">, T>, "items">>;
556
- type SetItem<U extends SetItemCategory = SetItemCategory, T extends LanguageCodes = LanguageCodes> = U extends "tree" ? SetTree<T> : U extends "bibliography" ? SetBibliography<T> : U extends "concept" ? SetConcept<T> : U extends "spatialUnit" ? SetSpatialUnit<T> : U extends "period" ? SetPeriod<T> : U extends "person" ? WithSetItemProperties<Person<T, "embedded">, T> : U extends "propertyVariable" ? PropertyVariable<T, "embedded"> : U extends "propertyValue" ? WithSetItemProperties<PropertyValue<T, "embedded">, T> : U extends "resource" ? SetResource<T> : U extends "text" ? Text<T, "embedded"> : U extends "set" ? Omit<WithSetItemProperties<Set<SetItemCategory, T, "embedded">, T>, "items"> : never;
553
+ export type SetPeriod<T extends LanguageCodes = LanguageCodes> = Prettify<Omit<WithSetItemProperties<Period<T, "embedded">, T>, "items">>;
554
+ export type SetResource<T extends LanguageCodes = LanguageCodes> = Prettify<Omit<WithSetItemProperties<Resource<T, "embedded">, T>, "items">>;
555
+ export type SetTree<T extends LanguageCodes = LanguageCodes> = Prettify<Omit<WithSetItemProperties<Tree<TreeItemCategory, T, "embedded">, T>, "items">>;
556
+ export type SetItem<U extends SetItemCategory = SetItemCategory, T extends LanguageCodes = LanguageCodes> = U extends "tree" ? SetTree<T> : U extends "bibliography" ? SetBibliography<T> : U extends "concept" ? SetConcept<T> : U extends "spatialUnit" ? SetSpatialUnit<T> : U extends "period" ? SetPeriod<T> : U extends "person" ? WithSetItemProperties<Person<T, "embedded">, T> : U extends "propertyVariable" ? PropertyVariable<T, "embedded"> : U extends "propertyValue" ? WithSetItemProperties<PropertyValue<T, "embedded">, T> : U extends "resource" ? SetResource<T> : U extends "text" ? Text<T, "embedded"> : U extends "set" ? Omit<WithSetItemProperties<Set<SetItemCategory, T, "embedded">, T>, "items"> : never;
557
557
  /**
558
558
  * Person in OCHRE
559
559
  */
560
- type Person<T extends LanguageCodes = LanguageCodes, U extends ItemPayloadKind = "topLevel"> = Prettify<BaseItem<"person", T, U> & {
560
+ export type Person<T extends LanguageCodes = LanguageCodes, U extends ItemPayloadKind = "topLevel"> = Prettify<BaseItem<"person", T, U> & {
561
561
  type: string;
562
562
  image: Image<T> | null;
563
563
  address: {
@@ -578,7 +578,7 @@ type Person<T extends LanguageCodes = LanguageCodes, U extends ItemPayloadKind =
578
578
  /**
579
579
  * Period in OCHRE
580
580
  */
581
- type Period<T extends LanguageCodes = LanguageCodes, U extends ItemPayloadKind = "topLevel"> = Prettify<BaseItem<"period", T, U> & {
581
+ export type Period<T extends LanguageCodes = LanguageCodes, U extends ItemPayloadKind = "topLevel"> = Prettify<BaseItem<"period", T, U> & {
582
582
  type: string | null;
583
583
  coordinates: Array<Coordinates<T>>;
584
584
  links: ItemLinks<T>;
@@ -591,7 +591,7 @@ type Period<T extends LanguageCodes = LanguageCodes, U extends ItemPayloadKind =
591
591
  /**
592
592
  * Bibliography in OCHRE
593
593
  */
594
- type Bibliography<T extends LanguageCodes = LanguageCodes, U extends ItemPayloadKind = "topLevel"> = Prettify<BaseItem<"bibliography", T, U> & {
594
+ export type Bibliography<T extends LanguageCodes = LanguageCodes, U extends ItemPayloadKind = "topLevel"> = Prettify<BaseItem<"bibliography", T, U> & {
595
595
  citationDetails: string | null;
596
596
  citationFormat: MultilingualString<T> | null;
597
597
  citationFormatSpan: string | null;
@@ -622,7 +622,7 @@ type Bibliography<T extends LanguageCodes = LanguageCodes, U extends ItemPayload
622
622
  /**
623
623
  * Concept in OCHRE
624
624
  */
625
- type Concept<T extends LanguageCodes = LanguageCodes, U extends ItemPayloadKind = "topLevel"> = Prettify<BaseItem<"concept", T, U> & {
625
+ export type Concept<T extends LanguageCodes = LanguageCodes, U extends ItemPayloadKind = "topLevel"> = Prettify<BaseItem<"concept", T, U> & {
626
626
  image: Image<T> | null;
627
627
  interpretations: Array<Interpretation<T>>;
628
628
  coordinates: Array<Coordinates<T>>;
@@ -631,7 +631,7 @@ type Concept<T extends LanguageCodes = LanguageCodes, U extends ItemPayloadKind
631
631
  /**
632
632
  * Interpretation in OCHRE
633
633
  */
634
- type Interpretation<T extends LanguageCodes = LanguageCodes> = {
634
+ export type Interpretation<T extends LanguageCodes = LanguageCodes> = {
635
635
  number: number;
636
636
  date: Date | null;
637
637
  interpreters: Array<Person<T, "embedded">>;
@@ -645,7 +645,7 @@ type Interpretation<T extends LanguageCodes = LanguageCodes> = {
645
645
  /**
646
646
  * Spatial unit in OCHRE
647
647
  */
648
- type SpatialUnit<T extends LanguageCodes = LanguageCodes, U extends ItemPayloadKind = "topLevel"> = Prettify<BaseItem<"spatialUnit", T, U> & {
648
+ export type SpatialUnit<T extends LanguageCodes = LanguageCodes, U extends ItemPayloadKind = "topLevel"> = Prettify<BaseItem<"spatialUnit", T, U> & {
649
649
  image: Image<T> | null;
650
650
  coordinates: Array<Coordinates<T>>;
651
651
  mapData: {
@@ -661,7 +661,7 @@ type SpatialUnit<T extends LanguageCodes = LanguageCodes, U extends ItemPayloadK
661
661
  /**
662
662
  * Observation in OCHRE
663
663
  */
664
- type Observation<T extends LanguageCodes = LanguageCodes> = {
664
+ export type Observation<T extends LanguageCodes = LanguageCodes> = {
665
665
  number: number;
666
666
  date: Date | null;
667
667
  observers: Array<string> | Array<Person<T, "embedded">>;
@@ -675,7 +675,7 @@ type Observation<T extends LanguageCodes = LanguageCodes> = {
675
675
  /**
676
676
  * Property variable in OCHRE
677
677
  */
678
- type PropertyVariable<T extends LanguageCodes = LanguageCodes, U extends ItemPayloadKind = "topLevel"> = Prettify<BaseItem<"propertyVariable", T, U> & {
678
+ export type PropertyVariable<T extends LanguageCodes = LanguageCodes, U extends ItemPayloadKind = "topLevel"> = Prettify<BaseItem<"propertyVariable", T, U> & {
679
679
  type: string | null;
680
680
  coordinates: Array<Coordinates<T>>;
681
681
  links: ItemLinks<T>;
@@ -686,7 +686,7 @@ type PropertyVariable<T extends LanguageCodes = LanguageCodes, U extends ItemPay
686
686
  /**
687
687
  * Property value in OCHRE
688
688
  */
689
- type PropertyValue<T extends LanguageCodes = LanguageCodes, U extends ItemPayloadKind = "topLevel"> = Prettify<BaseItem<"propertyValue", T, U> & {
689
+ export type PropertyValue<T extends LanguageCodes = LanguageCodes, U extends ItemPayloadKind = "topLevel"> = Prettify<BaseItem<"propertyValue", T, U> & {
690
690
  coordinates: Array<Coordinates<T>>;
691
691
  links: ItemLinks<T>;
692
692
  reverseLinks: ItemLinks<T>;
@@ -697,7 +697,7 @@ type PropertyValue<T extends LanguageCodes = LanguageCodes, U extends ItemPayloa
697
697
  /**
698
698
  * Resource in OCHRE
699
699
  */
700
- type Resource<T extends LanguageCodes = LanguageCodes, U extends ItemPayloadKind = "topLevel"> = Prettify<BaseItem<"resource", T, U> & {
700
+ export type Resource<T extends LanguageCodes = LanguageCodes, U extends ItemPayloadKind = "topLevel"> = Prettify<BaseItem<"resource", T, U> & {
701
701
  language: string | null;
702
702
  type: string;
703
703
  href: string | null;
@@ -723,7 +723,7 @@ type Resource<T extends LanguageCodes = LanguageCodes, U extends ItemPayloadKind
723
723
  /**
724
724
  * Text in OCHRE
725
725
  */
726
- type Text<T extends LanguageCodes = LanguageCodes, U extends ItemPayloadKind = "topLevel"> = Prettify<BaseItem<"text", T, U> & {
726
+ export type Text<T extends LanguageCodes = LanguageCodes, U extends ItemPayloadKind = "topLevel"> = Prettify<BaseItem<"text", T, U> & {
727
727
  type: string;
728
728
  text: string | null;
729
729
  language: string | null;
@@ -740,7 +740,7 @@ type Text<T extends LanguageCodes = LanguageCodes, U extends ItemPayloadKind = "
740
740
  /**
741
741
  * Section in OCHRE
742
742
  */
743
- type Section<T extends LanguageCodes = LanguageCodes> = {
743
+ export type Section<T extends LanguageCodes = LanguageCodes> = {
744
744
  uuid: string;
745
745
  publicationDateTime: Date | null;
746
746
  identification: Identification<T>;
@@ -748,32 +748,32 @@ type Section<T extends LanguageCodes = LanguageCodes> = {
748
748
  identification: Identification<T>;
749
749
  } | null;
750
750
  };
751
- type EmbeddedTree<U extends TreeItemCategory = TreeItemCategory, T extends LanguageCodes = LanguageCodes> = Tree<U, T, "embedded">;
752
- type AnyTree<U extends TreeItemCategory = TreeItemCategory, T extends LanguageCodes = LanguageCodes> = Tree<U, T, ItemPayloadKind>;
753
- type EmbeddedSet<U extends SetItemCategory = SetItemCategory, T extends LanguageCodes = LanguageCodes> = Set<U, T, "embedded">;
754
- type AnySet<U extends SetItemCategory = SetItemCategory, T extends LanguageCodes = LanguageCodes> = Set<U, T, ItemPayloadKind>;
755
- type EmbeddedBibliography<T extends LanguageCodes = LanguageCodes> = Bibliography<T, "embedded">;
756
- type AnyBibliography<T extends LanguageCodes = LanguageCodes> = Bibliography<T, ItemPayloadKind>;
757
- type EmbeddedConcept<T extends LanguageCodes = LanguageCodes> = Concept<T, "embedded">;
758
- type AnyConcept<T extends LanguageCodes = LanguageCodes> = Concept<T, ItemPayloadKind>;
759
- type EmbeddedSpatialUnit<T extends LanguageCodes = LanguageCodes> = SpatialUnit<T, "embedded">;
760
- type AnySpatialUnit<T extends LanguageCodes = LanguageCodes> = SpatialUnit<T, ItemPayloadKind>;
761
- type EmbeddedPeriod<T extends LanguageCodes = LanguageCodes> = Period<T, "embedded">;
762
- type AnyPeriod<T extends LanguageCodes = LanguageCodes> = Period<T, ItemPayloadKind>;
763
- type EmbeddedPerson<T extends LanguageCodes = LanguageCodes> = Person<T, "embedded">;
764
- type AnyPerson<T extends LanguageCodes = LanguageCodes> = Person<T, ItemPayloadKind>;
765
- type EmbeddedPropertyVariable<T extends LanguageCodes = LanguageCodes> = PropertyVariable<T, "embedded">;
766
- type AnyPropertyVariable<T extends LanguageCodes = LanguageCodes> = PropertyVariable<T, ItemPayloadKind>;
767
- type EmbeddedPropertyValue<T extends LanguageCodes = LanguageCodes> = PropertyValue<T, "embedded">;
768
- type AnyPropertyValue<T extends LanguageCodes = LanguageCodes> = PropertyValue<T, ItemPayloadKind>;
769
- type EmbeddedResource<T extends LanguageCodes = LanguageCodes> = Resource<T, "embedded">;
770
- type AnyResource<T extends LanguageCodes = LanguageCodes> = Resource<T, ItemPayloadKind>;
771
- type EmbeddedText<T extends LanguageCodes = LanguageCodes> = Text<T, "embedded">;
772
- type AnyText<T extends LanguageCodes = LanguageCodes> = Text<T, ItemPayloadKind>;
751
+ export type EmbeddedTree<U extends TreeItemCategory = TreeItemCategory, T extends LanguageCodes = LanguageCodes> = Tree<U, T, "embedded">;
752
+ export type AnyTree<U extends TreeItemCategory = TreeItemCategory, T extends LanguageCodes = LanguageCodes> = Tree<U, T, ItemPayloadKind>;
753
+ export type EmbeddedSet<U extends SetItemCategory = SetItemCategory, T extends LanguageCodes = LanguageCodes> = Set<U, T, "embedded">;
754
+ export type AnySet<U extends SetItemCategory = SetItemCategory, T extends LanguageCodes = LanguageCodes> = Set<U, T, ItemPayloadKind>;
755
+ export type EmbeddedBibliography<T extends LanguageCodes = LanguageCodes> = Bibliography<T, "embedded">;
756
+ export type AnyBibliography<T extends LanguageCodes = LanguageCodes> = Bibliography<T, ItemPayloadKind>;
757
+ export type EmbeddedConcept<T extends LanguageCodes = LanguageCodes> = Concept<T, "embedded">;
758
+ export type AnyConcept<T extends LanguageCodes = LanguageCodes> = Concept<T, ItemPayloadKind>;
759
+ export type EmbeddedSpatialUnit<T extends LanguageCodes = LanguageCodes> = SpatialUnit<T, "embedded">;
760
+ export type AnySpatialUnit<T extends LanguageCodes = LanguageCodes> = SpatialUnit<T, ItemPayloadKind>;
761
+ export type EmbeddedPeriod<T extends LanguageCodes = LanguageCodes> = Period<T, "embedded">;
762
+ export type AnyPeriod<T extends LanguageCodes = LanguageCodes> = Period<T, ItemPayloadKind>;
763
+ export type EmbeddedPerson<T extends LanguageCodes = LanguageCodes> = Person<T, "embedded">;
764
+ export type AnyPerson<T extends LanguageCodes = LanguageCodes> = Person<T, ItemPayloadKind>;
765
+ export type EmbeddedPropertyVariable<T extends LanguageCodes = LanguageCodes> = PropertyVariable<T, "embedded">;
766
+ export type AnyPropertyVariable<T extends LanguageCodes = LanguageCodes> = PropertyVariable<T, ItemPayloadKind>;
767
+ export type EmbeddedPropertyValue<T extends LanguageCodes = LanguageCodes> = PropertyValue<T, "embedded">;
768
+ export type AnyPropertyValue<T extends LanguageCodes = LanguageCodes> = PropertyValue<T, ItemPayloadKind>;
769
+ export type EmbeddedResource<T extends LanguageCodes = LanguageCodes> = Resource<T, "embedded">;
770
+ export type AnyResource<T extends LanguageCodes = LanguageCodes> = Resource<T, ItemPayloadKind>;
771
+ export type EmbeddedText<T extends LanguageCodes = LanguageCodes> = Text<T, "embedded">;
772
+ export type AnyText<T extends LanguageCodes = LanguageCodes> = Text<T, ItemPayloadKind>;
773
773
  /**
774
774
  * Represents a gallery with its identification, project identification, resources and max length
775
775
  */
776
- type Gallery<T extends LanguageCodes = LanguageCodes> = {
776
+ export type Gallery<T extends LanguageCodes = LanguageCodes> = {
777
777
  identification: Identification<T>;
778
778
  projectIdentification: Identification<T>;
779
779
  resources: Array<Resource<T, "embedded">>;
@@ -782,7 +782,7 @@ type Gallery<T extends LanguageCodes = LanguageCodes> = {
782
782
  /**
783
783
  * Represents a property query item with its UUID, raw value, count, and content
784
784
  */
785
- type PropertyValueQueryItem = {
785
+ export type PropertyValueQueryItem = {
786
786
  uuid: string | null;
787
787
  count: number;
788
788
  dataType: QueryablePropertyValueDataType;
@@ -792,18 +792,18 @@ type PropertyValueQueryItem = {
792
792
  /**
793
793
  * Represents a grouped Set attribute value query item
794
794
  */
795
- type SetAttributeValueQueryItem = {
795
+ export type SetAttributeValueQueryItem = {
796
796
  count: number;
797
797
  content: string;
798
798
  };
799
799
  /**
800
800
  * Represents sorting direction for Set items
801
801
  */
802
- type SetItemsSortDirection = "asc" | "desc";
802
+ export type SetItemsSortDirection = "asc" | "desc";
803
803
  /**
804
804
  * Represents sorting options for Set items
805
805
  */
806
- type SetItemsSort = {
806
+ export type SetItemsSort = {
807
807
  target: "none";
808
808
  } | {
809
809
  target: "title";
@@ -827,7 +827,7 @@ type SetItemsSort = {
827
827
  * own word and `exact` matches the terms as an adjacent run of whole words. OCR
828
828
  * text carries no language, so `ocr` leaves take no `language`.
829
829
  */
830
- type QueryLeaf = {
830
+ export type QueryLeaf = {
831
831
  target: "property";
832
832
  propertyVariable?: string;
833
833
  propertyRelation?: PropertyRelation;
@@ -909,7 +909,7 @@ type QueryLeaf = {
909
909
  /**
910
910
  * Represents a boolean query group for Set items
911
911
  */
912
- type QueryGroup = {
912
+ export type QueryGroup = {
913
913
  and: Array<Query>;
914
914
  } | {
915
915
  or: Array<Query>;
@@ -917,6 +917,5 @@ type QueryGroup = {
917
917
  /**
918
918
  * Represents a query for Set items
919
919
  */
920
- type Query = QueryLeaf | QueryGroup;
921
- //#endregion
922
- export { AnyBibliography, AnyConcept, AnyItem, AnyPeriod, AnyPerson, AnyPropertyValue, AnyPropertyVariable, AnyResource, AnySet, AnySpatialUnit, AnyText, AnyTree, BaseItem, BaseItemLink, BelongsTo, Bibliography, BibliographyEntryInfo, BibliographyItemLink, BibliographySourceDocument, Concept, ConceptItemLink, ContainedItemCategory, ContainedItemCategoryFromOption, ContainedItemCategoryOption, Context, ContextItem, ContextItemCategory, ContextNode, Coordinates, CoordinatesSource, DictionaryUnitItemLink, EmbeddedBibliography, EmbeddedConcept, EmbeddedItem, EmbeddedPeriod, EmbeddedPerson, EmbeddedPropertyValue, EmbeddedPropertyVariable, EmbeddedResource, EmbeddedSet, EmbeddedSpatialUnit, EmbeddedText, EmbeddedTree, Event, Gallery, Heading, HeadingItemCategory, Identification, Image, ImageMap, ImageMapArea, Interpretation, Item, ItemCategory, ItemCategoryFromOption, ItemCategoryOption, ItemCategoryWithEmbeddedItems, ItemContainerCategory, ItemLink, ItemLinkCategory, ItemLinks, ItemPayloadKind, ItemProperty, ItemWithoutEmbeddedItems, LanguageCodes, License, Metadata, Note, Observation, OcrString, Period, PeriodItemLink, Person, PersonItemLink, Prettify, Property, PropertyLike, PropertyRelation, PropertyValue, PropertyValueContent, PropertyValueDataType, PropertyValueItemLink, PropertyValueQueryItem, PropertyVariable, PropertyVariableItemLink, Query, QueryGroup, QueryLeaf, QueryablePropertyValueDataType, RecursiveItemCategory, Resource, ResourceItemLink, Section, Set, SetAttributeValueQueryItem, SetBibliography, SetConcept, SetItem, SetItemCategory, SetItemLink, SetItemProperty, SetItemSimplifiedProperty, SetItemsSort, SetItemsSortDirection, SetPeriod, SetResource, SetSpatialUnit, SetTree, SimplifiedProperty, SpatialUnit, SpatialUnitItemLink, Text, TextItemLink, TopLevelItem, Tree, TreeItemCategory, TreeItemLink };
920
+ export type Query = QueryLeaf | QueryGroup;
921
+ //#endregion