/** * Debug Marker Service * * Manages debug markers, sessions, and notes for dev testing. * * @since v1.33.2 */ import type { CreateMarkerOptions, DebugMarker, DebugMarkerStatus, DebugNote, DebugSession, DebugSeverity, DebugStore } from './debug-types.js'; /** * Debug marker service for managing markers and sessions */ export declare class DebugMarkerService { private store; private outputDir; private filePath; private saveTimeout; private static readonly SAVE_DEBOUNCE_MS; constructor(outputDir?: string); /** * Start a new debug session */ startSession(name?: string): DebugSession; /** * End the current session */ endSession(): DebugSession | null; /** * Get the current session (creates one if none exists) */ getCurrentSession(): DebugSession | null; /** * Get or create current session */ ensureSession(): DebugSession; /** * Get a session by ID */ getSession(id: string): DebugSession | null; /** * Get all sessions */ getAllSessions(): DebugSession[]; /** * Delete a session */ deleteSession(id: string): boolean; /** * Create a new debug marker */ createMarker(options: CreateMarkerOptions): DebugMarker; /** * Update a marker */ updateMarker(markerId: string, updates: Partial>): DebugMarker | null; /** * Update marker status */ updateMarkerStatus(markerId: string, status: DebugMarkerStatus, resolution?: string): DebugMarker | null; /** * Delete a marker */ deleteMarker(markerId: string): boolean; /** * Get a marker by ID */ getMarker(markerId: string): DebugMarker | null; /** * Get all markers in current session */ getMarkers(): DebugMarker[]; /** * Get markers by severity */ getMarkersBySeverity(severity: DebugSeverity): DebugMarker[]; /** * Get markers by status */ getMarkersByStatus(status: DebugMarkerStatus): DebugMarker[]; /** * Get open markers */ getOpenMarkers(): DebugMarker[]; /** * Get marker count */ getMarkerCount(): number; /** * Add a note to the current session */ addNote(content: string, relatedMarkers?: string[]): DebugNote; /** * Update a note */ updateNote(noteId: string, content: string): DebugNote | null; /** * Delete a note */ deleteNote(noteId: string): boolean; /** * Get all notes in current session */ getNotes(): DebugNote[]; /** * Set the file path for persistence */ setFilePath(path: string): void; /** * Get the output directory */ getOutputDir(): string; /** * Schedule a debounced save (batches rapid mutations into single write) */ private scheduleSave; /** * Save immediately (for critical operations like cleanup) */ saveNow(): void; /** * Save the store to disk (with restricted file permissions) */ save(): void; /** * Load from disk (with Zod schema validation) */ load(): boolean; /** * Serialize the store */ serialize(): string; /** * Load from serialized data */ static fromSerialized(data: string, outputDir?: string): DebugMarkerService; /** * Get the raw store */ getStore(): DebugStore; /** * Reset the service */ reset(): void; } /** * Get the singleton debug marker service */ export declare function getDebugMarkerService(): DebugMarkerService; /** * Reset the singleton */ export declare function resetDebugMarkerService(): void; //# sourceMappingURL=debug-marker-service.d.ts.map