/**
 * Auto-extract structured memory entries from task completions and session ends.
 *
 * Best-effort extraction: all functions wrap their logic in try/catch and
 * must never throw — memory extraction must never block the calling flow.
 *
 * @task T-auto-extract
 * @epic T5149
 */
import type { Task } from '@cleocode/contracts';
import type { SessionBridgeData } from '../sessions/session-memory-bridge.js';
/**
 * Extract and store memory entries when a task is completed.
 *
 * - Always stores a learning for the completed task.
 * - Stores a second learning if the task had dependencies.
 * - Detects recurring label patterns across recent completed tasks
 *   and stores a success pattern when any label appears 3+ times.
 */
export declare function extractTaskCompletionMemory(projectRoot: string, task: Task, _parentTask?: Task): Promise<void>;
/**
 * Extract and store memory entries when a session ends.
 *
 * - Stores a process decision summarising the session.
 * - Stores a per-task learning for each completed task.
 * - Stores a workflow pattern when 2+ completed tasks share a label.
 */
export declare function extractSessionEndMemory(projectRoot: string, sessionData: SessionBridgeData, taskDetails: Task[]): Promise<void>;
/**
 * Resolve an array of task IDs to their full Task objects.
 * Tasks that cannot be found are silently excluded.
 */
export declare function resolveTaskDetails(projectRoot: string, taskIds: string[]): Promise<Task[]>;
/**
 * Extract key observations from a provider session transcript and store
 * them in brain.db as learnings.
 *
 * Filters assistant lines that contain action words, stores up to 5 as
 * learnings with 0.6 confidence. Always best-effort — never throws.
 *
 * @param projectRoot - Absolute path to project root.
 * @param sessionId - The CLEO session ID being processed.
 * @param transcript - Plain-text provider transcript (user/assistant turns).
 * @task T144 @epic T134
 */
export declare function extractFromTranscript(projectRoot: string, sessionId: string, transcript: string): Promise<void>;
//# sourceMappingURL=auto-extract.d.ts.map