@financial-times/cp-content-pipeline-schema 0.7.23 → 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 (59) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/lib/generated/index.d.ts +133 -32
  3. package/lib/model/CapiResponse.d.ts +5 -2
  4. package/lib/model/CapiResponse.js +42 -4
  5. package/lib/model/CapiResponse.js.map +1 -1
  6. package/lib/model/Concept.d.ts +3 -0
  7. package/lib/model/Concept.js +19 -8
  8. package/lib/model/Concept.js.map +1 -1
  9. package/lib/model/RichText.d.ts +1 -0
  10. package/lib/model/RichText.js +3 -0
  11. package/lib/model/RichText.js.map +1 -1
  12. package/lib/model/RichText.test.js +2 -0
  13. package/lib/model/RichText.test.js.map +1 -1
  14. package/lib/model/Topper.d.ts +1 -0
  15. package/lib/model/Topper.js +3 -0
  16. package/lib/model/Topper.js.map +1 -1
  17. package/lib/model/schemas/capi/base-schema.d.ts +18 -0
  18. package/lib/model/schemas/capi/base-schema.js +3 -0
  19. package/lib/model/schemas/capi/base-schema.js.map +1 -1
  20. package/lib/model/schemas/capi/content-package.js +1 -0
  21. package/lib/model/schemas/capi/content-package.js.map +1 -1
  22. package/lib/resolvers/content-tree/extractText.d.ts +2 -0
  23. package/lib/resolvers/content-tree/extractText.js +22 -0
  24. package/lib/resolvers/content-tree/extractText.js.map +1 -0
  25. package/lib/resolvers/content.d.ts +5 -1
  26. package/lib/resolvers/content.js +7 -1
  27. package/lib/resolvers/content.js.map +1 -1
  28. package/lib/resolvers/image.d.ts +1 -0
  29. package/lib/resolvers/image.js +1 -0
  30. package/lib/resolvers/image.js.map +1 -1
  31. package/lib/resolvers/index.d.ts +9 -3
  32. package/lib/resolvers/richText.d.ts +1 -0
  33. package/lib/resolvers/teaser.d.ts +1 -2
  34. package/lib/resolvers/teaser.js +0 -1
  35. package/lib/resolvers/teaser.js.map +1 -1
  36. package/lib/resolvers/topper.d.ts +1 -0
  37. package/lib/resolvers/topper.js +1 -0
  38. package/lib/resolvers/topper.js.map +1 -1
  39. package/package.json +1 -1
  40. package/src/generated/index.ts +90 -17
  41. package/src/model/CapiResponse.ts +46 -4
  42. package/src/model/Concept.ts +23 -10
  43. package/src/model/RichText.test.ts +2 -0
  44. package/src/model/RichText.ts +3 -0
  45. package/src/model/Topper.ts +4 -0
  46. package/src/model/__snapshots__/RichText.test.ts.snap +33 -0
  47. package/src/model/schemas/capi/base-schema.ts +3 -0
  48. package/src/model/schemas/capi/content-package.ts +1 -0
  49. package/src/resolvers/content-tree/extractText.ts +21 -0
  50. package/src/resolvers/content.ts +10 -1
  51. package/src/resolvers/image.ts +1 -1
  52. package/src/resolvers/teaser.ts +0 -1
  53. package/src/resolvers/topper.ts +1 -0
  54. package/tsconfig.tsbuildinfo +1 -1
  55. package/typedefs/content.graphql +21 -7
  56. package/typedefs/image.graphql +10 -0
  57. package/typedefs/richText.graphql +1 -0
  58. package/typedefs/teaser.graphql +0 -1
  59. package/typedefs/topper.graphql +7 -0
@@ -100,6 +100,7 @@ export type AltTitle = {
100
100
  readonly promotionalTitle?: Maybe<Scalars['String']['output']>;
101
101
  };
