@financial-times/cp-content-pipeline-client 3.3.5 → 3.3.7

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.
@@ -29,42 +29,70 @@ export type Scalars = {
29
29
  };
30
30
 
31
31
  export type Accessibility = {
32
+ /** An array of captions for the clip. */
32
33
  readonly captions?: Maybe<ReadonlyArray<Maybe<Caption>>>;
34
+ /** An abstract syntax tree of the transcript for the clip. */
33
35
  readonly transcript?: Maybe<RichText>;
34
36
  };
35
37
 
36
38
  export type AltStandfirst = {
39
+ /** An introductory paragraph of the article. */
37
40
  readonly promotionalStandfirst?: Maybe<Scalars['String']['output']>;
38
41
  };
39
42
 
40
43
  export type AltTitle = {
44
+ /** A promotional title of the article. */
41
45
  readonly promotionalTitle?: Maybe<Scalars['String']['output']>;
42
46
  };
43
47
 
44
48
  export type Article = Content & {
49
+ /** A scalar representing the access level of the article, eg. 'free'. */
45
50
  readonly accessLevel?: Maybe<Scalars['AccessLevel']['output']>;
51
+ /** An alternative introductory paragraph of the article. */
46
52
  readonly altStandfirst?: Maybe<AltStandfirst>;
53
+ /** An alternative title of the article. */
47
54
  readonly altTitle?: Maybe<AltTitle>;
55
+ /** An array of concepts related to the article, eg. organisations or topics. */
48
56
  readonly annotations?: Maybe<ReadonlyArray<Maybe<Concept>>>;
57
+ /** An abstract syntax tree of the article content. */
49
58
  readonly body?: Maybe<RichText>;
59
+ /** The raw string of the XML as returned from ContentAPI. */
50
60
  readonly bodyXML?: Maybe<Scalars['String']['output']>;
61
+ /** An abstract syntax tree of the authors of the article. */
51
62
  readonly byline?: Maybe<StructuredContent>;
63
+ /** A scalar representing whether the article can be syndicated, ie. published by a third party site. */
52
64
  readonly canBeSyndicated?: Maybe<Scalars['CanBeSyndicated']['output']>;
65
+ /** Whether comments are enabled on the article. */
53
66
  readonly commentsEnabled?: Maybe<Scalars['Boolean']['output']>;
67
+ /** The parent article, indicating this article is a part of a series or package. */
54
68
  readonly containedIn?: Maybe<Content>;
69
+ /** A design object containing the theme and layout of the article. */
55
70
  readonly design?: Maybe<Design>;
71
+ /** The editorial division the article belongs to, eg. 'FT-SpecialReports'. */
56
72
  readonly editorialDesk?: Maybe<Scalars['String']['output']>;
73
+ /** The first ISO string date the article was published, eg. '2024-04-03T10:35:52.443Z'. */
57
74
  readonly firstPublishedDate: Scalars['String']['output'];
75
+ /** The unique identifier of the article - a uuid or a url. */
58
76
  readonly id: Scalars['ID']['output'];
77
+ /** The concept to use for instant alert CTAs. */
59
78
  readonly instantAlertConcept?: Maybe<Concept>;
79
+ /** An image object containing the url and the caption, to be displayed usually before the article content. */
60
80
  readonly mainImage?: Maybe<Image>;
81
+ /** The party that originated the article, eg. 'FT'. */
61
82
  readonly originatingParty?: Maybe<Scalars['String']['output']>;
83
+ /** The ISO string date the article was published, eg. '2024-04-03T10:35:52.443Z'. */
62
84
  readonly publishedDate: Scalars['String']['output'];
85
+ /** An introductory paragraph of the article. */
63
86
  readonly standfirst?: Maybe<Scalars['String']['output']>;
87
+ /** A promotional thumbnail / snapshot of the article. */
64
88
  readonly teaser?: Maybe<Teaser>;
89
+ /** The title of the article. */
65
90
  readonly title: Scalars['String']['output'];
91
+ /** A banner located usually at the top of articles containing the title, the standfirst and any images. */
66
92
  readonly topper?: Maybe<Topper>;
93
+ /** The type of the article, eg. 'Article' or 'Video'. */
67
94
  readonly type: Scalars['ContentType']['output'];
95
+ /** The url of the concept. Vanity urls replace long, randomly generated urls - they are more user friendly and concise. Relative urls are relative to the current domain. */
68
96
  readonly url: Scalars['String']['output'];
69
97
  };
70
98
 
@@ -80,29 +108,53 @@ export type ArticleUrlArgs = {
80
108
  };
81
109
 
82
110
  export type Audio = Content & {
111
+ /** A scalar representing the access level of the article, eg. 'free'. */
83
112
  readonly accessLevel?: Maybe<Scalars['AccessLevel']['output']>;
113
+ /** An alternative introductory paragraph of the article. */
84
114
  readonly altStandfirst?: Maybe<AltStandfirst>;
115
+ /** An alternative title of the article. */
85
116
  readonly altTitle?: Maybe<AltTitle>;
117
+ /** An array of concepts related to the article, eg. organisations or topics. */
86
118
  readonly annotations?: Maybe<ReadonlyArray<Maybe<Concept>>>;
119
+ /** An abstract syntax tree of the article content. */
87
120
  readonly body?: Maybe<RichText>;
121
+ /** The raw string of the XML as returned from ContentAPI. */
88
122
  readonly bodyXML?: Maybe<Scalars['String']['output']>;
123
+ /** An abstract syntax tree of the authors of the article. */
89
124
  readonly byline?: Maybe<StructuredContent>;
125
+ /** A scalar representing whether the article can be syndicated, ie. published by a third party site. */
90
126
  readonly canBeSyndicated?: Maybe<Scalars['CanBeSyndicated']['output']>;
127
+ /** Whether comments are enabled on the article. */
91
128
  readonly commentsEnabled?: Maybe<Scalars['Boolean']['output']>;
129
+ /** A design object containing the theme and layout of the article. */
92
130
  readonly design?: Maybe<Design>;
131
+ /** The editorial division the article belongs to, eg. 'FT-SpecialReports'. */
93
132
  readonly editorialDesk?: Maybe<Scalars['String']['output']>;
133
+ /** The first ISO string date the article was published, eg. '2024-04-03T10:35:52.443Z'. */
94
134
  readonly firstPublishedDate: Scalars['String']['output'];
135
+ /** The unique identifier of the article - a uuid or a url. */
95
136
  readonly id: Scalars['ID']['output'];
137
+ /** The concept to use for instant alert CTAs. */
96
138
  readonly instantAlertConcept?: Maybe<Concept>;
139
+ /** An image object containing the url and the caption, to be displayed usually before the article content. */
97
140
  readonly mainImage?: Maybe<Image>;
141
+ /** An array of media objects containing the url, the duration, the filesize and the media type. */
98
142
  readonly media?: Maybe<ReadonlyArray<Maybe<Media>>>;
143
+ /** The party that originated the article, eg. 'FT'. */
99
144
  readonly originatingParty?: Maybe<Scalars['String']['output']>;
145
+ /** The ISO string date the article was published, eg. '2024-04-03T10:35:52.443Z'. */
100
146
  readonly publishedDate: Scalars['String']['output'];
147
+ /** An introductory paragraph of the article. */
101
148
  readonly standfirst?: Maybe<Scalars['String']['output']>;
149
+ /** A promotional thumbnail / snapshot of the article. */
102
150
  readonly teaser?: Maybe<Teaser>;
151
+ /** The title of the article. */
103
152
  readonly title: Scalars['String']['output'];
153
+ /** A banner located usually at the top of articles containing the title, the standfirst and any images. */
104
154
  readonly topper?: Maybe<Topper>;
155
+ /** The type of the article, eg. 'Article' or 'Video'. */
105
156
  readonly type: Scalars['ContentType']['output'];
157
+ /** The url of the concept. Vanity urls replace long, randomly generated urls - they are more user friendly and concise. Relative urls are relative to the current domain. */
106
158
  readonly url: Scalars['String']['output'];
107
159
  };
108
160
 
@@ -118,114 +170,198 @@ export type AudioUrlArgs = {
118
170
  };
119
171
 
120
172
  export type BasicTopper = Topper & {
173
+ /** Whether the topper should have a background box. */
121
174
  readonly backgroundBox?: Maybe<Scalars['Boolean']['output']>;
175
+ /** The background colour of the topper. */
122
176
  readonly backgroundColour?: Maybe<Scalars['TopperBackgroundColour']['output']>;
177
+ /** The concept object to be displayed, eg. {'type': 'TOPIC', 'prefLabel': 'Non-dom tax status', ...}. */
123
178
  readonly displayConcept?: Maybe<Concept>;
179
+ /** The variant of the follow button to be displayed on the topper. */
124
180
  readonly followButtonVariant?: Maybe<Scalars['FollowButtonVariant']['output']>;
181
+ /** The concept object of the genre, eg. {'type': 'GENRE', 'prefLabel': 'Opinion', ...}. */
125
182
  readonly genreConcept?: Maybe<Concept>;
183
+ /** The headline text of the topper. */
126
184
  readonly headline: Scalars['String']['output'];
185
+ /** An abstract syntax tree of the introduction text. */
127
186
  readonly intro?: Maybe<RichText>;
187
+ /** Whether the topper should have a text shadow. */
128
188
  readonly textShadow?: Maybe<Scalars['Boolean']['output']>;
129
189
  };
130
190
 
131
191
  export type BrandedTopper = Topper & TopperWithBrand & TopperWithTheme & {
192
+ /** Whether the topper should have a background box. */
132
193
  readonly backgroundBox?: Maybe<Scalars['Boolean']['output']>;
194
+ /** The background colour of the topper. */
133
195
  readonly backgroundColour?: Maybe<Scalars['TopperBackgroundColour']['output']>;
196
+ /** The concept object of the brand, eg. {'type': 'BRAND', 'prefLabel': 'FT Magazine', ...}. */
134
197
  readonly brandConcept?: Maybe<Concept>;
198
+ /** The concept object to be displayed, eg. {'type': 'TOPIC', 'prefLabel': 'Non-dom tax status', ...}. */
135
199
  readonly displayConcept?: Maybe<Concept>;
200
+ /** The variant of the follow button to be displayed on the topper. */
136
201
  readonly followButtonVariant?: Maybe<Scalars['FollowButtonVariant']['output']>;
202
+ /** The concept object of the genre, eg. {'type': 'GENRE', 'prefLabel': 'Opinion', ...}. */
137
203
  readonly genreConcept?: Maybe<Concept>;
204
+ /** The headline text of the topper. */
138
205
  readonly headline: Scalars['String']['output'];
206
+ /** An abstract syntax tree of the introduction text. */
139
207
  readonly intro?: Maybe<RichText>;
208
+ /** Whether the headline should be large. */
140
209
  readonly isLargeHeadline?: Maybe<Scalars['Boolean']['output']>;
210
+ /** The layout of the topper, eg. 'split-text-left'. */
141
211
  readonly layout?: Maybe<Scalars['String']['output']>;
212
+ /** Whether the topper should have a text shadow. */
142
213
  readonly textShadow?: Maybe<Scalars['Boolean']['output']>;
143
214
  };
