import { MarkupElement } from "@thetimes/methode-parser"; import { ThemeTemplate } from "./queries/article"; export type Slug = string & { _: "Slug"; }; export type ID = string & { _: "ID"; }; export type UUID = string & { _: "UUID"; }; export type BigInt = number & { _: "Revision"; }; export type CategoryType = "PRIMARY" | "SECONDARY"; export type DataSource = "NEWSPRESS" | "METHODE" | null; export type PageSlice = "PAGE_SLICE"; export type PaginatedPageSlice = "PAGINATED_PAGE_SLICE"; export type TopicAuthorSlice = "TOPIC_AUTHOR_SLICE"; export type PageSliceType = PageSlice | PaginatedPageSlice | TopicAuthorSlice | null; export type ArticleReferencePageTileType = "ARTICLE_REFERENCE"; export type TopicArticleReferencePageTileType = "TOPIC_ARTICLE_REFERENCE"; export type CustomComponentPageTileType = "CUSTOM_COMPONENT"; export type EmptyArticleReferencePageTileType = "EMPTY_ARTICLE_REFERENCE"; export type EmptyTopicArticleReferencePageTileType = "EMPTY_TOPIC_ARTICLE_REFERENCE"; export type EmptyCategoryArticleReferencePageTileType = "EMPTY_CATEGORY_ARTICLE_REFERENCE"; export type EmptyInheritedArticleReferencePageTileType = "EMPTY_INHERITED_ARTICLE_REFERENCE"; export type ExternalReferencePageTileType = "EXTERNAL_REFERENCE"; export type CategoryArticleReferencePageTileType = "CATEGORY_ARTICLE_REFERENCE"; export type AuthorArticleReferencePageTileType = "AUTHOR_ARTICLE_REFERENCE"; export type EmptyAuthorArticleReferencePageTileType = "EMPTY_AUTHOR_ARTICLE_REFERENCE"; export type InheritedArticleReferencePageTileType = "INHERITED_ARTICLE_REFERENCE"; export type PageTileType = ArticleReferencePageTileType | TopicArticleReferencePageTileType | CustomComponentPageTileType | EmptyArticleReferencePageTileType | EmptyTopicArticleReferencePageTileType | EmptyCategoryArticleReferencePageTileType | EmptyInheritedArticleReferencePageTileType | ExternalReferencePageTileType | CategoryArticleReferencePageTileType | AuthorArticleReferencePageTileType | EmptyAuthorArticleReferencePageTileType | InheritedArticleReferencePageTileType | null; export declare enum CollectionLinkTypes { PAGE_LINK = "PAGE_LINK", TOPIC_LINK = "TOPIC_LINK", CUSTOM_LINK = "CUSTOM_LINK" } export type CollectionLinkType = "PAGE_LINK" | "TOPIC_LINK" | "CUSTOM_LINK"; export type DateTime = Date; export type Dictionary = { [key: string]: string; }; export type Flag = "NEW" | "EXCLUSIVE" | "UPDATED" | "SPONSORED" | "BREAKING" | "LIVE"; export type ExpirableFlag = { type: Flag; expiryTime: DateTime | null; duration?: number | null; }; export type Markup = MarkupElement[]; export type PublicationName = "TIMES" | "SUNDAYTIMES"; export type Region = "default" | "ireland"; export type RichText = MarkupElement[]; export type ShortDate = string & { _: "ShortDate"; }; export type CommentSortOrder = "best" | "newest" | "oldest"; export type URL = string; export type TinyInt = number & { _: "TinyInt"; }; export type UnsignedInt = number & { _: "UnsignedInt"; }; export type UnitInterval = number & { _: "UnitInterval"; }; export type PaginateArgs = { cursor?: Cursor | null; first?: number | null; desc?: boolean | null; unlimitedResults?: boolean | null; }; export type TemplateArgs = { templates: ThemeTemplate[]; }; export type Cursor = string & { _: "Cursor"; }; export type JsonObject = { [key: string]: any; }; export type AudioChunk = { id: string; url: string; duration: number; text: string; }; export type Variant = { id: string; name: string; volume?: number | null; audio: AudioChunk[]; }; export type AudioNarration = { enabled: boolean; defaultVariantId: string; variants: Variant[]; }; export type ArticleSummarisationSummaryType = { title: string; description: string; content: Markup; }; export type ArticleSummarisation = { summaryTypes: ArticleSummarisationSummaryType[]; }; export type PageInfo = { startCursor: Cursor | null; endCursor: Cursor | null; hasNextPage: boolean; hasPreviousPage: boolean; }; export type Edge = { node: T; cursor: Cursor; }; export type PaginatedNodes = { nodes: T[]; pageInfo: PageInfo; }; export type Connection = { nodes: T[]; pageInfo: PageInfo; totalCount: number; }; export type DateFilter = { from: DateTime; to: DateTime; };