/**
 * @fileoverview Zod Validation Schemas
 *
 * Comprehensive validation schemas for external data boundaries.
 * Provides runtime type safety for CLI arguments, external process outputs,
 * configuration files, and environment variables.
 */
import { z } from "zod";
/**
 * CLI Flags validation schema
 * Validates all command-line flags to prevent injection attacks
 */
export declare const CLIFlagsSchema: z.ZodObject<{
    help: z.ZodDefault<z.ZodBoolean>;
    helpMarkdown: z.ZodDefault<z.ZodBoolean>;
    helpQuick: z.ZodDefault<z.ZodBoolean>;
    aiContext: z.ZodDefault<z.ZodBoolean>;
    watch: z.ZodDefault<z.ZodBoolean>;
    includeAny: z.ZodDefault<z.ZodBoolean>;
    includeESLint: z.ZodDefault<z.ZodBoolean>;
    eslintOnly: z.ZodDefault<z.ZodBoolean>;
    archaeology: z.ZodDefault<z.ZodBoolean>;
    includeArchaeology: z.ZodDefault<z.ZodBoolean>;
    externalProject: z.ZodDefault<z.ZodBoolean>;
    targetPath: z.ZodDefault<z.ZodString>;
    verbose: z.ZodDefault<z.ZodBoolean>;
    strict: z.ZodDefault<z.ZodBoolean>;
    noCrossoverCheck: z.ZodDefault<z.ZodBoolean>;
    failOnCrossover: z.ZodDefault<z.ZodBoolean>;
    usePersistence: z.ZodDefault<z.ZodBoolean>;
    showBurndown: z.ZodDefault<z.ZodBoolean>;
    resetSession: z.ZodDefault<z.ZodBoolean>;
    resumeSession: z.ZodDefault<z.ZodBoolean>;
    debugTerminal: z.ZodDefault<z.ZodBoolean>;
    debug: z.ZodDefault<z.ZodBoolean>;
    dataDir: z.ZodDefault<z.ZodString>;
    generatePRD: z.ZodDefault<z.ZodBoolean>;
    installShortcuts: z.ZodDefault<z.ZodBoolean>;
    configAction: z.ZodOptional<z.ZodString>;
}, "strict", z.ZodTypeAny, {
    verbose: boolean;
    archaeology: boolean;
    targetPath: string;
    help: boolean;
    helpMarkdown: boolean;
    helpQuick: boolean;
    aiContext: boolean;
    watch: boolean;
    includeAny: boolean;
    includeESLint: boolean;
    eslintOnly: boolean;
    includeArchaeology: boolean;
    externalProject: boolean;
    strict: boolean;
    noCrossoverCheck: boolean;
    failOnCrossover: boolean;
    usePersistence: boolean;
    showBurndown: boolean;
    resetSession: boolean;
    resumeSession: boolean;
    debugTerminal: boolean;
    debug: boolean;
    dataDir: string;
    generatePRD: boolean;
    installShortcuts: boolean;
    configAction?: string | undefined;
}, {
    verbose?: boolean | undefined;
    archaeology?: boolean | undefined;
    targetPath?: string | undefined;
    help?: boolean | undefined;
    helpMarkdown?: boolean | undefined;
    helpQuick?: boolean | undefined;
    aiContext?: boolean | undefined;
    watch?: boolean | undefined;
    includeAny?: boolean | undefined;
    includeESLint?: boolean | undefined;
    eslintOnly?: boolean | undefined;
    includeArchaeology?: boolean | undefined;
    externalProject?: boolean | undefined;
    strict?: boolean | undefined;
    noCrossoverCheck?: boolean | undefined;
    failOnCrossover?: boolean | undefined;
    usePersistence?: boolean | undefined;
    showBurndown?: boolean | undefined;
    resetSession?: boolean | undefined;
    resumeSession?: boolean | undefined;
    debugTerminal?: boolean | undefined;
    debug?: boolean | undefined;
    dataDir?: string | undefined;
    generatePRD?: boolean | undefined;
    installShortcuts?: boolean | undefined;
    configAction?: string | undefined;
}>;
export type ValidatedCLIFlags = z.infer<typeof CLIFlagsSchema>;
/**
 * Environment variables validation schema
 * Validates environment variables to prevent malicious injection
 */