144
215
 
145
216
  export type Caption = {
217
+ /** The media type of the caption eg. text/vtt. */
146
218
  readonly mediaType?: Maybe<Scalars['String']['output']>;
219
+ /** The url of the caption, eg. 'https://next-media-api.ft.com/clips/captions/32065513'. */
147
220
  readonly url?: Maybe<Scalars['String']['output']>;
148
221
  };
149
222
 
150
223
  export type Clip = {
224
+ /** An array of data sources - includes 'video/mp4' and 'audio/mp3' sources. */
151
225
  readonly dataSource: ReadonlyArray<ClipSource>;
226
+ /** The format of the clip, eg. 'standard-inline' or 'mobile'. */
152
227
  readonly format?: Maybe<Scalars['ClipFormat']['output']>;
228
+ /** The unique identifier of the clip - a uuid or a url. */
153
229
  readonly id: Scalars['String']['output'];
230
+ /** The url of the image to be used as a poster for the clip, eg. 'https://www.ft.com/__origami/service/image...'. */
154
231
  readonly poster?: Maybe<Scalars['String']['output']>;
232
+ /** The type of the clip, eg. 'http://www.ft.com/ontology/content/Clip'. */
155
233
  readonly type?: Maybe<Scalars['String']['output']>;
156
234
  };
157
235
 
158
236
  export type ClipSet = Reference & {
237
+ /** An object containing the accessibility details of the clip. */
159
238
  readonly accessibility?: Maybe<Accessibility>;
239
+ /** Whether the clip should play automatically when loaded. */
160
240
  readonly autoplay?: Maybe<Scalars['Boolean']['output']>;
241
+ /** Text describing the content of the clip, to be shown next to the clip. */
161
242
  readonly caption?: Maybe<Scalars['String']['output']>;
243
+ /** An array of clips in the clip set. */
162
244
  readonly clips?: Maybe<ReadonlyArray<Maybe<Clip>>>;
245
+ /** An array of content warnings for the clip set. */
163
246
  readonly contentWarning?: Maybe<ReadonlyArray<Maybe<Scalars['String']['output']>>>;
247
+ /** The credit text of the clip, eg. 'Getty Images'. */
164
248
  readonly credits?: Maybe<Scalars['String']['output']>;
249
+ /** The layout of the clip set, eg. 'in-line'. */
165
250
  readonly dataLayout?: Maybe<Scalars['String']['output']>;
251
+ /** The description of the clip. */
166
252
  readonly description?: Maybe<Scalars['String']['output']>;
253
+ /** The title to be displayed for the clip set. */
167
254
  readonly displayTitle?: Maybe<Scalars['String']['output']>;
255
+ /** The unique identifier of the clip set. */
168
256
  readonly id: Scalars['String']['output'];
257
+ /** Whether the clip should loop. */
169
258
  readonly loop?: Maybe<Scalars['Boolean']['output']>;
259
+ /** Whether the clip should be muted. */
170
260
  readonly muted?: Maybe<Scalars['Boolean']['output']>;
261
+ /** Whether the clip set should **not** include audio. */
171
262
  readonly noAudio?: Maybe<Scalars['Boolean']['output']>;
263
+ /** The date the clip set was published. */
172
264
  readonly publishedDate?: Maybe<Scalars['String']['output']>;
265
+ /** The source of the clip set, eg. 'YouTube'. */
173
266
  readonly source?: Maybe<Scalars['String']['output']>;
267
+ /** The subtitle of the clip set. */
174
268
  readonly subtitle?: Maybe<Scalars['String']['output']>;
269
+ /** The type of the clip set, eg. 'video'. */
175
270
  readonly type: Scalars['String']['output'];
176
271
  };
177
272
 
178
273
  export type ClipSource = {
274
+ /** The audio encoding format of the source, eg. mp3. */
179
275
  readonly audioCodec?: Maybe<Scalars['String']['output']>;
276
+ /** The url of the clip source, eg. 'https://next-media-api.ft.com/renditions/16868569859480/0x0.mp3'. */
180
277
  readonly binaryUrl: Scalars['String']['output'];
278
+ /** The duration of the clip in milliseconds. */
181
279
  readonly duration?: Maybe<Scalars['Int']['output']>;
280
+ /** The media type eg. video/mp4. */
182
281
  readonly mediaType: Scalars['String']['output'];
282
+ /** The height of the clip in pixels. */
183
283
  readonly pixelHeight?: Maybe<Scalars['Int']['output']>;
284
+ /** The width of the clip in pixels. */
184
285
  readonly pixelWidth?: Maybe<Scalars['Int']['output']>;
286
+ /** The video encoding format of the source, eg. h264. */
185
287
  readonly videoCodec?: Maybe<Scalars['String']['output']>;
186
288
  };
187
289
 
290
+ /** A concept is supplemtary information item, like a location, person, organisation or topic. It is used to provide context to an article. */
188
291
  export type Concept = {
292
+ /** The api url of the concept, eg. 'http://api.ft.com/things/a579350c-61ce-4c00-97ca-ddaa2e0cacf6'. */
189
293
  readonly apiUrl?: Maybe<Scalars['String']['output']>;
294
+ /** The type of the concept, eg. 'http://www.ft.com/ontology/Topic'. */
190
295
  readonly directType?: Maybe<Scalars['String']['output']>;
296
+ /** The unique identifier of the concept - a uuid or a url. */
191
297
  readonly id: Scalars['ID']['output'];
298
+ /** Whether the concept is part of a package brand eg. 'ftSeries' or 'ftGuides'. */
192
299
  readonly isPackageBrand?: Maybe<Scalars['Boolean']['output']>;
300
+ /** The relationship between the concept and the article, eg. 'http://www.ft.com/ontology/hasAuthor'. */
193
301
  readonly predicate?: Maybe<Scalars['String']['output']>;
302
+ /** The preferred label of the concept, eg. 'Work & Careers'. */
194
303
  readonly prefLabel: Scalars['String']['output'];
304
+ /** The type of the concept, eg. 'TOPIC'. */
195
305
  readonly type?: Maybe<Scalars['String']['output']>;
306
+ /** An array of types, eg. ['http://www.ft.com/ontology/core/Thing', 'http://www.ft.com/ontology/Topic']. */
196
307
  readonly types?: Maybe<ReadonlyArray<Scalars['String']['output']>>;
308
+ /** The url of the media, eg. 'https://next-media-api.ft.com/renditions/16868569859480/0x0.mp3'. */
197
309
  readonly url: Scalars['String']['output'];
198
310
  };
199
311
 
200
312
 
313
+ /** A concept is supplemtary information item, like a location, person, organisation or topic. It is used to provide context to an article. */
201
314
  export type ConceptUrlArgs = {
202
315
  relative?: InputMaybe<Scalars['Boolean']['input']>;
203
316
  vanity?: InputMaybe<Scalars['Boolean']['input']>;
204
317
  };
205
318
 
206
319
  export type Content = {
320
+ /** A scalar representing the access level of the article, eg. 'free'. */
207
321
  readonly accessLevel?: Maybe<Scalars['AccessLevel']['output']>;
322
+ /** An alternative introductory paragraph of the article. */
208
323
  readonly altStandfirst?: Maybe<AltStandfirst>;
324
+ /** An alternative title of the article. */
209
325
  readonly altTitle?: Maybe<AltTitle>;
326
+ /** An array of concepts related to the article, eg. organisations or topics. */
210
327
  readonly annotations?: Maybe<ReadonlyArray<Maybe<Concept>>>;
328
+ /** An abstract syntax tree of the article content. */
211
329
  readonly body?: Maybe<RichText>;
330
+ /** The raw string of the XML as returned from ContentAPI. */
212
331
  readonly bodyXML?: Maybe<Scalars['String']['output']>;
332
+ /** An abstract syntax tree of the authors of the article. */
213
333
  readonly byline?: Maybe<StructuredContent>;
334
+ /** A scalar representing whether the article can be syndicated, ie. published by a third party site. */
214
335
  readonly canBeSyndicated?: Maybe<Scalars['CanBeSyndicated']['output']>;
336
+ /** Whether comments are enabled on the article. */
215
337
  readonly commentsEnabled?: Maybe<Scalars['Boolean']['output']>;
338
+ /** A design object containing the theme and layout of the article. */
216
339
  readonly design?: Maybe<Design>;
340
+ /** The editorial division the article belongs to, eg. 'FT-SpecialReports'. */
217
341
  readonly editorialDesk?: Maybe<Scalars['String']['output']>;
342
+ /** The first ISO string date the article was published, eg. '2024-04-03T10:35:52.443Z'. */
218
343
  readonly firstPublishedDate: Scalars['String']['output'];
344
+ /** The unique identifier of the article - a uuid or a url. */
219
345
  readonly id: Scalars['ID']['output'];
346
+ /** The concept to use for instant alert CTAs. */
220
347
  readonly instantAlertConcept?: Maybe<Concept>;
348
+ /** An image object containing the url and the caption, to be displayed usually before the article content. */
221
349
  readonly mainImage?: Maybe<Image>;
350
+ /** The party that originated the article, eg. 'FT'. */
222
351
  readonly originatingParty?: Maybe<Scalars['String']['output']>;
352
+ /** The ISO string date the article was published, eg. '2024-04-03T10:35:52.443Z'. */
223
353
  readonly publishedDate: Scalars['String']['output'];
354
+ /** An introductory paragraph of the article. */
224
355
  readonly standfirst?: Maybe<Scalars['String']['output']>;
356
+ /** A promotional thumbnail / snapshot of the article. */
225
357
  readonly teaser?: Maybe<Teaser>;
358
+ /** The title of the article. */
226
359
  readonly title: Scalars['String']['output'];
360
+ /** A banner located usually at the top of articles containing the title, the standfirst and any images. */
227
361
  readonly topper?: Maybe<Topper>;
362
+ /** The type of the article, eg. 'Article' or 'Video'. */
228
363
  readonly type: Scalars['ContentType']['output'];
364
+ /** The url of the concept. Vanity urls replace long, randomly generated urls - they are more user friendly and concise. Relative urls are relative to the current domain. */
229
365
  readonly url: Scalars['String']['output'];
230
366
  };
231
367
 
@@ -241,31 +377,57 @@ export type ContentUrlArgs = {
241
377
  };
242
378
 
