export interface Note { id: number; title: string; content: string; conversation_id: string; created_at: number; updated_at: number; color_hex?: string; section_id?: number; tags?: string[]; } export interface NoteCreateDTO { title: string; content: string; conversation_id: string; color_hex?: string; section_id?: number; tags?: string[]; } export interface NoteUpdateDTO { title?: string; content?: string; color_hex?: string; section_id?: number; tags?: string[]; } export interface SearchParams { query?: string; tags?: string[]; conversation?: string; color?: string; startDate?: number; page?: number; limit?: number; sort?: { field: string; direction: string; }; } export interface SearchResult { notes: Note[]; pagination: { total: number; page: number; limit: number; totalPages: number; }; } export interface ArchiveResult { noteId?: number; archiveId: number; newNoteId?: number; status: 'archived' | 'restored'; } export interface ArchivedNote { id: number; note_id: number; title: string; content: string; conversation_id: string; color_hex?: string; section_id?: number; created_at: number; updated_at: number; archived_at: number; archived_by?: string; restore_point: string; tags?: string[]; } export interface RestorePoint { tags: string[]; } export interface NoteService { createNote(data: NoteCreateDTO): Promise; updateNote(id: number, data: NoteUpdateDTO): Promise; deleteNote(id: number): Promise; searchNotes(params: SearchParams): Promise; archiveNotes(noteIds: number[], archivedBy?: string): Promise; unarchiveNotes(archiveIds: number[]): Promise; updateNoteColor(noteId: number, color: string): Promise; updateNotesColorBulk(noteIds: number[], color: string): Promise; } export interface McpResponse { content: Array<{ type: string; text: string; }>; isError?: boolean; } export declare class AppError extends Error { statusCode: number; code?: string | undefined; constructor(statusCode: number, message: string, code?: string | undefined); } export interface TagResult { id: number; name: string; } export interface CountResult { count: number; }