/*
 * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
 */
import * as z from "zod";
import { CondExp$zodSchema } from "./condexp.js";
export const And2$zodSchema = z.union([
    CondExp$zodSchema,
    z.union([
        z.lazy(() => LogicExp1$zodSchema),
        z.lazy(() => LogicExp2$zodSchema),
    ]),
]);
export const Or2$zodSchema = z.union([
    CondExp$zodSchema,
    z.union([
        z.lazy(() => LogicExp1$zodSchema),
        z.lazy(() => LogicExp2$zodSchema),
    ]),
]);
export const LogicExp2$zodSchema = z.object({
    and: z.array(z.union([
        CondExp$zodSchema,
        z.union([
            z.lazy(() => LogicExp1$zodSchema),
            z.lazy(() => LogicExp2$zodSchema),
        ]),
    ])).optional().describe("All conditions in this array must be true."),
    or: z.array(z.union([
        CondExp$zodSchema,
        z.union([
            z.lazy(() => LogicExp1$zodSchema),
            z.lazy(() => LogicExp2$zodSchema),
        ]),
    ])).describe("At least one condition in this array must be true."),
});
export const And1$zodSchema = z.union([
    CondExp$zodSchema,
    z.union([
        z.lazy(() => LogicExp1$zodSchema),
        z.lazy(() => LogicExp2$zodSchema),
    ]),
]);
export const Or1$zodSchema = z.union([
    CondExp$zodSchema,
    z.union([
        z.lazy(() => LogicExp1$zodSchema),
        z.lazy(() => LogicExp2$zodSchema),
    ]),
]);
export const LogicExp1$zodSchema = z.object({
    and: z.array(z.union([
        CondExp$zodSchema,
        z.union([
            z.lazy(() => LogicExp1$zodSchema),
            z.lazy(() => LogicExp2$zodSchema),
        ]),
    ])).describe("All conditions in this array must be true."),
    or: z.array(z.union([
        CondExp$zodSchema,
        z.union([
            z.lazy(() => LogicExp1$zodSchema),
            z.lazy(() => LogicExp2$zodSchema),
        ]),
    ])).optional().describe("At least one condition in this array must be true."),
});
export const LogicExpUnion$zodSchema = z.union([
    z.lazy(() => LogicExp1$zodSchema),
    z.lazy(() => LogicExp2$zodSchema),
]).describe("Logical expression that combines multiple conditions using AND or OR operators.");
//# sourceMappingURL=logicexpunion.js.map