243
379
  export type ContentPackage = Content & {
380
+ /** A scalar representing the access level of the article, eg. 'free'. */
244
381
  readonly accessLevel?: Maybe<Scalars['AccessLevel']['output']>;
382
+ /** An alternative introductory paragraph of the article. */
245
383
  readonly altStandfirst?: Maybe<AltStandfirst>;
384
+ /** An alternative title of the article. */
246
385
  readonly altTitle?: Maybe<AltTitle>;
386
+ /** An array of concepts related to the article, eg. organisations or topics. */
247
387
  readonly annotations?: Maybe<ReadonlyArray<Maybe<Concept>>>;
388
+ /** An abstract syntax tree of the article content. */
248
389
  readonly body?: Maybe<RichText>;
390
+ /** The raw string of the XML as returned from ContentAPI. */
249
391
  readonly bodyXML?: Maybe<Scalars['String']['output']>;
392
+ /** An abstract syntax tree of the authors of the article. */
250
393
  readonly byline?: Maybe<StructuredContent>;
394
+ /** A scalar representing whether the article can be syndicated, ie. published by a third party site. */
251
395
  readonly canBeSyndicated?: Maybe<Scalars['CanBeSyndicated']['output']>;
396
+ /** Whether comments are enabled on the article. */
252
397
  readonly commentsEnabled?: Maybe<Scalars['Boolean']['output']>;
398
+ /** The child articles of this content package. */
253
399
  readonly contains?: Maybe<ReadonlyArray<Maybe<Teaser>>>;
400
+ /** The number of child articles in this content package. */
254
401
  readonly containsLength?: Maybe<Scalars['Int']['output']>;
402
+ /** A design object containing the theme and layout of the article. */
255
403
  readonly design?: Maybe<Design>;
404
+ /** The editorial division the article belongs to, eg. 'FT-SpecialReports'. */
256
405
  readonly editorialDesk?: Maybe<Scalars['String']['output']>;
406
+ /** The first ISO string date the article was published, eg. '2024-04-03T10:35:52.443Z'. */
257
407
  readonly firstPublishedDate: Scalars['String']['output'];
408
+ /** The unique identifier of the article - a uuid or a url. */
258
409
  readonly id: Scalars['ID']['output'];
410
+ /** The concept to use for instant alert CTAs. */
259
411
  readonly instantAlertConcept?: Maybe<Concept>;
412
+ /** An image object containing the url and the caption, to be displayed usually before the article content. */
260
413
  readonly mainImage?: Maybe<Image>;
414
+ /** The party that originated the article, eg. 'FT'. */
261
415
  readonly originatingParty?: Maybe<Scalars['String']['output']>;
416
+ /** The ISO string date the article was published, eg. '2024-04-03T10:35:52.443Z'. */
262
417
  readonly publishedDate: Scalars['String']['output'];
418
+ /** An introductory paragraph of the article. */
263
419
  readonly standfirst?: Maybe<Scalars['String']['output']>;
420
+ /** The optional table of contents for this content package. */
264
421
  readonly tableOfContents?: Maybe<TableOfContents>;
422
+ /** A promotional thumbnail / snapshot of the article. */
265
423
  readonly teaser?: Maybe<Teaser>;
424
+ /** The title of the article. */
266
425
  readonly title: Scalars['String']['output'];
426
+ /** A banner located usually at the top of articles containing the title, the standfirst and any images. */
267
427
  readonly topper?: Maybe<Topper>;
428
+ /** The type of the article, eg. 'Article' or 'Video'. */
268
429
  readonly type: Scalars['ContentType']['output'];
430
+ /** The url of the concept. Vanity urls replace long, randomly generated urls - they are more user friendly and concise. Relative urls are relative to the current domain. */
269
431
  readonly url: Scalars['String']['output'];
270
432
  };
271
433
 
@@ -287,79 +449,135 @@ export type ContentPackageUrlArgs = {
287
449
  };
288
450
 
289
451
  export type DeepLandscapeTopper = Topper & TopperWithBrand & TopperWithImages & TopperWithTheme & {
452
+ /** Whether the topper should have a background box. */
290
453
  readonly backgroundBox?: Maybe<Scalars['Boolean']['output']>;
454
+ /** The background colour of the topper. */
291
455
  readonly backgroundColour?: Maybe<Scalars['TopperBackgroundColour']['output']>;
456
+ /** The concept object of the brand, eg. {'type': 'BRAND', 'prefLabel': 'FT Magazine', ...}. */
292
457
  readonly brandConcept?: Maybe<Concept>;
458
+ /** The concept object to be displayed, eg. {'type': 'TOPIC', 'prefLabel': 'Non-dom tax status', ...}. */
293
459
  readonly displayConcept?: Maybe<Concept>;
460
+ /** A fallback image to be used if the 'images' are not availableimages: [Image!]!. */
294
461
  readonly fallbackImage?: Maybe<Image>;
462
+ /** The variant of the follow button to be displayed on the topper. */
295
463
  readonly followButtonVariant?: Maybe<Scalars['FollowButtonVariant']['output']>;
464
+ /** The concept object of the genre, eg. {'type': 'GENRE', 'prefLabel': 'Opinion', ...}. */
296
465
  readonly genreConcept?: Maybe<Concept>;
466
+ /** The headline text of the topper. */
297
467
  readonly headline: Scalars['String']['output'];
468
+ /** An array of images to be displayed on the topper. */
298
469
  readonly images: ReadonlyArray<Image>;
470
+ /** An abstract syntax tree of the introduction text. */
299
471
  readonly intro?: Maybe<RichText>;
472
+ /** Whether the headline should be large. */
300
473
  readonly isLargeHeadline?: Maybe<Scalars['Boolean']['output']>;
474
+ /** The layout of the topper, eg. 'split-text-left'. */
301
475
  readonly layout?: Maybe<Scalars['String']['output']>;
476
+ /** Whether the topper should have a text shadow. */
302
477
  readonly textShadow?: Maybe<Scalars['Boolean']['output']>;
303
478
  };
304
479
 
305
480
  export type DeepPortraitTopper = Topper & TopperWithBrand & TopperWithImages & TopperWithTheme & {
481
+ /** Whether the topper should have a background box. */
306
482
  readonly backgroundBox?: Maybe<Scalars['Boolean']['output']>;
483
+ /** The background colour of the topper. */
307
484
  readonly backgroundColour?: Maybe<Scalars['TopperBackgroundColour']['output']>;
485
+ /** The concept object of the brand, eg. {'type': 'BRAND', 'prefLabel': 'FT Magazine', ...}. */
308
486
  readonly brandConcept?: Maybe<Concept>;
487
+ /** The concept object to be displayed, eg. {'type': 'TOPIC', 'prefLabel': 'Non-dom tax status', ...}. */
309
488
  readonly displayConcept?: Maybe<Concept>;
489
+ /** A fallback image to be used if the 'images' are not availableimages: [Image!]!. */
310
490
  readonly fallbackImage?: Maybe<Image>;
491
+ /** The variant of the follow button to be displayed on the topper. */
311
492
  readonly followButtonVariant?: Maybe<Scalars['FollowButtonVariant']['output']>;
493
+ /** The concept object of the genre, eg. {'type': 'GENRE', 'prefLabel': 'Opinion', ...}. */
312
494
  readonly genreConcept?: Maybe<Concept>;
495
+ /** The headline text of the topper. */
313
496
  readonly headline: Scalars['String']['output'];
497
+ /** An array of images to be displayed on the topper. */
314
498
  readonly images: ReadonlyArray<Image>;
499
+ /** An abstract syntax tree of the introduction text. */
315
500
  readonly intro?: Maybe<RichText>;
501
+ /** Whether the headline should be large. */
316
502
  readonly isLargeHeadline?: Maybe<Scalars['Boolean']['output']>;
503
+ /** The layout of the topper, eg. 'split-text-left'. */
317
504
  readonly layout?: Maybe<Scalars['String']['output']>;
505
+ /** Whether the topper should have a text shadow. */
318
506
  readonly textShadow?: Maybe<Scalars['Boolean']['output']>;
319
507
  };
320
508
 
321
509
  export type Design = {
510
+ /** The layout, eg. 'default'. */
322
511
  readonly layout?: Maybe<Scalars['String']['output']>;
512
+ /** A scalar representing the theme of the design, eg. 'extra-wide'. */
323
513
  readonly theme?: Maybe<Scalars['PackageDesign']['output']>;
324
514
  };
325
515
 
326
516
  export type Flourish = Reference & {
517
+ /** The fallback image to be used if the flourish graphics cannot be loaded. */
327
518
  readonly fallbackImage?: Maybe<FlourishFallback>;
519
+ /** The type of the reference, eg. 'flourish'. */
328
520
  readonly type: Scalars['String']['output'];
329
521
  };
330
522
 
331
523
  export type FlourishFallback = {
524
+ /** The height in pixels of the fallback image. */
332
525
  readonly height?: Maybe<Scalars['Int']['output']>;
526
+ /** The url of the fallback image. */
333
527
  readonly url?: Maybe<Scalars['String']['output']>;
528
+ /** The width in pixels of the fallback image. */
334
529
  readonly width?: Maybe<Scalars['Int']['output']>;
335
530
  };
336
531
 
337
532
  export type FullBleedTopper = Topper & TopperWithBrand & TopperWithImages & TopperWithTheme & {
533
+ /** Whether the topper should have a background box. */
338
534
  readonly backgroundBox?: Maybe<Scalars['Boolean']['output']>;
535
+ /** The background colour of the topper. */
339
536
  readonly backgroundColour?: Maybe<Scalars['TopperBackgroundColour']['output']>;
537
+ /** The concept object of the brand, eg. {'type': 'BRAND', 'prefLabel': 'FT Magazine', ...}. */
340
538
  readonly brandConcept?: Maybe<Concept>;
539
+ /** The concept object to be displayed, eg. {'type': 'TOPIC', 'prefLabel': 'Non-dom tax status', ...}. */
341
540
  readonly displayConcept?: Maybe<Concept>;
541
+ /** A fallback image to be used if the 'images' are not availableimages: [Image!]!. */
342
542
  readonly fallbackImage?: Maybe<Image>;
543
+ /** The variant of the follow button to be displayed on the topper. */
343
544
  readonly followButtonVariant?: Maybe<Scalars['FollowButtonVariant']['output']>;
545
+ /** The concept object of the genre, eg. {'type': 'GENRE', 'prefLabel': 'Opinion', ...}. */
344
546
  readonly genreConcept?: Maybe<Concept>;
547
+ /** The headline text of the topper. */
345
548
  readonly headline: Scalars['String']['output'];
549
+ /** An array of images to be displayed on the topper. */
346
550
  readonly images: ReadonlyArray<Image>;
551
+ /** An abstract syntax tree of the introduction text. */
347
552
  readonly intro?: Maybe<RichText>;
553
+ /** Whether the headline should be large. */
348
554
  readonly isLargeHeadline?: Maybe<Scalars['Boolean']['output']>;
555
+ /** The layout of the topper, eg. 'split-text-left'. */
349
556
  readonly layout?: Maybe<Scalars['String']['output']>;
557
+ /** Whether the topper should have a text shadow. */
350
558
  readonly textShadow?: Maybe<Scalars['Boolean']['output']>;
351
559
  };
352
560
 
