import { z } from 'zod'; declare const base_event: z.ZodObject<{ edit_event_id: z.ZodString; in_progress: z.ZodOptional; created_at: z.ZodNumber; }, "strip", z.ZodTypeAny, { edit_event_id: string; created_at: number; in_progress?: boolean | undefined; }, { edit_event_id: string; created_at: number; in_progress?: boolean | undefined; }>; declare const editComponentLocationEvent: z.ZodObject; created_at: z.ZodNumber; }, { pcb_edit_event_type: z.ZodLiteral<"edit_component_location">; pcb_component_id: z.ZodString; original_center: z.ZodObject<{ x: z.ZodNumber; y: z.ZodNumber; }, "strip", z.ZodTypeAny, { x: number; y: number; }, { x: number; y: number; }>; new_center: z.ZodObject<{ x: z.ZodNumber; y: z.ZodNumber; }, "strip", z.ZodTypeAny, { x: number; y: number; }, { x: number; y: number; }>; }>, "strip", z.ZodTypeAny, { edit_event_id: string; created_at: number; pcb_edit_event_type: "edit_component_location"; pcb_component_id: string; original_center: { x: number; y: number; }; new_center: { x: number; y: number; }; in_progress?: boolean | undefined; }, { edit_event_id: string; created_at: number; pcb_edit_event_type: "edit_component_location"; pcb_component_id: string; original_center: { x: number; y: number; }; new_center: { x: number; y: number; }; in_progress?: boolean | undefined; }>; type EditComponentLocationEvent = z.infer; declare const editTraceHintEvent: z.ZodObject; created_at: z.ZodNumber; }, { pcb_edit_event_type: z.ZodLiteral<"edit_trace_hint">; pcb_port_id: z.ZodString; pcb_trace_hint_id: z.ZodOptional; route: z.ZodArray; }, "strip", z.ZodTypeAny, { x: number; y: number; via?: boolean | undefined; }, { x: number; y: number; via?: boolean | undefined; }>, "many">; }>, "strip", z.ZodTypeAny, { edit_event_id: string; created_at: number; pcb_edit_event_type: "edit_trace_hint"; pcb_port_id: string; route: { x: number; y: number; via?: boolean | undefined; }[]; in_progress?: boolean | undefined; pcb_trace_hint_id?: string | undefined; }, { edit_event_id: string; created_at: number; pcb_edit_event_type: "edit_trace_hint"; pcb_port_id: string; route: { x: number; y: number; via?: boolean | undefined; }[]; in_progress?: boolean | undefined; pcb_trace_hint_id?: string | undefined; }>; type EditTraceHintEvent = z.infer; type EditEvent = EditComponentLocationEvent | EditTraceHintEvent; declare const dedupeEditEvents: (events: EditEvent[]) => EditEvent[]; export { type EditComponentLocationEvent, type EditEvent, type EditTraceHintEvent, base_event, dedupeEditEvents, editComponentLocationEvent, editTraceHintEvent };