import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js'; import { z } from 'zod'; import { CplaceApiClient } from '../api.js'; export declare function buildRetypeNotSupportedMessage(pageUID: string, typeInternalName: string): string; export declare const PAGE_TOOL_DEFINITIONS: { readonly cplace_delete_page: { readonly description: "⚠️ DESTRUCTIVE OPERATION: Permanently delete a single page. Only works for leaf pages (pages without children). For pages with children, use cplace_delete_page_with_children."; readonly inputSchema: { readonly pageUID: z.ZodString; }; readonly annotations: { readonly title: "Delete Page"; }; }; readonly cplace_delete_page_with_children: { readonly description: "⚠️ DESTRUCTIVE OPERATION: Permanently delete a page and optionally all its children. Uses a two-phase workflow: first call shows preview, second call with confirmation performs deletion."; readonly inputSchema: { readonly pageUID: z.ZodString; readonly confirmDeleteChildren: z.ZodDefault>; }; readonly annotations: { readonly title: "Delete Page with Children"; }; }; readonly cplace_copy_page: { readonly description: "Copy a page with optional hierarchical copy. Set includeChildren=false for single page copy (leaf pages only), or includeChildren=true for copying page with all children. When includeChildren=true, uses a two-phase workflow: first call shows preview, second call with confirmCopyChildren=true performs the copy."; readonly inputSchema: { readonly sourcePageUID: z.ZodString; readonly includeChildren: z.ZodBoolean; readonly confirmCopyChildren: z.ZodOptional; readonly targetWorkspaceId: z.ZodOptional; readonly targetParentUID: z.ZodOptional; readonly newName: z.ZodOptional; readonly includeComments: z.ZodDefault>; readonly includeFiles: z.ZodDefault>; }; readonly annotations: { readonly title: "Copy Page"; }; }; readonly cplace_edit_page_content: { readonly description: "Edit page wiki content using str_replace — find an exact text match and replace it. Reads current content, applies the replacement, and writes back. Use this instead of cplace_manage_page when making small changes to large page content to avoid reproducing the entire content.\n\nRichString content is in decoded form: embedded widgets appear as `{\"properties\":{…}}` — no base64. `old_str` must match the decoded form exactly as returned by reads. Raw base64 `` tags are rejected in both `old_str` and `new_str`.\n\nIMPORTANT: cplace normalizes HTML/CSS on every save (CSS properties are alphabetized, hex colors become rgb(), whitespace is regularized). After this tool completes, the stored content may differ from what was submitted. The response includes the current stored form — use it (not your original input) when constructing the next old_str."; readonly inputSchema: { readonly pageUID: z.ZodString; readonly old_str: z.ZodString; readonly new_str: z.ZodString; readonly replace_all: z.ZodDefault>; }; readonly annotations: { readonly title: "Edit Page Content"; }; }; readonly cplace_edit_richstring_attribute: { readonly description: "Edit a single-valued richstring (rich text) attribute of a page using str_replace — find an exact text match and replace it. Reads the current attribute markup, applies the replacement, and writes it back. Use this instead of cplace_manage_page when making small changes to a large richstring attribute value, to avoid reproducing the entire markup. Scope: single-valued richstring attributes only — multi-valued attributes and attributes of any other type are rejected without writing. For the built-in page content use cplace_edit_page_content instead.\n\nRichString markup is in decoded form: embedded widgets appear as `{\"properties\":{…}}` — no base64. `old_str` must match the decoded form exactly as returned by reads. Raw base64 `` tags are rejected in both `old_str` and `new_str`.\n\nIMPORTANT: cplace normalizes HTML/CSS on every save (CSS properties are alphabetized, hex colors become rgb(), whitespace is regularized). After this tool completes, the stored markup may differ from what was submitted. The response includes the current stored form — use it (not your original input) when constructing the next old_str."; readonly inputSchema: { readonly pageUID: z.ZodString; readonly attributeName: z.ZodString; readonly old_str: z.ZodString; readonly new_str: z.ZodString; readonly replace_all: z.ZodDefault>; }; readonly annotations: { readonly title: "Edit RichString Attribute"; }; }; readonly cplace_manage_page: { readonly description: "Create or update a page. Use operation='create' to create new pages with workspace and type. Use operation='update' to modify existing pages by UID. 🔍 IMPORTANT: Use 'cplace_get_type_datamodel' before creating pages to understand attribute requirements.\n\nRichString content (page content and richstring attributes) uses decoded form: `{\"properties\":{…}}` — no base64. On writes, decoded tags are auto-encoded to storage form. Raw base64 `` tags are rejected."; readonly inputSchema: { readonly operation: z.ZodEnum<["create", "update"]>; readonly responseFormat: z.ZodDefault>>; readonly workspaceId: z.ZodOptional; readonly typeInternalName: z.ZodOptional; readonly pageUID: z.ZodOptional; readonly name: z.ZodOptional; readonly parentUID: z.ZodOptional; readonly content: z.ZodOptional; readonly attributes: z.ZodEffects, any, unknown>; readonly builtinAttributes: z.ZodEffects, any, unknown>; }; readonly annotations: { readonly title: "Manage Page"; }; }; }; export declare function registerPageTools(server: McpServer, client: CplaceApiClient): void; //# sourceMappingURL=pages.d.ts.map