353
561
  export type Image = {
562
+ /** Text describing the content of the image, usually hidden from the user unless the image is not available. It is to be read by screen readers. */
354
563
  readonly altText?: Maybe<Scalars['String']['output']>;
564
+ /** Text describing the content of the image, always shown next to the image. */
355
565
  readonly caption?: Maybe<Scalars['String']['output']>;
566
+ /** The credit of the image, eg. 'Getty Images'. */
356
567
  readonly credit?: Maybe<Scalars['String']['output']>;
568
+ /** The format of the image, eg. 'portrait'. */
357
569
  readonly format: Scalars['ImageFormat']['output'];
570
+ /** The height of the image in pixels. */
358
571
  readonly height?: Maybe<Scalars['Int']['output']>;
572
+ /** The unique identifier of the image - a uuid or a url. */
359
573
  readonly id: Scalars['String']['output'];
574
+ /** An array of image sources, ie. different images to render based on input width resulting in responsive images. */
360
575
  readonly sourceSet: ReadonlyArray<ImageSource>;
576
+ /** The type of the image, eg. 'graphic'. */
361
577
  readonly type?: Maybe<Scalars['ImageType']['output']>;
578
+ /** The url of the image, eg. 'https://www.ft.com/__origami/service/image/v2/images/raw/ftcms%3Aimage%3A0e7e7b6e-4e7b-11e9-bde6-79e4b4311f90?source=next&fit=scale-down&width=700'. */
362
579
  readonly url?: Maybe<Scalars['String']['output']>;
580
+ /** The width of the image in pixels. */
363
581
  readonly width?: Maybe<Scalars['Int']['output']>;
364
582
  };
365
583
 
@@ -370,15 +588,25 @@ export type ImageSourceSetArgs = {
370
588
  };
371
589
 
372
590
  export type ImageDesktop = Image & {
591
+ /** Text describing the content of the image, usually hidden from the user unless the image is not available. It is to be read by screen readers. */
373
592
  readonly altText?: Maybe<Scalars['String']['output']>;
593
+ /** Text describing the content of the image, always shown next to the image. */
374
594
  readonly caption?: Maybe<Scalars['String']['output']>;
595
+ /** The credit of the image, eg. 'Getty Images'. */
375
596
  readonly credit?: Maybe<Scalars['String']['output']>;
597
+ /** The format of the image, eg. 'portrait'. */
376
598
  readonly format: Scalars['ImageFormat']['output'];
599
+ /** The height of the image in pixels. */
377
600
  readonly height?: Maybe<Scalars['Int']['output']>;
601
+ /** The unique identifier of the image - a uuid or a url. */
378
602
  readonly id: Scalars['String']['output'];
603
+ /** An array of image sources, ie. different images to render based on input width resulting in responsive images. */
379
604
  readonly sourceSet: ReadonlyArray<ImageSource>;
605
+ /** The type of the image, eg. 'graphic'. */
380
606
  readonly type?: Maybe<Scalars['ImageType']['output']>;
607
+ /** The url of the image, eg. 'https://www.ft.com/__origami/service/image/v2/images/raw/ftcms%3Aimage%3A0e7e7b6e-4e7b-11e9-bde6-79e4b4311f90?source=next&fit=scale-down&width=700'. */
381
608
  readonly url?: Maybe<Scalars['String']['output']>;
609
+ /** The width of the image in pixels. */
382
610
  readonly width?: Maybe<Scalars['Int']['output']>;
383
611
  };
384
612
 
@@ -389,15 +617,25 @@ export type ImageDesktopSourceSetArgs = {
389
617
  };
390
618
 
391
619
  export type ImageLandscape = Image & {
620
+ /** Text describing the content of the image, usually hidden from the user unless the image is not available. It is to be read by screen readers. */
392
621
  readonly altText?: Maybe<Scalars['String']['output']>;
622
+ /** Text describing the content of the image, always shown next to the image. */
393
623
  readonly caption?: Maybe<Scalars['String']['output']>;
624
+ /** The credit of the image, eg. 'Getty Images'. */
394
625
  readonly credit?: Maybe<Scalars['String']['output']>;
626
+ /** The format of the image, eg. 'portrait'. */
395
627
  readonly format: Scalars['ImageFormat']['output'];
628
+ /** The height of the image in pixels. */
396
629
  readonly height?: Maybe<Scalars['Int']['output']>;
630
+ /** The unique identifier of the image - a uuid or a url. */
397
631
  readonly id: Scalars['String']['output'];
632
+ /** An array of image sources, ie. different images to render based on input width resulting in responsive images. */
398
633
  readonly sourceSet: ReadonlyArray<ImageSource>;
634
+ /** The type of the image, eg. 'graphic'. */
399
635
  readonly type?: Maybe<Scalars['ImageType']['output']>;
636
+ /** The url of the image, eg. 'https://www.ft.com/__origami/service/image/v2/images/raw/ftcms%3Aimage%3A0e7e7b6e-4e7b-11e9-bde6-79e4b4311f90?source=next&fit=scale-down&width=700'. */
400
637
  readonly url?: Maybe<Scalars['String']['output']>;
638
+ /** The width of the image in pixels. */
401
639
  readonly width?: Maybe<Scalars['Int']['output']>;
402
640
  };
403
641
 
@@ -408,15 +646,25 @@ export type ImageLandscapeSourceSetArgs = {
408
646
  };
409
647
 
410
648
  export type ImageMobile = Image & {
649
+ /** Text describing the content of the image, usually hidden from the user unless the image is not available. It is to be read by screen readers. */
411
650
  readonly altText?: Maybe<Scalars['String']['output']>;
651
+ /** Text describing the content of the image, always shown next to the image. */
412
652
  readonly caption?: Maybe<Scalars['String']['output']>;
653
+ /** The credit of the image, eg. 'Getty Images'. */
413
654
  readonly credit?: Maybe<Scalars['String']['output']>;
655
+ /** The format of the image, eg. 'portrait'. */
414
656
  readonly format: Scalars['ImageFormat']['output'];
657
+ /** The height of the image in pixels. */
415
658
  readonly height?: Maybe<Scalars['Int']['output']>;
659
+ /** The unique identifier of the image - a uuid or a url. */
416
660
  readonly id: Scalars['String']['output'];
661
+ /** An array of image sources, ie. different images to render based on input width resulting in responsive images. */
417
662
  readonly sourceSet: ReadonlyArray<ImageSource>;
663
+ /** The type of the image, eg. 'graphic'. */
418
664
  readonly type?: Maybe<Scalars['ImageType']['output']>;
665
+ /** The url of the image, eg. 'https://www.ft.com/__origami/service/image/v2/images/raw/ftcms%3Aimage%3A0e7e7b6e-4e7b-11e9-bde6-79e4b4311f90?source=next&fit=scale-down&width=700'. */
419
666
  readonly url?: Maybe<Scalars['String']['output']>;
667
+ /** The width of the image in pixels. */
420
668
  readonly width?: Maybe<Scalars['Int']['output']>;
421
669
  };
422
670
 
@@ -427,15 +675,25 @@ export type ImageMobileSourceSetArgs = {
427
675
  };
428
676
 
429
677
  export type ImagePortrait = Image & {
678
+ /** Text describing the content of the image, usually hidden from the user unless the image is not available. It is to be read by screen readers. */
430
679
  readonly altText?: Maybe<Scalars['String']['output']>;
680
+ /** Text describing the content of the image, always shown next to the image. */
431
681
  readonly caption?: Maybe<Scalars['String']['output']>;
682
+ /** The credit of the image, eg. 'Getty Images'. */
432
683
  readonly credit?: Maybe<Scalars['String']['output']>;
684
+ /** The format of the image, eg. 'portrait'. */
433
685
  readonly format: Scalars['ImageFormat']['output'];
686
+ /** The height of the image in pixels. */
434
687
  readonly height?: Maybe<Scalars['Int']['output']>;
688
+ /** The unique identifier of the image - a uuid or a url. */
435
689
  readonly id: Scalars['String']['output'];
690
+ /** An array of image sources, ie. different images to render based on input width resulting in responsive images. */
436
691
  readonly sourceSet: ReadonlyArray<ImageSource>;
692
+ /** The type of the image, eg. 'graphic'. */
437
693
  readonly type?: Maybe<Scalars['ImageType']['output']>;
694
+ /** The url of the image, eg. 'https://www.ft.com/__origami/service/image/v2/images/raw/ftcms%3Aimage%3A0e7e7b6e-4e7b-11e9-bde6-79e4b4311f90?source=next&fit=scale-down&width=700'. */
438
695
  readonly url?: Maybe<Scalars['String']['output']>;
696
+ /** The width of the image in pixels. */
439
697
  readonly width?: Maybe<Scalars['Int']['output']>;
440
698
  };
441
699
 
@@ -446,26 +704,41 @@ export type ImagePortraitSourceSetArgs = {
446
704
  };
447
705
 
448
706
  export type ImageSet = Reference & {
707
+ /** A set of images with different sizes and formats. */
449
708
  readonly picture?: Maybe<Picture>;
709
+ /** The type of the reference, eg. 'image-set'. */
450
710
  readonly type: Scalars['String']['output'];
451
711
  };
452
712
 
453
713
  export type ImageSource = {
714
+ /** The device pixel ratio. DPR is calculated as DPR = Physical Pixels (pixels seen on screen) / Logical Pixels (pixel that can fit in a given space). */
454
715
  readonly dpr?: Maybe<Scalars['Int']['output']>;
716
+ /** The url of the image source, eg. 'https://www.ft.com/__origami/service/image/v2/images/raw/ftcms%3Aimage%3A0e7e7b6e-4e7b-11e9-bde6-79e4b4311f90?source=next&fit=scale-down&width=700'. */
455
717
  readonly url: Scalars['String']['output'];
718
+ /** The width of the image source in pixels. */
456
719
  readonly width?: Maybe<Scalars['Int']['output']>;
457
720
  };
458
721
 
459
722
  export type ImageSquare = Image & {
723
+ /** Text describing the content of the image, usually hidden from the user unless the image is not available. It is to be read by screen readers. */
460
724
  readonly altText?: Maybe<Scalars['String']['output']>;
725
+ /** Text describing the content of the image, always shown next to the image. */
461
726
  readonly caption?: Maybe<Scalars['String']['output']>;
727
+ /** The credit of the image, eg. 'Getty Images'. */
462
728
  readonly credit?: Maybe<Scalars['String']['output']>;
729
+ /** The format of the image, eg. 'portrait'. */
463
730
  readonly format: Scalars['ImageFormat']['output'];
731
+ /** The height of the image in pixels. */
464
732
  readonly height?: Maybe<Scalars['Int']['output']>;
733
+ /** The unique identifier of the image - a uuid or a url. */
465
734
  readonly id: Scalars['String']['output'];
735
+ /** An array of image sources, ie. different images to render based on input width resulting in responsive images. */
466
736
  readonly sourceSet: ReadonlyArray<ImageSource>;
737
+ /** The type of the image, eg. 'graphic'. */
467
738
  readonly type?: Maybe<Scalars['ImageType']['output']>;
739
+ /** The url of the image, eg. 'https://www.ft.com/__origami/service/image/v2/images/raw/ftcms%3Aimage%3A0e7e7b6e-4e7b-11e9-bde6-79e4b4311f90?source=next&fit=scale-down&width=700'. */
468
740
  readonly url?: Maybe<Scalars['String']['output']>;
741
+ /** The width of the image in pixels. */
469
742
  readonly width?: Maybe<Scalars['Int']['output']>;
470
743
  };
471
744
 
@@ -476,15 +749,25 @@ export type ImageSquareSourceSetArgs = {
476
749
  };
477
750
 
