UNPKG

@samepage/internal

Version:

Utilities used across modules - not meant for use by users directly

1,693 lines (1,692 loc) 542 kB
import type Automerge from "automerge"; import type React from "react"; import { z, ZodType } from "zod"; import type { CID } from "multiformats"; import { Operation } from "./messages"; export declare const referenceAnnotation: z.ZodObject<{ end: z.ZodNumber; start: z.ZodNumber; appAttributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodString>>>; type: z.ZodLiteral<"reference">; attributes: z.ZodObject<{ notebookPageId: z.ZodString; notebookUuid: z.ZodString; }, "strip", z.ZodTypeAny, { notebookPageId: string; notebookUuid: string; }, { notebookPageId: string; notebookUuid: string; }>; }, "strip", z.ZodTypeAny, { end: number; start: number; type: "reference"; attributes: { notebookPageId: string; notebookUuid: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; }, { end: number; start: number; type: "reference"; attributes: { notebookPageId: string; notebookUuid: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; }>; export declare const annotationSchema: z.ZodEffects<z.ZodEffects<z.ZodDiscriminatedUnion<"type", [z.ZodObject<{ end: z.ZodNumber; start: z.ZodNumber; appAttributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodString>>>; type: z.ZodLiteral<"block">; attributes: z.ZodObject<{ level: z.ZodNumber; viewType: z.ZodEnum<["bullet", "numbered", "document"]>; }, "strip", z.ZodTypeAny, { level: number; viewType: "bullet" | "numbered" | "document"; }, { level: number; viewType: "bullet" | "numbered" | "document"; }>; }, "strip", z.ZodTypeAny, { end: number; start: number; type: "block"; attributes: { level: number; viewType: "bullet" | "numbered" | "document"; }; appAttributes?: Record<string, Record<string, string>> | undefined; }, { end: number; start: number; type: "block"; attributes: { level: number; viewType: "bullet" | "numbered" | "document"; }; appAttributes?: Record<string, Record<string, string>> | undefined; }>, z.ZodObject<{ end: z.ZodNumber; start: z.ZodNumber; appAttributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodString>>>; type: z.ZodLiteral<"metadata">; attributes: z.ZodObject<{ title: z.ZodString; parent: z.ZodString; }, "strip", z.ZodTypeAny, { title: string; parent: string; }, { title: string; parent: string; }>; }, "strip", z.ZodTypeAny, { end: number; start: number; type: "metadata"; attributes: { title: string; parent: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; }, { end: number; start: number; type: "metadata"; attributes: { title: string; parent: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; }>, z.ZodObject<{ end: z.ZodNumber; start: z.ZodNumber; appAttributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodString>>>; type: z.ZodLiteral<"bold">; attributes: z.ZodOptional<z.ZodObject<{ open: z.ZodOptional<z.ZodBoolean>; delimiter: z.ZodOptional<z.ZodString>; }, "strip", z.ZodTypeAny, { open?: boolean | undefined; delimiter?: string | undefined; }, { open?: boolean | undefined; delimiter?: string | undefined; }>>; }, "strip", z.ZodTypeAny, { end: number; start: number; type: "bold"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; }, { end: number; start: number; type: "bold"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; }>, z.ZodObject<{ end: z.ZodNumber; start: z.ZodNumber; appAttributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodString>>>; type: z.ZodLiteral<"italics">; attributes: z.ZodOptional<z.ZodObject<{ open: z.ZodOptional<z.ZodBoolean>; delimiter: z.ZodOptional<z.ZodString>; }, "strip", z.ZodTypeAny, { open?: boolean | undefined; delimiter?: string | undefined; }, { open?: boolean | undefined; delimiter?: string | undefined; }>>; }, "strip", z.ZodTypeAny, { end: number; start: number; type: "italics"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; }, { end: number; start: number; type: "italics"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; }>, z.ZodObject<{ end: z.ZodNumber; start: z.ZodNumber; appAttributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodString>>>; type: z.ZodLiteral<"strikethrough">; attributes: z.ZodOptional<z.ZodObject<{ open: z.ZodOptional<z.ZodBoolean>; delimiter: z.ZodOptional<z.ZodString>; }, "strip", z.ZodTypeAny, { open?: boolean | undefined; delimiter?: string | undefined; }, { open?: boolean | undefined; delimiter?: string | undefined; }>>; }, "strip", z.ZodTypeAny, { end: number; start: number; type: "strikethrough"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; }, { end: number; start: number; type: "strikethrough"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; }>, z.ZodObject<{ end: z.ZodNumber; start: z.ZodNumber; appAttributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodString>>>; type: z.ZodLiteral<"highlighting">; attributes: z.ZodOptional<z.ZodObject<{ open: z.ZodOptional<z.ZodBoolean>; delimiter: z.ZodOptional<z.ZodString>; }, "strip", z.ZodTypeAny, { open?: boolean | undefined; delimiter?: string | undefined; }, { open?: boolean | undefined; delimiter?: string | undefined; }>>; }, "strip", z.ZodTypeAny, { end: number; start: number; type: "highlighting"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; }, { end: number; start: number; type: "highlighting"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; }>, z.ZodObject<{ end: z.ZodNumber; start: z.ZodNumber; appAttributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodString>>>; type: z.ZodLiteral<"inline">; attributes: z.ZodOptional<z.ZodObject<{ open: z.ZodOptional<z.ZodBoolean>; delimiter: z.ZodOptional<z.ZodString>; }, "strip", z.ZodTypeAny, { open?: boolean | undefined; delimiter?: string | undefined; }, { open?: boolean | undefined; delimiter?: string | undefined; }>>; }, "strip", z.ZodTypeAny, { end: number; start: number; type: "inline"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; }, { end: number; start: number; type: "inline"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; }>, z.ZodObject<{ end: z.ZodNumber; start: z.ZodNumber; appAttributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodString>>>; type: z.ZodLiteral<"link">; attributes: z.ZodObject<{ href: z.ZodString; }, "strip", z.ZodTypeAny, { href: string; }, { href: string; }>; }, "strip", z.ZodTypeAny, { end: number; start: number; type: "link"; attributes: { href: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; }, { end: number; start: number; type: "link"; attributes: { href: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; }>, z.ZodObject<{ end: z.ZodNumber; start: z.ZodNumber; appAttributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodString>>>; type: z.ZodLiteral<"reference">; attributes: z.ZodObject<{ notebookPageId: z.ZodString; notebookUuid: z.ZodString; }, "strip", z.ZodTypeAny, { notebookPageId: string; notebookUuid: string; }, { notebookPageId: string; notebookUuid: string; }>; }, "strip", z.ZodTypeAny, { end: number; start: number; type: "reference"; attributes: { notebookPageId: string; notebookUuid: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; }, { end: number; start: number; type: "reference"; attributes: { notebookPageId: string; notebookUuid: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; }>, z.ZodObject<{ end: z.ZodNumber; start: z.ZodNumber; appAttributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodString>>>; type: z.ZodLiteral<"image">; attributes: z.ZodObject<{ src: z.ZodString; }, "strip", z.ZodTypeAny, { src: string; }, { src: string; }>; }, "strip", z.ZodTypeAny, { end: number; start: number; type: "image"; attributes: { src: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; }, { end: number; start: number; type: "image"; attributes: { src: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; }>, z.ZodObject<{ end: z.ZodNumber; start: z.ZodNumber; appAttributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodString>>>; type: z.ZodLiteral<"custom">; attributes: z.ZodObject<{ name: z.ZodString; }, "strip", z.ZodTypeAny, { name: string; }, { name: string; }>; }, "strip", z.ZodTypeAny, { end: number; start: number; type: "custom"; attributes: { name: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; }, { end: number; start: number; type: "custom"; attributes: { name: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; }>, z.ZodObject<{ end: z.ZodNumber; start: z.ZodNumber; appAttributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodString>>>; type: z.ZodLiteral<"code">; attributes: z.ZodObject<{ language: z.ZodString; ticks: z.ZodOptional<z.ZodNumber>; }, "strip", z.ZodTypeAny, { language: string; ticks?: number | undefined; }, { language: string; ticks?: number | undefined; }>; }, "strip", z.ZodTypeAny, { end: number; start: number; type: "code"; attributes: { language: string; ticks?: number | undefined; }; appAttributes?: Record<string, Record<string, string>> | undefined; }, { end: number; start: number; type: "code"; attributes: { language: string; ticks?: number | undefined; }; appAttributes?: Record<string, Record<string, string>> | undefined; }>]>, { end: number; start: number; type: "block"; attributes: { level: number; viewType: "bullet" | "numbered" | "document"; }; appAttributes?: Record<string, Record<string, string>> | undefined; } | { end: number; start: number; type: "metadata"; attributes: { title: string; parent: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; } | { end: number; start: number; type: "bold"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; } | { end: number; start: number; type: "italics"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; } | { end: number; start: number; type: "strikethrough"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; } | { end: number; start: number; type: "highlighting"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; } | { end: number; start: number; type: "inline"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; } | { end: number; start: number; type: "link"; attributes: { href: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; } | { end: number; start: number; type: "reference"; attributes: { notebookPageId: string; notebookUuid: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; } | { end: number; start: number; type: "image"; attributes: { src: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; } | { end: number; start: number; type: "custom"; attributes: { name: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; } | { end: number; start: number; type: "code"; attributes: { language: string; ticks?: number | undefined; }; appAttributes?: Record<string, Record<string, string>> | undefined; }, { end: number; start: number; type: "block"; attributes: { level: number; viewType: "bullet" | "numbered" | "document"; }; appAttributes?: Record<string, Record<string, string>> | undefined; } | { end: number; start: number; type: "metadata"; attributes: { title: string; parent: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; } | { end: number; start: number; type: "bold"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; } | { end: number; start: number; type: "italics"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; } | { end: number; start: number; type: "strikethrough"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; } | { end: number; start: number; type: "highlighting"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; } | { end: number; start: number; type: "inline"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; } | { end: number; start: number; type: "link"; attributes: { href: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; } | { end: number; start: number; type: "reference"; attributes: { notebookPageId: string; notebookUuid: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; } | { end: number; start: number; type: "image"; attributes: { src: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; } | { end: number; start: number; type: "custom"; attributes: { name: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; } | { end: number; start: number; type: "code"; attributes: { language: string; ticks?: number | undefined; }; appAttributes?: Record<string, Record<string, string>> | undefined; }>, { end: number; start: number; type: "block"; attributes: { level: number; viewType: "bullet" | "numbered" | "document"; }; appAttributes?: Record<string, Record<string, string>> | undefined; } | { end: number; start: number; type: "metadata"; attributes: { title: string; parent: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; } | { end: number; start: number; type: "bold"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; } | { end: number; start: number; type: "italics"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; } | { end: number; start: number; type: "strikethrough"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; } | { end: number; start: number; type: "highlighting"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; } | { end: number; start: number; type: "inline"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; } | { end: number; start: number; type: "link"; attributes: { href: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; } | { end: number; start: number; type: "reference"; attributes: { notebookPageId: string; notebookUuid: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; } | { end: number; start: number; type: "image"; attributes: { src: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; } | { end: number; start: number; type: "custom"; attributes: { name: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; } | { end: number; start: number; type: "code"; attributes: { language: string; ticks?: number | undefined; }; appAttributes?: Record<string, Record<string, string>> | undefined; }, { end: number; start: number; type: "block"; attributes: { level: number; viewType: "bullet" | "numbered" | "document"; }; appAttributes?: Record<string, Record<string, string>> | undefined; } | { end: number; start: number; type: "metadata"; attributes: { title: string; parent: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; } | { end: number; start: number; type: "bold"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; } | { end: number; start: number; type: "italics"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; } | { end: number; start: number; type: "strikethrough"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; } | { end: number; start: number; type: "highlighting"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; } | { end: number; start: number; type: "inline"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; } | { end: number; start: number; type: "link"; attributes: { href: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; } | { end: number; start: number; type: "reference"; attributes: { notebookPageId: string; notebookUuid: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; } | { end: number; start: number; type: "image"; attributes: { src: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; } | { end: number; start: number; type: "custom"; attributes: { name: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; } | { end: number; start: number; type: "code"; attributes: { language: string; ticks?: number | undefined; }; appAttributes?: Record<string, Record<string, string>> | undefined; }>; export type Annotation = z.infer<typeof annotationSchema>; export type AutomergeAnnotation = Omit<Annotation, "start" | "end"> & { startIndex: Automerge.Counter; endIndex: Automerge.Counter; }; export type V1Schema = { contentType: `application/vnd.atjson+samepage; version=2022-08-17`; content: Automerge.Text; annotations: Automerge.List<Annotation>; }; export type LatestSchema = { contentType: `application/vnd.atjson+samepage; version=2022-12-05`; content: Automerge.Text; annotations: Automerge.List<AutomergeAnnotation>; }; export type Schema = LatestSchema | V1Schema; export declare const zSamePageSchema: z.ZodObject<{ content: z.ZodString; annotations: z.ZodArray<z.ZodEffects<z.ZodEffects<z.ZodDiscriminatedUnion<"type", [z.ZodObject<{ end: z.ZodNumber; start: z.ZodNumber; appAttributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodString>>>; type: z.ZodLiteral<"block">; attributes: z.ZodObject<{ level: z.ZodNumber; viewType: z.ZodEnum<["bullet", "numbered", "document"]>; }, "strip", z.ZodTypeAny, { level: number; viewType: "bullet" | "numbered" | "document"; }, { level: number; viewType: "bullet" | "numbered" | "document"; }>; }, "strip", z.ZodTypeAny, { end: number; start: number; type: "block"; attributes: { level: number; viewType: "bullet" | "numbered" | "document"; }; appAttributes?: Record<string, Record<string, string>> | undefined; }, { end: number; start: number; type: "block"; attributes: { level: number; viewType: "bullet" | "numbered" | "document"; }; appAttributes?: Record<string, Record<string, string>> | undefined; }>, z.ZodObject<{ end: z.ZodNumber; start: z.ZodNumber; appAttributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodString>>>; type: z.ZodLiteral<"metadata">; attributes: z.ZodObject<{ title: z.ZodString; parent: z.ZodString; }, "strip", z.ZodTypeAny, { title: string; parent: string; }, { title: string; parent: string; }>; }, "strip", z.ZodTypeAny, { end: number; start: number; type: "metadata"; attributes: { title: string; parent: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; }, { end: number; start: number; type: "metadata"; attributes: { title: string; parent: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; }>, z.ZodObject<{ end: z.ZodNumber; start: z.ZodNumber; appAttributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodString>>>; type: z.ZodLiteral<"bold">; attributes: z.ZodOptional<z.ZodObject<{ open: z.ZodOptional<z.ZodBoolean>; delimiter: z.ZodOptional<z.ZodString>; }, "strip", z.ZodTypeAny, { open?: boolean | undefined; delimiter?: string | undefined; }, { open?: boolean | undefined; delimiter?: string | undefined; }>>; }, "strip", z.ZodTypeAny, { end: number; start: number; type: "bold"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; }, { end: number; start: number; type: "bold"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; }>, z.ZodObject<{ end: z.ZodNumber; start: z.ZodNumber; appAttributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodString>>>; type: z.ZodLiteral<"italics">; attributes: z.ZodOptional<z.ZodObject<{ open: z.ZodOptional<z.ZodBoolean>; delimiter: z.ZodOptional<z.ZodString>; }, "strip", z.ZodTypeAny, { open?: boolean | undefined; delimiter?: string | undefined; }, { open?: boolean | undefined; delimiter?: string | undefined; }>>; }, "strip", z.ZodTypeAny, { end: number; start: number; type: "italics"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; }, { end: number; start: number; type: "italics"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; }>, z.ZodObject<{ end: z.ZodNumber; start: z.ZodNumber; appAttributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodString>>>; type: z.ZodLiteral<"strikethrough">; attributes: z.ZodOptional<z.ZodObject<{ open: z.ZodOptional<z.ZodBoolean>; delimiter: z.ZodOptional<z.ZodString>; }, "strip", z.ZodTypeAny, { open?: boolean | undefined; delimiter?: string | undefined; }, { open?: boolean | undefined; delimiter?: string | undefined; }>>; }, "strip", z.ZodTypeAny, { end: number; start: number; type: "strikethrough"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; }, { end: number; start: number; type: "strikethrough"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; }>, z.ZodObject<{ end: z.ZodNumber; start: z.ZodNumber; appAttributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodString>>>; type: z.ZodLiteral<"highlighting">; attributes: z.ZodOptional<z.ZodObject<{ open: z.ZodOptional<z.ZodBoolean>; delimiter: z.ZodOptional<z.ZodString>; }, "strip", z.ZodTypeAny, { open?: boolean | undefined; delimiter?: string | undefined; }, { open?: boolean | undefined; delimiter?: string | undefined; }>>; }, "strip", z.ZodTypeAny, { end: number; start: number; type: "highlighting"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; }, { end: number; start: number; type: "highlighting"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; }>, z.ZodObject<{ end: z.ZodNumber; start: z.ZodNumber; appAttributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodString>>>; type: z.ZodLiteral<"inline">; attributes: z.ZodOptional<z.ZodObject<{ open: z.ZodOptional<z.ZodBoolean>; delimiter: z.ZodOptional<z.ZodString>; }, "strip", z.ZodTypeAny, { open?: boolean | undefined; delimiter?: string | undefined; }, { open?: boolean | undefined; delimiter?: string | undefined; }>>; }, "strip", z.ZodTypeAny, { end: number; start: number; type: "inline"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; }, { end: number; start: number; type: "inline"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; }>, z.ZodObject<{ end: z.ZodNumber; start: z.ZodNumber; appAttributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodString>>>; type: z.ZodLiteral<"link">; attributes: z.ZodObject<{ href: z.ZodString; }, "strip", z.ZodTypeAny, { href: string; }, { href: string; }>; }, "strip", z.ZodTypeAny, { end: number; start: number; type: "link"; attributes: { href: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; }, { end: number; start: number; type: "link"; attributes: { href: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; }>, z.ZodObject<{ end: z.ZodNumber; start: z.ZodNumber; appAttributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodString>>>; type: z.ZodLiteral<"reference">; attributes: z.ZodObject<{ notebookPageId: z.ZodString; notebookUuid: z.ZodString; }, "strip", z.ZodTypeAny, { notebookPageId: string; notebookUuid: string; }, { notebookPageId: string; notebookUuid: string; }>; }, "strip", z.ZodTypeAny, { end: number; start: number; type: "reference"; attributes: { notebookPageId: string; notebookUuid: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; }, { end: number; start: number; type: "reference"; attributes: { notebookPageId: string; notebookUuid: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; }>, z.ZodObject<{ end: z.ZodNumber; start: z.ZodNumber; appAttributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodString>>>; type: z.ZodLiteral<"image">; attributes: z.ZodObject<{ src: z.ZodString; }, "strip", z.ZodTypeAny, { src: string; }, { src: string; }>; }, "strip", z.ZodTypeAny, { end: number; start: number; type: "image"; attributes: { src: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; }, { end: number; start: number; type: "image"; attributes: { src: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; }>, z.ZodObject<{ end: z.ZodNumber; start: z.ZodNumber; appAttributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodString>>>; type: z.ZodLiteral<"custom">; attributes: z.ZodObject<{ name: z.ZodString; }, "strip", z.ZodTypeAny, { name: string; }, { name: string; }>; }, "strip", z.ZodTypeAny, { end: number; start: number; type: "custom"; attributes: { name: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; }, { end: number; start: number; type: "custom"; attributes: { name: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; }>, z.ZodObject<{ end: z.ZodNumber; start: z.ZodNumber; appAttributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodString>>>; type: z.ZodLiteral<"code">; attributes: z.ZodObject<{ language: z.ZodString; ticks: z.ZodOptional<z.ZodNumber>; }, "strip", z.ZodTypeAny, { language: string; ticks?: number | undefined; }, { language: string; ticks?: number | undefined; }>; }, "strip", z.ZodTypeAny, { end: number; start: number; type: "code"; attributes: { language: string; ticks?: number | undefined; }; appAttributes?: Record<string, Record<string, string>> | undefined; }, { end: number; start: number; type: "code"; attributes: { language: string; ticks?: number | undefined; }; appAttributes?: Record<string, Record<string, string>> | undefined; }>]>, { end: number; start: number; type: "block"; attributes: { level: number; viewType: "bullet" | "numbered" | "document"; }; appAttributes?: Record<string, Record<string, string>> | undefined; } | { end: number; start: number; type: "metadata"; attributes: { title: string; parent: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; } | { end: number; start: number; type: "bold"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; } | { end: number; start: number; type: "italics"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; } | { end: number; start: number; type: "strikethrough"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; } | { end: number; start: number; type: "highlighting"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; } | { end: number; start: number; type: "inline"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; } | { end: number; start: number; type: "link"; attributes: { href: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; } | { end: number; start: number; type: "reference"; attributes: { notebookPageId: string; notebookUuid: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; } | { end: number; start: number; type: "image"; attributes: { src: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; } | { end: number; start: number; type: "custom"; attributes: { name: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; } | { end: number; start: number; type: "code"; attributes: { language: string; ticks?: number | undefined; }; appAttributes?: Record<string, Record<string, string>> | undefined; }, { end: number; start: number; type: "block"; attributes: { level: number; viewType: "bullet" | "numbered" | "document"; }; appAttributes?: Record<string, Record<string, string>> | undefined; } | { end: number; start: number; type: "metadata"; attributes: { title: string; parent: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; } | { end: number; start: number; type: "bold"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; } | { end: number; start: number; type: "italics"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; } | { end: number; start: number; type: "strikethrough"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; } | { end: number; start: number; type: "highlighting"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; } | { end: number; start: number; type: "inline"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; } | { end: number; start: number; type: "link"; attributes: { href: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; } | { end: number; start: number; type: "reference"; attributes: { notebookPageId: string; notebookUuid: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; } | { end: number; start: number; type: "image"; attributes: { src: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; } | { end: number; start: number; type: "custom"; attributes: { name: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; } | { end: number; start: number; type: "code"; attributes: { language: string; ticks?: number | undefined; }; appAttributes?: Record<string, Record<string, string>> | undefined; }>, { end: number; start: number; type: "block"; attributes: { level: number; viewType: "bullet" | "numbered" | "document"; }; appAttributes?: Record<string, Record<string, string>> | undefined; } | { end: number; start: number; type: "metadata"; attributes: { title: string; parent: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; } | { end: number; start: number; type: "bold"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; } | { end: number; start: number; type: "italics"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; } | { end: number; start: number; type: "strikethrough"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; } | { end: number; start: number; type: "highlighting"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; } | { end: number; start: number; type: "inline"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; } | { end: number; start: number; type: "link"; attributes: { href: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; } | { end: number; start: number; type: "reference"; attributes: { notebookPageId: string; notebookUuid: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; } | { end: number; start: number; type: "image"; attributes: { src: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; } | { end: number; start: number; type: "custom"; attributes: { name: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; } | { end: number; start: number; type: "code"; attributes: { language: string; ticks?: number | undefined; }; appAttributes?: Record<string, Record<string, string>> | undefined; }, { end: number; start: number; type: "block"; attributes: { level: number; viewType: "bullet" | "numbered" | "document"; }; appAttributes?: Record<string, Record<string, string>> | undefined; } | { end: number; start: number; type: "metadata"; attributes: { title: string; parent: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; } | { end: number; start: number; type: "bold"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; } | { end: number; start: number; type: "italics"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; } | { end: number; start: number; type: "strikethrough"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; } | { end: number; start: number; type: "highlighting"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; } | { end: number; start: number; type: "inline"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; } | { end: number; start: number; type: "link"; attributes: { href: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; } | { end: number; start: number; type: "reference"; attributes: { notebookPageId: string; notebookUuid: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; } | { end: number; start: number; type: "image"; attributes: { src: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; } | { end: number; start: number; type: "custom"; attributes: { name: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; } | { end: number; start: number; type: "code"; attributes: { language: string; ticks?: number | undefined; }; appAttributes?: Record<string, Record<string, string>> | undefined; }>, "many">; }, "strip", z.ZodTypeAny, { content: string; annotations: ({ end: number; start: number; type: "block"; attributes: { level: number; viewType: "bullet" | "numbered" | "document"; }; appAttributes?: Record<string, Record<string, string>> | undefined; } | { end: number; start: number; type: "metadata"; attributes: { title: string; parent: string; }; appAttributes?: Record<string, Record<string, string>> | undefined; } | { end: number; start: number; type: "bold"; appAttributes?: Record<string, Record<string, string>> | undefined; attributes?: { open?: boolean | undefined; delimiter?: string | undefined; } | undefined; } | { end: number;