export declare const EnvironmentSchema: z.ZodObject<{
    CQO_DB_PATH: z.ZodOptional<z.ZodString>;
    TERM_COLOR_MODE: z.ZodOptional<z.ZodEnum<["light", "dark", "auto"]>>;
    NODE_ENV: z.ZodOptional<z.ZodEnum<["development", "test", "production"]>>;
    DEBUG: z.ZodOptional<z.ZodString>;
    CI: z.ZodOptional<z.ZodString>;
}, "strict", z.ZodTypeAny, {
    NODE_ENV?: "test" | "development" | "production" | undefined;
    CI?: string | undefined;
    TERM_COLOR_MODE?: "dark" | "light" | "auto" | undefined;
    DEBUG?: string | undefined;
    CQO_DB_PATH?: string | undefined;
}, {
    NODE_ENV?: "test" | "development" | "production" | undefined;
    CI?: string | undefined;
    TERM_COLOR_MODE?: "dark" | "light" | "auto" | undefined;
    DEBUG?: string | undefined;
    CQO_DB_PATH?: string | undefined;
}>;
export type ValidatedEnvironment = z.infer<typeof EnvironmentSchema>;
/**
 * TypeScript configuration validation schema
 * Validates tsconfig.json structure to prevent malicious configurations
 */