478
751
  export type ImageSquareFtEdit = Image & {
752
+ /** Text describing the content of the image, usually hidden from the user unless the image is not available. It is to be read by screen readers. */
479
753
  readonly altText?: Maybe<Scalars['String']['output']>;
754
+ /** Text describing the content of the image, always shown next to the image. */
480
755
  readonly caption?: Maybe<Scalars['String']['output']>;
756
+ /** The credit of the image, eg. 'Getty Images'. */
481
757
  readonly credit?: Maybe<Scalars['String']['output']>;
758
+ /** The format of the image, eg. 'portrait'. */
482
759
  readonly format: Scalars['ImageFormat']['output'];
760
+ /** The height of the image in pixels. */
483
761
  readonly height?: Maybe<Scalars['Int']['output']>;
762
+ /** The unique identifier of the image - a uuid or a url. */
484
763
  readonly id: Scalars['String']['output'];
764
+ /** An array of image sources, ie. different images to render based on input width resulting in responsive images. */
485
765
  readonly sourceSet: ReadonlyArray<ImageSource>;
766
+ /** The type of the image, eg. 'graphic'. */
486
767
  readonly type?: Maybe<Scalars['ImageType']['output']>;
768
+ /** The url of the image, eg. 'https://www.ft.com/__origami/service/image/v2/images/raw/ftcms%3Aimage%3A0e7e7b6e-4e7b-11e9-bde6-79e4b4311f90?source=next&fit=scale-down&width=700'. */
487
769
  readonly url?: Maybe<Scalars['String']['output']>;
770
+ /** The width of the image in pixels. */
488
771
  readonly width?: Maybe<Scalars['Int']['output']>;
489
772
  };
490
773
 
@@ -495,15 +778,25 @@ export type ImageSquareFtEditSourceSetArgs = {
495
778
  };
496
779
 
497
780
  export type ImageStandard = Image & {
781
+ /** Text describing the content of the image, usually hidden from the user unless the image is not available. It is to be read by screen readers. */
498
782
  readonly altText?: Maybe<Scalars['String']['output']>;
783
+ /** Text describing the content of the image, always shown next to the image. */
499
784
  readonly caption?: Maybe<Scalars['String']['output']>;
785
+ /** The credit of the image, eg. 'Getty Images'. */
500
786
  readonly credit?: Maybe<Scalars['String']['output']>;
787
+ /** The format of the image, eg. 'portrait'. */
501
788
  readonly format: Scalars['ImageFormat']['output'];
789
+ /** The height of the image in pixels. */
502
790
  readonly height?: Maybe<Scalars['Int']['output']>;
791
+ /** The unique identifier of the image - a uuid or a url. */
503
792
  readonly id: Scalars['String']['output'];
793
+ /** An array of image sources, ie. different images to render based on input width resulting in responsive images. */
504
794
  readonly sourceSet: ReadonlyArray<ImageSource>;
795
+ /** The type of the image, eg. 'graphic'. */
505
796
  readonly type?: Maybe<Scalars['ImageType']['output']>;
797
+ /** The url of the image, eg. 'https://www.ft.com/__origami/service/image/v2/images/raw/ftcms%3Aimage%3A0e7e7b6e-4e7b-11e9-bde6-79e4b4311f90?source=next&fit=scale-down&width=700'. */
506
798
  readonly url?: Maybe<Scalars['String']['output']>;
799
+ /** The width of the image in pixels. */
507
800
  readonly width?: Maybe<Scalars['Int']['output']>;
508
801
  };
509
802
 
@@ -514,15 +807,25 @@ export type ImageStandardSourceSetArgs = {
514
807
  };
515
808
 
516
809
  export type ImageStandardInline = Image & {
810
+ /** Text describing the content of the image, usually hidden from the user unless the image is not available. It is to be read by screen readers. */
517
811
  readonly altText?: Maybe<Scalars['String']['output']>;
812
+ /** Text describing the content of the image, always shown next to the image. */
518
813
  readonly caption?: Maybe<Scalars['String']['output']>;
814
+ /** The credit of the image, eg. 'Getty Images'. */
519
815
  readonly credit?: Maybe<Scalars['String']['output']>;
816
+ /** The format of the image, eg. 'portrait'. */
520
817
  readonly format: Scalars['ImageFormat']['output'];
818
+ /** The height of the image in pixels. */
521
819
  readonly height?: Maybe<Scalars['Int']['output']>;
820
+ /** The unique identifier of the image - a uuid or a url. */
522
821
  readonly id: Scalars['String']['output'];
822
+ /** An array of image sources, ie. different images to render based on input width resulting in responsive images. */
523
823
  readonly sourceSet: ReadonlyArray<ImageSource>;
824
+ /** The type of the image, eg. 'graphic'. */
524
825
  readonly type?: Maybe<Scalars['ImageType']['output']>;
826
+ /** The url of the image, eg. 'https://www.ft.com/__origami/service/image/v2/images/raw/ftcms%3Aimage%3A0e7e7b6e-4e7b-11e9-bde6-79e4b4311f90?source=next&fit=scale-down&width=700'. */
525
827
  readonly url?: Maybe<Scalars['String']['output']>;
828
+ /** The width of the image in pixels. */
526
829
  readonly width?: Maybe<Scalars['Int']['output']>;
527
830
  };
528
831
 
@@ -533,15 +836,25 @@ export type ImageStandardInlineSourceSetArgs = {
533
836
  };
534
837
 
535
838
  export type ImageWide = Image & {
839
+ /** Text describing the content of the image, usually hidden from the user unless the image is not available. It is to be read by screen readers. */
536
840
  readonly altText?: Maybe<Scalars['String']['output']>;
841
+ /** Text describing the content of the image, always shown next to the image. */
537
842
  readonly caption?: Maybe<Scalars['String']['output']>;
843
+ /** The credit of the image, eg. 'Getty Images'. */
538
844
  readonly credit?: Maybe<Scalars['String']['output']>;
845
+ /** The format of the image, eg. 'portrait'. */
539
846
  readonly format: Scalars['ImageFormat']['output'];
847
+ /** The height of the image in pixels. */
540
848
  readonly height?: Maybe<Scalars['Int']['output']>;
849
+ /** The unique identifier of the image - a uuid or a url. */
541
850
  readonly id: Scalars['String']['output'];
851
+ /** An array of image sources, ie. different images to render based on input width resulting in responsive images. */
542
852
  readonly sourceSet: ReadonlyArray<ImageSource>;
853
+ /** The type of the image, eg. 'graphic'. */
543
854
  readonly type?: Maybe<Scalars['ImageType']['output']>;
855
+ /** The url of the image, eg. 'https://www.ft.com/__origami/service/image/v2/images/raw/ftcms%3Aimage%3A0e7e7b6e-4e7b-11e9-bde6-79e4b4311f90?source=next&fit=scale-down&width=700'. */
544
856
  readonly url?: Maybe<Scalars['String']['output']>;
857
+ /** The width of the image in pixels. */
545
858
  readonly width?: Maybe<Scalars['Int']['output']>;
546
859
  };
547
860
 
@@ -551,47 +864,83 @@ export type ImageWideSourceSetArgs = {
551
864
  width?: InputMaybe<Scalars['Int']['input']>;
552
865
  };
553
866
 
867
+ /** Indicators are used to determine teaser styling. */
554
868
  export type Indicators = {
869
+ /** The access level of the teaser, eg. 'free' or 'premium'. */
555
870
  readonly accessLevel?: Maybe<Scalars['AccessLevel']['output']>;
871
+ /** Whether the teaser is a column, ie. has one author. */
556
872
  readonly isColumn?: Maybe<Scalars['Boolean']['output']>;
873
+ /** Whether the teaser is an editor's choice. */
557
874
  readonly isEditorsChoice?: Maybe<Scalars['Boolean']['output']>;
875
+ /** Whether the teaser is exclusive. */
558
876
  readonly isExclusive?: Maybe<Scalars['Boolean']['output']>;
877
+ /** Whether the teaser is an opinion piece. */
559
878
  readonly isOpinion?: Maybe<Scalars['Boolean']['output']>;
879
+ /** Whether the teaser is a podcast. */
560
880
  readonly isPodcast?: Maybe<Scalars['Boolean']['output']>;
881
+ /** Whether the teaser is a scoop. */
561
882
  readonly isScoop?: Maybe<Scalars['Boolean']['output']>;
562
883
  };
563
884
 
564
885
  export type LayoutImage = Reference & {
886
+ /** A set of images with different sizes and formats. */
565
887
  readonly picture?: Maybe<Picture>;
888
+ /** The type of the reference, eg. 'layout-image'. */
566
889
  readonly type: Scalars['String']['output'];
567
890
  };
568
891
 
569
892
  export type LiveBlogPackage = Content & {
893
+ /** A scalar representing the access level of the article, eg. 'free'. */
570
894
  readonly accessLevel?: Maybe<Scalars['AccessLevel']['output']>;
895
+ /** An alternative introductory paragraph of the article. */
571
896
  readonly altStandfirst?: Maybe<AltStandfirst>;
897
+ /** An alternative title of the article. */
572
898
  readonly altTitle?: Maybe<AltTitle>;
899
+ /** An array of concepts related to the article, eg. organisations or topics. */
573
900
  readonly annotations?: Maybe<ReadonlyArray<Maybe<Concept>>>;
901
+ /** An abstract syntax tree of the article content. */
574
902
  readonly body?: Maybe<RichText>;
903
+ /** The raw string of the XML as returned from ContentAPI. */
575
904
  readonly bodyXML?: Maybe<Scalars['String']['output']>;
905
+ /** An abstract syntax tree of the authors of the article. */
576
906
  readonly byline?: Maybe<StructuredContent>;
907
+ /** A scalar representing whether the article can be syndicated, ie. published by a third party site. */
577
908
  readonly canBeSyndicated?: Maybe<Scalars['CanBeSyndicated']['output']>;
909
+ /** Whether comments are enabled on the article. */
578
910
  readonly commentsEnabled?: Maybe<Scalars['Boolean']['output']>;
911
+ /** A design object containing the theme and layout of the article. */
579
912
  readonly design?: Maybe<Design>;
913
+ /** The editorial division the article belongs to, eg. 'FT-SpecialReports'. */
580
914
  readonly editorialDesk?: Maybe<Scalars['String']['output']>;
915
+ /** The first ISO string date the article was published, eg. '2024-04-03T10:35:52.443Z'. */
581
916
  readonly firstPublishedDate: Scalars['String']['output'];
917
+ /** The unique identifier of the article - a uuid or a url. */
582
918
  readonly id: Scalars['ID']['output'];
919
+ /** The concept to use for instant alert CTAs. */
583
920
  readonly instantAlertConcept?: Maybe<Concept>;
921
+ /** The child articles of this live blog package. */
584
922
  readonly liveBlogPosts?: Maybe<ReadonlyArray<Maybe<Content>>>;
923
+ /** An image object containing the url and the caption, to be displayed usually before the article content. */
585
924
  readonly mainImage?: Maybe<Image>;
925
+ /** The party that originated the article, eg. 'FT'. */
586
926
  readonly originatingParty?: Maybe<Scalars['String']['output']>;
927
+ /** The pinned article of this live blog package. */
587
928
  readonly pinnedPost?: Maybe<Content>;
929
+ /** The ISO string date the article was published, eg. '2024-04-03T10:35:52.443Z'. */
588
930
  readonly publishedDate: Scalars['String']['output'];
931
+ /** Whether the live blog package should be updated in real time. */
589
932
  readonly realtime?: Maybe<Scalars['Boolean']['output']>;
933
+ /** An introductory paragraph of the article. */
590
934
  readonly standfirst?: Maybe<Scalars['String']['output']>;
935
+ /** A promotional thumbnail / snapshot of the article. */
591
936
  readonly teaser?: Maybe<Teaser>;
937
+ /** The title of the article. */
592
938
  readonly title: Scalars['String']['output'];
939
+ /** A banner located usually at the top of articles containing the title, the standfirst and any images. */
593
940
  readonly topper?: Maybe<Topper>;
941
+ /** The type of the article, eg. 'Article' or 'Video'. */
594
942
  readonly type: Scalars['ContentType']['output'];
943
+ /** The url of the concept. Vanity urls replace long, randomly generated urls - they are more user friendly and concise. Relative urls are relative to the current domain. */
595
944
  readonly url: Scalars['String']['output'];
596
945
  };
