/**
 * Forget Tool
 *
 * Delete memories - either individually or in bulk.
 */
import { z } from 'zod';
export declare const forgetSchema: z.ZodObject<{
    id: z.ZodOptional<z.ZodNumber>;
    query: z.ZodOptional<z.ZodString>;
    category: z.ZodOptional<z.ZodEnum<["architecture", "pattern", "preference", "error", "context", "learning", "todo", "note", "relationship", "custom"]>>;
    project: z.ZodOptional<z.ZodString>;
    olderThan: z.ZodOptional<z.ZodNumber>;
    belowSalience: z.ZodOptional<z.ZodNumber>;
    dryRun: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
    confirm: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
    source: z.ZodOptional<z.ZodObject<{
        type: z.ZodEnum<["user", "cli", "hook", "email", "web", "agent", "file", "api", "tool_response"]>;
        identifier: z.ZodString;
    }, "strip", z.ZodTypeAny, {
        type: "user" | "cli" | "hook" | "email" | "web" | "agent" | "file" | "api" | "tool_response";
        identifier: string;
    }, {
        type: "user" | "cli" | "hook" | "email" | "web" | "agent" | "file" | "api" | "tool_response";
        identifier: string;
    }>>;
}, "strip", z.ZodTypeAny, {
    confirm: boolean;
    dryRun: boolean;
    source?: {
        type: "user" | "cli" | "hook" | "email" | "web" | "agent" | "file" | "api" | "tool_response";
        identifier: string;
    } | undefined;
    project?: string | undefined;
    id?: number | undefined;
    category?: "context" | "pattern" | "architecture" | "preference" | "error" | "learning" | "todo" | "note" | "relationship" | "custom" | undefined;
    query?: string | undefined;
    olderThan?: number | undefined;
    belowSalience?: number | undefined;
}, {
    source?: {
        type: "user" | "cli" | "hook" | "email" | "web" | "agent" | "file" | "api" | "tool_response";
        identifier: string;
    } | undefined;
    project?: string | undefined;
    id?: number | undefined;
    category?: "context" | "pattern" | "architecture" | "preference" | "error" | "learning" | "todo" | "note" | "relationship" | "custom" | undefined;
    query?: string | undefined;
    confirm?: boolean | undefined;
    olderThan?: number | undefined;
    belowSalience?: number | undefined;
    dryRun?: boolean | undefined;
}>;
export type ForgetInput = z.infer<typeof forgetSchema>;
/**
 * Execute the forget tool
 */
export declare function executeForget(input: ForgetInput): Promise<{
    success: boolean;
    deleted?: number;
    denied?: number;
    wouldDelete?: number;
    memories?: {
        id: number;
        title: string;
    }[];
    error?: string;
}>;
/**
 * Format the forget result for MCP response
 */
export declare function formatForgetResult(result: Awaited<ReturnType<typeof executeForget>>): string;
