29 lines
733 B
TypeScript
29 lines
733 B
TypeScript
export default interface ContentField
|
|
extends Array<
|
|
| {
|
|
type: "paragraph" | "heading" | "quote";
|
|
children: Array<TypeField>;
|
|
level?: number;
|
|
}
|
|
| {
|
|
type: "list";
|
|
format: "unordered" | "ordered";
|
|
children: Array<{ type: "list-item"; children: Array<TypeField> }>;
|
|
}
|
|
| {
|
|
type: "code";
|
|
children: Array<{ type: "list-item"; children: Array<TypeField> }>;
|
|
language: "plaintext";
|
|
}
|
|
> {}
|
|
|
|
export type TypeField = TextField | { type: "link"; url: string; children: Array<TextField> };
|
|
|
|
export type TextField = {
|
|
type: "text";
|
|
text: string;
|
|
strikethrough?: boolean;
|
|
underline?: boolean;
|
|
italic?: boolean;
|
|
bold?: boolean;
|
|
};
|