597
946
 
@@ -612,31 +961,57 @@ export type LiveBlogPackageUrlArgs = {
612
961
  };
613
962
 
614
963
  export type LiveBlogPost = Content & {
964
+ /** A scalar representing the access level of the article, eg. 'free'. */
615
965
  readonly accessLevel?: Maybe<Scalars['AccessLevel']['output']>;
966
+ /** An alternative introductory paragraph of the article. */
616
967
  readonly altStandfirst?: Maybe<AltStandfirst>;
968
+ /** An alternative title of the article. */
617
969
  readonly altTitle?: Maybe<AltTitle>;
970
+ /** An array of concepts related to the article, eg. organisations or topics. */
618
971
  readonly annotations?: Maybe<ReadonlyArray<Maybe<Concept>>>;
972
+ /** An abstract syntax tree of the article content. */
619
973
  readonly body?: Maybe<RichText>;
974
+ /** The raw string of the XML as returned from ContentAPI. */
620
975
  readonly bodyXML?: Maybe<Scalars['String']['output']>;
976
+ /** An abstract syntax tree of the authors of the article. */
621
977
  readonly byline?: Maybe<StructuredContent>;
978
+ /** A scalar representing whether the article can be syndicated, ie. published by a third party site. */
622
979
  readonly canBeSyndicated?: Maybe<Scalars['CanBeSyndicated']['output']>;
980
+ /** Whether comments are enabled on the article. */
623
981
  readonly commentsEnabled?: Maybe<Scalars['Boolean']['output']>;
982
+ /** The parent article, indicating this article is a part of a series or package. */
624
983
  readonly containedIn?: Maybe<Content>;
984
+ /** A design object containing the theme and layout of the article. */
625
985
  readonly design?: Maybe<Design>;
986
+ /** The editorial division the article belongs to, eg. 'FT-SpecialReports'. */
626
987
  readonly editorialDesk?: Maybe<Scalars['String']['output']>;
988
+ /** The first ISO string date the article was published, eg. '2024-04-03T10:35:52.443Z'. */
627
989
  readonly firstPublishedDate: Scalars['String']['output'];
990
+ /** The unique identifier of the article - a uuid or a url. */
628
991
  readonly id: Scalars['ID']['output'];
992
+ /** An object indicating whether the article is an opinion piece. */
629
993
  readonly indicators?: Maybe<Indicators>;
994
+ /** The concept to use for instant alert CTAs. */
630
995
  readonly instantAlertConcept?: Maybe<Concept>;
996
+ /** Whether the live-blog-post should be pinned. */
631
997
  readonly isPinned?: Maybe<Scalars['Boolean']['output']>;
998
+ /** An image object containing the url and the caption, to be displayed usually before the article content. */
632
999
  readonly mainImage?: Maybe<Image>;
1000
+ /** The party that originated the article, eg. 'FT'. */
633
1001
  readonly originatingParty?: Maybe<Scalars['String']['output']>;
1002
+ /** The ISO string date the article was published, eg. '2024-04-03T10:35:52.443Z'. */
634
1003
  readonly publishedDate: Scalars['String']['output'];
1004
+ /** An introductory paragraph of the article. */
635
1005
  readonly standfirst?: Maybe<Scalars['String']['output']>;
1006
+ /** A promotional thumbnail / snapshot of the article. */
636
1007
  readonly teaser?: Maybe<Teaser>;
1008
+ /** The title of the article. */
637
1009
  readonly title: Scalars['String']['output'];
1010
+ /** A banner located usually at the top of articles containing the title, the standfirst and any images. */
638
1011
  readonly topper?: Maybe<Topper>;
1012
+ /** The type of the article, eg. 'Article' or 'Video'. */
639
1013
  readonly type: Scalars['ContentType']['output'];
1014
+ /** The url of the concept. Vanity urls replace long, randomly generated urls - they are more user friendly and concise. Relative urls are relative to the current domain. */
640
1015
  readonly url: Scalars['String']['output'];
641
1016
  };
642
1017
 
@@ -652,20 +1027,27 @@ export type LiveBlogPostUrlArgs = {
652
1027
  };
653
1028
 
654
1029
  export type MainImage = Reference & {
1030
+ /** A set of images with different sizes and formats. */
655
1031
  readonly picture?: Maybe<Picture>;
1032
+ /** The type of the reference, eg. 'main-image'. */
656
1033
  readonly type: Scalars['String']['output'];
657
1034
  };
658
1035
 
659
1036
  export type Media = {
1037
+ /** The duration of the media in milliseconds. */
660
1038
  readonly duration?: Maybe<Scalars['Int']['output']>;
1039
+ /** The filesize of the media in bytes. */
661
1040
  readonly filesize?: Maybe<Scalars['Int']['output']>;
1041
+ /** The media type eg. video/mp4. */
662
1042
  readonly mediaType?: Maybe<Scalars['String']['output']>;
1043
+ /** The url of the media, eg. 'https://next-media-api.ft.com/renditions/16868569859480/0x0.mp3'. */
663
1044
  readonly url?: Maybe<Scalars['String']['output']>;
664
1045
  };
665
1046
 
666
1047
  export type MetaLink = Concept | ContentPackage;
667
1048
 
668
1049
  export type Mutation = {
1050
+ /** A mutation to invalidate the redis cache for content-api responses for a given uuid. */
669
1051
  readonly invalidateRedisCache?: Maybe<Scalars['String']['output']>;
670
1052
  };
671
1053
 
@@ -675,17 +1057,29 @@ export type MutationInvalidateRedisCacheArgs = {
675
1057
  };
676
1058
 
677
1059
  export type OpinionTopper = Topper & TopperWithHeadshot & TopperWithTheme & {
1060
+ /** Whether the topper should have a background box. */
678
1061
  readonly backgroundBox?: Maybe<Scalars['Boolean']['output']>;
1062
+ /** The background colour of the topper. */
679
1063
  readonly backgroundColour?: Maybe<Scalars['TopperBackgroundColour']['output']>;
1064
+ /** The concept object describing details of the column author. */
680
1065
  readonly columnist?: Maybe<Concept>;
1066
+ /** The concept object to be displayed, eg. {'type': 'TOPIC', 'prefLabel': 'Non-dom tax status', ...}. */
681
1067
  readonly displayConcept?: Maybe<Concept>;
1068
+ /** The variant of the follow button to be displayed on the topper. */
682
1069
  readonly followButtonVariant?: Maybe<Scalars['FollowButtonVariant']['output']>;
1070
+ /** The concept object of the genre, eg. {'type': 'GENRE', 'prefLabel': 'Opinion', ...}. */
683
1071
  readonly genreConcept?: Maybe<Concept>;
1072
+ /** The headline text of the topper. */
684
1073
  readonly headline: Scalars['String']['output'];
1074
+ /** The url of the headshot image, eg. for columns with one key author. */
685
1075
  readonly headshot?: Maybe<Scalars['String']['output']>;
1076
+ /** An abstract syntax tree of the introduction text. */
686
1077
  readonly intro?: Maybe<RichText>;
1078
+ /** Whether the headline should be large. */
687
1079
  readonly isLargeHeadline?: Maybe<Scalars['Boolean']['output']>;
1080
+ /** The layout of the topper, eg. 'split-text-left'. */
688
1081
  readonly layout?: Maybe<Scalars['String']['output']>;
1082
+ /** Whether the topper should have a text shadow. */
689
1083
  readonly textShadow?: Maybe<Scalars['Boolean']['output']>;
690
1084
  };
691
1085
 
@@ -695,70 +1089,123 @@ export type OpinionTopperHeadshotArgs = {
695
1089
  width?: InputMaybe<Scalars['Int']['input']>;
696
1090
  };
697
1091
 
1092
+ /** A wrapper for images. */
698
1093
  export type Picture = {
1094
+ /** The alt text of the image to be used for accessibility. */
699
1095
  readonly alt: Scalars['String']['output'];
1096
+ /** The caption of the image. */
700
1097
  readonly caption?: Maybe<Scalars['String']['output']>;
1098
+ /** The credit of the image, eg. 'Getty Images'. */
701
1099
  readonly credit?: Maybe<Scalars['String']['output']>;
1100
+ /** A fallback image to be used if the 'images' are not available. */
702
1101
  readonly fallbackImage: Image;
1102
+ /** The type of the image, eg. 'image' or 'graphic'. */
703
1103
  readonly imageType: Scalars['ImageType']['output'];
1104
+ /** A set of images with different sizes and formats. */
704
1105
  readonly images: ReadonlyArray<Image>;
1106
+ /** The layout width of the image, eg, 'standard'. */
705
1107
  readonly layoutWidth?: Maybe<Scalars['String']['output']>;
706
1108
  };
707
1109
 
708
1110
  export type PictureFullBleed = Picture & {
1111
+ /** The alt text of the image to be used for accessibility. */
709
1112
  readonly alt: Scalars['String']['output'];
1113
+ /** The caption of the image. */
710
1114
  readonly caption?: Maybe<Scalars['String']['output']>;
1115
+ /** The credit of the image, eg. 'Getty Images'. */
711
1116
  readonly credit?: Maybe<Scalars['String']['output']>;
1117
+ /** A fallback image to be used if the 'images' are not available. */
712
1118
  readonly fallbackImage: Image;
1119
+ /** The type of the image, eg. 'image' or 'graphic'. */
713
1120
  readonly imageType: Scalars['ImageType']['output'];
1121
+ /** A set of images with different sizes and formats. */
714
1122
  readonly images: ReadonlyArray<Image>;
1123
+ /** The layout width of the image, eg, 'standard'. */
715
1124
  readonly layoutWidth?: Maybe<Scalars['String']['output']>;
716
1125
  };
717
1126
 
718
1127
  export type PictureInline = Picture & {
1128
+ /** The alt text of the image to be used for accessibility. */
719
1129
  readonly alt: Scalars['String']['output'];
1130
+ /** The caption of the image. */
720
1131
  readonly caption?: Maybe<Scalars['String']['output']>;
1132
+ /** The credit of the image, eg. 'Getty Images'. */
721
1133
  readonly credit?: Maybe<Scalars['String']['output']>;
1134
+ /** A fallback image to be used if the 'images' are not available. */
722
1135
  readonly fallbackImage: Image;
1136
+ /** The type of the image, eg. 'image' or 'graphic'. */
723
1137
  readonly imageType: Scalars['ImageType']['output'];
1138
+ /** A set of images with different sizes and formats. */
724
1139
  readonly images: ReadonlyArray<Image>;
1140
+ /** The layout width of the image, eg, 'standard'. */
725
1141
  readonly layoutWidth?: Maybe<Scalars['String']['output']>;
726
1142
  };
