import { type AttachedProject } from './projects.js'; export interface HostMcpTransport { /** Host-owned mapping for known provider read operations; never sourced from imported content or bindings. */ readonly readOnlyOperations?: Readonly>>; listTools(): Promise; callTool(name: string, args: Record): Promise; } export interface SourceBinding { provider: 'gmail' | 'granola'; projectId: string; tools: { list: string; read?: string; }; query?: string; label?: string; folderId?: string; meetingIds?: readonly string[]; } export declare function validateBinding(value: unknown): SourceBinding; export declare function discoverConnections(transport?: HostMcpTransport): Promise>; export declare function gmailQueryFor(binding: SourceBinding): string; export declare function probeConnection(transport: HostMcpTransport | undefined, input: SourceBinding): Promise<{ status: string; reason?: string; }>; export declare function importSourceBatch(project: AttachedProject, inputBinding: SourceBinding, input: unknown): Promise<{ stored: number; duplicates: number; conflicts: number; quarantined: number; }>; export declare function acquireProjectSources(project: AttachedProject, input: SourceBinding, transport: HostMcpTransport): Promise;