export type MemoryEventType = "session_started" | "session_ended" | "user_message" | "assistant_response" | "assistant_summary" | "compaction_snapshot" | "tool_call" | "tool_result" | "file_modified" | "validation_started" | "validation_passed" | "validation_failed" | "decision" | "decision_candidate" | "blocker" | "open_question" | "handoff" | "context_candidate" | "adr_candidate" | "task_started" | "task_completed" | "task_blocked" | "snapshot_warning";
export type MemoryPriority = 0 | 1 | 2 | 3 | 4 | 5;
export interface MemoryProjectIdentity {
    projectId: string;
    rootPath: string;
    gitRemote?: string;
    currentBranch?: string;
}
export interface MemorySessionIdentity {
    sessionId: string;
    projectId: string;
    cwd: string;
    continuitySessionId?: string;
    model?: string;
    provider?: string;
}
export interface MemoryEventInput {
    type: MemoryEventType;
    summary: string;
    content?: string;
    priority?: MemoryPriority;
    filePaths?: string[];
    tags?: string[];
    metadata?: Record<string, string | number | boolean | null>;
    createdAt?: string;
}
export interface MemoryEvent extends MemoryEventInput {
    id: string;
    projectId: string;
    sessionId: string;
    priority: MemoryPriority;
    createdAt: string;
}
export interface MemorySearchRequest {
    query: string;
    projectId?: string;
    sessionId?: string;
    types?: MemoryEventType[];
    filePaths?: string[];
    tags?: string[];
    limit?: number;
}
export interface MemorySearchResult {
    event: MemoryEvent;
    score: number;
    reason: string;
}
export interface MemoryStatus {
    enabled: boolean;
    projectId?: string;
    sessionId?: string;
    eventCount: number;
    store: string;
}
//# sourceMappingURL=memory-types.d.ts.map