727
1143
 
728
1144
  export type PictureStandard = Picture & {
1145
+ /** The alt text of the image to be used for accessibility. */
729
1146
  readonly alt: Scalars['String']['output'];
1147
+ /** The caption of the image. */
730
1148
  readonly caption?: Maybe<Scalars['String']['output']>;
1149
+ /** The credit of the image, eg. 'Getty Images'. */
731
1150
  readonly credit?: Maybe<Scalars['String']['output']>;
1151
+ /** A fallback image to be used if the 'images' are not available. */
732
1152
  readonly fallbackImage: Image;
1153
+ /** The type of the image, eg. 'image' or 'graphic'. */
733
1154
  readonly imageType: Scalars['ImageType']['output'];
1155
+ /** A set of images with different sizes and formats. */
734
1156
  readonly images: ReadonlyArray<Image>;
1157
+ /** The layout width of the image, eg, 'standard'. */
735
1158
  readonly layoutWidth?: Maybe<Scalars['String']['output']>;
736
1159
  };
737
1160
 
738
1161
  export type Placeholder = Content & {
1162
+ /** A scalar representing the access level of the article, eg. 'free'. */
739
1163
  readonly accessLevel?: Maybe<Scalars['AccessLevel']['output']>;
1164
+ /** An alternative introductory paragraph of the article. */
740
1165
  readonly altStandfirst?: Maybe<AltStandfirst>;
1166
+ /** An alternative title of the article. */
741
1167
  readonly altTitle?: Maybe<AltTitle>;
1168
+ /** An array of concepts related to the article, eg. organisations or topics. */
742
1169
  readonly annotations?: Maybe<ReadonlyArray<Maybe<Concept>>>;
1170
+ /** An abstract syntax tree of the article content. */
743
1171
  readonly body?: Maybe<RichText>;
1172
+ /** The raw string of the XML as returned from ContentAPI. */
744
1173
  readonly bodyXML?: Maybe<Scalars['String']['output']>;
1174
+ /** An abstract syntax tree of the authors of the article. */
745
1175
  readonly byline?: Maybe<StructuredContent>;
1176
+ /** A scalar representing whether the article can be syndicated, ie. published by a third party site. */
746
1177
  readonly canBeSyndicated?: Maybe<Scalars['CanBeSyndicated']['output']>;
1178
+ /** Whether comments are enabled on the article. */
747
1179
  readonly commentsEnabled?: Maybe<Scalars['Boolean']['output']>;
1180
+ /** The parent article, indicating this article is a part of a series or package. */
748
1181
  readonly containedIn?: Maybe<Content>;
1182
+ /** A design object containing the theme and layout of the article. */
749
1183
  readonly design?: Maybe<Design>;
1184
+ /** The editorial division the article belongs to, eg. 'FT-SpecialReports'. */
750
1185
  readonly editorialDesk?: Maybe<Scalars['String']['output']>;
1186
+ /** The first ISO string date the article was published, eg. '2024-04-03T10:35:52.443Z'. */
751
1187
  readonly firstPublishedDate: Scalars['String']['output'];
1188
+ /** The unique identifier of the article - a uuid or a url. */
752
1189
  readonly id: Scalars['ID']['output'];
1190
+ /** The concept to use for instant alert CTAs. */
753
1191
  readonly instantAlertConcept?: Maybe<Concept>;
1192
+ /** An image object containing the url and the caption, to be displayed usually before the article content. */
754
1193
  readonly mainImage?: Maybe<Image>;
1194
+ /** The party that originated the article, eg. 'FT'. */
755
1195
  readonly originatingParty?: Maybe<Scalars['String']['output']>;
1196
+ /** The ISO string date the article was published, eg. '2024-04-03T10:35:52.443Z'. */
756
1197
  readonly publishedDate: Scalars['String']['output'];
1198
+ /** An introductory paragraph of the article. */
757
1199
  readonly standfirst?: Maybe<Scalars['String']['output']>;
1200
+ /** A promotional thumbnail / snapshot of the article. */
758
1201
  readonly teaser?: Maybe<Teaser>;
1202
+ /** The title of the article. */
759
1203
  readonly title: Scalars['String']['output'];
1204
+ /** A banner located usually at the top of articles containing the title, the standfirst and any images. */
760
1205
  readonly topper?: Maybe<Topper>;
1206
+ /** The type of the article, eg. 'Article' or 'Video'. */
761
1207
  readonly type: Scalars['ContentType']['output'];
1208
+ /** The url of the concept. Vanity urls replace long, randomly generated urls - they are more user friendly and concise. Relative urls are relative to the current domain. */
762
1209
  readonly url: Scalars['String']['output'];
763
1210
  };
764
1211
 
@@ -774,18 +1221,31 @@ export type PlaceholderUrlArgs = {
774
1221
  };
775
1222
 
776
1223
  export type PodcastTopper = Topper & TopperWithBrand & TopperWithHeadshot & TopperWithTheme & {
1224
+ /** Whether the topper should have a background box. */
777
1225
  readonly backgroundBox?: Maybe<Scalars['Boolean']['output']>;
1226
+ /** The background colour of the topper. */
778
1227
  readonly backgroundColour?: Maybe<Scalars['TopperBackgroundColour']['output']>;
1228
+ /** The concept object of the brand, eg. {'type': 'BRAND', 'prefLabel': 'FT Magazine', ...}. */
779
1229
  readonly brandConcept?: Maybe<Concept>;
1230
+ /** The concept object describing details of the column author. */
780
1231
  readonly columnist?: Maybe<Concept>;
1232
+ /** The concept object to be displayed, eg. {'type': 'TOPIC', 'prefLabel': 'Non-dom tax status', ...}. */
781
1233
  readonly displayConcept?: Maybe<Concept>;
1234
+ /** The variant of the follow button to be displayed on the topper. */
782
1235
  readonly followButtonVariant?: Maybe<Scalars['FollowButtonVariant']['output']>;
1236
+ /** The concept object of the genre, eg. {'type': 'GENRE', 'prefLabel': 'Opinion', ...}. */
783
1237
  readonly genreConcept?: Maybe<Concept>;
1238
+ /** The headline text of the topper. */
784
1239
  readonly headline: Scalars['String']['output'];
1240
+ /** The url of the headshot image, eg. for columns with one key author. */
785
1241
  readonly headshot?: Maybe<Scalars['String']['output']>;
1242
+ /** An abstract syntax tree of the introduction text. */
786
1243
  readonly intro?: Maybe<RichText>;
1244
+ /** Whether the headline should be large. */
787
1245
  readonly isLargeHeadline?: Maybe<Scalars['Boolean']['output']>;
1246
+ /** The layout of the topper, eg. 'split-text-left'. */
788
1247
  readonly layout?: Maybe<Scalars['String']['output']>;
1248
+ /** Whether the topper should have a text shadow. */
789
1249
  readonly textShadow?: Maybe<Scalars['Boolean']['output']>;
790
1250
  };
791
1251
 
@@ -796,8 +1256,11 @@ export type PodcastTopperHeadshotArgs = {
796
1256
  };
797
1257
 
798
1258
  export type Query = {
1259
+ /** The resolved article content for given uuid. */
799
1260
  readonly content: Content;
1261
+ /** The article content as resolved from passed-in content-api json data. */
800
1262
  readonly contentFromJSON: Content;
1263
+ /** The version of the schema, eg. 2.0.0. */
801
1264
  readonly version: Scalars['String']['output'];
802
1265
  };
803
1266
 
@@ -812,21 +1275,26 @@ export type QueryContentFromJsonArgs = {
812
1275
  };
813
1276
 
814
1277
  export type RawImage = Reference & {
1278
+ /** The raw image object. */
815
1279
  readonly image: Image;
1280
+ /** The type of the reference, eg. 'raw-image'. */
816
1281
  readonly type: Scalars['String']['output'];
817
1282
  };
818
1283
 
819
1284
  export type Recommended = Reference & {
1285
+ /** Recommended references contain teaser thumbnails of related articles. */
820
1286
  readonly teaser?: Maybe<Teaser>;
1287
+ /** The type of the reference, eg. 'recommended'. */
821
1288
  readonly type: Scalars['String']['output'];
822
1289
  };
823
1290
 
824
1291
  export type Reference = {
1292
+ /** The type of the reference, eg. 'image-set'. References are additional data that cannot be loaded by content-tree. They will be appended to content-tree nodes during resolution. */
825
1293
  readonly type: Scalars['String']['output'];
826
1294
  };
827
1295
 
