const{z}=require("zod"),wrap=body=>z.object({body:body.strict(),params:z.object({}).passthrough(),query:z.object({}).passthrough()}),id=z.string().min(1).max(160);exports.fromCheckout=wrap(z.object({checkoutId:id}));exports.payment=wrap(z.object({provider:z.enum(["PAYHERE"]).default("PAYHERE"),method:z.string().min(1).max(50).default("ONLINE")}));exports.returnRequest=wrap(z.object({reasonCode:z.string().min(1).max(80),reasonText:z.string().max(500).optional(),items:z.array(z.object({orderItemId:id,quantity:z.number().int().positive(),resolution:z.enum(["REFUND","EXCHANGE"])}).strict()).min(1)}));exports.refund=wrap(z.object({paymentId:id,reasonCode:z.string().min(1).max(80),reasonText:z.string().max(500).optional(),items:z.array(z.object({orderItemId:id,quantity:z.number().int().positive()}).strict()).min(1)}));exports.returnComplete=wrap(z.object({conditions:z.array(z.object({returnItemId:id,condition:z.enum(["RESTOCKABLE","DAMAGED","NON_RESTOCKABLE"]),warehouseId:id.optional()}).strict()).default([])}));