import type { AgentTool } from '@earendil-works/pi-agent-core';
import type { MemoryProvider, MemoryProviderInitOptions } from './provider.js';
export declare class MemoryManager {
    private providers;
    private toolToProvider;
    private hasExternal;
    addProvider(provider: MemoryProvider): void;
    get providersList(): MemoryProvider[];
    /**
     * Non-builtin static instructions (builtin uses curated snapshot in system prompt builder).
     */
    buildExternalSystemPrompt(): string;
    prefetchAll(query: string, options?: {
        sessionId?: string;
    }): Promise<string>;
    queuePrefetchAll(query: string, options?: {
        sessionId?: string;
    }): void;
    syncAll(userContent: string, assistantContent: string, options?: {
        sessionId?: string;
    }): void;
    getAdditionalTools(): AgentTool[];
    handleToolCall(toolName: string, args: Record<string, unknown>): Promise<string>;
    onMemoryWrite(action: 'add' | 'replace' | 'remove', target: 'memory' | 'user', content: string): void;
    initializeAll(sessionId: string, options?: MemoryProviderInitOptions): Promise<void>;
    shutdownAll(): Promise<void>;
}
