import { type MessageRouting } from "../store"; import type { ElementalContent } from "@/types"; export interface SaveTemplateOptions { routing?: MessageRouting; content?: ElementalContent; } export interface DuplicateTemplateOptions { /** The ID for the new duplicated template. If not provided, uses "{currentTemplateId}-copy" */ targetTemplateId?: string; /** Optional: Override the content to duplicate (defaults to current editor content) */ content?: ElementalContent; /** Optional: Custom name for the new template (defaults to targetTemplateId) */ name?: string; } export interface DuplicateTemplateResult { success: boolean; templateId: string; version?: string; } /** * Saves the current template to the backend. * * @param options - Optional save configuration * @param options.content - Content to save (defaults to current editor content) * @param options.routing - Routing configuration (defaults to value from TemplateEditor's routing prop) * * @deprecated Passing routing as an argument is deprecated. * The routing is now automatically synced from TemplateEditor's routing prop. * If you need to override routing, pass it as options.routing, but this should rarely be needed. */ export declare const saveTemplateAtom: import("jotai").WritableAtom> & { init: null; }; export declare const publishTemplateAtom: import("jotai").WritableAtom> & { init: null; }; export declare const duplicateTemplateAtom: import("jotai").WritableAtom> & { init: null; };