102
102
  export type Article = Content & {
103
+ readonly accessLevel?: Maybe<Scalars['AccessLevel']['output']>;
103
104
  readonly altStandfirst?: Maybe<AltStandfirst>;
104
105
  readonly altTitle?: Maybe<AltTitle>;
105
106
  readonly annotations?: Maybe<ReadonlyArray<Maybe<Concept>>>;
@@ -107,6 +108,7 @@ export type Article = Content & {
107
108
  readonly bodyXML?: Maybe<Scalars['String']['output']>;
108
109
  readonly byline?: Maybe<StructuredContent>;
109
110
  readonly commentsEnabled?: Maybe<Scalars['Boolean']['output']>;
111
+ readonly containedIn?: Maybe<Content>;
110
112
  readonly design?: Maybe<Design>;
111
113
  readonly firstPublishedDate: Scalars['String']['output'];
112
114
  readonly id: Scalars['String']['output'];
@@ -121,8 +123,10 @@ export type Article = Content & {
121
123
  };
122
124
  export type ArticleUrlArgs = {
123
125
  relative?: InputMaybe<Scalars['Boolean']['input']>;
126
+ vanity?: InputMaybe<Scalars['Boolean']['input']>;
124
127
  };
125
128
  export type Audio = Content & {
129
+ readonly accessLevel?: Maybe<Scalars['AccessLevel']['output']>;
126
130
  readonly altStandfirst?: Maybe<AltStandfirst>;
127
131
  readonly altTitle?: Maybe<AltTitle>;
128
132
  readonly annotations?: Maybe<ReadonlyArray<Maybe<Concept>>>;
@@ -145,6 +149,7 @@ export type Audio = Content & {
145
149
  };
146
150
  export type AudioUrlArgs = {
147
151
  relative?: InputMaybe<Scalars['Boolean']['input']>;
152
+ vanity?: InputMaybe<Scalars['Boolean']['input']>;
148
153
  };
149
154
  export type BasicTopper = Topper & {
150
155
  readonly backgroundBox?: Maybe<Scalars['Boolean']['output']>;
@@ -161,6 +166,7 @@ export type BrandedTopper = Topper & TopperWithBrand & TopperWithTheme & {
161
166
  readonly brandConcept?: Maybe<Concept>;
162
167
  readonly displayConcept?: Maybe<Concept>;
163
168
  readonly followButtonVariant?: Maybe<Scalars['FollowButtonVariant']['output']>;
169
+ readonly genreConcept?: Maybe<Concept>;
164
170
  readonly headline: Scalars['String']['output'];
165
171
  readonly intro?: Maybe<RichText>;
166
172
  readonly isLargeHeadline?: Maybe<Scalars['Boolean']['output']>;
@@ -182,6 +188,7 @@ export type ConceptUrlArgs = {
182
188
  vanity?: InputMaybe<Scalars['Boolean']['input']>;
183
189
  };
184
190
  export type Content = {
191
+ readonly accessLevel?: Maybe<Scalars['AccessLevel']['output']>;
185
192
  readonly altStandfirst?: Maybe<AltStandfirst>;
186
193
  readonly altTitle?: Maybe<AltTitle>;
187
194
  readonly annotations?: Maybe<ReadonlyArray<Maybe<Concept>>>;
@@ -203,8 +210,10 @@ export type Content = {
203
210
  };
204
211
  export type ContentUrlArgs = {
205
212
  relative?: InputMaybe<Scalars['Boolean']['input']>;
213
+ vanity?: InputMaybe<Scalars['Boolean']['input']>;
206
214
  };
207
215
  export type ContentPackage = Content & {
216
+ readonly accessLevel?: Maybe<Scalars['AccessLevel']['output']>;
208
217
  readonly altStandfirst?: Maybe<AltStandfirst>;
209
218
  readonly altTitle?: Maybe<AltTitle>;
210
219
  readonly annotations?: Maybe<ReadonlyArray<Maybe<Concept>>>;
@@ -219,6 +228,7 @@ export type ContentPackage = Content & {
219
228
  readonly mainImage?: Maybe<Image>;
220
229
  readonly publishedDate: Scalars['String']['output'];
221
230
  readonly standfirst?: Maybe<Scalars['String']['output']>;
231
+ readonly tableOfContents?: Maybe<TableOfContents>;
222
232
  readonly teaser?: Maybe<Teaser>;
223
233
  readonly title: Scalars['String']['output'];
224
234
  readonly topper?: Maybe<Topper>;
@@ -227,6 +237,7 @@ export type ContentPackage = Content & {
227
237
  };
228
238
  export type ContentPackageUrlArgs = {
229
239
  relative?: InputMaybe<Scalars['Boolean']['input']>;
240
+ vanity?: InputMaybe<Scalars['Boolean']['input']>;
230
241
  };
231
242
  export type DeepLandscapeTopper = Topper & TopperWithBrand & TopperWithImages & TopperWithTheme & {
232
243
  readonly backgroundBox?: Maybe<Scalars['Boolean']['output']>;
@@ -235,6 +246,7 @@ export type DeepLandscapeTopper = Topper & TopperWithBrand & TopperWithImages &
235
246
  readonly displayConcept?: Maybe<Concept>;
236
247
  readonly fallbackImage?: Maybe<Image>;
237
248
  readonly followButtonVariant?: Maybe<Scalars['FollowButtonVariant']['output']>;
249
+ readonly genreConcept?: Maybe<Concept>;
238
250
  readonly headline: Scalars['String']['output'];
239
251
  readonly images: ReadonlyArray<Image>;
240
252
  readonly intro?: Maybe<RichText>;
@@ -249,6 +261,7 @@ export type DeepPortraitTopper = Topper & TopperWithBrand & TopperWithImages & T
249
261
  readonly displayConcept?: Maybe<Concept>;
250
262
  readonly fallbackImage?: Maybe<Image>;
251
263
  readonly followButtonVariant?: Maybe<Scalars['FollowButtonVariant']['output']>;
264
+ readonly genreConcept?: Maybe<Concept>;
252
265
  readonly headline: Scalars['String']['output'];
253
266
  readonly images: ReadonlyArray<Image>;
254
267
  readonly intro?: Maybe<RichText>;
@@ -276,6 +289,7 @@ export type FullBleedTopper = Topper & TopperWithBrand & TopperWithImages & Topp
276
289
  readonly displayConcept?: Maybe<Concept>;
277
290
  readonly fallbackImage?: Maybe<Image>;
278
291
  readonly followButtonVariant?: Maybe<Scalars['FollowButtonVariant']['output']>;
292
+ readonly genreConcept?: Maybe<Concept>;
279
293
  readonly headline: Scalars['String']['output'];
280
294
  readonly images: ReadonlyArray<Image>;
281
295
  readonly intro?: Maybe<RichText>;
@@ -284,6 +298,7 @@ export type FullBleedTopper = Topper & TopperWithBrand & TopperWithImages & Topp
284
298
  readonly textShadow?: Maybe<Scalars['Boolean']['output']>;
285
299
  };
286
300
  export type Image = {
301
+ readonly altText?: Maybe<Scalars['String']['output']>;
287
302
  readonly caption?: Maybe<Scalars['String']['output']>;
288
303
  readonly credit?: Maybe<Scalars['String']['output']>;
289
304
  readonly format: Scalars['ImageFormat']['output'];
@@ -299,6 +314,7 @@ export type ImageSourceSetArgs = {
299
314
  width?: InputMaybe<Scalars['Int']['input']>;
300
315
  };
301
316
  export type ImageDesktop = Image & {
317
+ readonly altText?: Maybe<Scalars['String']['output']>;
302
318
  readonly caption?: Maybe<Scalars['String']['output']>;
303
319
  readonly credit?: Maybe<Scalars['String']['output']>;
304
320
  readonly format: Scalars['ImageFormat']['output'];
@@ -314,6 +330,7 @@ export type ImageDesktopSourceSetArgs = {
314
330
  width?: InputMaybe<Scalars['Int']['input']>;
315
331
  };
316
332
  export type ImageLandscape = Image & {
333
+ readonly altText?: Maybe<Scalars['String']['output']>;
317
334
  readonly caption?: Maybe<Scalars['String']['output']>;
318
335
  readonly credit?: Maybe<Scalars['String']['output']>;
319
336
  readonly format: Scalars['ImageFormat']['output'];
@@ -329,6 +346,7 @@ export type ImageLandscapeSourceSetArgs = {
329
346
  width?: InputMaybe<Scalars['Int']['input']>;
330
347
  };
331
348
  export type ImageMobile = Image & {
349
+ readonly altText?: Maybe<Scalars['String']['output']>;
332
350
  readonly caption?: Maybe<Scalars['String']['output']>;
333
351
  readonly credit?: Maybe<Scalars['String']['output']>;
334
352
  readonly format: Scalars['ImageFormat']['output'];
@@ -344,6 +362,7 @@ export type ImageMobileSourceSetArgs = {
344
362
  width?: InputMaybe<Scalars['Int']['input']>;
345
363
  };
346
364
  export type ImagePortrait = Image & {
365
+ readonly altText?: Maybe<Scalars['String']['output']>;
347
366
  readonly caption?: Maybe<Scalars['String']['output']>;
348
367
  readonly credit?: Maybe<Scalars['String']['output']>;
349
368
  readonly format: Scalars['ImageFormat']['output'];
@@ -368,6 +387,7 @@ export type ImageSource = {
368
387
  readonly width?: Maybe<Scalars['Int']['output']>;
369
388
  };
370
389
  export type ImageSquare = Image & {
390
+ readonly altText?: Maybe<Scalars['String']['output']>;
371
391
  readonly caption?: Maybe<Scalars['String']['output']>;
372
392
  readonly credit?: Maybe<Scalars['String']['output']>;
373
393
  readonly format: Scalars['ImageFormat']['output'];
@@ -383,6 +403,7 @@ export type ImageSquareSourceSetArgs = {
383
403
  width?: InputMaybe<Scalars['Int']['input']>;
384
404
  };
385
405
  export type ImageSquareFtEdit = Image & {
406
+ readonly altText?: Maybe<Scalars['String']['output']>;
386
407
  readonly caption?: Maybe<Scalars['String']['output']>;
387
408
  readonly credit?: Maybe<Scalars['String']['output']>;
388
409
  readonly format: Scalars['ImageFormat']['output'];
@@ -398,6 +419,7 @@ export type ImageSquareFtEditSourceSetArgs = {
398
419
  width?: InputMaybe<Scalars['Int']['input']>;
399
420
  };
400
421
  export type ImageStandard = Image & {
422
+ readonly altText?: Maybe<Scalars['String']['output']>;
401
423
  readonly caption?: Maybe<Scalars['String']['output']>;
402
424
  readonly credit?: Maybe<Scalars['String']['output']>;
403
425
  readonly format: Scalars['ImageFormat']['output'];
@@ -413,6 +435,7 @@ export type ImageStandardSourceSetArgs = {
413
435
  width?: InputMaybe<Scalars['Int']['input']>;
414
436
  };
415
437
  export type ImageStandardInline = Image & {
438
+ readonly altText?: Maybe<Scalars['String']['output']>;
416
439
  readonly caption?: Maybe<Scalars['String']['output']>;
417
440
  readonly credit?: Maybe<Scalars['String']['output']>;
418
441
  readonly format: Scalars['ImageFormat']['output'];
@@ -428,6 +451,7 @@ export type ImageStandardInlineSourceSetArgs = {
428
451
  width?: InputMaybe<Scalars['Int']['input']>;
429
452
  };
430
453
  export type ImageWide = Image & {
454
+ readonly altText?: Maybe<Scalars['String']['output']>;
431
455
  readonly caption?: Maybe<Scalars['String']['output']>;
432
456
  readonly credit?: Maybe<Scalars['String']['output']>;
433
457
  readonly format: Scalars['ImageFormat']['output'];
@@ -456,6 +480,7 @@ export type LayoutImage = Reference & {
456
480
  readonly type: Scalars['String']['output'];
457
481
  };
458
482
  export type LiveBlogPackage = Content & {
483
+ readonly accessLevel?: Maybe<Scalars['AccessLevel']['output']>;
459
484
  readonly altStandfirst?: Maybe<AltStandfirst>;
460
485
  readonly altTitle?: Maybe<AltTitle>;
461
486
  readonly annotations?: Maybe<ReadonlyArray<Maybe<Concept>>>;
@@ -479,8 +504,10 @@ export type LiveBlogPackage = Content & {
479
504
  };
480
505
  export type LiveBlogPackageUrlArgs = {
481
506
  relative?: InputMaybe<Scalars['Boolean']['input']>;
507
+ vanity?: InputMaybe<Scalars['Boolean']['input']>;
482
508
  };
483
509
  export type LiveBlogPost = Content & {
510
+ readonly accessLevel?: Maybe<Scalars['AccessLevel']['output']>;
484
511
  readonly altStandfirst?: Maybe<AltStandfirst>;
485
512
  readonly altTitle?: Maybe<AltTitle>;
486
513
  readonly annotations?: Maybe<ReadonlyArray<Maybe<Concept>>>;
@@ -502,6 +529,7 @@ export type LiveBlogPost = Content & {
502
529
  };
503
530
  export type LiveBlogPostUrlArgs = {
504
531
  relative?: InputMaybe<Scalars['Boolean']['input']>;
532
+ vanity?: InputMaybe<Scalars['Boolean']['input']>;
505
533
  };
506
534
  export type MainImage = Reference & {
507
535
  readonly picture?: Maybe<Picture>;
@@ -579,6 +607,7 @@ export type PodcastTopper = Topper & TopperWithBrand & TopperWithHeadshot & Topp
579
607
  readonly columnist?: Maybe<Concept>;
580
608
  readonly displayConcept?: Maybe<Concept>;
581
609
  readonly followButtonVariant?: Maybe<Scalars['FollowButtonVariant']['output']>;
610
+ readonly genreConcept?: Maybe<Concept>;
582
611
  readonly headline: Scalars['String']['output'];
583
612
  readonly headshot?: Maybe<Scalars['String']['output']>;
584
613
  readonly intro?: Maybe<RichText>;
@@ -629,6 +658,7 @@ export type SplitTextTopper = Topper & TopperWithBrand & TopperWithImages & Topp
629
658
  readonly displayConcept?: Maybe<Concept>;
630
659
  readonly fallbackImage?: Maybe<Image>;
631
660
  readonly followButtonVariant?: Maybe<Scalars['FollowButtonVariant']['output']>;
661
+ readonly genreConcept?: Maybe<Concept>;
632
662
  readonly headline: Scalars['String']['output'];
633
663
  readonly images: ReadonlyArray<Image>;
634
664
  readonly intro?: Maybe<RichText>;
@@ -638,8 +668,13 @@ export type SplitTextTopper = Topper & TopperWithBrand & TopperWithImages & Topp
638
668
  };
639
669
  export type StructuredContent = {
640
670
  readonly references: ReadonlyArray<Reference>;
671
+ readonly text?: Maybe<Scalars['String']['output']>;
641
672
  readonly tree: Scalars['JSON']['output'];
642
673
  };
674
+ export type TableOfContents = {
675
+ readonly labelType?: Maybe<Scalars['String']['output']>;
676
+ readonly sequence?: Maybe<Scalars['String']['output']>;
677
+ };
643
678
  export type Teaser = {
644
679
  readonly firstPublishedDate?: Maybe<Scalars['String']['output']>;
645
680
  readonly id?: Maybe<Scalars['String']['output']>;
@@ -651,7 +686,6 @@ export type Teaser = {
651
686
  readonly metaSuffixText?: Maybe<Scalars['String']['output']>;
652
687
  readonly publishedDate?: Maybe<Scalars['String']['output']>;
653
688
  readonly standfirst?: Maybe<Scalars['String']['output']>;
654
- readonly theme?: Maybe<Scalars['String']['output']>;
655
689
  readonly title?: Maybe<Scalars['String']['output']>;
656
690
  readonly type?: Maybe<Scalars['String']['output']>;
657
691
  readonly url: Scalars['String']['output'];
@@ -670,6 +704,7 @@ export type Topper = {
670
704
  };
671
705
  export type TopperWithBrand = {
672
706
  readonly brandConcept?: Maybe<Concept>;
707
+ readonly genreConcept?: Maybe<Concept>;
673
708
  };
674
709
  export type TopperWithHeadshot = {
675
710
  readonly headshot?: Maybe<Scalars['String']['output']>;
@@ -694,6 +729,7 @@ export type Tweet = Reference & {
694
729
  readonly type: Scalars['String']['output'];
695
730
  };
696
731
  export type Video = Content & {
732
+ readonly accessLevel?: Maybe<Scalars['AccessLevel']['output']>;
697
733
  readonly altStandfirst?: Maybe<AltStandfirst>;
698
734
  readonly altTitle?: Maybe<AltTitle>;
699
735
  readonly annotations?: Maybe<ReadonlyArray<Maybe<Concept>>>;
@@ -715,6 +751,7 @@ export type Video = Content & {
715
751
  };
716
752
  export type VideoUrlArgs = {
717
753
  relative?: InputMaybe<Scalars['Boolean']['input']>;
754
+ vanity?: InputMaybe<Scalars['Boolean']['input']>;
718
755
  };
719
756
  export type VideoReference = Reference & {
720
757
  readonly id: Scalars['String']['output'];
@@ -767,123 +804,143 @@ export type ResolversInterfaceTypes<RefType extends Record<string, unknown>> = R
767
804
  Topper: (Omit<BasicTopper, 'displayConcept' | 'intro'> & {
768
805
  displayConcept?: Maybe<RefType['Concept']>;
769
806
  intro?: Maybe<RefType['RichText']>;
770
- }) | (Omit<BrandedTopper, 'brandConcept' | 'displayConcept' | 'intro'> & {
807
+ }) | (Omit<BrandedTopper, 'brandConcept' | 'displayConcept' | 'genreConcept' | 'intro'> & {
771
808
  brandConcept?: Maybe<RefType['Concept']>;
772
809
  displayConcept?: Maybe<RefType['Concept']>;
810
+ genreConcept?: Maybe<RefType['Concept']>;
773
811
  intro?: Maybe<RefType['RichText']>;
774
- }) | (Omit<DeepLandscapeTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'images' | 'intro'> & {
812
+ }) | (Omit<DeepLandscapeTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'genreConcept' | 'images' | 'intro'> & {
775
813
  brandConcept?: Maybe<RefType['Concept']>;
776
814
  displayConcept?: Maybe<RefType['Concept']>;
777
815
  fallbackImage?: Maybe<RefType['Image']>;
816
+ genreConcept?: Maybe<RefType['Concept']>;
778
817
  images: ReadonlyArray<RefType['Image']>;
779
818
  intro?: Maybe<RefType['RichText']>;
780
- }) | (Omit<DeepPortraitTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'images' | 'intro'> & {
819
+ }) | (Omit<DeepPortraitTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'genreConcept' | 'images' | 'intro'> & {
781
820
  brandConcept?: Maybe<RefType['Concept']>;
782
821
  displayConcept?: Maybe<RefType['Concept']>;
783
822
  fallbackImage?: Maybe<RefType['Image']>;
823
+ genreConcept?: Maybe<RefType['Concept']>;
784
824
  images: ReadonlyArray<RefType['Image']>;
785
825
  intro?: Maybe<RefType['RichText']>;
786
- }) | (Omit<FullBleedTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'images' | 'intro'> & {
826
+ }) | (Omit<FullBleedTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'genreConcept' | 'images' | 'intro'> & {
787
827
  brandConcept?: Maybe<RefType['Concept']>;
788
828
  displayConcept?: Maybe<RefType['Concept']>;
789
829
  fallbackImage?: Maybe<RefType['Image']>;
830
+ genreConcept?: Maybe<RefType['Concept']>;
790
831
  images: ReadonlyArray<RefType['Image']>;
791
832
  intro?: Maybe<RefType['RichText']>;
792
- }) | (TopperModel) | (TopperModel) | (Omit<SplitTextTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'images' | 'intro'> & {
833
+ }) | (TopperModel) | (TopperModel) | (Omit<SplitTextTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'genreConcept' | 'images' | 'intro'> & {
793
834
  brandConcept?: Maybe<RefType['Concept']>;
794
835
  displayConcept?: Maybe<RefType['Concept']>;
795
836
  fallbackImage?: Maybe<RefType['Image']>;
837
+ genreConcept?: Maybe<RefType['Concept']>;
796
838
  images: ReadonlyArray<RefType['Image']>;
797
839
  intro?: Maybe<RefType['RichText']>;
798
840
  });
799
- TopperWithBrand: (Omit<BrandedTopper, 'brandConcept' | 'displayConcept' | 'intro'> & {
841
+ TopperWithBrand: (Omit<BrandedTopper, 'brandConcept' | 'displayConcept' | 'genreConcept' | 'intro'> & {
800
842
  brandConcept?: Maybe<RefType['Concept']>;
801
843
  displayConcept?: Maybe<RefType['Concept']>;
844
+ genreConcept?: Maybe<RefType['Concept']>;
802
845
  intro?: Maybe<RefType['RichText']>;
803
- }) | (Omit<DeepLandscapeTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'images' | 'intro'> & {
846
+ }) | (Omit<DeepLandscapeTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'genreConcept' | 'images' | 'intro'> & {
804
847
  brandConcept?: Maybe<RefType['Concept']>;
805
848
  displayConcept?: Maybe<RefType['Concept']>;
806
849
  fallbackImage?: Maybe<RefType['Image']>;
850
+ genreConcept?: Maybe<RefType['Concept']>;
807
851
  images: ReadonlyArray<RefType['Image']>;
808
852
  intro?: Maybe<RefType['RichText']>;
809
- }) | (Omit<DeepPortraitTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'images' | 'intro'> & {
853
+ }) | (Omit<DeepPortraitTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'genreConcept' | 'images' | 'intro'> & {
810
854
  brandConcept?: Maybe<RefType['Concept']>;
811
855
  displayConcept?: Maybe<RefType['Concept']>;
812
856
  fallbackImage?: Maybe<RefType['Image']>;
857
+ genreConcept?: Maybe<RefType['Concept']>;
813
858
  images: ReadonlyArray<RefType['Image']>;
814
859
  intro?: Maybe<RefType['RichText']>;
815
- }) | (Omit<FullBleedTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'images' | 'intro'> & {
860
+ }) | (Omit<FullBleedTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'genreConcept' | 'images' | 'intro'> & {
816
861
  brandConcept?: Maybe<RefType['Concept']>;
817
862
  displayConcept?: Maybe<RefType['Concept']>;
818
863
  fallbackImage?: Maybe<RefType['Image']>;
864
+ genreConcept?: Maybe<RefType['Concept']>;
819
865
  images: ReadonlyArray<RefType['Image']>;
820
866
  intro?: Maybe<RefType['RichText']>;
821
- }) | (TopperModel) | (Omit<SplitTextTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'images' | 'intro'> & {
867
+ }) | (TopperModel) | (Omit<SplitTextTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'genreConcept' | 'images' | 'intro'> & {
822
868
  brandConcept?: Maybe<RefType['Concept']>;
823
869
  displayConcept?: Maybe<RefType['Concept']>;
824
870
  fallbackImage?: Maybe<RefType['Image']>;
871
+ genreConcept?: Maybe<RefType['Concept']>;
825
872
  images: ReadonlyArray<RefType['Image']>;
826
873
  intro?: Maybe<RefType['RichText']>;
827
874
  });
828
875
  TopperWithHeadshot: (TopperModel) | (TopperModel);
829
- TopperWithImages: (Omit<DeepLandscapeTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'images' | 'intro'> & {
876
+ TopperWithImages: (Omit<DeepLandscapeTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'genreConcept' | 'images' | 'intro'> & {
830
877
  brandConcept?: Maybe<RefType['Concept']>;
831
878
  displayConcept?: Maybe<RefType['Concept']>;
832
879
  fallbackImage?: Maybe<RefType['Image']>;
880
+ genreConcept?: Maybe<RefType['Concept']>;
833
881
  images: ReadonlyArray<RefType['Image']>;
834
882
  intro?: Maybe<RefType['RichText']>;
835
- }) | (Omit<DeepPortraitTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'images' | 'intro'> & {
883
+ }) | (Omit<DeepPortraitTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'genreConcept' | 'images' | 'intro'> & {
836
884
  brandConcept?: Maybe<RefType['Concept']>;
837
885
  displayConcept?: Maybe<RefType['Concept']>;
838
886
  fallbackImage?: Maybe<RefType['Image']>;
887
+ genreConcept?: Maybe<RefType['Concept']>;
839
888
  images: ReadonlyArray<RefType['Image']>;
840
889
  intro?: Maybe<RefType['RichText']>;
841
- }) | (Omit<FullBleedTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'images' | 'intro'> & {
890
+ }) | (Omit<FullBleedTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'genreConcept' | 'images' | 'intro'> & {
842
891
  brandConcept?: Maybe<RefType['Concept']>;
843
892
  displayConcept?: Maybe<RefType['Concept']>;
844
893
  fallbackImage?: Maybe<RefType['Image']>;
894
+ genreConcept?: Maybe<RefType['Concept']>;
845
895
  images: ReadonlyArray<RefType['Image']>;
846
896
  intro?: Maybe<RefType['RichText']>;
847
- }) | (Omit<SplitTextTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'images' | 'intro'> & {
897
+ }) | (Omit<SplitTextTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'genreConcept' | 'images' | 'intro'> & {
848
898
  brandConcept?: Maybe<RefType['Concept']>;
849
899
  displayConcept?: Maybe<RefType['Concept']>;
850
900
  fallbackImage?: Maybe<RefType['Image']>;
901
+ genreConcept?: Maybe<RefType['Concept']>;
851
902
  images: ReadonlyArray<RefType['Image']>;
852
903
  intro?: Maybe<RefType['RichText']>;
853
904
  });
854
- TopperWithPackage: (Omit<SplitTextTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'images' | 'intro'> & {
905
+ TopperWithPackage: (Omit<SplitTextTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'genreConcept' | 'images' | 'intro'> & {
855
906
  brandConcept?: Maybe<RefType['Concept']>;
856
907
  displayConcept?: Maybe<RefType['Concept']>;
857
908
  fallbackImage?: Maybe<RefType['Image']>;
909
+ genreConcept?: Maybe<RefType['Concept']>;
858
910
  images: ReadonlyArray<RefType['Image']>;
859
911
  intro?: Maybe<RefType['RichText']>;
860
912
  });
861
- TopperWithTheme: (Omit<BrandedTopper, 'brandConcept' | 'displayConcept' | 'intro'> & {
913
+ TopperWithTheme: (Omit<BrandedTopper, 'brandConcept' | 'displayConcept' | 'genreConcept' | 'intro'> & {
862
914
  brandConcept?: Maybe<RefType['Concept']>;
863
915
  displayConcept?: Maybe<RefType['Concept']>;
916
+ genreConcept?: Maybe<RefType['Concept']>;
864
917
  intro?: Maybe<RefType['RichText']>;
865
- }) | (Omit<DeepLandscapeTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'images' | 'intro'> & {
918
+ }) | (Omit<DeepLandscapeTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'genreConcept' | 'images' | 'intro'> & {
866
919
  brandConcept?: Maybe<RefType['Concept']>;
867
920
  displayConcept?: Maybe<RefType['Concept']>;
868
921
  fallbackImage?: Maybe<RefType['Image']>;
922
+ genreConcept?: Maybe<RefType['Concept']>;
869
923
  images: ReadonlyArray<RefType['Image']>;
870
924
  intro?: Maybe<RefType['RichText']>;
871
- }) | (Omit<DeepPortraitTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'images' | 'intro'> & {
925
+ }) | (Omit<DeepPortraitTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'genreConcept' | 'images' | 'intro'> & {
872
926
  brandConcept?: Maybe<RefType['Concept']>;
873
927
  displayConcept?: Maybe<RefType['Concept']>;
874
928
  fallbackImage?: Maybe<RefType['Image']>;
929
+ genreConcept?: Maybe<RefType['Concept']>;
875
930
  images: ReadonlyArray<RefType['Image']>;
876
931
  intro?: Maybe<RefType['RichText']>;
877
- }) | (Omit<FullBleedTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'images' | 'intro'> & {
932
+ }) | (Omit<FullBleedTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'genreConcept' | 'images' | 'intro'> & {
878
933
  brandConcept?: Maybe<RefType['Concept']>;
879
934
  displayConcept?: Maybe<RefType['Concept']>;
880
935
  fallbackImage?: Maybe<RefType['Image']>;
936
+ genreConcept?: Maybe<RefType['Concept']>;
881
937
  images: ReadonlyArray<RefType['Image']>;
882
938
  intro?: Maybe<RefType['RichText']>;
883
- }) | (TopperModel) | (TopperModel) | (Omit<SplitTextTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'images' | 'intro'> & {
939
+ }) | (TopperModel) | (TopperModel) | (Omit<SplitTextTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'genreConcept' | 'images' | 'intro'> & {
884
940
  brandConcept?: Maybe<RefType['Concept']>;
885
941
  displayConcept?: Maybe<RefType['Concept']>;
886
942
  fallbackImage?: Maybe<RefType['Image']>;
943
+ genreConcept?: Maybe<RefType['Concept']>;
887
944
  images: ReadonlyArray<RefType['Image']>;
888
945
  intro?: Maybe<RefType['RichText']>;
889
946
  });
@@ -900,26 +957,29 @@ export type ResolversTypes = ResolversObject<{
900
957
  intro?: Maybe<ResolversTypes['RichText']>;
901
958
  }>;
902
959
  Boolean: ResolverTypeWrapper<Scalars['Boolean']['output']>;
903
- BrandedTopper: ResolverTypeWrapper<Omit<BrandedTopper, 'brandConcept' | 'displayConcept' | 'intro'> & {
960
+ BrandedTopper: ResolverTypeWrapper<Omit<BrandedTopper, 'brandConcept' | 'displayConcept' | 'genreConcept' | 'intro'> & {
904
961
  brandConcept?: Maybe<ResolversTypes['Concept']>;
905
962
  displayConcept?: Maybe<ResolversTypes['Concept']>;
963
+ genreConcept?: Maybe<ResolversTypes['Concept']>;
906
964
  intro?: Maybe<ResolversTypes['RichText']>;
907
965
  }>;
908
966
  Concept: ResolverTypeWrapper<ConceptModel>;
909
967
  Content: ResolverTypeWrapper<ResolversInterfaceTypes<ResolversTypes>['Content']>;
910
968
  ContentPackage: ResolverTypeWrapper<CapiResponse>;
911
969
  ContentType: ResolverTypeWrapper<Scalars['ContentType']['output']>;
912
- DeepLandscapeTopper: ResolverTypeWrapper<Omit<DeepLandscapeTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'images' | 'intro'> & {
970
+ DeepLandscapeTopper: ResolverTypeWrapper<Omit<DeepLandscapeTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'genreConcept' | 'images' | 'intro'> & {
913
971
  brandConcept?: Maybe<ResolversTypes['Concept']>;
914
972
  displayConcept?: Maybe<ResolversTypes['Concept']>;
915
973
  fallbackImage?: Maybe<ResolversTypes['Image']>;
974
+ genreConcept?: Maybe<ResolversTypes['Concept']>;
916
975
  images: ReadonlyArray<ResolversTypes['Image']>;
917
976
  intro?: Maybe<ResolversTypes['RichText']>;
918
977
  }>;
919
- DeepPortraitTopper: ResolverTypeWrapper<Omit<DeepPortraitTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'images' | 'intro'> & {
978
+ DeepPortraitTopper: ResolverTypeWrapper<Omit<DeepPortraitTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'genreConcept' | 'images' | 'intro'> & {
920
979
  brandConcept?: Maybe<ResolversTypes['Concept']>;
921
980
  displayConcept?: Maybe<ResolversTypes['Concept']>;
922
981
  fallbackImage?: Maybe<ResolversTypes['Image']>;
982
+ genreConcept?: Maybe<ResolversTypes['Concept']>;
923
983
  images: ReadonlyArray<ResolversTypes['Image']>;
924
984
  intro?: Maybe<ResolversTypes['RichText']>;
925
985
  }>;
@@ -927,10 +987,11 @@ export type ResolversTypes = ResolversObject<{
927
987
  Flourish: ResolverTypeWrapper<ReferenceWithCAPIData<ContentTree.Flourish>>;
928
988
  FlourishFallback: ResolverTypeWrapper<FlourishFallback>;
929
989
  FollowButtonVariant: ResolverTypeWrapper<Scalars['FollowButtonVariant']['output']>;
930
- FullBleedTopper: ResolverTypeWrapper<Omit<FullBleedTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'images' | 'intro'> & {
990
+ FullBleedTopper: ResolverTypeWrapper<Omit<FullBleedTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'genreConcept' | 'images' | 'intro'> & {
931
991
  brandConcept?: Maybe<ResolversTypes['Concept']>;
932
992
  displayConcept?: Maybe<ResolversTypes['Concept']>;
933
993
  fallbackImage?: Maybe<ResolversTypes['Image']>;
994
+ genreConcept?: Maybe<ResolversTypes['Concept']>;
934
995
  images: ReadonlyArray<ResolversTypes['Image']>;
935
996
  intro?: Maybe<ResolversTypes['RichText']>;
936
997
  }>;
@@ -981,10 +1042,11 @@ export type ResolversTypes = ResolversObject<{
981
1042
  RichText: ResolverTypeWrapper<RichTextModel>;
982
1043
  RichTextSource: ResolverTypeWrapper<Scalars['RichTextSource']['output']>;
983
1044
  ScrollyImage: ResolverTypeWrapper<ReferenceWithCAPIData<ContentTree.ScrollyImage>>;
984
- SplitTextTopper: ResolverTypeWrapper<Omit<SplitTextTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'images' | 'intro'> & {
1045
+ SplitTextTopper: ResolverTypeWrapper<Omit<SplitTextTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'genreConcept' | 'images' | 'intro'> & {
985
1046
  brandConcept?: Maybe<ResolversTypes['Concept']>;
986
1047
  displayConcept?: Maybe<ResolversTypes['Concept']>;
987
1048
  fallbackImage?: Maybe<ResolversTypes['Image']>;
1049
+ genreConcept?: Maybe<ResolversTypes['Concept']>;
988
1050
  images: ReadonlyArray<ResolversTypes['Image']>;
989
1051
  intro?: Maybe<ResolversTypes['RichText']>;
990
1052
  }>;
@@ -992,6 +1054,7 @@ export type ResolversTypes = ResolversObject<{
992
1054
  StructuredContent: ResolverTypeWrapper<Omit<StructuredContent, 'references'> & {
993
1055
  references: ReadonlyArray<ResolversTypes['Reference']>;
994
1056
  }>;
1057
+ TableOfContents: ResolverTypeWrapper<TableOfContents>;
995
1058
  Teaser: ResolverTypeWrapper<CapiResponse>;
996
1059
  Topper: ResolverTypeWrapper<TopperModel>;
997
1060
  TopperBackgroundColour: ResolverTypeWrapper<Scalars['TopperBackgroundColour']['output']>;
@@ -1016,26 +1079,29 @@ export type ResolversParentTypes = ResolversObject<{
1016
1079
  intro?: Maybe<ResolversParentTypes['RichText']>;
1017
1080
  };
1018
1081
  Boolean: Scalars['Boolean']['output'];
1019
- BrandedTopper: Omit<BrandedTopper, 'brandConcept' | 'displayConcept' | 'intro'> & {
1082
+ BrandedTopper: Omit<BrandedTopper, 'brandConcept' | 'displayConcept' | 'genreConcept' | 'intro'> & {
1020
1083
  brandConcept?: Maybe<ResolversParentTypes['Concept']>;
1021
1084
  displayConcept?: Maybe<ResolversParentTypes['Concept']>;
1085
+ genreConcept?: Maybe<ResolversParentTypes['Concept']>;
1022
1086
  intro?: Maybe<ResolversParentTypes['RichText']>;
1023
1087
  };
1024
1088
  Concept: ConceptModel;
1025
1089
  Content: ResolversInterfaceTypes<ResolversParentTypes>['Content'];
1026
1090
  ContentPackage: CapiResponse;
1027
1091
  ContentType: Scalars['ContentType']['output'];
1028
- DeepLandscapeTopper: Omit<DeepLandscapeTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'images' | 'intro'> & {
1092
+ DeepLandscapeTopper: Omit<DeepLandscapeTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'genreConcept' | 'images' | 'intro'> & {
1029
1093
  brandConcept?: Maybe<ResolversParentTypes['Concept']>;
1030
1094
  displayConcept?: Maybe<ResolversParentTypes['Concept']>;
1031
1095
  fallbackImage?: Maybe<ResolversParentTypes['Image']>;
1096
+ genreConcept?: Maybe<ResolversParentTypes['Concept']>;
1032
1097
  images: ReadonlyArray<ResolversParentTypes['Image']>;
1033
1098
  intro?: Maybe<ResolversParentTypes['RichText']>;
1034
1099
  };
1035
- DeepPortraitTopper: Omit<DeepPortraitTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'images' | 'intro'> & {
1100
+ DeepPortraitTopper: Omit<DeepPortraitTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'genreConcept' | 'images' | 'intro'> & {
1036
1101
  brandConcept?: Maybe<ResolversParentTypes['Concept']>;
1037
1102
  displayConcept?: Maybe<ResolversParentTypes['Concept']>;
1038
1103
  fallbackImage?: Maybe<ResolversParentTypes['Image']>;
1104
+ genreConcept?: Maybe<ResolversParentTypes['Concept']>;
1039
1105
  images: ReadonlyArray<ResolversParentTypes['Image']>;
1040
1106
  intro?: Maybe<ResolversParentTypes['RichText']>;
1041
1107
  };
@@ -1043,10 +1109,11 @@ export type ResolversParentTypes = ResolversObject<{
1043
1109
  Flourish: ReferenceWithCAPIData<ContentTree.Flourish>;
1044
1110
  FlourishFallback: FlourishFallback;
1045
1111
  FollowButtonVariant: Scalars['FollowButtonVariant']['output'];
1046
- FullBleedTopper: Omit<FullBleedTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'images' | 'intro'> & {
1112
+ FullBleedTopper: Omit<FullBleedTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'genreConcept' | 'images' | 'intro'> & {
1047
1113
  brandConcept?: Maybe<ResolversParentTypes['Concept']>;
1048
1114
  displayConcept?: Maybe<ResolversParentTypes['Concept']>;
1049
1115
  fallbackImage?: Maybe<ResolversParentTypes['Image']>;
1116
+ genreConcept?: Maybe<ResolversParentTypes['Concept']>;
1050
1117
  images: ReadonlyArray<ResolversParentTypes['Image']>;
1051
1118
  intro?: Maybe<ResolversParentTypes['RichText']>;
1052
1119
  };
@@ -1097,10 +1164,11 @@ export type ResolversParentTypes = ResolversObject<{
1097
1164
  RichText: RichTextModel;
1098
1165
  RichTextSource: Scalars['RichTextSource']['output'];
1099
1166
  ScrollyImage: ReferenceWithCAPIData<ContentTree.ScrollyImage>;
1100
- SplitTextTopper: Omit<SplitTextTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'images' | 'intro'> & {
1167
+ SplitTextTopper: Omit<SplitTextTopper, 'brandConcept' | 'displayConcept' | 'fallbackImage' | 'genreConcept' | 'images' | 'intro'> & {
1101
1168
  brandConcept?: Maybe<ResolversParentTypes['Concept']>;
1102
1169
  displayConcept?: Maybe<ResolversParentTypes['Concept']>;
1103
1170
  fallbackImage?: Maybe<ResolversParentTypes['Image']>;
1171
+ genreConcept?: Maybe<ResolversParentTypes['Concept']>;
1104
1172
  images: ReadonlyArray<ResolversParentTypes['Image']>;
1105
1173
  intro?: Maybe<ResolversParentTypes['RichText']>;
1106
1174
  };
@@ -1108,6 +1176,7 @@ export type ResolversParentTypes = ResolversObject<{
1108
1176
  StructuredContent: Omit<StructuredContent, 'references'> & {
1109
1177
  references: ReadonlyArray<ResolversParentTypes['Reference']>;
1110
1178
  };
1179
+ TableOfContents: TableOfContents;
1111
1180
  Teaser: CapiResponse;
1112
1181
  Topper: TopperModel;
1113
1182
  TopperBackgroundColour: Scalars['TopperBackgroundColour']['output'];
@@ -1132,6 +1201,7 @@ export type AltTitleResolvers<ContextType = QueryContext, ParentType extends Res
1132
1201
  __isTypeOf?: IsTypeOfResolverFn<ParentType, ContextType>;
1133
1202
  }>;
1134
1203
  export type ArticleResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['Article'] = ResolversParentTypes['Article']> = ResolversObject<{
1204
+ accessLevel?: Resolver<Maybe<ResolversTypes['AccessLevel']>, ParentType, ContextType>;
1135
1205
  altStandfirst?: Resolver<Maybe<ResolversTypes['AltStandfirst']>, ParentType, ContextType>;
1136
1206
  altTitle?: Resolver<Maybe<ResolversTypes['AltTitle']>, ParentType, ContextType>;
1137
1207
  annotations?: Resolver<Maybe<ReadonlyArray<Maybe<ResolversTypes['Concept']>>>, ParentType, ContextType>;
@@ -1139,6 +1209,7 @@ export type ArticleResolvers<ContextType = QueryContext, ParentType extends Reso
1139
1209
  bodyXML?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1140
1210
  byline?: Resolver<Maybe<ResolversTypes['StructuredContent']>, ParentType, ContextType>;
1141
1211
  commentsEnabled?: Resolver<Maybe<ResolversTypes['Boolean']>, ParentType, ContextType>;
1212
+ containedIn?: Resolver<Maybe<ResolversTypes['Content']>, ParentType, ContextType>;
1142
1213
  design?: Resolver<Maybe<ResolversTypes['Design']>, ParentType, ContextType>;
1143
1214
  firstPublishedDate?: Resolver<ResolversTypes['String'], ParentType, ContextType>;
1144
1215
  id?: Resolver<ResolversTypes['String'], ParentType, ContextType>;
@@ -1153,6 +1224,7 @@ export type ArticleResolvers<ContextType = QueryContext, ParentType extends Reso
1153
1224
  __isTypeOf?: IsTypeOfResolverFn<ParentType, ContextType>;
1154
1225
  }>;
1155
1226
  export type AudioResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['Audio'] = ResolversParentTypes['Audio']> = ResolversObject<{
1227
+ accessLevel?: Resolver<Maybe<ResolversTypes['AccessLevel']>, ParentType, ContextType>;
1156
1228
  altStandfirst?: Resolver<Maybe<ResolversTypes['AltStandfirst']>, ParentType, ContextType>;
1157
1229
  altTitle?: Resolver<Maybe<ResolversTypes['AltTitle']>, ParentType, ContextType>;
1158
1230
  annotations?: Resolver<Maybe<ReadonlyArray<Maybe<ResolversTypes['Concept']>>>, ParentType, ContextType>;
@@ -1190,6 +1262,7 @@ export type BrandedTopperResolvers<ContextType = QueryContext, ParentType extend
1190
1262
  brandConcept?: Resolver<Maybe<ResolversTypes['Concept']>, ParentType, ContextType>;
1191
1263
  displayConcept?: Resolver<Maybe<ResolversTypes['Concept']>, ParentType, ContextType>;
1192
1264
  followButtonVariant?: Resolver<Maybe<ResolversTypes['FollowButtonVariant']>, ParentType, ContextType>;
1265
+ genreConcept?: Resolver<Maybe<ResolversTypes['Concept']>, ParentType, ContextType>;
1193
1266
  headline?: Resolver<ResolversTypes['String'], ParentType, ContextType>;
1194
1267
  intro?: Resolver<Maybe<ResolversTypes['RichText']>, ParentType, ContextType>;
1195
1268
  isLargeHeadline?: Resolver<Maybe<ResolversTypes['Boolean']>, ParentType, ContextType>;
@@ -1210,6 +1283,7 @@ export type ConceptResolvers<ContextType = QueryContext, ParentType extends Reso
1210
1283
  }>;
1211
1284
  export type ContentResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['Content'] = ResolversParentTypes['Content']> = ResolversObject<{
1212
1285
  __resolveType?: TypeResolveFn<'Article' | 'Audio' | 'ContentPackage' | 'LiveBlogPackage' | 'LiveBlogPost' | 'Video', ParentType, ContextType>;
1286
+ accessLevel?: Resolver<Maybe<ResolversTypes['AccessLevel']>, ParentType, ContextType>;
1213
1287
  altStandfirst?: Resolver<Maybe<ResolversTypes['AltStandfirst']>, ParentType, ContextType>;
1214
1288
  altTitle?: Resolver<Maybe<ResolversTypes['AltTitle']>, ParentType, ContextType>;
1215
1289
  annotations?: Resolver<Maybe<ReadonlyArray<Maybe<ResolversTypes['Concept']>>>, ParentType, ContextType>;
@@ -1230,6 +1304,7 @@ export type ContentResolvers<ContextType = QueryContext, ParentType extends Reso
1230
1304
  url?: Resolver<ResolversTypes['String'], ParentType, ContextType, Partial<ContentUrlArgs>>;
1231
1305
  }>;
1232
1306
  export type ContentPackageResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['ContentPackage'] = ResolversParentTypes['ContentPackage']> = ResolversObject<{
1307
+ accessLevel?: Resolver<Maybe<ResolversTypes['AccessLevel']>, ParentType, ContextType>;
1233
1308
  altStandfirst?: Resolver<Maybe<ResolversTypes['AltStandfirst']>, ParentType, ContextType>;
1234
1309
  altTitle?: Resolver<Maybe<ResolversTypes['AltTitle']>, ParentType, ContextType>;
1235
1310
  annotations?: Resolver<Maybe<ReadonlyArray<Maybe<ResolversTypes['Concept']>>>, ParentType, ContextType>;
@@ -1244,6 +1319,7 @@ export type ContentPackageResolvers<ContextType = QueryContext, ParentType exten
1244
1319
  mainImage?: Resolver<Maybe<ResolversTypes['Image']>, ParentType, ContextType>;
1245
1320
  publishedDate?: Resolver<ResolversTypes['String'], ParentType, ContextType>;
1246
1321
  standfirst?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1322
+ tableOfContents?: Resolver<Maybe<ResolversTypes['TableOfContents']>, ParentType, ContextType>;
1247
1323
  teaser?: Resolver<Maybe<ResolversTypes['Teaser']>, ParentType, ContextType>;
1248
1324
  title?: Resolver<ResolversTypes['String'], ParentType, ContextType>;
1249
1325
  topper?: Resolver<Maybe<ResolversTypes['Topper']>, ParentType, ContextType>;
@@ -1261,6 +1337,7 @@ export type DeepLandscapeTopperResolvers<ContextType = QueryContext, ParentType
1261
1337
  displayConcept?: Resolver<Maybe<ResolversTypes['Concept']>, ParentType, ContextType>;
1262
1338
  fallbackImage?: Resolver<Maybe<ResolversTypes['Image']>, ParentType, ContextType>;
1263
1339
  followButtonVariant?: Resolver<Maybe<ResolversTypes['FollowButtonVariant']>, ParentType, ContextType>;
1340
+ genreConcept?: Resolver<Maybe<ResolversTypes['Concept']>, ParentType, ContextType>;
1264
1341
  headline?: Resolver<ResolversTypes['String'], ParentType, ContextType>;
1265
1342
  images?: Resolver<ReadonlyArray<ResolversTypes['Image']>, ParentType, ContextType>;
1266
1343
  intro?: Resolver<Maybe<ResolversTypes['RichText']>, ParentType, ContextType>;
@@ -1276,6 +1353,7 @@ export type DeepPortraitTopperResolvers<ContextType = QueryContext, ParentType e
1276
1353
  displayConcept?: Resolver<Maybe<ResolversTypes['Concept']>, ParentType, ContextType>;
1277
1354
  fallbackImage?: Resolver<Maybe<ResolversTypes['Image']>, ParentType, ContextType>;
1278
1355
  followButtonVariant?: Resolver<Maybe<ResolversTypes['FollowButtonVariant']>, ParentType, ContextType>;
1356
+ genreConcept?: Resolver<Maybe<ResolversTypes['Concept']>, ParentType, ContextType>;
1279
1357
  headline?: Resolver<ResolversTypes['String'], ParentType, ContextType>;
1280
1358
  images?: Resolver<ReadonlyArray<ResolversTypes['Image']>, ParentType, ContextType>;
1281
1359
  intro?: Resolver<Maybe<ResolversTypes['RichText']>, ParentType, ContextType>;
@@ -1310,6 +1388,7 @@ export type FullBleedTopperResolvers<ContextType = QueryContext, ParentType exte
1310
1388
  displayConcept?: Resolver<Maybe<ResolversTypes['Concept']>, ParentType, ContextType>;
1311
1389
  fallbackImage?: Resolver<Maybe<ResolversTypes['Image']>, ParentType, ContextType>;
1312
1390
  followButtonVariant?: Resolver<Maybe<ResolversTypes['FollowButtonVariant']>, ParentType, ContextType>;
1391
+ genreConcept?: Resolver<Maybe<ResolversTypes['Concept']>, ParentType, ContextType>;
1313
1392
  headline?: Resolver<ResolversTypes['String'], ParentType, ContextType>;
1314
1393
  images?: Resolver<ReadonlyArray<ResolversTypes['Image']>, ParentType, ContextType>;
1315
1394
  intro?: Resolver<Maybe<ResolversTypes['RichText']>, ParentType, ContextType>;
@@ -1320,6 +1399,7 @@ export type FullBleedTopperResolvers<ContextType = QueryContext, ParentType exte
1320
1399
  }>;
1321
1400
  export type ImageResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['Image'] = ResolversParentTypes['Image']> = ResolversObject<{
1322
1401
  __resolveType?: TypeResolveFn<'ImageDesktop' | 'ImageLandscape' | 'ImageMobile' | 'ImagePortrait' | 'ImageSquare' | 'ImageSquareFTEdit' | 'ImageStandard' | 'ImageStandardInline' | 'ImageWide', ParentType, ContextType>;
1402
+ altText?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1323
1403
  caption?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1324
1404
  credit?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1325
1405
  format?: Resolver<ResolversTypes['ImageFormat'], ParentType, ContextType>;
@@ -1331,6 +1411,7 @@ export type ImageResolvers<ContextType = QueryContext, ParentType extends Resolv
1331
1411
  width?: Resolver<Maybe<ResolversTypes['Int']>, ParentType, ContextType>;
1332
1412
  }>;
1333
1413
  export type ImageDesktopResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['ImageDesktop'] = ResolversParentTypes['ImageDesktop']> = ResolversObject<{
1414
+ altText?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1334
1415
  caption?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1335
1416
  credit?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1336
1417
  format?: Resolver<ResolversTypes['ImageFormat'], ParentType, ContextType>;
@@ -1346,6 +1427,7 @@ export interface ImageFormatScalarConfig extends GraphQLScalarTypeConfig<Resolve
1346
1427
  name: 'ImageFormat';
1347
1428
  }
1348
1429
  export type ImageLandscapeResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['ImageLandscape'] = ResolversParentTypes['ImageLandscape']> = ResolversObject<{
1430
+ altText?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1349
1431
  caption?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1350
1432
  credit?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1351
1433
  format?: Resolver<ResolversTypes['ImageFormat'], ParentType, ContextType>;
@@ -1358,6 +1440,7 @@ export type ImageLandscapeResolvers<ContextType = QueryContext, ParentType exten
1358
1440
  __isTypeOf?: IsTypeOfResolverFn<ParentType, ContextType>;
1359
1441
  }>;
1360
1442
  export type ImageMobileResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['ImageMobile'] = ResolversParentTypes['ImageMobile']> = ResolversObject<{
1443
+ altText?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1361
1444
  caption?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1362
1445
  credit?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1363
1446
  format?: Resolver<ResolversTypes['ImageFormat'], ParentType, ContextType>;
@@ -1370,6 +1453,7 @@ export type ImageMobileResolvers<ContextType = QueryContext, ParentType extends
1370
1453
  __isTypeOf?: IsTypeOfResolverFn<ParentType, ContextType>;
1371
1454
  }>;
1372
1455
  export type ImagePortraitResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['ImagePortrait'] = ResolversParentTypes['ImagePortrait']> = ResolversObject<{
1456
+ altText?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1373
1457
  caption?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1374
1458
  credit?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1375
1459
  format?: Resolver<ResolversTypes['ImageFormat'], ParentType, ContextType>;
@@ -1393,6 +1477,7 @@ export type ImageSourceResolvers<ContextType = QueryContext, ParentType extends
1393
1477
  __isTypeOf?: IsTypeOfResolverFn<ParentType, ContextType>;
1394
1478
  }>;
1395
1479
  export type ImageSquareResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['ImageSquare'] = ResolversParentTypes['ImageSquare']> = ResolversObject<{
1480
+ altText?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1396
1481
  caption?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1397
1482
  credit?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1398
1483
  format?: Resolver<ResolversTypes['ImageFormat'], ParentType, ContextType>;
@@ -1405,6 +1490,7 @@ export type ImageSquareResolvers<ContextType = QueryContext, ParentType extends
1405
1490
  __isTypeOf?: IsTypeOfResolverFn<ParentType, ContextType>;
1406
1491
  }>;
1407
1492
  export type ImageSquareFtEditResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['ImageSquareFTEdit'] = ResolversParentTypes['ImageSquareFTEdit']> = ResolversObject<{
1493
+ altText?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1408
1494
  caption?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1409
1495
  credit?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1410
1496
  format?: Resolver<ResolversTypes['ImageFormat'], ParentType, ContextType>;
@@ -1417,6 +1503,7 @@ export type ImageSquareFtEditResolvers<ContextType = QueryContext, ParentType ex
1417
1503
  __isTypeOf?: IsTypeOfResolverFn<ParentType, ContextType>;
1418
1504
  }>;
1419
1505
  export type ImageStandardResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['ImageStandard'] = ResolversParentTypes['ImageStandard']> = ResolversObject<{
1506
+ altText?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1420
1507
  caption?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1421
1508
  credit?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1422
1509
  format?: Resolver<ResolversTypes['ImageFormat'], ParentType, ContextType>;
@@ -1429,6 +1516,7 @@ export type ImageStandardResolvers<ContextType = QueryContext, ParentType extend
1429
1516
  __isTypeOf?: IsTypeOfResolverFn<ParentType, ContextType>;
1430
1517
  }>;
1431
1518
  export type ImageStandardInlineResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['ImageStandardInline'] = ResolversParentTypes['ImageStandardInline']> = ResolversObject<{
1519
+ altText?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1432
1520
  caption?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1433
1521
  credit?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1434
1522
  format?: Resolver<ResolversTypes['ImageFormat'], ParentType, ContextType>;
@@ -1444,6 +1532,7 @@ export interface ImageTypeScalarConfig extends GraphQLScalarTypeConfig<Resolvers
1444
1532
  name: 'ImageType';
1445
1533
  }
1446
1534
  export type ImageWideResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['ImageWide'] = ResolversParentTypes['ImageWide']> = ResolversObject<{
1535
+ altText?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1447
1536
  caption?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1448
1537
  credit?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1449
1538
  format?: Resolver<ResolversTypes['ImageFormat'], ParentType, ContextType>;
@@ -1474,6 +1563,7 @@ export type LayoutImageResolvers<ContextType = QueryContext, ParentType extends
1474
1563
  __isTypeOf?: IsTypeOfResolverFn<ParentType, ContextType>;
1475
1564
  }>;
1476
1565
  export type LiveBlogPackageResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['LiveBlogPackage'] = ResolversParentTypes['LiveBlogPackage']> = ResolversObject<{
1566
+ accessLevel?: Resolver<Maybe<ResolversTypes['AccessLevel']>, ParentType, ContextType>;
1477
1567
  altStandfirst?: Resolver<Maybe<ResolversTypes['AltStandfirst']>, ParentType, ContextType>;
1478
1568
  altTitle?: Resolver<Maybe<ResolversTypes['AltTitle']>, ParentType, ContextType>;
1479
1569
  annotations?: Resolver<Maybe<ReadonlyArray<Maybe<ResolversTypes['Concept']>>>, ParentType, ContextType>;
@@ -1497,6 +1587,7 @@ export type LiveBlogPackageResolvers<ContextType = QueryContext, ParentType exte
1497
1587
  __isTypeOf?: IsTypeOfResolverFn<ParentType, ContextType>;
1498
1588
  }>;
1499
1589
  export type LiveBlogPostResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['LiveBlogPost'] = ResolversParentTypes['LiveBlogPost']> = ResolversObject<{
1590
+ accessLevel?: Resolver<Maybe<ResolversTypes['AccessLevel']>, ParentType, ContextType>;
1500
1591
  altStandfirst?: Resolver<Maybe<ResolversTypes['AltStandfirst']>, ParentType, ContextType>;
1501
1592
  altTitle?: Resolver<Maybe<ResolversTypes['AltTitle']>, ParentType, ContextType>;
1502
1593
  annotations?: Resolver<Maybe<ReadonlyArray<Maybe<ResolversTypes['Concept']>>>, ParentType, ContextType>;
@@ -1596,6 +1687,7 @@ export type PodcastTopperResolvers<ContextType = QueryContext, ParentType extend
1596
1687
  columnist?: Resolver<Maybe<ResolversTypes['Concept']>, ParentType, ContextType>;
1597
1688
  displayConcept?: Resolver<Maybe<ResolversTypes['Concept']>, ParentType, ContextType>;
1598
1689
  followButtonVariant?: Resolver<Maybe<ResolversTypes['FollowButtonVariant']>, ParentType, ContextType>;
1690
+ genreConcept?: Resolver<Maybe<ResolversTypes['Concept']>, ParentType, ContextType>;
1599
1691
  headline?: Resolver<ResolversTypes['String'], ParentType, ContextType>;
1600
1692
  headshot?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType, Partial<PodcastTopperHeadshotArgs>>;
1601
1693
  intro?: Resolver<Maybe<ResolversTypes['RichText']>, ParentType, ContextType>;
@@ -1645,6 +1737,7 @@ export type SplitTextTopperResolvers<ContextType = QueryContext, ParentType exte
1645
1737
  displayConcept?: Resolver<Maybe<ResolversTypes['Concept']>, ParentType, ContextType>;
1646
1738
  fallbackImage?: Resolver<Maybe<ResolversTypes['Image']>, ParentType, ContextType>;
1647
1739
  followButtonVariant?: Resolver<Maybe<ResolversTypes['FollowButtonVariant']>, ParentType, ContextType>;
1740
+ genreConcept?: Resolver<Maybe<ResolversTypes['Concept']>, ParentType, ContextType>;
1648
1741
  headline?: Resolver<ResolversTypes['String'], ParentType, ContextType>;
1649
1742
  images?: Resolver<ReadonlyArray<ResolversTypes['Image']>, ParentType, ContextType>;
1650
1743
  intro?: Resolver<Maybe<ResolversTypes['RichText']>, ParentType, ContextType>;
@@ -1655,9 +1748,15 @@ export type SplitTextTopperResolvers<ContextType = QueryContext, ParentType exte
1655
1748
  }>;
1656
1749
  export type StructuredContentResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['StructuredContent'] = ResolversParentTypes['StructuredContent']> = ResolversObject<{
1657
1750
  references?: Resolver<ReadonlyArray<ResolversTypes['Reference']>, ParentType, ContextType>;
1751
+ text?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1658
1752
  tree?: Resolver<ResolversTypes['JSON'], ParentType, ContextType>;
1659
1753
  __isTypeOf?: IsTypeOfResolverFn<ParentType, ContextType>;
1660
1754
  }>;
1755
+ export type TableOfContentsResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['TableOfContents'] = ResolversParentTypes['TableOfContents']> = ResolversObject<{
1756
+ labelType?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1757
+ sequence?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1758
+ __isTypeOf?: IsTypeOfResolverFn<ParentType, ContextType>;
1759
+ }>;
1661
1760
  export type TeaserResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['Teaser'] = ResolversParentTypes['Teaser']> = ResolversObject<{
1662
1761
  firstPublishedDate?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1663
1762
  id?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
@@ -1669,7 +1768,6 @@ export type TeaserResolvers<ContextType = QueryContext, ParentType extends Resol
1669
1768
  metaSuffixText?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1670
1769
  publishedDate?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1671
1770
  standfirst?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1672
- theme?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1673
1771
  title?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1674
1772
  type?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1675
1773
  url?: Resolver<ResolversTypes['String'], ParentType, ContextType, Partial<TeaserUrlArgs>>;
@@ -1691,6 +1789,7 @@ export interface TopperBackgroundColourScalarConfig extends GraphQLScalarTypeCon
1691
1789
  export type TopperWithBrandResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['TopperWithBrand'] = ResolversParentTypes['TopperWithBrand']> = ResolversObject<{
1692
1790
  __resolveType?: TypeResolveFn<'BrandedTopper' | 'DeepLandscapeTopper' | 'DeepPortraitTopper' | 'FullBleedTopper' | 'PodcastTopper' | 'SplitTextTopper', ParentType, ContextType>;
1693
1791
  brandConcept?: Resolver<Maybe<ResolversTypes['Concept']>, ParentType, ContextType>;
1792
+ genreConcept?: Resolver<Maybe<ResolversTypes['Concept']>, ParentType, ContextType>;
1694
1793
  }>;
1695
1794
  export type TopperWithHeadshotResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['TopperWithHeadshot'] = ResolversParentTypes['TopperWithHeadshot']> = ResolversObject<{
1696
1795
  __resolveType?: TypeResolveFn<'OpinionTopper' | 'PodcastTopper', ParentType, ContextType>;
@@ -1716,6 +1815,7 @@ export type TweetResolvers<ContextType = QueryContext, ParentType extends Resolv
1716
1815
  __isTypeOf?: IsTypeOfResolverFn<ParentType, ContextType>;
1717
1816
  }>;
1718
1817
  export type VideoResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['Video'] = ResolversParentTypes['Video']> = ResolversObject<{
1818
+ accessLevel?: Resolver<Maybe<ResolversTypes['AccessLevel']>, ParentType, ContextType>;
1719
1819
  altStandfirst?: Resolver<Maybe<ResolversTypes['AltStandfirst']>, ParentType, ContextType>;
1720
1820
  altTitle?: Resolver<Maybe<ResolversTypes['AltTitle']>, ParentType, ContextType>;
1721
1821
  annotations?: Resolver<Maybe<ReadonlyArray<Maybe<ResolversTypes['Concept']>>>, ParentType, ContextType>;
@@ -1799,6 +1899,7 @@ export type Resolvers<ContextType = QueryContext> = ResolversObject<{
1799
1899
  ScrollyImage?: ScrollyImageResolvers<ContextType>;
1800
1900
  SplitTextTopper?: SplitTextTopperResolvers<ContextType>;
1801
1901
  StructuredContent?: StructuredContentResolvers<ContextType>;
1902
+ TableOfContents?: TableOfContentsResolvers<ContextType>;
1802
1903
  Teaser?: TeaserResolvers<ContextType>;
1803
1904
  Topper?: TopperResolvers<ContextType>;
1804
1905
  TopperBackgroundColour?: GraphQLScalarType;