import { z } from "zod";

export const moveOutSchema = z.object({
  id: z.number(),
  clientId: z.number(),
  tenantId: z.number(),
  propId: z.number(),
  roomId: z.number(),
  bedId: z.number(),
  floor: z.string(),
  reason: z.string(),
  clientDues: z.number(),
  tenantDues: z.number(),
  rent: z
    .number()
    .gt(1000, "rent must be greater than Rs 1000")
    .lt(100000, "rent must be less than Rs 1,00,000"),
  rentalCycle: z.string(),
  rentalType: z.number(),
  rentalMonths: z.number(),
  noticePeriod: z.number(),
  lockInPeriod: z.number(),
  security: z.number(),
  agreementPeriod: z.number(),
  agreementStartDate: z.string().date(),
  moveInDate: z.string().date(),
  moveOutDate: z.string().date(),
  status: z.number(),
  electricityReading: z.number(),
  createdAt: z.string().datetime(),
  updatedAt: z.string().datetime(),
  flatId: z.number(),
  notes: z.string(),
  rentalBond: z.number(),
  stayType: z.number(),
  moveOutReason: z.string(),
  isPoliceVerified: z.number(),
  isRentAgreementSigned: z.number(),
  kycStatus: z.number(),
  discountType: z.number(),
  discount: z.number(),
  discountPeriod: z.number(),
  gId: z.string(),
  discountStartDate: z.string().date(),
  discountEndDate: z.string().date(),
  isDiscountFromFirstMonth: z.number(),
  wasCancelled: z.number(),
  bookedBy: z.number(),
  lastRemindedOn: z.string().datetime(),
  refundStatus: z.number(),
  tallyStatus: z.number(),
  isGstEnabled: z.number(),
});

type moveOutTypes = z.infer<typeof moveOutSchema>;
export default moveOutTypes;
