import { ManagerConfig, MemoryFile, MemorySearchResult } from '../types';
export interface MemoryBuildResult {
    sessionsScanned: number;
    itemsAdded: number;
    memoryPath: string;
    handoffPath: string;
}
export declare class MemoryManager {
    private readonly projectPath;
    private readonly conversationManager;
    private readonly extractor;
    private readonly retrieval;
    private readonly store;
    constructor(projectPath?: string, config?: Partial<ManagerConfig>);
    init(): Promise<MemoryFile>;
    build(): Promise<MemoryBuildResult>;
    search(keyword: string): Promise<MemorySearchResult[]>;
    recall(query: string): Promise<MemorySearchResult[]>;
    handoff(): Promise<string>;
    private generateHandoff;
    private latestItems;
    private sortItems;
    private sortSessions;
    private samePath;
    private belongsToProject;
    private normalizePath;
    private encodedProjectPath;
    private timeValue;
}