export declare const TSConfigSchema: z.ZodObject<{
    compilerOptions: z.ZodOptional<z.ZodObject<{
        strict: z.ZodOptional<z.ZodBoolean>;
        exactOptionalPropertyTypes: z.ZodOptional<z.ZodBoolean>;
        noUncheckedIndexedAccess: z.ZodOptional<z.ZodBoolean>;
        noImplicitAny: z.ZodOptional<z.ZodBoolean>;
        target: z.ZodOptional<z.ZodString>;
        module: z.ZodOptional<z.ZodString>;
        lib: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
        outDir: z.ZodOptional<z.ZodString>;
        rootDir: z.ZodOptional<z.ZodString>;
        baseUrl: z.ZodOptional<z.ZodString>;
        paths: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString, "many">>>;
        esModuleInterop: z.ZodOptional<z.ZodBoolean>;
        allowSyntheticDefaultImports: z.ZodOptional<z.ZodBoolean>;
        moduleResolution: z.ZodOptional<z.ZodString>;
    }, "strip", z.ZodTypeAny, {
        strict?: boolean | undefined;
        exactOptionalPropertyTypes?: boolean | undefined;
        noUncheckedIndexedAccess?: boolean | undefined;
        noImplicitAny?: boolean | undefined;
        target?: string | undefined;
        module?: string | undefined;
        lib?: string[] | undefined;
        outDir?: string | undefined;
        rootDir?: string | undefined;
        baseUrl?: string | undefined;
        paths?: Record<string, string[]> | undefined;
        esModuleInterop?: boolean | undefined;
        allowSyntheticDefaultImports?: boolean | undefined;
        moduleResolution?: string | undefined;
    }, {
        strict?: boolean | undefined;
        exactOptionalPropertyTypes?: boolean | undefined;
        noUncheckedIndexedAccess?: boolean | undefined;
        noImplicitAny?: boolean | undefined;
        target?: string | undefined;
        module?: string | undefined;
        lib?: string[] | undefined;
        outDir?: string | undefined;
        rootDir?: string | undefined;
        baseUrl?: string | undefined;
        paths?: Record<string, string[]> | undefined;
        esModuleInterop?: boolean | undefined;
        allowSyntheticDefaultImports?: boolean | undefined;
        moduleResolution?: string | undefined;
    }>>;
    include: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
    exclude: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
    extends: z.ZodOptional<z.ZodString>;
}, "passthrough", z.ZodTypeAny, z.objectOutputType<{
    compilerOptions: z.ZodOptional<z.ZodObject<{
        strict: z.ZodOptional<z.ZodBoolean>;
        exactOptionalPropertyTypes: z.ZodOptional<z.ZodBoolean>;
        noUncheckedIndexedAccess: z.ZodOptional<z.ZodBoolean>;
        noImplicitAny: z.ZodOptional<z.ZodBoolean>;
        target: z.ZodOptional<z.ZodString>;
        module: z.ZodOptional<z.ZodString>;
        lib: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
        outDir: z.ZodOptional<z.ZodString>;
        rootDir: z.ZodOptional<z.ZodString>;
        baseUrl: z.ZodOptional<z.ZodString>;
        paths: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString, "many">>>;
        esModuleInterop: z.ZodOptional<z.ZodBoolean>;
        allowSyntheticDefaultImports: z.ZodOptional<z.ZodBoolean>;
        moduleResolution: z.ZodOptional<z.ZodString>;
    }, "strip", z.ZodTypeAny, {
        strict?: boolean | undefined;
        exactOptionalPropertyTypes?: boolean | undefined;
        noUncheckedIndexedAccess?: boolean | undefined;
        noImplicitAny?: boolean | undefined;
        target?: string | undefined;
        module?: string | undefined;
        lib?: string[] | undefined;
        outDir?: string | undefined;
        rootDir?: string | undefined;
        baseUrl?: string | undefined;
        paths?: Record<string, string[]> | undefined;
        esModuleInterop?: boolean | undefined;
        allowSyntheticDefaultImports?: boolean | undefined;
        moduleResolution?: string | undefined;
    }, {
        strict?: boolean | undefined;
        exactOptionalPropertyTypes?: boolean | undefined;
        noUncheckedIndexedAccess?: boolean | undefined;
        noImplicitAny?: boolean | undefined;
        target?: string | undefined;
        module?: string | undefined;
        lib?: string[] | undefined;
        outDir?: string | undefined;
        rootDir?: string | undefined;
        baseUrl?: string | undefined;
        paths?: Record<string, string[]> | undefined;
        esModuleInterop?: boolean | undefined;
        allowSyntheticDefaultImports?: boolean | undefined;
        moduleResolution?: string | undefined;
    }>>;
    include: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
    exclude: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
    extends: z.ZodOptional<z.ZodString>;
}, z.ZodTypeAny, "passthrough">, z.objectInputType<{
    compilerOptions: z.ZodOptional<z.ZodObject<{
        strict: z.ZodOptional<z.ZodBoolean>;
        exactOptionalPropertyTypes: z.ZodOptional<z.ZodBoolean>;
        noUncheckedIndexedAccess: z.ZodOptional<z.ZodBoolean>;
        noImplicitAny: z.ZodOptional<z.ZodBoolean>;
        target: z.ZodOptional<z.ZodString>;
        module: z.ZodOptional<z.ZodString>;
        lib: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
        outDir: z.ZodOptional<z.ZodString>;
        rootDir: z.ZodOptional<z.ZodString>;
        baseUrl: z.ZodOptional<z.ZodString>;
        paths: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString, "many">>>;
        esModuleInterop: z.ZodOptional<z.ZodBoolean>;
        allowSyntheticDefaultImports: z.ZodOptional<z.ZodBoolean>;
        moduleResolution: z.ZodOptional<z.ZodString>;
    }, "strip", z.ZodTypeAny, {
        strict?: boolean | undefined;
        exactOptionalPropertyTypes?: boolean | undefined;
        noUncheckedIndexedAccess?: boolean | undefined;
        noImplicitAny?: boolean | undefined;
        target?: string | undefined;
        module?: string | undefined;
        lib?: string[] | undefined;
        outDir?: string | undefined;
        rootDir?: string | undefined;
        baseUrl?: string | undefined;
        paths?: Record<string, string[]> | undefined;
        esModuleInterop?: boolean | undefined;
        allowSyntheticDefaultImports?: boolean | undefined;
        moduleResolution?: string | undefined;
    }, {
        strict?: boolean | undefined;
        exactOptionalPropertyTypes?: boolean | undefined;
        noUncheckedIndexedAccess?: boolean | undefined;
        noImplicitAny?: boolean | undefined;
        target?: string | undefined;
        module?: string | undefined;
        lib?: string[] | undefined;
        outDir?: string | undefined;
        rootDir?: string | undefined;
        baseUrl?: string | undefined;
        paths?: Record<string, string[]> | undefined;
        esModuleInterop?: boolean | undefined;
        allowSyntheticDefaultImports?: boolean | undefined;
        moduleResolution?: string | undefined;
    }>>;
    include: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
    exclude: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
    extends: z.ZodOptional<z.ZodString>;
}, z.ZodTypeAny, "passthrough">>;
export type ValidatedTSConfig = z.infer<typeof TSConfigSchema>;
/**
 * Complete ESLint output validation schema
 * Validates ESLint JSON output with inline schema definitions
 */
