/**
 * http-requests.ts — HTTP 路由请求 Zod Schemas
 *
 * 为 Express 路由提供运行时输入校验，覆盖：
 *   - knowledge（CRUD + 生命周期）
 *   - guardRules（规则管理 + 批量操作）
 *   - search（统合搜索 + 上下文搜索）
 *   - candidates（候选条目操作）
 *   - guard（文件质量检查）
 *   - skills（技能管理）
 *   - task（统一任务分发）
 *   - modules（模块扫描）
 *   - ai（AI 配置、摘要、翻译、对话、Agent 工具/任务）
 *   - extract（路径/文本提取）
 *   - auth（登录）
 *   - commands（文件读写）
 *   - remote（远程指令、通知）
 *
 * @module shared/schemas/http-requests
 */
import { z } from 'zod';
export declare const CreateKnowledgeBody: z.ZodObject<{
    title: z.ZodString;
    content: z.ZodUnion<readonly [z.ZodString, z.ZodRecord<z.ZodString, z.ZodUnknown>]>;
    description: z.ZodOptional<z.ZodString>;
    kind: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
        pattern: "pattern";
        rule: "rule";
        fact: "fact";
    }>>>;
    language: z.ZodOptional<z.ZodString>;
    category: z.ZodOptional<z.ZodString>;
    knowledgeType: z.ZodOptional<z.ZodString>;
    complexity: z.ZodOptional<z.ZodNullable<z.ZodString>>;
    scope: z.ZodOptional<z.ZodNullable<z.ZodString>>;
    tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
}, z.core.$loose>;
export declare const UpdateKnowledgeBody: z.ZodObject<{
    title: z.ZodOptional<z.ZodString>;
    description: z.ZodOptional<z.ZodString>;
    content: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodRecord<z.ZodString, z.ZodUnknown>]>>;
    kind: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
        pattern: "pattern";
        rule: "rule";
        fact: "fact";
    }>>>;
    language: z.ZodOptional<z.ZodString>;
    category: z.ZodOptional<z.ZodString>;
    tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
}, z.core.$loose>;
export declare const DeprecateKnowledgeBody: z.ZodObject<{
    reason: z.ZodString;
}, z.core.$strip>;
export declare const BatchPublishBody: z.ZodObject<{
    ids: z.ZodArray<z.ZodString>;
}, z.core.$strip>;
export declare const BatchDeleteBody: z.ZodObject<{
    ids: z.ZodArray<z.ZodString>;
}, z.core.$strip>;
export declare const BatchDeprecateBody: z.ZodObject<{
    ids: z.ZodArray<z.ZodString>;
    reason: z.ZodOptional<z.ZodString>;
}, z.core.$strip>;
export declare const KnowledgeUsageBody: z.ZodObject<{
    type: z.ZodDefault<z.ZodEnum<{
        view: "view";
        feedback: "feedback";
        adoption: "adoption";
    }>>;
    feedback: z.ZodOptional<z.ZodUnknown>;
}, z.core.$strip>;
export declare const KnowledgeListQuery: z.ZodObject<{
    page: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
    limit: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
    lifecycle: z.ZodOptional<z.ZodString>;
    kind: z.ZodOptional<z.ZodString>;
    category: z.ZodOptional<z.ZodString>;
    language: z.ZodOptional<z.ZodString>;
    knowledgeType: z.ZodOptional<z.ZodString>;
    scope: z.ZodOptional<z.ZodString>;
    keyword: z.ZodOptional<z.ZodString>;
    tag: z.ZodOptional<z.ZodString>;
    source: z.ZodOptional<z.ZodString>;
}, z.core.$strip>;
export declare const CreateGuardRuleBody: z.ZodObject<{
    name: z.ZodOptional<z.ZodString>;
    ruleId: z.ZodOptional<z.ZodString>;
    description: z.ZodOptional<z.ZodString>;
    message: z.ZodOptional<z.ZodString>;
    pattern: z.ZodString;
    severity: z.ZodDefault<z.ZodEnum<{
        error: "error";
        info: "info";
        warning: "warning";
    }>>;
    category: z.ZodOptional<z.ZodString>;
    sourceRecipeId: z.ZodOptional<z.ZodString>;
    sourceReason: z.ZodOptional<z.ZodString>;
    note: z.ZodOptional<z.ZodString>;
    languages: z.ZodOptional<z.ZodArray<z.ZodString>>;
    dimension: z.ZodOptional<z.ZodString>;
}, z.core.$strip>;
export declare const BatchEnableBody: z.ZodObject<{
    ids: z.ZodArray<z.ZodString>;
}, z.core.$strip>;
export declare const BatchDisableBody: z.ZodObject<{
    ids: z.ZodArray<z.ZodString>;
    reason: z.ZodOptional<z.ZodString>;
}, z.core.$strip>;
export declare const DisableRuleBody: z.ZodObject<{
    reason: z.ZodOptional<z.ZodString>;
}, z.core.$strip>;
export declare const CheckCodeBody: z.ZodObject<{
    code: z.ZodString;
    language: z.ZodOptional<z.ZodString>;
    ruleIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
}, z.core.$strip>;
export declare const ImportFromRecipeBody: z.ZodObject<{
    recipeId: z.ZodString;
    rules: z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
}, z.core.$strip>;
export declare const GuardRulesListQuery: z.ZodObject<{
    page: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
    limit: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
    severity: z.ZodOptional<z.ZodString>;
    category: z.ZodOptional<z.ZodString>;
    sourceRecipe: z.ZodOptional<z.ZodString>;
    keyword: z.ZodOptional<z.ZodString>;
    enabled: z.ZodPipe<z.ZodOptional<z.ZodEnum<{
        true: "true";
        false: "false";
    }>>, z.ZodTransform<boolean | undefined, "true" | "false" | undefined>>;
}, z.core.$strip>;
export declare const ComplianceQuery: z.ZodObject<{
    path: z.ZodOptional<z.ZodString>;
    maxErrors: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
    maxWarnings: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
    minScore: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
    maxFiles: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
}, z.core.$strip>;
export declare const SearchQuery: z.ZodObject<{
    page: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
    limit: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
    q: z.ZodString;
    type: z.ZodDefault<z.ZodEnum<{
        rule: "rule";
        candidate: "candidate";
        recipe: "recipe";
        all: "all";
        solution: "solution";
    }>>;
    mode: z.ZodDefault<z.ZodEnum<{
        keyword: "keyword";
        semantic: "semantic";
        bm25: "bm25";
    }>>;
    groupByKind: z.ZodPipe<z.ZodOptional<z.ZodEnum<{
        true: "true";
        false: "false";
    }>>, z.ZodTransform<boolean, "true" | "false" | undefined>>;
}, z.core.$strip>;
export declare const ContextAwareSearchBody: z.ZodObject<{
    keyword: z.ZodString;
    limit: z.ZodDefault<z.ZodNumber>;
    language: z.ZodOptional<z.ZodString>;
    sessionHistory: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
}, z.core.$strip>;
export declare const SimilarityBody: z.ZodObject<{
    code: z.ZodOptional<z.ZodString>;
    targetName: z.ZodOptional<z.ZodString>;
    candidateId: z.ZodOptional<z.ZodString>;
    candidate: z.ZodOptional<z.ZodObject<{
        title: z.ZodOptional<z.ZodString>;
        summary: z.ZodOptional<z.ZodString>;
        code: z.ZodOptional<z.ZodString>;
        pattern: z.ZodOptional<z.ZodString>;
        usageGuide: z.ZodOptional<z.ZodString>;
        markdown: z.ZodOptional<z.ZodString>;
    }, z.core.$strip>>;
}, z.core.$strip>;
export declare const EnrichBody: z.ZodObject<{
    candidateIds: z.ZodArray<z.ZodString>;
}, z.core.$strip>;
export declare const BootstrapRefineBody: z.ZodObject<{
    candidateIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
    userPrompt: z.ZodOptional<z.ZodString>;
    dryRun: z.ZodDefault<z.ZodBoolean>;
}, z.core.$strip>;
export declare const RefinePreviewBody: z.ZodObject<{
    candidateId: z.ZodString;
    userPrompt: z.ZodString;
}, z.core.$strip>;
export declare const RefineApplyBody: z.ZodObject<{
    candidateId: z.ZodString;
    userPrompt: z.ZodOptional<z.ZodString>;
    preview: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
}, z.core.$strip>;
export declare const GuardFileBody: z.ZodObject<{
    filePath: z.ZodString;
    content: z.ZodOptional<z.ZodString>;
    language: z.ZodOptional<z.ZodString>;
}, z.core.$strip>;
export declare const GuardBatchBody: z.ZodObject<{
    files: z.ZodArray<z.ZodObject<{
        filePath: z.ZodString;
        content: z.ZodOptional<z.ZodString>;
        language: z.ZodOptional<z.ZodString>;
    }, z.core.$strip>>;
}, z.core.$strip>;
export declare const CreateSkillBody: z.ZodObject<{
    name: z.ZodString;
    description: z.ZodString;
    content: z.ZodString;
    overwrite: z.ZodDefault<z.ZodBoolean>;
    createdBy: z.ZodDefault<z.ZodString>;
}, z.core.$strip>;
export declare const UpdateSkillBody: z.ZodObject<{
    description: z.ZodOptional<z.ZodString>;
    content: z.ZodOptional<z.ZodString>;
}, z.core.$strip>;
export declare const TaskDispatchBody: z.ZodObject<{
    operation: z.ZodString;
}, z.core.$loose>;
export declare const ScanFolderBody: z.ZodObject<{
    path: z.ZodString;
    options: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
}, z.core.$strip>;
export declare const ScanTargetBody: z.ZodObject<{
    target: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
    targetName: z.ZodOptional<z.ZodString>;
    options: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
}, z.core.$strip>;
export declare const ScanProjectBody: z.ZodObject<{
    options: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
}, z.core.$strip>;
export declare const ModuleBootstrapBody: z.ZodObject<{
    maxFiles: z.ZodDefault<z.ZodNumber>;
    skipGuard: z.ZodDefault<z.ZodBoolean>;
    contentMaxLines: z.ZodDefault<z.ZodNumber>;
}, z.core.$strip>;
export declare const ModuleRescanBody: z.ZodObject<{
    reason: z.ZodOptional<z.ZodString>;
    dimensions: z.ZodOptional<z.ZodArray<z.ZodString>>;
}, z.core.$strip>;
export declare const GraphQuery: z.ZodObject<{
    nodeId: z.ZodString;
    nodeType: z.ZodString;
    relation: z.ZodOptional<z.ZodString>;
    direction: z.ZodDefault<z.ZodEnum<{
        out: "out";
        in: "in";
        both: "both";
    }>>;
}, z.core.$strip>;
export declare const GraphImpactQuery: z.ZodObject<{
    nodeId: z.ZodString;
    nodeType: z.ZodString;
    maxDepth: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
}, z.core.$strip>;
export declare const AiLangBody: z.ZodObject<{
    lang: z.ZodEnum<{
        en: "en";
        zh: "zh";
    }>;
}, z.core.$strip>;
export declare const AiConfigBody: z.ZodObject<{
    provider: z.ZodString;
    model: z.ZodOptional<z.ZodString>;
}, z.core.$strip>;
export declare const AiSummarizeBody: z.ZodObject<{
    code: z.ZodString;
    language: z.ZodOptional<z.ZodString>;
}, z.core.$strip>;
export declare const AiTranslateBody: z.ZodObject<{
    summary: z.ZodOptional<z.ZodString>;
    usageGuide: z.ZodOptional<z.ZodString>;
}, z.core.$strip>;
export declare const AiChatBody: z.ZodObject<{
    prompt: z.ZodString;
    history: z.ZodDefault<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
    lang: z.ZodOptional<z.ZodString>;
    conversationId: z.ZodOptional<z.ZodString>;
    sseSessionId: z.ZodOptional<z.ZodString>;
}, z.core.$strip>;
export declare const AiStreamBody: z.ZodObject<{
    prompt: z.ZodString;
    history: z.ZodDefault<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
    lang: z.ZodOptional<z.ZodString>;
}, z.core.$strip>;
export declare const AiToolBody: z.ZodObject<{
    tool: z.ZodString;
    params: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
}, z.core.$strip>;
export declare const AiTaskBody: z.ZodObject<{
    task: z.ZodString;
    params: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
}, z.core.$strip>;
export declare const AiFormatUsageGuideBody: z.ZodObject<{
    text: z.ZodOptional<z.ZodString>;
}, z.core.$strip>;
export declare const AiEnvConfigBody: z.ZodObject<{
    provider: z.ZodString;
    model: z.ZodOptional<z.ZodString>;
    apiKey: z.ZodOptional<z.ZodString>;
    proxy: z.ZodOptional<z.ZodString>;
    embedProvider: z.ZodOptional<z.ZodString>;
    embedModel: z.ZodOptional<z.ZodString>;
    embedBaseUrl: z.ZodOptional<z.ZodString>;
    embedApiKey: z.ZodOptional<z.ZodString>;
}, z.core.$strip>;
export declare const ExtractPathBody: z.ZodObject<{
    relativePath: z.ZodString;
    projectRoot: z.ZodOptional<z.ZodString>;
}, z.core.$strip>;
export declare const ExtractTextBody: z.ZodObject<{
    text: z.ZodString;
    language: z.ZodOptional<z.ZodString>;
    relativePath: z.ZodOptional<z.ZodString>;
    projectRoot: z.ZodOptional<z.ZodString>;
}, z.core.$strip>;
export declare const AuthLoginBody: z.ZodObject<{
    username: z.ZodString;
    password: z.ZodString;
}, z.core.$strip>;
export declare const FileReadQuery: z.ZodObject<{
    path: z.ZodString;
}, z.core.$strip>;
export declare const FileSaveBody: z.ZodObject<{
    path: z.ZodString;
    content: z.ZodString;
}, z.core.$strip>;
export declare const RemoteSendBody: z.ZodObject<{
    command: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
}, z.core.$strip>;
export declare const RemoteNotifyBody: z.ZodObject<{
    text: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
}, z.core.$strip>;
export declare const RemoteResultBody: z.ZodObject<{
    result: z.ZodOptional<z.ZodString>;
    status: z.ZodDefault<z.ZodString>;
}, z.core.$strip>;
export declare const RemoteHistoryQuery: z.ZodObject<{
    limit: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
}, z.core.$strip>;
