/** * Pages Mega Tool * All page operations in one unified interface */ import type { Client } from '@notionhq/client'; export interface CreatePageResult { action: 'create'; page_id: string; url: string; created: true; } export interface GetPageResult { action: 'get'; page_id: string; url: string; created_time: string; last_edited_time: string; archived: boolean; icon: any; cover: any; properties: Record; content: string; block_count: number; content_truncated?: boolean; next_cursor?: string | null; } export interface PagesInput { action: 'create' | 'get' | 'get_property' | 'update' | 'move' | 'archive' | 'restore' | 'duplicate'; page_id?: string; page_ids?: string[]; title?: string; content?: string; append_content?: string; parent_id?: string; properties?: Record; icon?: string; cover?: string; property_id?: string; content_limit?: number; content_cursor?: string; archived?: boolean; replace?: boolean; } export interface GetPagePropertyResult { action: 'get_property'; page_id: string; property_id: string; type: string; value: any; } export interface UpdatePageResult { action: 'update'; page_id: string; updated: true; } export interface MovePageResult { action: 'move'; page_id: string; new_parent_id: string; moved: true; } export interface ArchivePageResult { action: 'archive' | 'restore'; processed: number; results: Array<{ page_id: string; archived: boolean; }>; } export interface DuplicatePageResult { action: 'duplicate'; processed: number; results: Array<{ original_id: string; duplicate_id: string; url: string; }>; } export type PagesResult = CreatePageResult | GetPageResult | GetPagePropertyResult | UpdatePageResult | MovePageResult | ArchivePageResult | DuplicatePageResult; /** * Unified pages tool - handles all page operations */ export declare function pages(notion: Client, input: PagesInput): Promise; //# sourceMappingURL=pages.d.ts.map