828
1296
  export type RichText = {
829
- /** Raw string of the XML as returned from ContentAPI. */
1297
+ /** Raw string of the XML as returned from content-api. */
830
1298
  readonly raw?: Maybe<Scalars['String']['output']>;
831
1299
  /** The source format eg. bodyXML. */
832
1300
  readonly source: Scalars['RichTextSource']['output'];
@@ -835,28 +1303,44 @@ export type RichText = {
835
1303
  };
836
1304
 
837
1305
  export type ScrollyImage = Reference & {
1306
+ /** A set of images with different sizes and formats. */
838
1307
  readonly picture?: Maybe<Picture>;
1308
+ /** The type of the reference, eg. 'scrolly-image'. */
839
1309
  readonly type: Scalars['String']['output'];
840
1310
  };
841
1311
 
842
1312
  export type SplitTextTopper = Topper & TopperWithBrand & TopperWithImages & TopperWithPackage & TopperWithTheme & {
1313
+ /** Whether the topper should have a background box. */
843
1314
  readonly backgroundBox?: Maybe<Scalars['Boolean']['output']>;
1315
+ /** The background colour of the topper. */
844
1316
  readonly backgroundColour?: Maybe<Scalars['TopperBackgroundColour']['output']>;
1317
+ /** The concept object of the brand, eg. {'type': 'BRAND', 'prefLabel': 'FT Magazine', ...}. */
845
1318
  readonly brandConcept?: Maybe<Concept>;
1319
+ /** The design of the topper, eg. 'standard'. */
846
1320
  readonly design?: Maybe<Scalars['String']['output']>;
1321
+ /** The concept object to be displayed, eg. {'type': 'TOPIC', 'prefLabel': 'Non-dom tax status', ...}. */
847
1322
  readonly displayConcept?: Maybe<Concept>;
1323
+ /** A fallback image to be used if the 'images' are not availableimages: [Image!]!. */
848
1324
  readonly fallbackImage?: Maybe<Image>;
1325
+ /** The variant of the follow button to be displayed on the topper. */
849
1326
  readonly followButtonVariant?: Maybe<Scalars['FollowButtonVariant']['output']>;
1327
+ /** The concept object of the genre, eg. {'type': 'GENRE', 'prefLabel': 'Opinion', ...}. */
850
1328
  readonly genreConcept?: Maybe<Concept>;
1329
+ /** The headline text of the topper. */
851
1330
  readonly headline: Scalars['String']['output'];
1331
+ /** An array of images to be displayed on the topper. */
852
1332
  readonly images: ReadonlyArray<Image>;
1333
+ /** An abstract syntax tree of the introduction text. */
853
1334
  readonly intro?: Maybe<RichText>;
1335
+ /** Whether the headline should be large. */
854
1336
  readonly isLargeHeadline?: Maybe<Scalars['Boolean']['output']>;
1337
+ /** The layout of the topper, eg. 'split-text-left'. */
855
1338
  readonly layout?: Maybe<Scalars['String']['output']>;
1339
+ /** Whether the topper should have a text shadow. */
856
1340
  readonly textShadow?: Maybe<Scalars['Boolean']['output']>;
857
1341
  };
858
1342
 
859
- /** Describes the structure of content as an abstract syntax tree */
1343
+ /** Describes the structure of content as an abstract syntax tree. */
860
1344
  export type StructuredContent = {
861
1345
  /** An array of objects containing extra information for nodes, which is fetched from external sources eg. Twitter API. */
862
1346
  readonly references: ReadonlyArray<Reference>;
@@ -867,24 +1351,40 @@ export type StructuredContent = {
867
1351
  };
868
1352
 
869
1353
  export type TableOfContents = {
1354
+ /** The formatting of the label, eg. 'part-number'. */
870
1355
  readonly labelType?: Maybe<Scalars['String']['output']>;
1356
+ /** The ordering, eg. 'exact-order'. */
871
1357
  readonly sequence?: Maybe<Scalars['String']['output']>;
872
1358
  };
873
1359
 
874
1360
  export type Teaser = {
1361
+ /** The date the content of the teaser was first published. */
875
1362
  readonly firstPublishedDate?: Maybe<Scalars['String']['output']>;
1363
+ /** The unique identifier of the teaser, a uuid or a url. */
876
1364
  readonly id?: Maybe<Scalars['String']['output']>;
1365
+ /** The image to be used as a thumbnail for the teaser. */
877
1366
  readonly image?: Maybe<Image>;
1367
+ /** An object containing a map of indicator items to boolean values, eg. accessLevel, isOpinion. */
878
1368
  readonly indicators?: Maybe<Indicators>;
1369
+ /** An object containing the metadata details of the teaser, eg. id, url, prefLabel. */
879
1370
  readonly metaAltLink?: Maybe<MetaLink>;
1371
+ /** An object containing the metadata details of the teaser, eg. id, url, prefLabel. */
880
1372
  readonly metaLink?: Maybe<MetaLink>;
1373
+ /** The text to be displayed before the metadata of the teaser. */
881
1374
  readonly metaPrefixText?: Maybe<Scalars['String']['output']>;
1375
+ /** The text to be displayed after the metadata of the teaser. */
882
1376
  readonly metaSuffixText?: Maybe<Scalars['String']['output']>;
1377
+ /** The date the content of the teaser was published. */
883
1378
  readonly publishedDate?: Maybe<Scalars['String']['output']>;
1379
+ /** The introductory text of the teaser. */
884
1380
  readonly standfirst?: Maybe<Scalars['String']['output']>;
1381
+ /** The theme to use for the teaser, eg. 'opinion' or 'news'. */
885
1382
  readonly theme?: Maybe<Scalars['String']['output']>;
1383
+ /** The title of the teaser. */
886
1384
  readonly title?: Maybe<Scalars['String']['output']>;
1385
+ /** The type of the teaser, eg. 'article' or 'video'. */
887
1386
  readonly type?: Maybe<Scalars['String']['output']>;
1387
+ /** The url of the content that the teaser refers to. */
888
1388
  readonly url: Scalars['String']['output'];
889
1389
  };
890
1390
 
@@ -894,22 +1394,33 @@ export type TeaserUrlArgs = {
894
1394
  };
895
1395
 
896
1396
  export type Topper = {
1397
+ /** Whether the topper should have a background box. */
897
1398
  readonly backgroundBox?: Maybe<Scalars['Boolean']['output']>;
1399
+ /** The background colour of the topper. */
898
1400
  readonly backgroundColour?: Maybe<Scalars['TopperBackgroundColour']['output']>;
1401
+ /** The concept object to be displayed, eg. {'type': 'TOPIC', 'prefLabel': 'Non-dom tax status', ...}. */
899
1402
  readonly displayConcept?: Maybe<Concept>;
1403
+ /** The variant of the follow button to be displayed on the topper. */
900
1404
  readonly followButtonVariant?: Maybe<Scalars['FollowButtonVariant']['output']>;
1405
+ /** The concept object of the genre, eg. {'type': 'GENRE', 'prefLabel': 'Opinion', ...}. */
901
1406
  readonly genreConcept?: Maybe<Concept>;
1407
+ /** The headline text of the topper. */
902
1408
  readonly headline: Scalars['String']['output'];
1409
+ /** An abstract syntax tree of the introduction text. */
903
1410
  readonly intro?: Maybe<RichText>;
1411
+ /** Whether the topper should have a text shadow. */
904
1412
  readonly textShadow?: Maybe<Scalars['Boolean']['output']>;
905
1413
  };
906
1414
 
907
1415
  export type TopperWithBrand = {
1416
+ /** The concept object of the brand, eg. {'type': 'BRAND', 'prefLabel': 'FT Magazine', ...}. */
908
1417
  readonly brandConcept?: Maybe<Concept>;
1418
+ /** The concept object of the genre, eg. {'type': 'GENRE', 'prefLabel': 'Opinion', ...}. */
909
1419
  readonly genreConcept?: Maybe<Concept>;
910
1420
  };
911
1421
 
912
1422
  export type TopperWithHeadshot = {
1423
+ /** The url of the headshot image, eg. for columns with one key author. */
913
1424
  readonly headshot?: Maybe<Scalars['String']['output']>;
914
1425
  };
915
1426
 
@@ -920,47 +1431,77 @@ export type TopperWithHeadshotHeadshotArgs = {
920
1431
  };
921
1432
 
922
1433
  export type TopperWithImages = {
1434
+ /** A fallback image to be used if the 'images' are not available. */
923
1435
  readonly fallbackImage?: Maybe<Image>;
1436
+ /** An array of images to be displayed on the topper. */
924
1437
  readonly images: ReadonlyArray<Image>;
925
1438
  };
926
1439
 
927
1440
  export type TopperWithPackage = {
1441
+ /** The design of the topper, eg. 'standard'. */
928
1442
  readonly design?: Maybe<Scalars['String']['output']>;
929
1443
  };
930
1444
 
931
1445
  export type TopperWithTheme = {
1446
+ /** Whether the headline should be large. */
932
1447
  readonly isLargeHeadline?: Maybe<Scalars['Boolean']['output']>;
1448
+ /** The layout of the topper, eg. 'split-text-left'. */
933
1449
  readonly layout?: Maybe<Scalars['String']['output']>;
934
1450
  };
935
1451
 
936
1452
  export type Tweet = Reference & {
1453
+ /** The raw HTML of the tweet. */
937
1454
  readonly html?: Maybe<Scalars['String']['output']>;
1455
+ /** The type of the reference, eg. 'tweet'. */
938
1456
  readonly type: Scalars['String']['output'];
939
1457
  };
940
1458
 
941
1459
  export type Video = Content & {
1460
+ /** A scalar representing the access level of the article, eg. 'free'. */
942
1461
  readonly accessLevel?: Maybe<Scalars['AccessLevel']['output']>;
1462
+ /** An alternative introductory paragraph of the article. */
943
1463
  readonly altStandfirst?: Maybe<AltStandfirst>;
1464
+ /** An alternative title of the article. */
944
1465
  readonly altTitle?: Maybe<AltTitle>;
1466
+ /** An array of concepts related to the article, eg. organisations or topics. */
945
1467
  readonly annotations?: Maybe<ReadonlyArray<Maybe<Concept>>>;
1468
+ /** An abstract syntax tree of the article content. */
946
1469
  readonly body?: Maybe<RichText>;
1470
+ /** The raw string of the XML as returned from ContentAPI. */
947
1471
  readonly bodyXML?: Maybe<Scalars['String']['output']>;
1472
+ /** An abstract syntax tree of the authors of the article. */
948
1473
  readonly byline?: Maybe<StructuredContent>;
1474
+ /** A scalar representing whether the article can be syndicated, ie. published by a third party site. */
949
1475
  readonly canBeSyndicated?: Maybe<Scalars['CanBeSyndicated']['output']>;
1476
+ /** Whether comments are enabled on the article. */
950
1477
  readonly commentsEnabled?: Maybe<Scalars['Boolean']['output']>;
1478
+ /** A design object containing the theme and layout of the article. */
951
1479
  readonly design?: Maybe<Design>;
1480
+ /** The editorial division the article belongs to, eg. 'FT-SpecialReports'. */
952
1481
  readonly editorialDesk?: Maybe<Scalars['String']['output']>;
1482
+ /** The first ISO string date the article was published, eg. '2024-04-03T10:35:52.443Z'. */
953
1483
  readonly firstPublishedDate: Scalars['String']['output'];
1484
+ /** The unique identifier of the article - a uuid or a url. */
954
1485
  readonly id: Scalars['ID']['output'];
1486
+ /** The concept to use for instant alert CTAs. */
955
1487
  readonly instantAlertConcept?: Maybe<Concept>;
1488
+ /** An image object containing the url and the caption, to be displayed usually before the article content. */
956
1489
  readonly mainImage?: Maybe<Image>;
1490
+ /** The party that originated the article, eg. 'FT'. */
957
1491
  readonly originatingParty?: Maybe<Scalars['String']['output']>;
1492
+ /** The ISO string date the article was published, eg. '2024-04-03T10:35:52.443Z'. */
958
1493
  readonly publishedDate: Scalars['String']['output'];
1494
+ /** An introductory paragraph of the article. */
959
1495
  readonly standfirst?: Maybe<Scalars['String']['output']>;
1496
+ /** A promotional thumbnail / snapshot of the article. */
960
1497
  readonly teaser?: Maybe<Teaser>;
1498
+ /** The title of the article. */
961
1499
  readonly title: Scalars['String']['output'];
1500
+ /** A banner located usually at the top of articles containing the title, the standfirst and any images. */
962
1501
  readonly topper?: Maybe<Topper>;
1502
+ /** The type of the article, eg. 'Article' or 'Video'. */
963
1503
  readonly type: Scalars['ContentType']['output'];
1504
+ /** The url of the concept. Vanity urls replace long, randomly generated urls - they are more user friendly and concise. Relative urls are relative to the current domain. */
964
1505
  readonly url: Scalars['String']['output'];
965
1506
  };
966
1507
 
@@ -976,8 +1517,11 @@ export type VideoUrlArgs = {
976
1517
  };
977
1518
 
978
1519
  export type VideoReference = Reference & {
1520
+ /** The unique identifier of the video - a uuid or a url. */
979
1521
  readonly id: Scalars['String']['output'];
1522
+ /** The title of the video. */
980
1523
  readonly title: Scalars['String']['output'];
1524
+ /** The type of the reference, eg. 'video'. */
981
1525
  readonly type: Scalars['String']['output'];
982
1526
  };
983
1527