/**
 * @sanity/ailf-core — Pipeline Request schema
 *
 * The universal pipeline invocation contract. A single Zod schema shared
 * between the API gateway (POST /v1/pipeline), the CLI (--config flag),
 * and GitHub Actions workflows (repository_dispatch payload).
 *
 * This eliminates the ~100-line bash flag-building in the workflow YAML
 * by flowing the entire payload through the system untouched. Each layer
 * validates it against this schema but doesn't restructure it.
 *
 * @see docs/design-docs/api-service-gateway.md — Section 7.2
 * @see packages/eval/src/pipeline/map-request-to-config.ts — maps to ResolvedConfig
 */
import { z } from "zod";
export declare const PipelineRequestSchema: z.ZodObject<{
    allowedOrigins: z.ZodOptional<z.ZodArray<z.ZodString>>;
    backend: z.ZodOptional<z.ZodEnum<{
        "cloud-run": "cloud-run";
        "github-actions": "github-actions";
    }>>;
    areas: z.ZodOptional<z.ZodArray<z.ZodString>>;
    callerGit: z.ZodOptional<z.ZodObject<{
        branch: z.ZodOptional<z.ZodString>;
        prNumber: z.ZodOptional<z.ZodNumber>;
        repo: z.ZodString;
        sha: z.ZodOptional<z.ZodString>;
    }, z.core.$strip>>;
    callback: z.ZodOptional<z.ZodObject<{
        headers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
        url: z.ZodString;
    }, z.core.$strip>>;
    changedDocs: z.ZodOptional<z.ZodArray<z.ZodString>>;
    compare: z.ZodOptional<z.ZodBoolean>;
    compareBaseline: z.ZodOptional<z.ZodString>;
    compareBaselineReportId: z.ZodOptional<z.ZodString>;
    compareThreshold: z.ZodOptional<z.ZodNumber>;
    concurrency: z.ZodOptional<z.ZodNumber>;
    dataset: z.ZodOptional<z.ZodString>;
    debug: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodObject<{
        enabled: z.ZodOptional<z.ZodBoolean>;
        firstN: z.ZodOptional<z.ZodNumber>;
        pattern: z.ZodOptional<z.ZodString>;
        sample: z.ZodOptional<z.ZodNumber>;
    }, z.core.$strip>]>>;
    gapAnalysis: z.ZodOptional<z.ZodBoolean>;
    graderContext: z.ZodOptional<z.ZodEnum<{
        "rubric-only": "rubric-only";
        "with-docs": "with-docs";
    }>>;
    graderReplications: z.ZodOptional<z.ZodNumber>;
    borderlineReplications: z.ZodOptional<z.ZodNumber>;
    headers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
    injectContextDocs: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
        id: z.ZodString;
        slug: z.ZodOptional<z.ZodString>;
        path: z.ZodOptional<z.ZodString>;
        reason: z.ZodOptional<z.ZodString>;
    }, z.core.$strip>, z.ZodObject<{
        path: z.ZodString;
        reason: z.ZodOptional<z.ZodString>;
    }, z.core.$strip>, z.ZodObject<{
        slug: z.ZodString;
        reason: z.ZodOptional<z.ZodString>;
    }, z.core.$strip>, z.ZodObject<{
        perspective: z.ZodString;
        reason: z.ZodOptional<z.ZodString>;
    }, z.core.$strip>]>>>;
    inlineTasks: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
    jobId: z.ZodOptional<z.ZodString>;
    mode: z.ZodOptional<z.ZodEnum<{
        custom: "custom";
        agentic: "agentic";
        literacy: "literacy";
        "mcp-server": "mcp-server";
        "agent-harness": "agent-harness";
        "knowledge-probe": "knowledge-probe";
        baseline: "baseline";
        observed: "observed";
        full: "full";
    }>>;
    models: z.ZodOptional<z.ZodArray<z.ZodString>>;
    noAutoScope: z.ZodOptional<z.ZodBoolean>;
    noCache: z.ZodOptional<z.ZodBoolean>;
    noRemoteCache: z.ZodOptional<z.ZodBoolean>;
    perspective: z.ZodOptional<z.ZodString>;
    projectId: z.ZodOptional<z.ZodString>;
    publish: z.ZodOptional<z.ZodBoolean>;
    publishTag: z.ZodOptional<z.ZodString>;
    registerTasks: z.ZodOptional<z.ZodBoolean>;
    searchMode: z.ZodOptional<z.ZodEnum<{
        off: "off";
        open: "open";
        "origin-only": "origin-only";
    }>>;
    source: z.ZodOptional<z.ZodString>;
    sourceReportId: z.ZodOptional<z.ZodString>;
    studioOrigin: z.ZodOptional<z.ZodString>;
    taskMode: z.ZodOptional<z.ZodEnum<{
        "content-lake": "content-lake";
        inline: "inline";
    }>>;
    taskSource: z.ZodOptional<z.ZodObject<{
        type: z.ZodOptional<z.ZodEnum<{
            "content-lake": "content-lake";
            repo: "repo";
        }>>;
        repoTasksPath: z.ZodOptional<z.ZodString>;
    }, z.core.$strip>>;
    tasks: z.ZodOptional<z.ZodArray<z.ZodString>>;
    urls: z.ZodOptional<z.ZodArray<z.ZodString>>;
    variant: z.ZodOptional<z.ZodEnum<{
        agentic: "agentic";
        baseline: "baseline";
        observed: "observed";
        full: "full";
    }>>;
    presets: z.ZodOptional<z.ZodArray<z.ZodString>>;
    classification: z.ZodOptional<z.ZodEnum<{
        external: "external";
        official: "official";
        adhoc: "adhoc";
        experimental: "experimental";
        test: "test";
    }>>;
    owner: z.ZodOptional<z.ZodObject<{
        team: z.ZodString;
        individual: z.ZodOptional<z.ZodString>;
    }, z.core.$strip>>;
    executor: z.ZodOptional<z.ZodObject<{
        type: z.ZodLiteral<"user">;
        surface: z.ZodEnum<{
            cli: "cli";
            studio: "studio";
            api: "api";
        }>;
        name: z.ZodOptional<z.ZodString>;
        githubActor: z.ZodOptional<z.ZodString>;
    }, z.core.$strict>>;
    purpose: z.ZodOptional<z.ZodString>;
    labels: z.ZodOptional<z.ZodArray<z.ZodString>>;
}, z.core.$strip>;
export type { PipelineRequest } from "../types/pipeline-request.js";