export declare const ESLintOutputSchema: z.ZodArray<z.ZodObject<{
    filePath: z.ZodString;
    messages: z.ZodArray<z.ZodObject<{
        ruleId: z.ZodNullable<z.ZodString>;
        severity: z.ZodNumber;
        message: z.ZodString;
        line: z.ZodNumber;
        column: z.ZodOptional<z.ZodNumber>;
        nodeType: z.ZodOptional<z.ZodNullable<z.ZodString>>;
        messageId: z.ZodOptional<z.ZodString>;
        endLine: z.ZodOptional<z.ZodNumber>;
        endColumn: z.ZodOptional<z.ZodNumber>;
        fix: z.ZodOptional<z.ZodObject<{
            range: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
            text: z.ZodString;
        }, "strip", z.ZodTypeAny, {
            text: string;
            range: [number, number];
        }, {
            text: string;
            range: [number, number];
        }>>;
        suggestions: z.ZodOptional<z.ZodArray<z.ZodAny, "many">>;
        suppressions: z.ZodOptional<z.ZodArray<z.ZodAny, "many">>;
    }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
        ruleId: z.ZodNullable<z.ZodString>;
        severity: z.ZodNumber;
        message: z.ZodString;
        line: z.ZodNumber;
        column: z.ZodOptional<z.ZodNumber>;
        nodeType: z.ZodOptional<z.ZodNullable<z.ZodString>>;
        messageId: z.ZodOptional<z.ZodString>;
        endLine: z.ZodOptional<z.ZodNumber>;
        endColumn: z.ZodOptional<z.ZodNumber>;
        fix: z.ZodOptional<z.ZodObject<{
            range: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
            text: z.ZodString;
        }, "strip", z.ZodTypeAny, {
            text: string;
            range: [number, number];
        }, {
            text: string;
            range: [number, number];
        }>>;
        suggestions: z.ZodOptional<z.ZodArray<z.ZodAny, "many">>;
        suppressions: z.ZodOptional<z.ZodArray<z.ZodAny, "many">>;
    }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
        ruleId: z.ZodNullable<z.ZodString>;
        severity: z.ZodNumber;
        message: z.ZodString;
        line: z.ZodNumber;
        column: z.ZodOptional<z.ZodNumber>;
        nodeType: z.ZodOptional<z.ZodNullable<z.ZodString>>;
        messageId: z.ZodOptional<z.ZodString>;
        endLine: z.ZodOptional<z.ZodNumber>;
        endColumn: z.ZodOptional<z.ZodNumber>;
        fix: z.ZodOptional<z.ZodObject<{
            range: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
            text: z.ZodString;
        }, "strip", z.ZodTypeAny, {
            text: string;
            range: [number, number];
        }, {
            text: string;
            range: [number, number];
        }>>;
        suggestions: z.ZodOptional<z.ZodArray<z.ZodAny, "many">>;
        suppressions: z.ZodOptional<z.ZodArray<z.ZodAny, "many">>;
    }, z.ZodTypeAny, "passthrough">>, "many">;
    suppressedMessages: z.ZodOptional<z.ZodArray<z.ZodAny, "many">>;
    errorCount: z.ZodNumber;
    fatalErrorCount: z.ZodNumber;
    warningCount: z.ZodNumber;
    fixableErrorCount: z.ZodNumber;
    fixableWarningCount: z.ZodNumber;
    usedDeprecatedRules: z.ZodOptional<z.ZodArray<z.ZodObject<{
        ruleId: z.ZodString;
        replacedBy: z.ZodArray<z.ZodString, "many">;
    }, "strip", z.ZodTypeAny, {
        ruleId: string;
        replacedBy: string[];
    }, {
        ruleId: string;
        replacedBy: string[];
    }>, "many">>;
    source: z.ZodOptional<z.ZodString>;
}, "passthrough", z.ZodTypeAny, z.objectOutputType<{
    filePath: z.ZodString;
    messages: z.ZodArray<z.ZodObject<{
        ruleId: z.ZodNullable<z.ZodString>;
        severity: z.ZodNumber;
        message: z.ZodString;
        line: z.ZodNumber;
        column: z.ZodOptional<z.ZodNumber>;
        nodeType: z.ZodOptional<z.ZodNullable<z.ZodString>>;
        messageId: z.ZodOptional<z.ZodString>;
        endLine: z.ZodOptional<z.ZodNumber>;
        endColumn: z.ZodOptional<z.ZodNumber>;
        fix: z.ZodOptional<z.ZodObject<{
            range: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
            text: z.ZodString;
        }, "strip", z.ZodTypeAny, {
            text: string;
            range: [number, number];
        }, {
            text: string;
            range: [number, number];
        }>>;
        suggestions: z.ZodOptional<z.ZodArray<z.ZodAny, "many">>;
        suppressions: z.ZodOptional<z.ZodArray<z.ZodAny, "many">>;
    }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
        ruleId: z.ZodNullable<z.ZodString>;
        severity: z.ZodNumber;
        message: z.ZodString;
        line: z.ZodNumber;
        column: z.ZodOptional<z.ZodNumber>;
        nodeType: z.ZodOptional<z.ZodNullable<z.ZodString>>;
        messageId: z.ZodOptional<z.ZodString>;
        endLine: z.ZodOptional<z.ZodNumber>;
        endColumn: z.ZodOptional<z.ZodNumber>;
        fix: z.ZodOptional<z.ZodObject<{
            range: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
            text: z.ZodString;
        }, "strip", z.ZodTypeAny, {
            text: string;
            range: [number, number];
        }, {
            text: string;
            range: [number, number];
        }>>;
        suggestions: z.ZodOptional<z.ZodArray<z.ZodAny, "many">>;
        suppressions: z.ZodOptional<z.ZodArray<z.ZodAny, "many">>;
    }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
        ruleId: z.ZodNullable<z.ZodString>;
        severity: z.ZodNumber;
        message: z.ZodString;
        line: z.ZodNumber;
        column: z.ZodOptional<z.ZodNumber>;
        nodeType: z.ZodOptional<z.ZodNullable<z.ZodString>>;
        messageId: z.ZodOptional<z.ZodString>;
        endLine: z.ZodOptional<z.ZodNumber>;
        endColumn: z.ZodOptional<z.ZodNumber>;
        fix: z.ZodOptional<z.ZodObject<{
            range: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
            text: z.ZodString;
        }, "strip", z.ZodTypeAny, {
            text: string;
            range: [number, number];
        }, {
            text: string;
            range: [number, number];
        }>>;
        suggestions: z.ZodOptional<z.ZodArray<z.ZodAny, "many">>;
        suppressions: z.ZodOptional<z.ZodArray<z.ZodAny, "many">>;
    }, z.ZodTypeAny, "passthrough">>, "many">;
    suppressedMessages: z.ZodOptional<z.ZodArray<z.ZodAny, "many">>;
    errorCount: z.ZodNumber;
    fatalErrorCount: z.ZodNumber;
    warningCount: z.ZodNumber;
    fixableErrorCount: z.ZodNumber;
    fixableWarningCount: z.ZodNumber;
    usedDeprecatedRules: z.ZodOptional<z.ZodArray<z.ZodObject<{
        ruleId: z.ZodString;
        replacedBy: z.ZodArray<z.ZodString, "many">;
    }, "strip", z.ZodTypeAny, {
        ruleId: string;
        replacedBy: string[];
    }, {
        ruleId: string;
        replacedBy: string[];
    }>, "many">>;
    source: z.ZodOptional<z.ZodString>;
}, z.ZodTypeAny, "passthrough">, z.objectInputType<{
    filePath: z.ZodString;
    messages: z.ZodArray<z.ZodObject<{
        ruleId: z.ZodNullable<z.ZodString>;
        severity: z.ZodNumber;
        message: z.ZodString;
        line: z.ZodNumber;
        column: z.ZodOptional<z.ZodNumber>;
        nodeType: z.ZodOptional<z.ZodNullable<z.ZodString>>;
        messageId: z.ZodOptional<z.ZodString>;
        endLine: z.ZodOptional<z.ZodNumber>;
        endColumn: z.ZodOptional<z.ZodNumber>;
        fix: z.ZodOptional<z.ZodObject<{
            range: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
            text: z.ZodString;
        }, "strip", z.ZodTypeAny, {
            text: string;
            range: [number, number];
        }, {
            text: string;
            range: [number, number];
        }>>;
        suggestions: z.ZodOptional<z.ZodArray<z.ZodAny, "many">>;
        suppressions: z.ZodOptional<z.ZodArray<z.ZodAny, "many">>;
    }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
        ruleId: z.ZodNullable<z.ZodString>;
        severity: z.ZodNumber;
        message: z.ZodString;
        line: z.ZodNumber;
        column: z.ZodOptional<z.ZodNumber>;
        nodeType: z.ZodOptional<z.ZodNullable<z.ZodString>>;
        messageId: z.ZodOptional<z.ZodString>;
        endLine: z.ZodOptional<z.ZodNumber>;
        endColumn: z.ZodOptional<z.ZodNumber>;
        fix: z.ZodOptional<z.ZodObject<{
            range: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
            text: z.ZodString;
        }, "strip", z.ZodTypeAny, {
            text: string;
            range: [number, number];
        }, {
            text: string;
            range: [number, number];
        }>>;
        suggestions: z.ZodOptional<z.ZodArray<z.ZodAny, "many">>;
        suppressions: z.ZodOptional<z.ZodArray<z.ZodAny, "many">>;
    }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
        ruleId: z.ZodNullable<z.ZodString>;
        severity: z.ZodNumber;
        message: z.ZodString;
        line: z.ZodNumber;
        column: z.ZodOptional<z.ZodNumber>;
        nodeType: z.ZodOptional<z.ZodNullable<z.ZodString>>;
        messageId: z.ZodOptional<z.ZodString>;
        endLine: z.ZodOptional<z.ZodNumber>;
        endColumn: z.ZodOptional<z.ZodNumber>;
        fix: z.ZodOptional<z.ZodObject<{
            range: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
            text: z.ZodString;
        }, "strip", z.ZodTypeAny, {
            text: string;
            range: [number, number];
        }, {
            text: string;
            range: [number, number];
        }>>;
        suggestions: z.ZodOptional<z.ZodArray<z.ZodAny, "many">>;
        suppressions: z.ZodOptional<z.ZodArray<z.ZodAny, "many">>;
    }, z.ZodTypeAny, "passthrough">>, "many">;
    suppressedMessages: z.ZodOptional<z.ZodArray<z.ZodAny, "many">>;
    errorCount: z.ZodNumber;
    fatalErrorCount: z.ZodNumber;
    warningCount: z.ZodNumber;
    fixableErrorCount: z.ZodNumber;
    fixableWarningCount: z.ZodNumber;
    usedDeprecatedRules: z.ZodOptional<z.ZodArray<z.ZodObject<{
        ruleId: z.ZodString;
        replacedBy: z.ZodArray<z.ZodString, "many">;
    }, "strip", z.ZodTypeAny, {
        ruleId: string;
        replacedBy: string[];
    }, {
        ruleId: string;
        replacedBy: string[];
    }>, "many">>;
    source: z.ZodOptional<z.ZodString>;
}, z.ZodTypeAny, "passthrough">>, "many">;
export type ValidatedESLintOutput = z.infer<typeof ESLintOutputSchema>;
/**
 * Package.json validation schema
 * Validates package.json structure for dependency checking
 */
