import type { Config } from '../config/schema.js'; import type { AgentSourceContext } from '../agent/source-context/types.js'; import type { Note, NoteAttachment, SnapshotTrigger } from './types.js'; export interface NoteAgentAttachmentContext { attachmentId: string; type: NoteAttachment['type']; fileName: string; mimeType: string; size: number; status: 'ready' | 'unsupported' | 'failed'; summary?: string; transcript?: string; extractedText?: string; error?: string; } export interface NoteAgentContextArtifact { noteId: string; noteUpdatedAt: number; contextVersion: string; generatedAt: number; text: string; attachments: NoteAgentAttachmentContext[]; tokenEstimate: number; truncated: boolean; status: 'ready' | 'partial' | 'failed'; } interface NoteAgentContextNotesService { getAttachmentPath(noteId: string, attachmentId: string): Promise<{ filePath: string; mimeType: string; fileName: string; } | null>; updateNote(id: string, patch: Partial, trigger?: SnapshotTrigger): Promise; } export declare function buildNoteAgentContextArtifact(params: { note: Note; notesService: NoteAgentContextNotesService; config?: Config; force?: boolean; }): Promise; export declare function buildNoteAgentContext(params: { note: Note; notesService: NoteAgentContextNotesService; config?: Config; force?: boolean; }): Promise; export declare function getCachedNoteAgentContextArtifact(noteId: string): NoteAgentContextArtifact | null; export {};