/**
 * MCP Handlers — 知识浏览类 (V3: 使用 knowledgeService)
 * listByKind, listRecipes, getRecipe, recipeInsights, confirmUsage
 *
 * 投影原则：只交付 Agent 可操作的信号，不交付内部运营/审计数据。
 *   - _projectItem   → list 列表摘要（精简 ~10 字段）
 *   - _projectForAgent → get 详情（去除噪音 ~25 字段）
 */
import type { BrowseGetArgs, BrowseListArgs, ConfirmUsageArgs, McpContext } from './types.js';
export declare function listByKind(ctx: McpContext, kind: string, args: BrowseListArgs): Promise<{
    success: boolean;
    errorCode: string | null;
    message: string;
    data: {
        kind: string;
        count: any;
        total: any;
        items: any;
    } | null;
    meta: {
        source?: string | undefined;
        responseTimeMs?: number | undefined;
        version: string;
        tool?: string | undefined;
    };
}>;
export declare function listRecipes(ctx: McpContext, args: BrowseListArgs): Promise<{
    success: boolean;
    errorCode: string | null;
    message: string;
    data: {
        count: any;
        total: any;
        items: any;
    } | null;
    meta: {
        source?: string | undefined;
        responseTimeMs?: number | undefined;
        version: string;
        tool?: string | undefined;
    };
}>;
export declare function getRecipe(ctx: McpContext, args: BrowseGetArgs): Promise<{
    success: boolean;
    errorCode: string | null;
    message: string;
    data: {
        id: string;
        title: string;
        description: string | undefined;
        trigger: string;
        kind: string | undefined;
        language: string | undefined;
        category: string | undefined;
        knowledgeType: string | undefined;
        complexity: string | undefined;
        tags: string[] | undefined;
        whenClause: string | undefined;
        doClause: string | undefined;
        dontClause: string | undefined;
        coreCode: string | undefined;
        content: {
            steps?: unknown[] | undefined;
            rationale?: string | undefined;
            markdown?: string | undefined;
            pattern?: string | undefined;
        } | undefined;
        headers: string[] | undefined;
        reasoning: {
            sources?: unknown[] | undefined;
            confidence?: number | undefined;
            whyStandard?: string | undefined;
        } | undefined;
        relations: Record<string, unknown[]> | undefined;
        constraints: {
            sideEffects?: unknown[] | undefined;
            guards?: unknown[] | undefined;
        } | undefined;
    } | null;
    meta: {
        source?: string | undefined;
        responseTimeMs?: number | undefined;
        version: string;
        tool?: string | undefined;
    };
}>;
export declare function recipeInsights(ctx: McpContext, args: BrowseGetArgs): Promise<{
    success: boolean;
    errorCode: string | null;
    message: string;
    data: {
        id: any;
        title: any;
        trigger: any;
        kind: any;
        lifecycle: any;
        language: any;
        category: any;
        knowledgeType: any;
        quality: {
            overall: any;
            completeness: any;
            adaptation: any;
            documentation: any;
        };
        stats: {
            adoptions: any;
            applications: any;
            guardHits: any;
            views: any;
            searchHits: any;
        };
        content: {
            hasPattern: boolean;
            hasRationale: boolean;
            hasMarkdown: boolean;
            stepsCount: any;
            codeChangesCount: any;
        };
        relations: Record<string, number>;
        constraints: Record<string, unknown[]>;
        tags: any;
        complexity: any;
        scope: any;
        createdBy: any;
        createdAt: any;
        updatedAt: any;
    } | null;
    meta: {
        source?: string | undefined;
        responseTimeMs?: number | undefined;
        version: string;
        tool?: string | undefined;
    };
}>;
export declare function confirmUsage(ctx: McpContext, args: ConfirmUsageArgs): Promise<{
    success: boolean;
    errorCode: string | null;
    message: string;
    data: {
        recipeId: string;
        usageType: string;
        feedback: string | null;
    } | null;
    meta: {
        source?: string | undefined;
        responseTimeMs?: number | undefined;
        version: string;
        tool?: string | undefined;
    };
}>;