export declare const PackageJsonSchema: z.ZodObject<{
    name: z.ZodOptional<z.ZodString>;
    version: z.ZodOptional<z.ZodString>;
    dependencies: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
    devDependencies: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
    peerDependencies: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
    scripts: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
}, "passthrough", z.ZodTypeAny, z.objectOutputType<{
    name: z.ZodOptional<z.ZodString>;
    version: z.ZodOptional<z.ZodString>;
    dependencies: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
    devDependencies: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
    peerDependencies: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
    scripts: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
}, z.ZodTypeAny, "passthrough">, z.objectInputType<{
    name: z.ZodOptional<z.ZodString>;
    version: z.ZodOptional<z.ZodString>;
    dependencies: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
    devDependencies: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
    peerDependencies: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
    scripts: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
}, z.ZodTypeAny, "passthrough">>;
export type ValidatedPackageJson = z.infer<typeof PackageJsonSchema>;
/**
 * Safe JSON parsing with Zod validation
 * Prevents JSON injection attacks by validating structure
 */
export declare function safeJsonParse<T>(json: string, schema: z.ZodSchema<T>, context?: string): T;
/**
 * Safe environment variable access with validation
 * Validates environment variables to prevent injection
 */
export declare function safeEnvironmentAccess(): ValidatedEnvironment;
/**
 * Safe CLI arguments parsing with validation
 * Validates command-line arguments to prevent injection
 */
export declare function safeCLIArgumentsParse(arguments_: string[]): ValidatedCLIFlags;
//# sourceMappingURL=validation-schemas.d.ts.map