import { spawnSync } from "node:child_process"; import { type PublicRevisionVerifier } from "../lib/publicRevisionVerifier.js"; export interface PublishPageInput { name?: string; notionUrl?: string; notion?: string; publicUrl?: string; expectedTitle?: string; expectedRevision?: string; requiredText?: string[]; forbiddenText?: string[]; oldRevision?: string; cookiePolicy?: "omit"; } export declare const notionPublisherToolDefinitions: ({ name: string; description: string; inputSchema: { type: "object"; properties: { pages: { type: string; items: { type: string; properties: { expectedTitle: { readonly type: "string"; readonly description: "Canonical title required in logged-out rendered text."; }; expectedRevision: { readonly type: "string"; readonly description: "Current visible revision required exactly once in logged-out rendered text."; }; requiredText: { readonly type: "array"; readonly items: { readonly type: "string"; }; readonly description: "Required rendered headings or markers."; }; forbiddenText: { readonly type: "array"; readonly items: { readonly type: "string"; }; readonly description: "Rendered markers that must occur zero times."; }; oldRevision: { readonly type: "string"; readonly description: "Previous revision that must occur zero times after finalization."; }; cookiePolicy: { readonly type: "string"; readonly enum: readonly ["omit"]; readonly description: "Require two independent ephemeral reads with empty initial cookie jars."; }; name: { type: string; }; notionUrl: { type: string; }; publicUrl: { type: string; }; }; required: string[]; }; description: string; }; domain: { type: string; description: string; }; verifyPublic: { type: string; description: string; }; contextHint: { type: string; description: string; }; browserUseProfileId: { type: string; description: string; }; browserUseProfileName: { type: string; description: string; }; browserUseTimeoutMinutes: { type: string; description: string; }; browserUseProxyCountryCode: { type: string; description: string; }; browserBackend: { type: string; enum: string[]; description: string; }; cdpUrl: { type: string; description: string; }; cdpWs: { type: string; description: string; }; allowRealChrome: { type: string; description: string; }; checkLive?: undefined; checkAuth?: undefined; }; required: string[]; }; } | { name: string; description: string; inputSchema: { type: "object"; properties: { checkLive: { type: string; description: string; }; checkAuth: { type: string; description: string; }; pages?: undefined; domain?: undefined; verifyPublic?: undefined; contextHint?: undefined; browserUseProfileId?: undefined; browserUseProfileName?: undefined; browserUseTimeoutMinutes?: undefined; browserUseProxyCountryCode?: undefined; browserBackend?: undefined; cdpUrl?: undefined; cdpWs?: undefined; allowRealChrome?: undefined; }; required: never[]; }; })[]; export declare function adminPublishNotionContracts(args: { pages?: PublishPageInput[]; domain?: string; verifyPublic?: boolean; contextHint?: string; browserUseProfileId?: string; browserUseProfileName?: string; browserUseTimeoutMinutes?: number; browserUseProxyCountryCode?: string; browserBackend?: "isolated-cdp" | "browser-use"; cdpUrl?: string; cdpWs?: string; allowRealChrome?: boolean; }, runtime?: { spawnSync?: typeof spawnSync; }): Promise; export declare function createNotionPublisherPublicRevisionVerifier(publish?: typeof adminPublishNotionContracts): PublicRevisionVerifier; export declare function adminNotionPublisherDoctor(args?: { checkLive?: boolean; checkAuth?: boolean; }): Promise;