import * as z from 'zod';
import type { Prisma } from '../../../generated/prisma';
import { ServiceLineTransactionCreateWithoutServiceLineInputObjectSchema as ServiceLineTransactionCreateWithoutServiceLineInputObjectSchema } from './ServiceLineTransactionCreateWithoutServiceLineInput.schema';
import { ServiceLineTransactionUncheckedCreateWithoutServiceLineInputObjectSchema as ServiceLineTransactionUncheckedCreateWithoutServiceLineInputObjectSchema } from './ServiceLineTransactionUncheckedCreateWithoutServiceLineInput.schema';
import { ServiceLineTransactionCreateOrConnectWithoutServiceLineInputObjectSchema as ServiceLineTransactionCreateOrConnectWithoutServiceLineInputObjectSchema } from './ServiceLineTransactionCreateOrConnectWithoutServiceLineInput.schema';
import { ServiceLineTransactionUpsertWithWhereUniqueWithoutServiceLineInputObjectSchema as ServiceLineTransactionUpsertWithWhereUniqueWithoutServiceLineInputObjectSchema } from './ServiceLineTransactionUpsertWithWhereUniqueWithoutServiceLineInput.schema';
import { ServiceLineTransactionCreateManyServiceLineInputEnvelopeObjectSchema as ServiceLineTransactionCreateManyServiceLineInputEnvelopeObjectSchema } from './ServiceLineTransactionCreateManyServiceLineInputEnvelope.schema';
import { ServiceLineTransactionWhereUniqueInputObjectSchema as ServiceLineTransactionWhereUniqueInputObjectSchema } from './ServiceLineTransactionWhereUniqueInput.schema';
import { ServiceLineTransactionUpdateWithWhereUniqueWithoutServiceLineInputObjectSchema as ServiceLineTransactionUpdateWithWhereUniqueWithoutServiceLineInputObjectSchema } from './ServiceLineTransactionUpdateWithWhereUniqueWithoutServiceLineInput.schema';
import { ServiceLineTransactionUpdateManyWithWhereWithoutServiceLineInputObjectSchema as ServiceLineTransactionUpdateManyWithWhereWithoutServiceLineInputObjectSchema } from './ServiceLineTransactionUpdateManyWithWhereWithoutServiceLineInput.schema';
import { ServiceLineTransactionScalarWhereInputObjectSchema as ServiceLineTransactionScalarWhereInputObjectSchema } from './ServiceLineTransactionScalarWhereInput.schema'

const makeSchema = () => z.object({
  create: z.union([z.lazy(() => ServiceLineTransactionCreateWithoutServiceLineInputObjectSchema), z.lazy(() => ServiceLineTransactionCreateWithoutServiceLineInputObjectSchema).array(), z.lazy(() => ServiceLineTransactionUncheckedCreateWithoutServiceLineInputObjectSchema), z.lazy(() => ServiceLineTransactionUncheckedCreateWithoutServiceLineInputObjectSchema).array()]).optional(),
  connectOrCreate: z.union([z.lazy(() => ServiceLineTransactionCreateOrConnectWithoutServiceLineInputObjectSchema), z.lazy(() => ServiceLineTransactionCreateOrConnectWithoutServiceLineInputObjectSchema).array()]).optional(),
  upsert: z.union([z.lazy(() => ServiceLineTransactionUpsertWithWhereUniqueWithoutServiceLineInputObjectSchema), z.lazy(() => ServiceLineTransactionUpsertWithWhereUniqueWithoutServiceLineInputObjectSchema).array()]).optional(),
  createMany: z.lazy(() => ServiceLineTransactionCreateManyServiceLineInputEnvelopeObjectSchema).optional(),
  set: z.union([z.lazy(() => ServiceLineTransactionWhereUniqueInputObjectSchema), z.lazy(() => ServiceLineTransactionWhereUniqueInputObjectSchema).array()]).optional(),
  disconnect: z.union([z.lazy(() => ServiceLineTransactionWhereUniqueInputObjectSchema), z.lazy(() => ServiceLineTransactionWhereUniqueInputObjectSchema).array()]).optional(),
  delete: z.union([z.lazy(() => ServiceLineTransactionWhereUniqueInputObjectSchema), z.lazy(() => ServiceLineTransactionWhereUniqueInputObjectSchema).array()]).optional(),
  connect: z.union([z.lazy(() => ServiceLineTransactionWhereUniqueInputObjectSchema), z.lazy(() => ServiceLineTransactionWhereUniqueInputObjectSchema).array()]).optional(),
  update: z.union([z.lazy(() => ServiceLineTransactionUpdateWithWhereUniqueWithoutServiceLineInputObjectSchema), z.lazy(() => ServiceLineTransactionUpdateWithWhereUniqueWithoutServiceLineInputObjectSchema).array()]).optional(),
  updateMany: z.union([z.lazy(() => ServiceLineTransactionUpdateManyWithWhereWithoutServiceLineInputObjectSchema), z.lazy(() => ServiceLineTransactionUpdateManyWithWhereWithoutServiceLineInputObjectSchema).array()]).optional(),
  deleteMany: z.union([z.lazy(() => ServiceLineTransactionScalarWhereInputObjectSchema), z.lazy(() => ServiceLineTransactionScalarWhereInputObjectSchema).array()]).optional()
}).strict();
export const ServiceLineTransactionUpdateManyWithoutServiceLineNestedInputObjectSchema: z.ZodType<Prisma.ServiceLineTransactionUpdateManyWithoutServiceLineNestedInput> = makeSchema() as unknown as z.ZodType<Prisma.ServiceLineTransactionUpdateManyWithoutServiceLineNestedInput>;
export const ServiceLineTransactionUpdateManyWithoutServiceLineNestedInputObjectZodSchema = makeSchema();
