@financial-times/cp-content-pipeline-schema 0.7.22 → 0.7.24

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 (76) hide show
  1. package/CHANGELOG.md +25 -0
  2. package/lib/generated/index.d.ts +133 -32
  3. package/lib/helpers/isError.d.ts +1 -0
  4. package/lib/helpers/isError.js +7 -0
  5. package/lib/helpers/isError.js.map +1 -0
  6. package/lib/model/CapiResponse.d.ts +5 -2
  7. package/lib/model/CapiResponse.js +42 -4
  8. package/lib/model/CapiResponse.js.map +1 -1
  9. package/lib/model/Concept.d.ts +3 -0
  10. package/lib/model/Concept.js +19 -8
  11. package/lib/model/Concept.js.map +1 -1
  12. package/lib/model/Image.js +2 -4
  13. package/lib/model/Image.js.map +1 -1
  14. package/lib/model/RichText.d.ts +1 -0
  15. package/lib/model/RichText.js +3 -0
  16. package/lib/model/RichText.js.map +1 -1
  17. package/lib/model/RichText.test.js +2 -0
  18. package/lib/model/RichText.test.js.map +1 -1
  19. package/lib/model/Topper.d.ts +1 -0
  20. package/lib/model/Topper.js +3 -0
  21. package/lib/model/Topper.js.map +1 -1
  22. package/lib/model/schemas/capi/base-schema.d.ts +18 -0
  23. package/lib/model/schemas/capi/base-schema.js +3 -0
  24. package/lib/model/schemas/capi/base-schema.js.map +1 -1
  25. package/lib/model/schemas/capi/content-package.js +1 -0
  26. package/lib/model/schemas/capi/content-package.js.map +1 -1
  27. package/lib/resolvers/content-tree/extractText.d.ts +2 -0
  28. package/lib/resolvers/content-tree/extractText.js +22 -0
  29. package/lib/resolvers/content-tree/extractText.js.map +1 -0
  30. package/lib/resolvers/content-tree/references/Flourish.d.ts +4 -3
  31. package/lib/resolvers/content-tree/references/Flourish.js +33 -8
  32. package/lib/resolvers/content-tree/references/Flourish.js.map +1 -1
  33. package/lib/resolvers/content-tree/references/RawImage.js +2 -4
  34. package/lib/resolvers/content-tree/references/RawImage.js.map +1 -1
  35. package/lib/resolvers/content-tree/references/Tweet.js +5 -4
  36. package/lib/resolvers/content-tree/references/Tweet.js.map +1 -1
  37. package/lib/resolvers/content.d.ts +5 -1
  38. package/lib/resolvers/content.js +7 -1
  39. package/lib/resolvers/content.js.map +1 -1
  40. package/lib/resolvers/image.d.ts +1 -0
  41. package/lib/resolvers/image.js +1 -0
  42. package/lib/resolvers/image.js.map +1 -1
  43. package/lib/resolvers/index.d.ts +9 -3
  44. package/lib/resolvers/richText.d.ts +1 -0
  45. package/lib/resolvers/teaser.d.ts +1 -2
  46. package/lib/resolvers/teaser.js +0 -1
  47. package/lib/resolvers/teaser.js.map +1 -1
  48. package/lib/resolvers/topper.d.ts +1 -0
  49. package/lib/resolvers/topper.js +1 -0
  50. package/lib/resolvers/topper.js.map +1 -1
  51. package/package.json +1 -1
  52. package/src/generated/index.ts +90 -17
  53. package/src/helpers/isError.ts +3 -0
  54. package/src/model/CapiResponse.ts +46 -4
  55. package/src/model/Concept.ts +23 -10
  56. package/src/model/Image.ts +1 -5
  57. package/src/model/RichText.test.ts +2 -0
  58. package/src/model/RichText.ts +3 -0
  59. package/src/model/Topper.ts +4 -0
  60. package/src/model/__snapshots__/RichText.test.ts.snap +33 -0
  61. package/src/model/schemas/capi/base-schema.ts +3 -0
  62. package/src/model/schemas/capi/content-package.ts +1 -0
  63. package/src/resolvers/content-tree/extractText.ts +21 -0
  64. package/src/resolvers/content-tree/references/Flourish.ts +48 -11
  65. package/src/resolvers/content-tree/references/RawImage.ts +1 -4
  66. package/src/resolvers/content-tree/references/Tweet.ts +1 -4
  67. package/src/resolvers/content.ts +10 -1
  68. package/src/resolvers/image.ts +1 -1
  69. package/src/resolvers/teaser.ts +0 -1
  70. package/src/resolvers/topper.ts +1 -0
  71. package/tsconfig.tsbuildinfo +1 -1
  72. package/typedefs/content.graphql +21 -7
  73. package/typedefs/image.graphql +10 -0
  74. package/typedefs/richText.graphql +1 -0
  75. package/typedefs/teaser.graphql +0 -1
  76. package/typedefs/topper.graphql +7 -0
@@ -45,6 +45,7 @@ export type AltTitle = {
45
45
  };
46
46
 
