import { z } from 'zod';
declare const StepsSchema: z.ZodObject<{
    uses: z.ZodString;
    with: z.ZodEffects<z.ZodRecord<z.ZodString, z.ZodAny>, Record<string, string>, Record<string, any>>;
}, "strip", z.ZodTypeAny, {
    with: Record<string, string>;
    uses: string;
}, {
    with: Record<string, any>;
    uses: string;
}>;
export type Steps = z.infer<typeof StepsSchema>;
export declare const WorkflowSchema: z.ZodCatch<z.ZodPipeline<z.ZodEffects<z.ZodString, string | number | boolean | import("type-fest").JsonObject | import("type-fest").JsonValue[] | readonly import("type-fest").JsonValue[] | null, string>, z.ZodUnion<[z.ZodObject<{
    jobs: z.ZodEffects<z.ZodRecord<z.ZodString, z.ZodAny>, Record<string, {
        steps: {
            with: Record<string, string>;
            uses: string;
        }[];
        services: string[];
        'runs-on': string[];
        container?: string | undefined;
    }>, Record<string, any>>;
}, "strip", z.ZodTypeAny, {
    jobs: Record<string, {
        steps: {
            with: Record<string, string>;
            uses: string;
        }[];
        services: string[];
        'runs-on': string[];
        container?: string | undefined;
    }>;
}, {
    jobs: Record<string, any>;
}>, z.ZodObject<{
    runs: z.ZodObject<{
        using: z.ZodString;
        steps: z.ZodCatch<z.ZodOptional<z.ZodEffects<z.ZodArray<z.ZodAny, "many">, {
            with: Record<string, string>;
            uses: string;
        }[], any[]>>>;
    }, "strip", z.ZodTypeAny, {
        using: string;
        steps?: {
            with: Record<string, string>;
            uses: string;
        }[] | undefined;
    }, {
        using: string;
        steps?: unknown;
    }>;
}, "strip", z.ZodTypeAny, {
    runs: {
        using: string;
        steps?: {
            with: Record<string, string>;
            uses: string;
        }[] | undefined;
    };
}, {
    runs: {
        using: string;
        steps?: unknown;
    };
}>, z.ZodNull]>>>;
export {};
