import { z } from 'zod';
export declare const coverageTypeSchema: z.ZodEnum<["function", "branch", "line"]>;
export type CoverageType = z.infer<typeof coverageTypeSchema>;
export declare const coverageResultSchema: z.ZodUnion<[z.ZodObject<{
    resultsPath: z.ZodString;
    pathToProject: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
    resultsPath: string;
    pathToProject?: string | undefined;
}, {
    resultsPath: string;
    pathToProject?: string | undefined;
}>, z.ZodString]>;
export type CoverageResult = z.infer<typeof coverageResultSchema>;
export declare const coveragePluginConfigSchema: z.ZodObject<{
    coverageToolCommand: z.ZodOptional<z.ZodObject<{
        command: z.ZodString;
        args: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
    }, "strip", z.ZodTypeAny, {
        command: string;
        args?: string[] | undefined;
    }, {
        command: string;
        args?: string[] | undefined;
    }>>;
    continueOnCommandFail: z.ZodDefault<z.ZodBoolean>;
    coverageTypes: z.ZodDefault<z.ZodArray<z.ZodEnum<["function", "branch", "line"]>, "many">>;
    reports: z.ZodArray<z.ZodUnion<[z.ZodObject<{
        resultsPath: z.ZodString;
        pathToProject: z.ZodOptional<z.ZodString>;
    }, "strip", z.ZodTypeAny, {
        resultsPath: string;
        pathToProject?: string | undefined;
    }, {
        resultsPath: string;
        pathToProject?: string | undefined;
    }>, z.ZodString]>, "many">;
    perfectScoreThreshold: z.ZodOptional<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
    continueOnCommandFail: boolean;
    coverageTypes: ("function" | "branch" | "line")[];
    reports: (string | {
        resultsPath: string;
        pathToProject?: string | undefined;
    })[];
    coverageToolCommand?: {
        command: string;
        args?: string[] | undefined;
    } | undefined;
    perfectScoreThreshold?: number | undefined;
}, {
    reports: (string | {
        resultsPath: string;
        pathToProject?: string | undefined;
    })[];
    coverageToolCommand?: {
        command: string;
        args?: string[] | undefined;
    } | undefined;
    continueOnCommandFail?: boolean | undefined;
    coverageTypes?: ("function" | "branch" | "line")[] | undefined;
    perfectScoreThreshold?: number | undefined;
}>;
export type CoveragePluginConfig = z.input<typeof coveragePluginConfigSchema>;
export type FinalCoveragePluginConfig = z.infer<typeof coveragePluginConfigSchema>;
