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