/** BigInt-safe JSON serializer with pretty-printing */ export declare function jsonStringify(obj: unknown): string; /** Format a successful tool response, truncating if too large */ export declare function ok(data: unknown): ToolResult; /** Format an error tool response */ export declare function err(message: string): ToolResult; /** Wrap a tool handler with try/catch error handling */ export declare function safe(fn: (args: T) => Promise): (args: T) => Promise; /** Build pagination hint for list-returning tools */ export declare function paginationHint(toolName: string, currentOffset: number, limit: number, totalOrItems: number | unknown[]): PaginationHint | null; export interface PaginationHint { next_call: { tool: string; params: Record; }; } export interface ToolResult { [key: string]: unknown; content: Array<{ type: "text"; text: string; }>; isError?: boolean; } /** Read-only tool annotations (all our tools are read-only) */ export declare const READ_ONLY_ANNOTATIONS: { readOnlyHint: true; destructiveHint: false; idempotentHint: true; openWorldHint: true; }; /** Write tool annotations — non-idempotent state changes */ export declare const WRITE_ANNOTATIONS: { readOnlyHint: false; destructiveHint: false; idempotentHint: false; openWorldHint: true; }; /** Idempotent write annotations — safe to retry (e.g. set metadata) */ export declare const IDEMPOTENT_WRITE_ANNOTATIONS: { readOnlyHint: false; destructiveHint: false; idempotentHint: true; openWorldHint: true; };