import { z } from "zod"; import { type StoryGraph } from "./graph-schema.js"; export declare const StoryGraphDeltaSchema: z.ZodObject<{ worldAnchor: z.ZodOptional>; theme: z.ZodOptional>; genre: z.ZodOptional>; worldRules: z.ZodOptional>; durationMinutes: z.ZodOptional>; }, "strip", z.ZodTypeAny, { genre?: string | undefined; storyCore?: string | undefined; theme?: string | undefined; worldRules?: string | undefined; durationMinutes?: number | undefined; }, { genre?: string | undefined; storyCore?: string | undefined; theme?: string | undefined; worldRules?: string | undefined; durationMinutes?: number | undefined; }>>; characters: z.ZodOptional>; motivation: z.ZodDefault; voiceProfile: z.ZodOptional; vocabulary: z.ZodDefault; sampleLines: z.ZodDefault>; }, "strip", z.ZodTypeAny, { speakingRhythm: string; vocabulary: string; sampleLines: string[]; }, { speakingRhythm?: string | undefined; vocabulary?: string | undefined; sampleLines?: string[] | undefined; }>>; }, "strip", z.ZodTypeAny, { id: string; name: string; role: "other" | "protagonist" | "antagonist" | "support"; motivation: string; voiceProfile?: { speakingRhythm: string; vocabulary: string; sampleLines: string[]; } | undefined; }, { id: string; name: string; role?: "other" | "protagonist" | "antagonist" | "support" | undefined; motivation?: string | undefined; voiceProfile?: { speakingRhythm?: string | undefined; vocabulary?: string | undefined; sampleLines?: string[] | undefined; } | undefined; }>, "many">>; remove: z.ZodDefault>; }, "strip", z.ZodTypeAny, { upsert: { id: string; name: string; role: "other" | "protagonist" | "antagonist" | "support"; motivation: string; voiceProfile?: { speakingRhythm: string; vocabulary: string; sampleLines: string[]; } | undefined; }[]; remove: string[]; }, { upsert?: { id: string; name: string; role?: "other" | "protagonist" | "antagonist" | "support" | undefined; motivation?: string | undefined; voiceProfile?: { speakingRhythm?: string | undefined; vocabulary?: string | undefined; sampleLines?: string[] | undefined; } | undefined; }[] | undefined; remove?: string[] | undefined; }>>; nodes: z.ZodOptional; type: z.ZodEnum<["start", "normal", "branch", "merge", "ending", "explore"]>; sceneDesc: z.ZodDefault; dialogue: z.ZodDefault; }, "strip", z.ZodTypeAny, { text: string; speaker: string; emotion: string; }, { text: string; speaker: string; emotion?: string | undefined; }>, "many">>; choices: z.ZodDefault=", "<=", ">", "<", "==", "!="]>; value: z.ZodUnion<[z.ZodNumber, z.ZodString, z.ZodBoolean]>; }, "strip", z.ZodTypeAny, { value: string | number | boolean; var: string; op: "<" | ">" | ">=" | "<=" | "==" | "!="; }, { value: string | number | boolean; var: string; op: "<" | ">" | ">=" | "<=" | "==" | "!="; }>>; effects: z.ZodDefault; value: z.ZodUnion<[z.ZodNumber, z.ZodString, z.ZodBoolean]>; }, "strip", z.ZodTypeAny, { value: string | number | boolean; var: string; op: "set" | "sub" | "add"; }, { value: string | number | boolean; var: string; op: "set" | "sub" | "add"; }>, "many">>; weight: z.ZodOptional>; }, "strip", z.ZodTypeAny, { id: string; text: string; targetNodeId: string; effects: { value: string | number | boolean; var: string; op: "set" | "sub" | "add"; }[]; condition?: { value: string | number | boolean; var: string; op: "<" | ">" | ">=" | "<=" | "==" | "!="; } | undefined; weight?: "light" | "heavy" | "critical" | undefined; }, { id: string; text: string; targetNodeId: string; condition?: { value: string | number | boolean; var: string; op: "<" | ">" | ">=" | "<=" | "==" | "!="; } | undefined; effects?: { value: string | number | boolean; var: string; op: "set" | "sub" | "add"; }[] | undefined; weight?: "light" | "heavy" | "critical" | undefined; }>, "many">>; imageSlot: z.ZodOptional; assetRef: z.ZodOptional; }, "strip", z.ZodTypeAny, { prompt: string; assetRef?: string | undefined; }, { prompt?: string | undefined; assetRef?: string | undefined; }>>; act: z.ZodDefault; position: z.ZodOptional>; }, "strip", z.ZodTypeAny, { type: "start" | "branch" | "ending" | "normal" | "merge" | "explore"; id: string; title: string; sceneDesc: string; dialogue: { text: string; speaker: string; emotion: string; }[]; choices: { id: string; text: string; targetNodeId: string; effects: { value: string | number | boolean; var: string; op: "set" | "sub" | "add"; }[]; condition?: { value: string | number | boolean; var: string; op: "<" | ">" | ">=" | "<=" | "==" | "!="; } | undefined; weight?: "light" | "heavy" | "critical" | undefined; }[]; act: string; imageSlot?: { prompt: string; assetRef?: string | undefined; } | undefined; position?: { x: number; y: number; } | undefined; }, { type: "start" | "branch" | "ending" | "normal" | "merge" | "explore"; id: string; title?: string | undefined; sceneDesc?: string | undefined; dialogue?: { text: string; speaker: string; emotion?: string | undefined; }[] | undefined; choices?: { id: string; text: string; targetNodeId: string; condition?: { value: string | number | boolean; var: string; op: "<" | ">" | ">=" | "<=" | "==" | "!="; } | undefined; effects?: { value: string | number | boolean; var: string; op: "set" | "sub" | "add"; }[] | undefined; weight?: "light" | "heavy" | "critical" | undefined; }[] | undefined; imageSlot?: { prompt?: string | undefined; assetRef?: string | undefined; } | undefined; act?: string | undefined; position?: { x: number; y: number; } | undefined; }>, "many">>; remove: z.ZodDefault>; }, "strip", z.ZodTypeAny, { upsert: { type: "start" | "branch" | "ending" | "normal" | "merge" | "explore"; id: string; title: string; sceneDesc: string; dialogue: { text: string; speaker: string; emotion: string; }[]; choices: { id: string; text: string; targetNodeId: string; effects: { value: string | number | boolean; var: string; op: "set" | "sub" | "add"; }[]; condition?: { value: string | number | boolean; var: string; op: "<" | ">" | ">=" | "<=" | "==" | "!="; } | undefined; weight?: "light" | "heavy" | "critical" | undefined; }[]; act: string; imageSlot?: { prompt: string; assetRef?: string | undefined; } | undefined; position?: { x: number; y: number; } | undefined; }[]; remove: string[]; }, { upsert?: { type: "start" | "branch" | "ending" | "normal" | "merge" | "explore"; id: string; title?: string | undefined; sceneDesc?: string | undefined; dialogue?: { text: string; speaker: string; emotion?: string | undefined; }[] | undefined; choices?: { id: string; text: string; targetNodeId: string; condition?: { value: string | number | boolean; var: string; op: "<" | ">" | ">=" | "<=" | "==" | "!="; } | undefined; effects?: { value: string | number | boolean; var: string; op: "set" | "sub" | "add"; }[] | undefined; weight?: "light" | "heavy" | "critical" | undefined; }[] | undefined; imageSlot?: { prompt?: string | undefined; assetRef?: string | undefined; } | undefined; act?: string | undefined; position?: { x: number; y: number; } | undefined; }[] | undefined; remove?: string[] | undefined; }>>; variables: z.ZodOptional; default: z.ZodUnion<[z.ZodNumber, z.ZodString, z.ZodBoolean]>; desc: z.ZodDefault; }, "strip", z.ZodTypeAny, { type: "item" | "flag" | "relationship" | "counter"; name: string; default: string | number | boolean; desc: string; }, { type: "item" | "flag" | "relationship" | "counter"; name: string; default: string | number | boolean; desc?: string | undefined; }>, "many">>; remove: z.ZodDefault>; }, "strip", z.ZodTypeAny, { upsert: { type: "item" | "flag" | "relationship" | "counter"; name: string; default: string | number | boolean; desc: string; }[]; remove: string[]; }, { upsert?: { type: "item" | "flag" | "relationship" | "counter"; name: string; default: string | number | boolean; desc?: string | undefined; }[] | undefined; remove?: string[] | undefined; }>>; endings: z.ZodOptional; description: z.ZodDefault; }, "strip", z.ZodTypeAny, { type: "secret" | "good" | "bad" | "neutral"; id: string; title: string; description: string; nodeId: string; }, { type: "secret" | "good" | "bad" | "neutral"; id: string; title: string; nodeId: string; description?: string | undefined; }>, "many">>; remove: z.ZodDefault>; }, "strip", z.ZodTypeAny, { upsert: { type: "secret" | "good" | "bad" | "neutral"; id: string; title: string; description: string; nodeId: string; }[]; remove: string[]; }, { upsert?: { type: "secret" | "good" | "bad" | "neutral"; id: string; title: string; nodeId: string; description?: string | undefined; }[] | undefined; remove?: string[] | undefined; }>>; notes: z.ZodDefault>; }, "strip", z.ZodTypeAny, { notes: string[]; characters?: { upsert: { id: string; name: string; role: "other" | "protagonist" | "antagonist" | "support"; motivation: string; voiceProfile?: { speakingRhythm: string; vocabulary: string; sampleLines: string[]; } | undefined; }[]; remove: string[]; } | undefined; worldAnchor?: { genre?: string | undefined; storyCore?: string | undefined; theme?: string | undefined; worldRules?: string | undefined; durationMinutes?: number | undefined; } | undefined; variables?: { upsert: { type: "item" | "flag" | "relationship" | "counter"; name: string; default: string | number | boolean; desc: string; }[]; remove: string[]; } | undefined; nodes?: { upsert: { type: "start" | "branch" | "ending" | "normal" | "merge" | "explore"; id: string; title: string; sceneDesc: string; dialogue: { text: string; speaker: string; emotion: string; }[]; choices: { id: string; text: string; targetNodeId: string; effects: { value: string | number | boolean; var: string; op: "set" | "sub" | "add"; }[]; condition?: { value: string | number | boolean; var: string; op: "<" | ">" | ">=" | "<=" | "==" | "!="; } | undefined; weight?: "light" | "heavy" | "critical" | undefined; }[]; act: string; imageSlot?: { prompt: string; assetRef?: string | undefined; } | undefined; position?: { x: number; y: number; } | undefined; }[]; remove: string[]; } | undefined; endings?: { upsert: { type: "secret" | "good" | "bad" | "neutral"; id: string; title: string; description: string; nodeId: string; }[]; remove: string[]; } | undefined; }, { notes?: string[] | undefined; characters?: { upsert?: { id: string; name: string; role?: "other" | "protagonist" | "antagonist" | "support" | undefined; motivation?: string | undefined; voiceProfile?: { speakingRhythm?: string | undefined; vocabulary?: string | undefined; sampleLines?: string[] | undefined; } | undefined; }[] | undefined; remove?: string[] | undefined; } | undefined; worldAnchor?: { genre?: string | undefined; storyCore?: string | undefined; theme?: string | undefined; worldRules?: string | undefined; durationMinutes?: number | undefined; } | undefined; variables?: { upsert?: { type: "item" | "flag" | "relationship" | "counter"; name: string; default: string | number | boolean; desc?: string | undefined; }[] | undefined; remove?: string[] | undefined; } | undefined; nodes?: { upsert?: { type: "start" | "branch" | "ending" | "normal" | "merge" | "explore"; id: string; title?: string | undefined; sceneDesc?: string | undefined; dialogue?: { text: string; speaker: string; emotion?: string | undefined; }[] | undefined; choices?: { id: string; text: string; targetNodeId: string; condition?: { value: string | number | boolean; var: string; op: "<" | ">" | ">=" | "<=" | "==" | "!="; } | undefined; effects?: { value: string | number | boolean; var: string; op: "set" | "sub" | "add"; }[] | undefined; weight?: "light" | "heavy" | "critical" | undefined; }[] | undefined; imageSlot?: { prompt?: string | undefined; assetRef?: string | undefined; } | undefined; act?: string | undefined; position?: { x: number; y: number; } | undefined; }[] | undefined; remove?: string[] | undefined; } | undefined; endings?: { upsert?: { type: "secret" | "good" | "bad" | "neutral"; id: string; title: string; nodeId: string; description?: string | undefined; }[] | undefined; remove?: string[] | undefined; } | undefined; }>; export type StoryGraphDelta = z.infer; /** * Returns a new StoryGraph with the delta applied. The returned graph shares * element references with the input; callers must treat it as immutable — * do not mutate nodes/arrays in place. */ export declare function applyStoryGraphDelta(params: { graph: StoryGraph; delta: StoryGraphDelta; }): StoryGraph; //# sourceMappingURL=delta.d.ts.map