/**
 * MCP Handlers — 候选校验 & 字段诊断 (V3: 使用 knowledgeService)
 * validateCandidate, checkDuplicate, enrichCandidates
 *
 * 注意: submitSingle, submitBatch, submitDrafts 已移至 V3 knowledge handlers
 *       (autosnippet_submit_knowledge / submit_knowledge_batch / knowledge_lifecycle)
 */
import type { CheckDuplicateArgs, EnrichCandidatesArgs, EnrichResultEntry, McpContext, ValidateCandidateArgs } from './types.js';
export declare function validateCandidate(ctx: McpContext, args: ValidateCandidateArgs): Promise<{
    success: boolean;
    errorCode: string | null;
    message: string;
    data: {
        ok: boolean;
        errors: string[];
        warnings: string[];
        suggestions: {
            field: string;
            value: string;
        }[];
    } | null;
    meta: {
        source?: string | undefined;
        responseTimeMs?: number | undefined;
        version: string;
        tool?: string | undefined;
    };
}>;
export declare function checkDuplicate(ctx: McpContext, args: CheckDuplicateArgs): Promise<{
    success: boolean;
    errorCode: string | null;
    message: string;
    data: {
        similar: {
            file: string;
            title: string;
            similarity: number;
        }[];
    } | null;
    meta: {
        source?: string | undefined;
        responseTimeMs?: number | undefined;
        version: string;
        tool?: string | undefined;
    };
}>;
export declare function enrichCandidates(ctx: McpContext, args: EnrichCandidatesArgs): Promise<{
    success: boolean;
    errorCode: string | null;
    message: string;
    data: {
        total: number;
        needsEnrichment: number;
        needsRecipeFields: number;
        fullyComplete: number;
        entries: EnrichResultEntry[];
        hint: string;
    } | null;
    meta: {
        source?: string | undefined;
        responseTimeMs?: number | undefined;
        version: string;
        tool?: string | undefined;
    };
}>;
