import { TopicTagConnection } from "./topic-tag-connection"; import { UUID, PageInfo, RichText, Slug } from "../common"; import { Article } from "./article"; import { DraftArticle } from "./draft-article"; import { TopicArticleConnection } from "./topic-article-connection"; import { TopicDraftArticleConnection } from "./topic-draft-article-connection"; import { Image } from "./media"; export type TopicArticleIds = { ids: UUID[]; count: number; }; export type TopicDraftArticleIds = { ids: UUID[]; count: number; }; export type Topic = { id: UUID | null; articles: TopicArticles; draftArticles: TopicDraftArticles; name: string; slug: Slug; description: RichText | null; tagConnection: TopicTagConnection; articleConnection: TopicArticleConnection; draftArticleConnection: TopicDraftArticleConnection; createdAt: Date | null; updatedAt: Date | null; leadImage: Image | null; metaDescription: string | null; }; export type TopicArticles = { count: number; list: Article[]; }; export type TopicDraftArticles = { count: number; list: DraftArticle[]; }; export type TopicConnection = { nodes: Topic[]; pageInfo: PageInfo; totalCount: number; };