mosaicmap/types/page.ts
2025-08-11 21:26:46 +08:00

14 lines
742 B
TypeScript

export type TextBlock = { __typename: "TextBlockType"; id: string; markdown: string };
export type DataPoint = { x: number; y: number };
export type ChartBlock = { __typename: "ChartBlockType"; id: string; title: string; series: DataPoint[] };
export type SettingsBlock = { __typename: "SettingsBlockType"; id: string; category: string; editable: boolean };
export type HeroBlock = { __typename: "HeroBlockType"; id: string; title: string; subtitle?: string | null; backgroundImage?: string | null; ctaText?: string | null; ctaLink?: string | null };
export type Block = TextBlock | ChartBlock | SettingsBlock | HeroBlock;
export type PageData = {
id: string;
title: string;
description?: string | null;
blocks: Block[];
};