47
47
  export type Article = Content & {
48
+ readonly accessLevel?: Maybe<Scalars['AccessLevel']['output']>;
48
49
  readonly altStandfirst?: Maybe<AltStandfirst>;
49
50
  readonly altTitle?: Maybe<AltTitle>;
50
51
  readonly annotations?: Maybe<ReadonlyArray<Maybe<Concept>>>;
@@ -52,6 +53,7 @@ export type Article = Content & {
52
53
  readonly bodyXML?: Maybe<Scalars['String']['output']>;
53
54
  readonly byline?: Maybe<StructuredContent>;
54
55
  readonly commentsEnabled?: Maybe<Scalars['Boolean']['output']>;
56
+ readonly containedIn?: Maybe<Content>;
55
57
  readonly design?: Maybe<Design>;
56
58
  readonly firstPublishedDate: Scalars['String']['output'];
57
59
  readonly id: Scalars['String']['output'];
@@ -68,9 +70,11 @@ export type Article = Content & {
68
70
 
69
71
  export type ArticleUrlArgs = {
70
72
  relative?: InputMaybe<Scalars['Boolean']['input']>;
73
+ vanity?: InputMaybe<Scalars['Boolean']['input']>;
71
74
  };
72
75
 
73
76
  export type Audio = Content & {
77
+ readonly accessLevel?: Maybe<Scalars['AccessLevel']['output']>;
74
78
  readonly altStandfirst?: Maybe<AltStandfirst>;
75
79
  readonly altTitle?: Maybe<AltTitle>;
76
80
  readonly annotations?: Maybe<ReadonlyArray<Maybe<Concept>>>;
@@ -95,6 +99,7 @@ export type Audio = Content & {
95
99
 
96
100
  export type AudioUrlArgs = {
97
101
  relative?: InputMaybe<Scalars['Boolean']['input']>;
102
+ vanity?: InputMaybe<Scalars['Boolean']['input']>;
98
103
  };
99
104
 
100
105
  export type BasicTopper = Topper & {
@@ -113,6 +118,7 @@ export type BrandedTopper = Topper & TopperWithBrand & TopperWithTheme & {
113
118
  readonly brandConcept?: Maybe<Concept>;
114
119
  readonly displayConcept?: Maybe<Concept>;
115
120
  readonly followButtonVariant?: Maybe<Scalars['FollowButtonVariant']['output']>;
121
+ readonly genreConcept?: Maybe<Concept>;
116
122
  readonly headline: Scalars['String']['output'];
117
123
  readonly intro?: Maybe<RichText>;
118
124
  readonly isLargeHeadline?: Maybe<Scalars['Boolean']['output']>;
@@ -138,6 +144,7 @@ export type ConceptUrlArgs = {
138
144
  };
139
145
 
140
146
  export type Content = {
147
+ readonly accessLevel?: Maybe<Scalars['AccessLevel']['output']>;
141
148
  readonly altStandfirst?: Maybe<AltStandfirst>;
142
149
  readonly altTitle?: Maybe<AltTitle>;
143
150
  readonly annotations?: Maybe<ReadonlyArray<Maybe<Concept>>>;
@@ -161,9 +168,11 @@ export type Content = {
161
168
 
162
169
  export type ContentUrlArgs = {
163
170
  relative?: InputMaybe<Scalars['Boolean']['input']>;
171
+ vanity?: InputMaybe<Scalars['Boolean']['input']>;
164
172
  };
165
173
 
166
174
  export type ContentPackage = Content & {
175
+ readonly accessLevel?: Maybe<Scalars['AccessLevel']['output']>;
167
176
  readonly altStandfirst?: Maybe<AltStandfirst>;
168
177
  readonly altTitle?: Maybe<AltTitle>;
169
178
  readonly annotations?: Maybe<ReadonlyArray<Maybe<Concept>>>;
@@ -178,6 +187,7 @@ export type ContentPackage = Content & {
178
187
  readonly mainImage?: Maybe<Image>;
179
188
  readonly publishedDate: Scalars['String']['output'];
180
189
  readonly standfirst?: Maybe<Scalars['String']['output']>;
190
+ readonly tableOfContents?: Maybe<TableOfContents>;
181
191
  readonly teaser?: Maybe<Teaser>;
182
192
  readonly title: Scalars['String']['output'];
183
193
  readonly topper?: Maybe<Topper>;
@@ -188,6 +198,7 @@ export type ContentPackage = Content & {
188
198
 
189
199
  export type ContentPackageUrlArgs = {
190
200
  relative?: InputMaybe<Scalars['Boolean']['input']>;
201
+ vanity?: InputMaybe<Scalars['Boolean']['input']>;
191
202
  };
192
203
 
193
204
  export type DeepLandscapeTopper = Topper & TopperWithBrand & TopperWithImages & TopperWithTheme & {
@@ -197,6 +208,7 @@ export type DeepLandscapeTopper = Topper & TopperWithBrand & TopperWithImages &
197
208
  readonly displayConcept?: Maybe<Concept>;
198
209
  readonly fallbackImage?: Maybe<Image>;
199
210
  readonly followButtonVariant?: Maybe<Scalars['FollowButtonVariant']['output']>;
211
+ readonly genreConcept?: Maybe<Concept>;
200
212
  readonly headline: Scalars['String']['output'];
201
213
  readonly images: ReadonlyArray<Image>;
202
214
  readonly intro?: Maybe<RichText>;
@@ -212,6 +224,7 @@ export type DeepPortraitTopper = Topper & TopperWithBrand & TopperWithImages & T
212
224
  readonly displayConcept?: Maybe<Concept>;
213
225
  readonly fallbackImage?: Maybe<Image>;
214
226
  readonly followButtonVariant?: Maybe<Scalars['FollowButtonVariant']['output']>;
227
+ readonly genreConcept?: Maybe<Concept>;
215
228
  readonly headline: Scalars['String']['output'];
216
229
  readonly images: ReadonlyArray<Image>;
217
230
  readonly intro?: Maybe<RichText>;
@@ -243,6 +256,7 @@ export type FullBleedTopper = Topper & TopperWithBrand & TopperWithImages & Topp
243
256
  readonly displayConcept?: Maybe<Concept>;
244
257
  readonly fallbackImage?: Maybe<Image>;
245
258
  readonly followButtonVariant?: Maybe<Scalars['FollowButtonVariant']['output']>;
259
+ readonly genreConcept?: Maybe<Concept>;
246
260
  readonly headline: Scalars['String']['output'];
247
261
  readonly images: ReadonlyArray<Image>;
248
262
  readonly intro?: Maybe<RichText>;
@@ -252,6 +266,7 @@ export type FullBleedTopper = Topper & TopperWithBrand & TopperWithImages & Topp
252
266
  };
253
267
 
254
268
  export type Image = {
269
+ readonly altText?: Maybe<Scalars['String']['output']>;
255
270
  readonly caption?: Maybe<Scalars['String']['output']>;
256
271
  readonly credit?: Maybe<Scalars['String']['output']>;
257
272
  readonly format: Scalars['ImageFormat']['output'];
@@ -270,6 +285,7 @@ export type ImageSourceSetArgs = {
270
285
  };
271
286
 
272
287
  export type ImageDesktop = Image & {
288
+ readonly altText?: Maybe<Scalars['String']['output']>;
273
289
  readonly caption?: Maybe<Scalars['String']['output']>;
274
290
  readonly credit?: Maybe<Scalars['String']['output']>;
275
291
  readonly format: Scalars['ImageFormat']['output'];
@@ -288,6 +304,7 @@ export type ImageDesktopSourceSetArgs = {
288
304
  };
289
305
 
290
306
  export type ImageLandscape = Image & {
307
+ readonly altText?: Maybe<Scalars['String']['output']>;
291
308
  readonly caption?: Maybe<Scalars['String']['output']>;
292
309
  readonly credit?: Maybe<Scalars['String']['output']>;
293
310
  readonly format: Scalars['ImageFormat']['output'];
@@ -306,6 +323,7 @@ export type ImageLandscapeSourceSetArgs = {
306
323
  };
307
324
 
308
325
  export type ImageMobile = Image & {
326
+ readonly altText?: Maybe<Scalars['String']['output']>;
309
327
  readonly caption?: Maybe<Scalars['String']['output']>;
310
328
  readonly credit?: Maybe<Scalars['String']['output']>;
311
329
  readonly format: Scalars['ImageFormat']['output'];
@@ -324,6 +342,7 @@ export type ImageMobileSourceSetArgs = {
324
342
  };
325
343
 
326
344
  export type ImagePortrait = Image & {
345
+ readonly altText?: Maybe<Scalars['String']['output']>;
327
346
  readonly caption?: Maybe<Scalars['String']['output']>;
328
347
  readonly credit?: Maybe<Scalars['String']['output']>;
329
348
  readonly format: Scalars['ImageFormat']['output'];
@@ -353,6 +372,7 @@ export type ImageSource = {
353
372
  };
354
373
 
355
374
  export type ImageSquare = Image & {
375
+ readonly altText?: Maybe<Scalars['String']['output']>;
356
376
  readonly caption?: Maybe<Scalars['String']['output']>;
357
377
  readonly credit?: Maybe<Scalars['String']['output']>;
358
378
  readonly format: Scalars['ImageFormat']['output'];
@@ -371,6 +391,7 @@ export type ImageSquareSourceSetArgs = {
371
391
  };
372
392
 
373
393
  export type ImageSquareFtEdit = Image & {
394
+ readonly altText?: Maybe<Scalars['String']['output']>;
374
395
  readonly caption?: Maybe<Scalars['String']['output']>;
375
396
  readonly credit?: Maybe<Scalars['String']['output']>;
376
397
  readonly format: Scalars['ImageFormat']['output'];
@@ -389,6 +410,7 @@ export type ImageSquareFtEditSourceSetArgs = {
389
410
  };
390
411
 
391
412
  export type ImageStandard = Image & {
413
+ readonly altText?: Maybe<Scalars['String']['output']>;
392
414
  readonly caption?: Maybe<Scalars['String']['output']>;
393
415
  readonly credit?: Maybe<Scalars['String']['output']>;
394
416
  readonly format: Scalars['ImageFormat']['output'];
@@ -407,6 +429,7 @@ export type ImageStandardSourceSetArgs = {
407
429
  };
408
430
 
409
431
  export type ImageStandardInline = Image & {
432
+ readonly altText?: Maybe<Scalars['String']['output']>;
410
433
  readonly caption?: Maybe<Scalars['String']['output']>;
411
434
  readonly credit?: Maybe<Scalars['String']['output']>;
412
435
  readonly format: Scalars['ImageFormat']['output'];
@@ -425,6 +448,7 @@ export type ImageStandardInlineSourceSetArgs = {
425
448
  };
426
449
 
427
450
  export type ImageWide = Image & {
451
+ readonly altText?: Maybe<Scalars['String']['output']>;
428
452
  readonly caption?: Maybe<Scalars['String']['output']>;
429
453
  readonly credit?: Maybe<Scalars['String']['output']>;
430
454
  readonly format: Scalars['ImageFormat']['output'];
@@ -458,6 +482,7 @@ export type LayoutImage = Reference & {
458
482
  };
459
483
 
460
484
  export type LiveBlogPackage = Content & {
485
+ readonly accessLevel?: Maybe<Scalars['AccessLevel']['output']>;
461
486
  readonly altStandfirst?: Maybe<AltStandfirst>;
462
487
  readonly altTitle?: Maybe<AltTitle>;
463
488
  readonly annotations?: Maybe<ReadonlyArray<Maybe<Concept>>>;
@@ -483,9 +508,11 @@ export type LiveBlogPackage = Content & {
483
508
 
484
509
  export type LiveBlogPackageUrlArgs = {
485
510
  relative?: InputMaybe<Scalars['Boolean']['input']>;
511
+ vanity?: InputMaybe<Scalars['Boolean']['input']>;
486
512
  };
487
513
 
488
514
  export type LiveBlogPost = Content & {
515
+ readonly accessLevel?: Maybe<Scalars['AccessLevel']['output']>;
489
516
  readonly altStandfirst?: Maybe<AltStandfirst>;
490
517
  readonly altTitle?: Maybe<AltTitle>;
491
518
  readonly annotations?: Maybe<ReadonlyArray<Maybe<Concept>>>;
@@ -509,6 +536,7 @@ export type LiveBlogPost = Content & {
509
536
 
510
537
  export type LiveBlogPostUrlArgs = {
511
538
  relative?: InputMaybe<Scalars['Boolean']['input']>;
539
+ vanity?: InputMaybe<Scalars['Boolean']['input']>;
512
540
  };
513
541
 
514
542
  export type MainImage = Reference & {
@@ -599,6 +627,7 @@ export type PodcastTopper = Topper & TopperWithBrand & TopperWithHeadshot & Topp
599
627
  readonly columnist?: Maybe<Concept>;
600
628
  readonly displayConcept?: Maybe<Concept>;
601
629
  readonly followButtonVariant?: Maybe<Scalars['FollowButtonVariant']['output']>;
630
+ readonly genreConcept?: Maybe<Concept>;
602
631
  readonly headline: Scalars['String']['output'];
603
632
  readonly headshot?: Maybe<Scalars['String']['output']>;
604
633
  readonly intro?: Maybe<RichText>;
@@ -662,6 +691,7 @@ export type SplitTextTopper = Topper & TopperWithBrand & TopperWithImages & Topp
662
691
  readonly displayConcept?: Maybe<Concept>;
663
692
  readonly fallbackImage?: Maybe<Image>;
664
693
  readonly followButtonVariant?: Maybe<Scalars['FollowButtonVariant']['output']>;
694
+ readonly genreConcept?: Maybe<Concept>;
665
695
  readonly headline: Scalars['String']['output'];
666
696
  readonly images: ReadonlyArray<Image>;
667
697
  readonly intro?: Maybe<RichText>;
@@ -672,9 +702,15 @@ export type SplitTextTopper = Topper & TopperWithBrand & TopperWithImages & Topp
672
702
 
673
703
  export type StructuredContent = {
674
704
  readonly references: ReadonlyArray<Reference>;
705
+ readonly text?: Maybe<Scalars['String']['output']>;
675
706
  readonly tree: Scalars['JSON']['output'];
676
707
  };
677
708
 
709
+ export type TableOfContents = {
710
+ readonly labelType?: Maybe<Scalars['String']['output']>;
711
+ readonly sequence?: Maybe<Scalars['String']['output']>;
712
+ };
713
+
678
714
  export type Teaser = {
679
715
  readonly firstPublishedDate?: Maybe<Scalars['String']['output']>;
680
716
  readonly id?: Maybe<Scalars['String']['output']>;
@@ -686,7 +722,6 @@ export type Teaser = {
686
722
  readonly metaSuffixText?: Maybe<Scalars['String']['output']>;
687
723
  readonly publishedDate?: Maybe<Scalars['String']['output']>;
688
724
  readonly standfirst?: Maybe<Scalars['String']['output']>;
689
- readonly theme?: Maybe<Scalars['String']['output']>;
690
725
  readonly title?: Maybe<Scalars['String']['output']>;
691
726
  readonly type?: Maybe<Scalars['String']['output']>;
692
727
  readonly url: Scalars['String']['output'];
@@ -709,6 +744,7 @@ export type Topper = {
709
744
 
710
745
  export type TopperWithBrand = {
711
746
  readonly brandConcept?: Maybe<Concept>;
747
+ readonly genreConcept?: Maybe<Concept>;
712
748
  };
713
749
 
714
750
  export type TopperWithHeadshot = {
@@ -741,6 +777,7 @@ export type Tweet = Reference & {
741
777
  };
742
778
 
743
779
  export type Video = Content & {
780
+ readonly accessLevel?: Maybe<Scalars['AccessLevel']['output']>;
744
781
  readonly altStandfirst?: Maybe<AltStandfirst>;
745
782
  readonly altTitle?: Maybe<AltTitle>;
746
783
  readonly annotations?: Maybe<ReadonlyArray<Maybe<Concept>>>;
@@ -764,6 +801,7 @@ export type Video = Content & {
764
801
 
765
802
  export type VideoUrlArgs = {
766
803
  relative?: InputMaybe<Scalars['Boolean']['input']>;
804
+ vanity?: InputMaybe<Scalars['Boolean']['input']>;
767
805
  };
768
806
 
769
807
  export type VideoReference = Reference & {
@@ -847,12 +885,12 @@ export type ResolversInterfaceTypes<RefType extends Record<string, unknown>> = R
847
885
  Image: ( ImageDesktop ) | ( ImageLandscape ) | ( ImageMobile ) | ( ImagePortrait ) | ( ImageSquare ) | ( ImageSquareFtEdit ) | ( ImageStandard ) | ( ImageStandardInline ) | ( ImageWide );
848
886
  Picture: ( Omit<PictureFullBleed, 'fallbackImage' | 'images'> & { fallbackImage: RefType['Image'], images: ReadonlyArray<RefType['Image']> } ) | ( Omit<PictureInline, 'fallbackImage' | 'images'> & { fallbackImage: RefType['Image'], images: ReadonlyArray<RefType['Image']> } ) | ( Omit<PictureStandard, 'fallbackImage' | 'images'> & { fallbackImage: RefType['Image'], images: ReadonlyArray<RefType['Image']> } );
849
887
  Reference: ( ReferenceWithCAPIData<ContentTree.Flourish> ) | ( ReferenceWithCAPIData<ContentTree.ImageSet> ) | ( ReferenceWithCAPIData<ContentTree.LayoutImage> ) | ( ReferenceWithCAPIData<ContentTree.ImageSet> ) | ( ReferenceWithCAPIData<RawImageNode> ) | ( ReferenceWithCAPIData<ContentTree.Recommended> ) | ( ReferenceWithCAPIData<ContentTree.ScrollyImage> ) | ( ReferenceWithCAPIData<ContentTree.Tweet> ) | ( ReferenceWithCAPIData<VideoNode> );
850
- Topper: ( Omit<BasicTopper, 'displayConcept' | 'intro'> & { displayConcept?: Maybe<RefType['Concept']>, intro?: Maybe<RefType['RichText']> } ) | ( Omit<BrandedTopper, 'brandConcept' | 'displayConcept' | 'intro'> & { brandConcept?: Maybe<RefType['Concept']>, displayConcept?: Maybe<RefType['Concept']>, intro?: Maybe<RefType['RichText']> } ) | ( Omit<DeepLandscapeTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'images' | 'intro'> & { brandConcept?: Maybe<RefType['Concept']>, displayConcept?: Maybe<RefType['Concept']>, fallbackImage?: Maybe<RefType['Image']>, images: ReadonlyArray<RefType['Image']>, intro?: Maybe<RefType['RichText']> } ) | ( Omit<DeepPortraitTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'images' | 'intro'> & { brandConcept?: Maybe<RefType['Concept']>, displayConcept?: Maybe<RefType['Concept']>, fallbackImage?: Maybe<RefType['Image']>, images: ReadonlyArray<RefType['Image']>, intro?: Maybe<RefType['RichText']> } ) | ( Omit<FullBleedTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'images' | 'intro'> & { brandConcept?: Maybe<RefType['Concept']>, displayConcept?: Maybe<RefType['Concept']>, fallbackImage?: Maybe<RefType['Image']>, images: ReadonlyArray<RefType['Image']>, intro?: Maybe<RefType['RichText']> } ) | ( TopperModel ) | ( TopperModel ) | ( Omit<SplitTextTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'images' | 'intro'> & { brandConcept?: Maybe<RefType['Concept']>, displayConcept?: Maybe<RefType['Concept']>, fallbackImage?: Maybe<RefType['Image']>, images: ReadonlyArray<RefType['Image']>, intro?: Maybe<RefType['RichText']> } );
851
- TopperWithBrand: ( Omit<BrandedTopper, 'brandConcept' | 'displayConcept' | 'intro'> & { brandConcept?: Maybe<RefType['Concept']>, displayConcept?: Maybe<RefType['Concept']>, intro?: Maybe<RefType['RichText']> } ) | ( Omit<DeepLandscapeTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'images' | 'intro'> & { brandConcept?: Maybe<RefType['Concept']>, displayConcept?: Maybe<RefType['Concept']>, fallbackImage?: Maybe<RefType['Image']>, images: ReadonlyArray<RefType['Image']>, intro?: Maybe<RefType['RichText']> } ) | ( Omit<DeepPortraitTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'images' | 'intro'> & { brandConcept?: Maybe<RefType['Concept']>, displayConcept?: Maybe<RefType['Concept']>, fallbackImage?: Maybe<RefType['Image']>, images: ReadonlyArray<RefType['Image']>, intro?: Maybe<RefType['RichText']> } ) | ( Omit<FullBleedTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'images' | 'intro'> & { brandConcept?: Maybe<RefType['Concept']>, displayConcept?: Maybe<RefType['Concept']>, fallbackImage?: Maybe<RefType['Image']>, images: ReadonlyArray<RefType['Image']>, intro?: Maybe<RefType['RichText']> } ) | ( TopperModel ) | ( Omit<SplitTextTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'images' | 'intro'> & { brandConcept?: Maybe<RefType['Concept']>, displayConcept?: Maybe<RefType['Concept']>, fallbackImage?: Maybe<RefType['Image']>, images: ReadonlyArray<RefType['Image']>, intro?: Maybe<RefType['RichText']> } );
888
+ Topper: ( Omit<BasicTopper, 'displayConcept' | 'intro'> & { displayConcept?: Maybe<RefType['Concept']>, intro?: Maybe<RefType['RichText']> } ) | ( Omit<BrandedTopper, 'brandConcept' | 'displayConcept' | 'genreConcept' | 'intro'> & { brandConcept?: Maybe<RefType['Concept']>, displayConcept?: Maybe<RefType['Concept']>, genreConcept?: Maybe<RefType['Concept']>, intro?: Maybe<RefType['RichText']> } ) | ( Omit<DeepLandscapeTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'genreConcept' | 'images' | 'intro'> & { brandConcept?: Maybe<RefType['Concept']>, displayConcept?: Maybe<RefType['Concept']>, fallbackImage?: Maybe<RefType['Image']>, genreConcept?: Maybe<RefType['Concept']>, images: ReadonlyArray<RefType['Image']>, intro?: Maybe<RefType['RichText']> } ) | ( Omit<DeepPortraitTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'genreConcept' | 'images' | 'intro'> & { brandConcept?: Maybe<RefType['Concept']>, displayConcept?: Maybe<RefType['Concept']>, fallbackImage?: Maybe<RefType['Image']>, genreConcept?: Maybe<RefType['Concept']>, images: ReadonlyArray<RefType['Image']>, intro?: Maybe<RefType['RichText']> } ) | ( Omit<FullBleedTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'genreConcept' | 'images' | 'intro'> & { brandConcept?: Maybe<RefType['Concept']>, displayConcept?: Maybe<RefType['Concept']>, fallbackImage?: Maybe<RefType['Image']>, genreConcept?: Maybe<RefType['Concept']>, images: ReadonlyArray<RefType['Image']>, intro?: Maybe<RefType['RichText']> } ) | ( TopperModel ) | ( TopperModel ) | ( Omit<SplitTextTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'genreConcept' | 'images' | 'intro'> & { brandConcept?: Maybe<RefType['Concept']>, displayConcept?: Maybe<RefType['Concept']>, fallbackImage?: Maybe<RefType['Image']>, genreConcept?: Maybe<RefType['Concept']>, images: ReadonlyArray<RefType['Image']>, intro?: Maybe<RefType['RichText']> } );
889
+ TopperWithBrand: ( Omit<BrandedTopper, 'brandConcept' | 'displayConcept' | 'genreConcept' | 'intro'> & { brandConcept?: Maybe<RefType['Concept']>, displayConcept?: Maybe<RefType['Concept']>, genreConcept?: Maybe<RefType['Concept']>, intro?: Maybe<RefType['RichText']> } ) | ( Omit<DeepLandscapeTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'genreConcept' | 'images' | 'intro'> & { brandConcept?: Maybe<RefType['Concept']>, displayConcept?: Maybe<RefType['Concept']>, fallbackImage?: Maybe<RefType['Image']>, genreConcept?: Maybe<RefType['Concept']>, images: ReadonlyArray<RefType['Image']>, intro?: Maybe<RefType['RichText']> } ) | ( Omit<DeepPortraitTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'genreConcept' | 'images' | 'intro'> & { brandConcept?: Maybe<RefType['Concept']>, displayConcept?: Maybe<RefType['Concept']>, fallbackImage?: Maybe<RefType['Image']>, genreConcept?: Maybe<RefType['Concept']>, images: ReadonlyArray<RefType['Image']>, intro?: Maybe<RefType['RichText']> } ) | ( Omit<FullBleedTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'genreConcept' | 'images' | 'intro'> & { brandConcept?: Maybe<RefType['Concept']>, displayConcept?: Maybe<RefType['Concept']>, fallbackImage?: Maybe<RefType['Image']>, genreConcept?: Maybe<RefType['Concept']>, images: ReadonlyArray<RefType['Image']>, intro?: Maybe<RefType['RichText']> } ) | ( TopperModel ) | ( Omit<SplitTextTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'genreConcept' | 'images' | 'intro'> & { brandConcept?: Maybe<RefType['Concept']>, displayConcept?: Maybe<RefType['Concept']>, fallbackImage?: Maybe<RefType['Image']>, genreConcept?: Maybe<RefType['Concept']>, images: ReadonlyArray<RefType['Image']>, intro?: Maybe<RefType['RichText']> } );
852
890
  TopperWithHeadshot: ( TopperModel ) | ( TopperModel );
853
- TopperWithImages: ( Omit<DeepLandscapeTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'images' | 'intro'> & { brandConcept?: Maybe<RefType['Concept']>, displayConcept?: Maybe<RefType['Concept']>, fallbackImage?: Maybe<RefType['Image']>, images: ReadonlyArray<RefType['Image']>, intro?: Maybe<RefType['RichText']> } ) | ( Omit<DeepPortraitTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'images' | 'intro'> & { brandConcept?: Maybe<RefType['Concept']>, displayConcept?: Maybe<RefType['Concept']>, fallbackImage?: Maybe<RefType['Image']>, images: ReadonlyArray<RefType['Image']>, intro?: Maybe<RefType['RichText']> } ) | ( Omit<FullBleedTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'images' | 'intro'> & { brandConcept?: Maybe<RefType['Concept']>, displayConcept?: Maybe<RefType['Concept']>, fallbackImage?: Maybe<RefType['Image']>, images: ReadonlyArray<RefType['Image']>, intro?: Maybe<RefType['RichText']> } ) | ( Omit<SplitTextTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'images' | 'intro'> & { brandConcept?: Maybe<RefType['Concept']>, displayConcept?: Maybe<RefType['Concept']>, fallbackImage?: Maybe<RefType['Image']>, images: ReadonlyArray<RefType['Image']>, intro?: Maybe<RefType['RichText']> } );
854
- TopperWithPackage: ( Omit<SplitTextTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'images' | 'intro'> & { brandConcept?: Maybe<RefType['Concept']>, displayConcept?: Maybe<RefType['Concept']>, fallbackImage?: Maybe<RefType['Image']>, images: ReadonlyArray<RefType['Image']>, intro?: Maybe<RefType['RichText']> } );
855
- TopperWithTheme: ( Omit<BrandedTopper, 'brandConcept' | 'displayConcept' | 'intro'> & { brandConcept?: Maybe<RefType['Concept']>, displayConcept?: Maybe<RefType['Concept']>, intro?: Maybe<RefType['RichText']> } ) | ( Omit<DeepLandscapeTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'images' | 'intro'> & { brandConcept?: Maybe<RefType['Concept']>, displayConcept?: Maybe<RefType['Concept']>, fallbackImage?: Maybe<RefType['Image']>, images: ReadonlyArray<RefType['Image']>, intro?: Maybe<RefType['RichText']> } ) | ( Omit<DeepPortraitTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'images' | 'intro'> & { brandConcept?: Maybe<RefType['Concept']>, displayConcept?: Maybe<RefType['Concept']>, fallbackImage?: Maybe<RefType['Image']>, images: ReadonlyArray<RefType['Image']>, intro?: Maybe<RefType['RichText']> } ) | ( Omit<FullBleedTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'images' | 'intro'> & { brandConcept?: Maybe<RefType['Concept']>, displayConcept?: Maybe<RefType['Concept']>, fallbackImage?: Maybe<RefType['Image']>, images: ReadonlyArray<RefType['Image']>, intro?: Maybe<RefType['RichText']> } ) | ( TopperModel ) | ( TopperModel ) | ( Omit<SplitTextTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'images' | 'intro'> & { brandConcept?: Maybe<RefType['Concept']>, displayConcept?: Maybe<RefType['Concept']>, fallbackImage?: Maybe<RefType['Image']>, images: ReadonlyArray<RefType['Image']>, intro?: Maybe<RefType['RichText']> } );
891
+ TopperWithImages: ( Omit<DeepLandscapeTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'genreConcept' | 'images' | 'intro'> & { brandConcept?: Maybe<RefType['Concept']>, displayConcept?: Maybe<RefType['Concept']>, fallbackImage?: Maybe<RefType['Image']>, genreConcept?: Maybe<RefType['Concept']>, images: ReadonlyArray<RefType['Image']>, intro?: Maybe<RefType['RichText']> } ) | ( Omit<DeepPortraitTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'genreConcept' | 'images' | 'intro'> & { brandConcept?: Maybe<RefType['Concept']>, displayConcept?: Maybe<RefType['Concept']>, fallbackImage?: Maybe<RefType['Image']>, genreConcept?: Maybe<RefType['Concept']>, images: ReadonlyArray<RefType['Image']>, intro?: Maybe<RefType['RichText']> } ) | ( Omit<FullBleedTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'genreConcept' | 'images' | 'intro'> & { brandConcept?: Maybe<RefType['Concept']>, displayConcept?: Maybe<RefType['Concept']>, fallbackImage?: Maybe<RefType['Image']>, genreConcept?: Maybe<RefType['Concept']>, images: ReadonlyArray<RefType['Image']>, intro?: Maybe<RefType['RichText']> } ) | ( Omit<SplitTextTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'genreConcept' | 'images' | 'intro'> & { brandConcept?: Maybe<RefType['Concept']>, displayConcept?: Maybe<RefType['Concept']>, fallbackImage?: Maybe<RefType['Image']>, genreConcept?: Maybe<RefType['Concept']>, images: ReadonlyArray<RefType['Image']>, intro?: Maybe<RefType['RichText']> } );
892
+ TopperWithPackage: ( Omit<SplitTextTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'genreConcept' | 'images' | 'intro'> & { brandConcept?: Maybe<RefType['Concept']>, displayConcept?: Maybe<RefType['Concept']>, fallbackImage?: Maybe<RefType['Image']>, genreConcept?: Maybe<RefType['Concept']>, images: ReadonlyArray<RefType['Image']>, intro?: Maybe<RefType['RichText']> } );
893
+ TopperWithTheme: ( Omit<BrandedTopper, 'brandConcept' | 'displayConcept' | 'genreConcept' | 'intro'> & { brandConcept?: Maybe<RefType['Concept']>, displayConcept?: Maybe<RefType['Concept']>, genreConcept?: Maybe<RefType['Concept']>, intro?: Maybe<RefType['RichText']> } ) | ( Omit<DeepLandscapeTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'genreConcept' | 'images' | 'intro'> & { brandConcept?: Maybe<RefType['Concept']>, displayConcept?: Maybe<RefType['Concept']>, fallbackImage?: Maybe<RefType['Image']>, genreConcept?: Maybe<RefType['Concept']>, images: ReadonlyArray<RefType['Image']>, intro?: Maybe<RefType['RichText']> } ) | ( Omit<DeepPortraitTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'genreConcept' | 'images' | 'intro'> & { brandConcept?: Maybe<RefType['Concept']>, displayConcept?: Maybe<RefType['Concept']>, fallbackImage?: Maybe<RefType['Image']>, genreConcept?: Maybe<RefType['Concept']>, images: ReadonlyArray<RefType['Image']>, intro?: Maybe<RefType['RichText']> } ) | ( Omit<FullBleedTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'genreConcept' | 'images' | 'intro'> & { brandConcept?: Maybe<RefType['Concept']>, displayConcept?: Maybe<RefType['Concept']>, fallbackImage?: Maybe<RefType['Image']>, genreConcept?: Maybe<RefType['Concept']>, images: ReadonlyArray<RefType['Image']>, intro?: Maybe<RefType['RichText']> } ) | ( TopperModel ) | ( TopperModel ) | ( Omit<SplitTextTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'genreConcept' | 'images' | 'intro'> & { brandConcept?: Maybe<RefType['Concept']>, displayConcept?: Maybe<RefType['Concept']>, fallbackImage?: Maybe<RefType['Image']>, genreConcept?: Maybe<RefType['Concept']>, images: ReadonlyArray<RefType['Image']>, intro?: Maybe<RefType['RichText']> } );
856
894
  }>;
857
895
 
858
896
  /** Mapping between all available schema types and the resolvers types */
@@ -864,18 +902,18 @@ export type ResolversTypes = ResolversObject<{
864
902
  Audio: ResolverTypeWrapper<CapiResponse>;
865
903
  BasicTopper: ResolverTypeWrapper<Omit<BasicTopper, 'displayConcept' | 'intro'> & { displayConcept?: Maybe<ResolversTypes['Concept']>, intro?: Maybe<ResolversTypes['RichText']> }>;
866
904
  Boolean: ResolverTypeWrapper<Scalars['Boolean']['output']>;
867
- BrandedTopper: ResolverTypeWrapper<Omit<BrandedTopper, 'brandConcept' | 'displayConcept' | 'intro'> & { brandConcept?: Maybe<ResolversTypes['Concept']>, displayConcept?: Maybe<ResolversTypes['Concept']>, intro?: Maybe<ResolversTypes['RichText']> }>;
905
+ BrandedTopper: ResolverTypeWrapper<Omit<BrandedTopper, 'brandConcept' | 'displayConcept' | 'genreConcept' | 'intro'> & { brandConcept?: Maybe<ResolversTypes['Concept']>, displayConcept?: Maybe<ResolversTypes['Concept']>, genreConcept?: Maybe<ResolversTypes['Concept']>, intro?: Maybe<ResolversTypes['RichText']> }>;
868
906
  Concept: ResolverTypeWrapper<ConceptModel>;
869
907
  Content: ResolverTypeWrapper<ResolversInterfaceTypes<ResolversTypes>['Content']>;
870
908
  ContentPackage: ResolverTypeWrapper<CapiResponse>;
871
909
  ContentType: ResolverTypeWrapper<Scalars['ContentType']['output']>;
872
- DeepLandscapeTopper: ResolverTypeWrapper<Omit<DeepLandscapeTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'images' | 'intro'> & { brandConcept?: Maybe<ResolversTypes['Concept']>, displayConcept?: Maybe<ResolversTypes['Concept']>, fallbackImage?: Maybe<ResolversTypes['Image']>, images: ReadonlyArray<ResolversTypes['Image']>, intro?: Maybe<ResolversTypes['RichText']> }>;
873
- DeepPortraitTopper: ResolverTypeWrapper<Omit<DeepPortraitTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'images' | 'intro'> & { brandConcept?: Maybe<ResolversTypes['Concept']>, displayConcept?: Maybe<ResolversTypes['Concept']>, fallbackImage?: Maybe<ResolversTypes['Image']>, images: ReadonlyArray<ResolversTypes['Image']>, intro?: Maybe<ResolversTypes['RichText']> }>;
910
+ DeepLandscapeTopper: ResolverTypeWrapper<Omit<DeepLandscapeTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'genreConcept' | 'images' | 'intro'> & { brandConcept?: Maybe<ResolversTypes['Concept']>, displayConcept?: Maybe<ResolversTypes['Concept']>, fallbackImage?: Maybe<ResolversTypes['Image']>, genreConcept?: Maybe<ResolversTypes['Concept']>, images: ReadonlyArray<ResolversTypes['Image']>, intro?: Maybe<ResolversTypes['RichText']> }>;
911
+ DeepPortraitTopper: ResolverTypeWrapper<Omit<DeepPortraitTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'genreConcept' | 'images' | 'intro'> & { brandConcept?: Maybe<ResolversTypes['Concept']>, displayConcept?: Maybe<ResolversTypes['Concept']>, fallbackImage?: Maybe<ResolversTypes['Image']>, genreConcept?: Maybe<ResolversTypes['Concept']>, images: ReadonlyArray<ResolversTypes['Image']>, intro?: Maybe<ResolversTypes['RichText']> }>;
874
912
  Design: ResolverTypeWrapper<Design>;
875
913
  Flourish: ResolverTypeWrapper<ReferenceWithCAPIData<ContentTree.Flourish>>;
876
914
  FlourishFallback: ResolverTypeWrapper<FlourishFallback>;
877
915
  FollowButtonVariant: ResolverTypeWrapper<Scalars['FollowButtonVariant']['output']>;
878
- FullBleedTopper: ResolverTypeWrapper<Omit<FullBleedTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'images' | 'intro'> & { brandConcept?: Maybe<ResolversTypes['Concept']>, displayConcept?: Maybe<ResolversTypes['Concept']>, fallbackImage?: Maybe<ResolversTypes['Image']>, images: ReadonlyArray<ResolversTypes['Image']>, intro?: Maybe<ResolversTypes['RichText']> }>;
916
+ FullBleedTopper: ResolverTypeWrapper<Omit<FullBleedTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'genreConcept' | 'images' | 'intro'> & { brandConcept?: Maybe<ResolversTypes['Concept']>, displayConcept?: Maybe<ResolversTypes['Concept']>, fallbackImage?: Maybe<ResolversTypes['Image']>, genreConcept?: Maybe<ResolversTypes['Concept']>, images: ReadonlyArray<ResolversTypes['Image']>, intro?: Maybe<ResolversTypes['RichText']> }>;
879
917
  ID: ResolverTypeWrapper<Scalars['ID']['output']>;
880
918
  Image: ResolverTypeWrapper<ImageModel>;
881
919
  ImageDesktop: ResolverTypeWrapper<ImageDesktop>;
@@ -914,9 +952,10 @@ export type ResolversTypes = ResolversObject<{
914
952
  RichText: ResolverTypeWrapper<RichTextModel>;
915
953
  RichTextSource: ResolverTypeWrapper<Scalars['RichTextSource']['output']>;
916
954
  ScrollyImage: ResolverTypeWrapper<ReferenceWithCAPIData<ContentTree.ScrollyImage>>;
917
- SplitTextTopper: ResolverTypeWrapper<Omit<SplitTextTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'images' | 'intro'> & { brandConcept?: Maybe<ResolversTypes['Concept']>, displayConcept?: Maybe<ResolversTypes['Concept']>, fallbackImage?: Maybe<ResolversTypes['Image']>, images: ReadonlyArray<ResolversTypes['Image']>, intro?: Maybe<ResolversTypes['RichText']> }>;
955
+ SplitTextTopper: ResolverTypeWrapper<Omit<SplitTextTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'genreConcept' | 'images' | 'intro'> & { brandConcept?: Maybe<ResolversTypes['Concept']>, displayConcept?: Maybe<ResolversTypes['Concept']>, fallbackImage?: Maybe<ResolversTypes['Image']>, genreConcept?: Maybe<ResolversTypes['Concept']>, images: ReadonlyArray<ResolversTypes['Image']>, intro?: Maybe<ResolversTypes['RichText']> }>;
918
956
  String: ResolverTypeWrapper<Scalars['String']['output']>;
919
957
  StructuredContent: ResolverTypeWrapper<Omit<StructuredContent, 'references'> & { references: ReadonlyArray<ResolversTypes['Reference']> }>;
958
+ TableOfContents: ResolverTypeWrapper<TableOfContents>;
920
959
  Teaser: ResolverTypeWrapper<CapiResponse>;
921
960
  Topper: ResolverTypeWrapper<TopperModel>;
922
961
  TopperBackgroundColour: ResolverTypeWrapper<Scalars['TopperBackgroundColour']['output']>;
@@ -939,18 +978,18 @@ export type ResolversParentTypes = ResolversObject<{
939
978
  Audio: CapiResponse;
940
979
  BasicTopper: Omit<BasicTopper, 'displayConcept' | 'intro'> & { displayConcept?: Maybe<ResolversParentTypes['Concept']>, intro?: Maybe<ResolversParentTypes['RichText']> };
941
980
  Boolean: Scalars['Boolean']['output'];
942
- BrandedTopper: Omit<BrandedTopper, 'brandConcept' | 'displayConcept' | 'intro'> & { brandConcept?: Maybe<ResolversParentTypes['Concept']>, displayConcept?: Maybe<ResolversParentTypes['Concept']>, intro?: Maybe<ResolversParentTypes['RichText']> };
981
+ BrandedTopper: Omit<BrandedTopper, 'brandConcept' | 'displayConcept' | 'genreConcept' | 'intro'> & { brandConcept?: Maybe<ResolversParentTypes['Concept']>, displayConcept?: Maybe<ResolversParentTypes['Concept']>, genreConcept?: Maybe<ResolversParentTypes['Concept']>, intro?: Maybe<ResolversParentTypes['RichText']> };
943
982
  Concept: ConceptModel;
944
983
  Content: ResolversInterfaceTypes<ResolversParentTypes>['Content'];
945
984
  ContentPackage: CapiResponse;
946
985
  ContentType: Scalars['ContentType']['output'];
947
- DeepLandscapeTopper: Omit<DeepLandscapeTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'images' | 'intro'> & { brandConcept?: Maybe<ResolversParentTypes['Concept']>, displayConcept?: Maybe<ResolversParentTypes['Concept']>, fallbackImage?: Maybe<ResolversParentTypes['Image']>, images: ReadonlyArray<ResolversParentTypes['Image']>, intro?: Maybe<ResolversParentTypes['RichText']> };
948
- DeepPortraitTopper: Omit<DeepPortraitTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'images' | 'intro'> & { brandConcept?: Maybe<ResolversParentTypes['Concept']>, displayConcept?: Maybe<ResolversParentTypes['Concept']>, fallbackImage?: Maybe<ResolversParentTypes['Image']>, images: ReadonlyArray<ResolversParentTypes['Image']>, intro?: Maybe<ResolversParentTypes['RichText']> };
986
+ DeepLandscapeTopper: Omit<DeepLandscapeTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'genreConcept' | 'images' | 'intro'> & { brandConcept?: Maybe<ResolversParentTypes['Concept']>, displayConcept?: Maybe<ResolversParentTypes['Concept']>, fallbackImage?: Maybe<ResolversParentTypes['Image']>, genreConcept?: Maybe<ResolversParentTypes['Concept']>, images: ReadonlyArray<ResolversParentTypes['Image']>, intro?: Maybe<ResolversParentTypes['RichText']> };
987
+ DeepPortraitTopper: Omit<DeepPortraitTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'genreConcept' | 'images' | 'intro'> & { brandConcept?: Maybe<ResolversParentTypes['Concept']>, displayConcept?: Maybe<ResolversParentTypes['Concept']>, fallbackImage?: Maybe<ResolversParentTypes['Image']>, genreConcept?: Maybe<ResolversParentTypes['Concept']>, images: ReadonlyArray<ResolversParentTypes['Image']>, intro?: Maybe<ResolversParentTypes['RichText']> };
949
988
  Design: Design;
950
989
  Flourish: ReferenceWithCAPIData<ContentTree.Flourish>;
951
990
  FlourishFallback: FlourishFallback;
952
991
  FollowButtonVariant: Scalars['FollowButtonVariant']['output'];
953
- FullBleedTopper: Omit<FullBleedTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'images' | 'intro'> & { brandConcept?: Maybe<ResolversParentTypes['Concept']>, displayConcept?: Maybe<ResolversParentTypes['Concept']>, fallbackImage?: Maybe<ResolversParentTypes['Image']>, images: ReadonlyArray<ResolversParentTypes['Image']>, intro?: Maybe<ResolversParentTypes['RichText']> };
992
+ FullBleedTopper: Omit<FullBleedTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'genreConcept' | 'images' | 'intro'> & { brandConcept?: Maybe<ResolversParentTypes['Concept']>, displayConcept?: Maybe<ResolversParentTypes['Concept']>, fallbackImage?: Maybe<ResolversParentTypes['Image']>, genreConcept?: Maybe<ResolversParentTypes['Concept']>, images: ReadonlyArray<ResolversParentTypes['Image']>, intro?: Maybe<ResolversParentTypes['RichText']> };
954
993
  ID: Scalars['ID']['output'];
955
994
  Image: ImageModel;
956
995
  ImageDesktop: ImageDesktop;
@@ -989,9 +1028,10 @@ export type ResolversParentTypes = ResolversObject<{
989
1028
  RichText: RichTextModel;
990
1029
  RichTextSource: Scalars['RichTextSource']['output'];
991
1030
  ScrollyImage: ReferenceWithCAPIData<ContentTree.ScrollyImage>;
992
- SplitTextTopper: Omit<SplitTextTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'images' | 'intro'> & { brandConcept?: Maybe<ResolversParentTypes['Concept']>, displayConcept?: Maybe<ResolversParentTypes['Concept']>, fallbackImage?: Maybe<ResolversParentTypes['Image']>, images: ReadonlyArray<ResolversParentTypes['Image']>, intro?: Maybe<ResolversParentTypes['RichText']> };
1031
+ SplitTextTopper: Omit<SplitTextTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'genreConcept' | 'images' | 'intro'> & { brandConcept?: Maybe<ResolversParentTypes['Concept']>, displayConcept?: Maybe<ResolversParentTypes['Concept']>, fallbackImage?: Maybe<ResolversParentTypes['Image']>, genreConcept?: Maybe<ResolversParentTypes['Concept']>, images: ReadonlyArray<ResolversParentTypes['Image']>, intro?: Maybe<ResolversParentTypes['RichText']> };
993
1032
  String: Scalars['String']['output'];
994
1033
  StructuredContent: Omit<StructuredContent, 'references'> & { references: ReadonlyArray<ResolversParentTypes['Reference']> };
1034
+ TableOfContents: TableOfContents;
995
1035
  Teaser: CapiResponse;
996
1036
  Topper: TopperModel;
997
1037
  TopperBackgroundColour: Scalars['TopperBackgroundColour']['output'];
@@ -1020,6 +1060,7 @@ export type AltTitleResolvers<ContextType = QueryContext, ParentType extends Res
1020
1060
  }>;
1021
1061
 
1022
1062
  export type ArticleResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['Article'] = ResolversParentTypes['Article']> = ResolversObject<{
1063
+ accessLevel?: Resolver<Maybe<ResolversTypes['AccessLevel']>, ParentType, ContextType>;
1023
1064
  altStandfirst?: Resolver<Maybe<ResolversTypes['AltStandfirst']>, ParentType, ContextType>;
1024
1065
  altTitle?: Resolver<Maybe<ResolversTypes['AltTitle']>, ParentType, ContextType>;
1025
1066
  annotations?: Resolver<Maybe<ReadonlyArray<Maybe<ResolversTypes['Concept']>>>, ParentType, ContextType>;
@@ -1027,6 +1068,7 @@ export type ArticleResolvers<ContextType = QueryContext, ParentType extends Reso
1027
1068
  bodyXML?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1028
1069
  byline?: Resolver<Maybe<ResolversTypes['StructuredContent']>, ParentType, ContextType>;
1029
1070
  commentsEnabled?: Resolver<Maybe<ResolversTypes['Boolean']>, ParentType, ContextType>;
1071
+ containedIn?: Resolver<Maybe<ResolversTypes['Content']>, ParentType, ContextType>;
1030
1072
  design?: Resolver<Maybe<ResolversTypes['Design']>, ParentType, ContextType>;
1031
1073
  firstPublishedDate?: Resolver<ResolversTypes['String'], ParentType, ContextType>;
1032
1074
  id?: Resolver<ResolversTypes['String'], ParentType, ContextType>;
@@ -1042,6 +1084,7 @@ export type ArticleResolvers<ContextType = QueryContext, ParentType extends Reso
1042
1084
  }>;
1043
1085
 
1044
1086
  export type AudioResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['Audio'] = ResolversParentTypes['Audio']> = ResolversObject<{
1087
+ accessLevel?: Resolver<Maybe<ResolversTypes['AccessLevel']>, ParentType, ContextType>;
1045
1088
  altStandfirst?: Resolver<Maybe<ResolversTypes['AltStandfirst']>, ParentType, ContextType>;
1046
1089
  altTitle?: Resolver<Maybe<ResolversTypes['AltTitle']>, ParentType, ContextType>;
1047
1090
  annotations?: Resolver<Maybe<ReadonlyArray<Maybe<ResolversTypes['Concept']>>>, ParentType, ContextType>;
@@ -1081,6 +1124,7 @@ export type BrandedTopperResolvers<ContextType = QueryContext, ParentType extend
1081
1124
  brandConcept?: Resolver<Maybe<ResolversTypes['Concept']>, ParentType, ContextType>;
1082
1125
  displayConcept?: Resolver<Maybe<ResolversTypes['Concept']>, ParentType, ContextType>;
1083
1126
  followButtonVariant?: Resolver<Maybe<ResolversTypes['FollowButtonVariant']>, ParentType, ContextType>;
1127
+ genreConcept?: Resolver<Maybe<ResolversTypes['Concept']>, ParentType, ContextType>;
1084
1128
  headline?: Resolver<ResolversTypes['String'], ParentType, ContextType>;
1085
1129
  intro?: Resolver<Maybe<ResolversTypes['RichText']>, ParentType, ContextType>;
1086
1130
  isLargeHeadline?: Resolver<Maybe<ResolversTypes['Boolean']>, ParentType, ContextType>;
@@ -1103,6 +1147,7 @@ export type ConceptResolvers<ContextType = QueryContext, ParentType extends Reso
1103
1147
 
1104
1148
  export type ContentResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['Content'] = ResolversParentTypes['Content']> = ResolversObject<{
1105
1149
  __resolveType?: TypeResolveFn<'Article' | 'Audio' | 'ContentPackage' | 'LiveBlogPackage' | 'LiveBlogPost' | 'Video', ParentType, ContextType>;
1150
+ accessLevel?: Resolver<Maybe<ResolversTypes['AccessLevel']>, ParentType, ContextType>;
1106
1151
  altStandfirst?: Resolver<Maybe<ResolversTypes['AltStandfirst']>, ParentType, ContextType>;
1107
1152
  altTitle?: Resolver<Maybe<ResolversTypes['AltTitle']>, ParentType, ContextType>;
1108
1153
  annotations?: Resolver<Maybe<ReadonlyArray<Maybe<ResolversTypes['Concept']>>>, ParentType, ContextType>;
@@ -1124,6 +1169,7 @@ export type ContentResolvers<ContextType = QueryContext, ParentType extends Reso
1124
1169
  }>;
1125
1170
 
1126
1171
  export type ContentPackageResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['ContentPackage'] = ResolversParentTypes['ContentPackage']> = ResolversObject<{
1172
+ accessLevel?: Resolver<Maybe<ResolversTypes['AccessLevel']>, ParentType, ContextType>;
1127
1173
  altStandfirst?: Resolver<Maybe<ResolversTypes['AltStandfirst']>, ParentType, ContextType>;
1128
1174
  altTitle?: Resolver<Maybe<ResolversTypes['AltTitle']>, ParentType, ContextType>;
1129
1175
  annotations?: Resolver<Maybe<ReadonlyArray<Maybe<ResolversTypes['Concept']>>>, ParentType, ContextType>;
@@ -1138,6 +1184,7 @@ export type ContentPackageResolvers<ContextType = QueryContext, ParentType exten
1138
1184
  mainImage?: Resolver<Maybe<ResolversTypes['Image']>, ParentType, ContextType>;
1139
1185
  publishedDate?: Resolver<ResolversTypes['String'], ParentType, ContextType>;
1140
1186
  standfirst?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1187
+ tableOfContents?: Resolver<Maybe<ResolversTypes['TableOfContents']>, ParentType, ContextType>;
1141
1188
  teaser?: Resolver<Maybe<ResolversTypes['Teaser']>, ParentType, ContextType>;
1142
1189
  title?: Resolver<ResolversTypes['String'], ParentType, ContextType>;
1143
1190
  topper?: Resolver<Maybe<ResolversTypes['Topper']>, ParentType, ContextType>;
@@ -1157,6 +1204,7 @@ export type DeepLandscapeTopperResolvers<ContextType = QueryContext, ParentType
1157
1204
  displayConcept?: Resolver<Maybe<ResolversTypes['Concept']>, ParentType, ContextType>;
1158
1205
  fallbackImage?: Resolver<Maybe<ResolversTypes['Image']>, ParentType, ContextType>;
1159
1206
  followButtonVariant?: Resolver<Maybe<ResolversTypes['FollowButtonVariant']>, ParentType, ContextType>;
1207
+ genreConcept?: Resolver<Maybe<ResolversTypes['Concept']>, ParentType, ContextType>;
1160
1208
  headline?: Resolver<ResolversTypes['String'], ParentType, ContextType>;
1161
1209
  images?: Resolver<ReadonlyArray<ResolversTypes['Image']>, ParentType, ContextType>;
1162
1210
  intro?: Resolver<Maybe<ResolversTypes['RichText']>, ParentType, ContextType>;
@@ -1173,6 +1221,7 @@ export type DeepPortraitTopperResolvers<ContextType = QueryContext, ParentType e
1173
1221
  displayConcept?: Resolver<Maybe<ResolversTypes['Concept']>, ParentType, ContextType>;
1174
1222
  fallbackImage?: Resolver<Maybe<ResolversTypes['Image']>, ParentType, ContextType>;
1175
1223
  followButtonVariant?: Resolver<Maybe<ResolversTypes['FollowButtonVariant']>, ParentType, ContextType>;
1224
+ genreConcept?: Resolver<Maybe<ResolversTypes['Concept']>, ParentType, ContextType>;
1176
1225
  headline?: Resolver<ResolversTypes['String'], ParentType, ContextType>;
1177
1226
  images?: Resolver<ReadonlyArray<ResolversTypes['Image']>, ParentType, ContextType>;
1178
1227
  intro?: Resolver<Maybe<ResolversTypes['RichText']>, ParentType, ContextType>;
@@ -1212,6 +1261,7 @@ export type FullBleedTopperResolvers<ContextType = QueryContext, ParentType exte
1212
1261
  displayConcept?: Resolver<Maybe<ResolversTypes['Concept']>, ParentType, ContextType>;
1213
1262
  fallbackImage?: Resolver<Maybe<ResolversTypes['Image']>, ParentType, ContextType>;
1214
1263
  followButtonVariant?: Resolver<Maybe<ResolversTypes['FollowButtonVariant']>, ParentType, ContextType>;
1264
+ genreConcept?: Resolver<Maybe<ResolversTypes['Concept']>, ParentType, ContextType>;
1215
1265
  headline?: Resolver<ResolversTypes['String'], ParentType, ContextType>;
1216
1266
  images?: Resolver<ReadonlyArray<ResolversTypes['Image']>, ParentType, ContextType>;
1217
1267
  intro?: Resolver<Maybe<ResolversTypes['RichText']>, ParentType, ContextType>;
@@ -1223,6 +1273,7 @@ export type FullBleedTopperResolvers<ContextType = QueryContext, ParentType exte
1223
1273
 
1224
1274
  export type ImageResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['Image'] = ResolversParentTypes['Image']> = ResolversObject<{
1225
1275
  __resolveType?: TypeResolveFn<'ImageDesktop' | 'ImageLandscape' | 'ImageMobile' | 'ImagePortrait' | 'ImageSquare' | 'ImageSquareFTEdit' | 'ImageStandard' | 'ImageStandardInline' | 'ImageWide', ParentType, ContextType>;
1276
+ altText?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1226
1277
  caption?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1227
1278
  credit?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1228
1279
  format?: Resolver<ResolversTypes['ImageFormat'], ParentType, ContextType>;
@@ -1235,6 +1286,7 @@ export type ImageResolvers<ContextType = QueryContext, ParentType extends Resolv
1235
1286
  }>;
1236
1287
 
1237
1288
  export type ImageDesktopResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['ImageDesktop'] = ResolversParentTypes['ImageDesktop']> = ResolversObject<{
1289
+ altText?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1238
1290
  caption?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1239
1291
  credit?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1240
1292
  format?: Resolver<ResolversTypes['ImageFormat'], ParentType, ContextType>;
@@ -1252,6 +1304,7 @@ export interface ImageFormatScalarConfig extends GraphQLScalarTypeConfig<Resolve
1252
1304
  }
1253
1305
 
1254
1306
  export type ImageLandscapeResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['ImageLandscape'] = ResolversParentTypes['ImageLandscape']> = ResolversObject<{
1307
+ altText?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1255
1308
  caption?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1256
1309
  credit?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1257
1310
  format?: Resolver<ResolversTypes['ImageFormat'], ParentType, ContextType>;
@@ -1265,6 +1318,7 @@ export type ImageLandscapeResolvers<ContextType = QueryContext, ParentType exten
1265
1318
  }>;
1266
1319
 
1267
1320
  export type ImageMobileResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['ImageMobile'] = ResolversParentTypes['ImageMobile']> = ResolversObject<{
1321
+ altText?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1268
1322
  caption?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1269
1323
  credit?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1270
1324
  format?: Resolver<ResolversTypes['ImageFormat'], ParentType, ContextType>;
@@ -1278,6 +1332,7 @@ export type ImageMobileResolvers<ContextType = QueryContext, ParentType extends
1278
1332
  }>;
1279
1333
 
1280
1334
  export type ImagePortraitResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['ImagePortrait'] = ResolversParentTypes['ImagePortrait']> = ResolversObject<{
1335
+ altText?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1281
1336
  caption?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1282
1337
  credit?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1283
1338
  format?: Resolver<ResolversTypes['ImageFormat'], ParentType, ContextType>;
@@ -1304,6 +1359,7 @@ export type ImageSourceResolvers<ContextType = QueryContext, ParentType extends
1304
1359
  }>;
1305
1360
 
1306
1361
  export type ImageSquareResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['ImageSquare'] = ResolversParentTypes['ImageSquare']> = ResolversObject<{
1362
+ altText?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1307
1363
  caption?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1308
1364
  credit?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1309
1365
  format?: Resolver<ResolversTypes['ImageFormat'], ParentType, ContextType>;
@@ -1317,6 +1373,7 @@ export type ImageSquareResolvers<ContextType = QueryContext, ParentType extends
1317
1373
  }>;
1318
1374
 
1319
1375
  export type ImageSquareFtEditResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['ImageSquareFTEdit'] = ResolversParentTypes['ImageSquareFTEdit']> = ResolversObject<{
1376
+ altText?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1320
1377
  caption?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1321
1378
  credit?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1322
1379
  format?: Resolver<ResolversTypes['ImageFormat'], ParentType, ContextType>;
@@ -1330,6 +1387,7 @@ export type ImageSquareFtEditResolvers<ContextType = QueryContext, ParentType ex
1330
1387
  }>;
1331
1388
 
1332
1389
  export type ImageStandardResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['ImageStandard'] = ResolversParentTypes['ImageStandard']> = ResolversObject<{
1390
+ altText?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1333
1391
  caption?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1334
1392
  credit?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1335
1393
  format?: Resolver<ResolversTypes['ImageFormat'], ParentType, ContextType>;
@@ -1343,6 +1401,7 @@ export type ImageStandardResolvers<ContextType = QueryContext, ParentType extend
1343
1401
  }>;
1344
1402
 
1345
1403
  export type ImageStandardInlineResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['ImageStandardInline'] = ResolversParentTypes['ImageStandardInline']> = ResolversObject<{
1404
+ altText?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1346
1405
  caption?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1347
1406
  credit?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1348
1407
  format?: Resolver<ResolversTypes['ImageFormat'], ParentType, ContextType>;
@@ -1360,6 +1419,7 @@ export interface ImageTypeScalarConfig extends GraphQLScalarTypeConfig<Resolvers
1360
1419
  }
1361
1420
 
1362
1421
  export type ImageWideResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['ImageWide'] = ResolversParentTypes['ImageWide']> = ResolversObject<{
1422
+ altText?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1363
1423
  caption?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1364
1424
  credit?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1365
1425
  format?: Resolver<ResolversTypes['ImageFormat'], ParentType, ContextType>;
@@ -1394,6 +1454,7 @@ export type LayoutImageResolvers<ContextType = QueryContext, ParentType extends
1394
1454
  }>;
1395
1455
 
1396
1456
  export type LiveBlogPackageResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['LiveBlogPackage'] = ResolversParentTypes['LiveBlogPackage']> = ResolversObject<{
1457
+ accessLevel?: Resolver<Maybe<ResolversTypes['AccessLevel']>, ParentType, ContextType>;
1397
1458
  altStandfirst?: Resolver<Maybe<ResolversTypes['AltStandfirst']>, ParentType, ContextType>;
1398
1459
  altTitle?: Resolver<Maybe<ResolversTypes['AltTitle']>, ParentType, ContextType>;
1399
1460
  annotations?: Resolver<Maybe<ReadonlyArray<Maybe<ResolversTypes['Concept']>>>, ParentType, ContextType>;
@@ -1418,6 +1479,7 @@ export type LiveBlogPackageResolvers<ContextType = QueryContext, ParentType exte
1418
1479
  }>;
1419
1480
 
1420
1481
  export type LiveBlogPostResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['LiveBlogPost'] = ResolversParentTypes['LiveBlogPost']> = ResolversObject<{
1482
+ accessLevel?: Resolver<Maybe<ResolversTypes['AccessLevel']>, ParentType, ContextType>;
1421
1483
  altStandfirst?: Resolver<Maybe<ResolversTypes['AltStandfirst']>, ParentType, ContextType>;
1422
1484
  altTitle?: Resolver<Maybe<ResolversTypes['AltTitle']>, ParentType, ContextType>;
1423
1485
  annotations?: Resolver<Maybe<ReadonlyArray<Maybe<ResolversTypes['Concept']>>>, ParentType, ContextType>;
@@ -1527,6 +1589,7 @@ export type PodcastTopperResolvers<ContextType = QueryContext, ParentType extend
1527
1589
  columnist?: Resolver<Maybe<ResolversTypes['Concept']>, ParentType, ContextType>;
1528
1590
  displayConcept?: Resolver<Maybe<ResolversTypes['Concept']>, ParentType, ContextType>;
1529
1591
  followButtonVariant?: Resolver<Maybe<ResolversTypes['FollowButtonVariant']>, ParentType, ContextType>;
1592
+ genreConcept?: Resolver<Maybe<ResolversTypes['Concept']>, ParentType, ContextType>;
1530
1593
  headline?: Resolver<ResolversTypes['String'], ParentType, ContextType>;
1531
1594
  headshot?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType, Partial<PodcastTopperHeadshotArgs>>;
1532
1595
  intro?: Resolver<Maybe<ResolversTypes['RichText']>, ParentType, ContextType>;
@@ -1584,6 +1647,7 @@ export type SplitTextTopperResolvers<ContextType = QueryContext, ParentType exte
1584
1647
  displayConcept?: Resolver<Maybe<ResolversTypes['Concept']>, ParentType, ContextType>;
1585
1648
  fallbackImage?: Resolver<Maybe<ResolversTypes['Image']>, ParentType, ContextType>;
1586
1649
  followButtonVariant?: Resolver<Maybe<ResolversTypes['FollowButtonVariant']>, ParentType, ContextType>;
1650
+ genreConcept?: Resolver<Maybe<ResolversTypes['Concept']>, ParentType, ContextType>;
1587
1651
  headline?: Resolver<ResolversTypes['String'], ParentType, ContextType>;
1588
1652
  images?: Resolver<ReadonlyArray<ResolversTypes['Image']>, ParentType, ContextType>;
1589
1653
  intro?: Resolver<Maybe<ResolversTypes['RichText']>, ParentType, ContextType>;
@@ -1595,10 +1659,17 @@ export type SplitTextTopperResolvers<ContextType = QueryContext, ParentType exte
1595
1659
 
1596
1660
  export type StructuredContentResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['StructuredContent'] = ResolversParentTypes['StructuredContent']> = ResolversObject<{
1597
1661
  references?: Resolver<ReadonlyArray<ResolversTypes['Reference']>, ParentType, ContextType>;
1662
+ text?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1598
1663
  tree?: Resolver<ResolversTypes['JSON'], ParentType, ContextType>;
1599
1664
  __isTypeOf?: IsTypeOfResolverFn<ParentType, ContextType>;
1600
1665
  }>;
1601
1666
 
1667
+ export type TableOfContentsResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['TableOfContents'] = ResolversParentTypes['TableOfContents']> = ResolversObject<{
1668
+ labelType?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1669
+ sequence?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1670
+ __isTypeOf?: IsTypeOfResolverFn<ParentType, ContextType>;
1671
+ }>;
1672
+
1602
1673
  export type TeaserResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['Teaser'] = ResolversParentTypes['Teaser']> = ResolversObject<{
1603
1674
  firstPublishedDate?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1604
1675
  id?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
@@ -1610,7 +1681,6 @@ export type TeaserResolvers<ContextType = QueryContext, ParentType extends Resol
1610
1681
  metaSuffixText?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1611
1682
  publishedDate?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1612
1683
  standfirst?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1613
- theme?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1614
1684
  title?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1615
1685
  type?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1616
1686
  url?: Resolver<ResolversTypes['String'], ParentType, ContextType, Partial<TeaserUrlArgs>>;
@@ -1635,6 +1705,7 @@ export interface TopperBackgroundColourScalarConfig extends GraphQLScalarTypeCon
1635
1705
  export type TopperWithBrandResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['TopperWithBrand'] = ResolversParentTypes['TopperWithBrand']> = ResolversObject<{
1636
1706
  __resolveType?: TypeResolveFn<'BrandedTopper' | 'DeepLandscapeTopper' | 'DeepPortraitTopper' | 'FullBleedTopper' | 'PodcastTopper' | 'SplitTextTopper', ParentType, ContextType>;
1637
1707
  brandConcept?: Resolver<Maybe<ResolversTypes['Concept']>, ParentType, ContextType>;
1708
+ genreConcept?: Resolver<Maybe<ResolversTypes['Concept']>, ParentType, ContextType>;
1638
1709
  }>;
1639
1710
 
1640
1711
  export type TopperWithHeadshotResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['TopperWithHeadshot'] = ResolversParentTypes['TopperWithHeadshot']> = ResolversObject<{
@@ -1666,6 +1737,7 @@ export type TweetResolvers<ContextType = QueryContext, ParentType extends Resolv
1666
1737
  }>;
1667
1738
 
1668
1739
  export type VideoResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['Video'] = ResolversParentTypes['Video']> = ResolversObject<{
1740
+ accessLevel?: Resolver<Maybe<ResolversTypes['AccessLevel']>, ParentType, ContextType>;
1669
1741
  altStandfirst?: Resolver<Maybe<ResolversTypes['AltStandfirst']>, ParentType, ContextType>;
1670
1742
  altTitle?: Resolver<Maybe<ResolversTypes['AltTitle']>, ParentType, ContextType>;
1671
1743
  annotations?: Resolver<Maybe<ReadonlyArray<Maybe<ResolversTypes['Concept']>>>, ParentType, ContextType>;
@@ -1751,6 +1823,7 @@ export type Resolvers<ContextType = QueryContext> = ResolversObject<{
1751
1823
  ScrollyImage?: ScrollyImageResolvers<ContextType>;
1752
1824
  SplitTextTopper?: SplitTextTopperResolvers<ContextType>;
1753
1825
  StructuredContent?: StructuredContentResolvers<ContextType>;
1826
+ TableOfContents?: TableOfContentsResolvers<ContextType>;
1754
1827
  Teaser?: TeaserResolvers<ContextType>;
1755
1828
  Topper?: TopperResolvers<ContextType>;
1756
1829
  TopperBackgroundColour?: GraphQLScalarType;