import type { RememberKnowledgeCandidate } from "@superblocksteam/library-shared/types";
import type { Clark, ClarkStateHandlerParams } from "../../../state-machine/clark-fsm.js";
/**
 * The rememberKnowledge tool is a *signal* tool — it does not persist anything itself.
 *
 * When Clark calls it, it:
 * 1. Sets `clark.context.rememberKnowledgeCandidatesForTurn` with the candidates
 * 2. Triggers the approval flow for those candidates
 *
 * The actual persistence is handled in the llm-generating handler after the user confirms.
 *
 * This tool should be available from normal chat flow whenever Clark detects
 * the user wants to remember something.
 */
export declare const rememberKnowledgeToolFactory: import("../types.js").ToolFactory<{
    clark: Clark;
    services: ClarkStateHandlerParams;
}, import("../types.js").Tool<{
    candidates: RememberKnowledgeCandidate[];
}, {
    success: boolean;
    message: string;
    candidates?: undefined;
    recentlySavedMatches?: undefined;
} | {
    success: boolean;
    message: string;
    candidates: RememberKnowledgeCandidate[];
    recentlySavedMatches: string[];
}>>;
//# sourceMappingURL=remember-knowledge.d.ts.map