import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
import { deleteMemories, deleteMemory, getMemory, getStats } from './core/memory-read.js';
import { createMemories, createMemory, updateMemory } from './core/memory-write.js';
import { createRelationship, deleteRelationship, getRelationships } from './core/relationships.js';
import { recallMemories, searchMemories } from './core/search.js';
type MaybePromise<T> = T | Promise<T>;
type Dependency<T> = T extends (...args: infer A) => infer R ? (...args: A) => MaybePromise<R> : never;
export interface ToolDependencies {
    createMemory: Dependency<typeof createMemory>;
    createMemories: Dependency<typeof createMemories>;
    updateMemory: Dependency<typeof updateMemory>;
    getMemory: Dependency<typeof getMemory>;
    deleteMemory: Dependency<typeof deleteMemory>;
    deleteMemories: Dependency<typeof deleteMemories>;
    searchMemories: Dependency<typeof searchMemories>;
    getStats: Dependency<typeof getStats>;
    createRelationship: Dependency<typeof createRelationship>;
    getRelationships: Dependency<typeof getRelationships>;
    deleteRelationship: Dependency<typeof deleteRelationship>;
    recallMemories: Dependency<typeof recallMemories>;
}
export declare function registerAllTools(server: McpServer, deps?: ToolDependencies): void;
export {};
//# sourceMappingURL=tools.d.ts.map