import { type InspectionHeader, type InspectionPoint, type InspectionRules, type InspectionValidation, type TreadThresholds } from './inspection'; export interface InspectionUploadResult { url: string; /** Si el host no lo dice, se deduce del archivo. */ type?: 'photo' | 'video'; } export interface InspectionChecklistProps { points: InspectionPoint[]; onChange: (points: InspectionPoint[]) => void; /** Encabezado de recepción (km, combustible, daños). Sin él no se muestra. */ header?: InspectionHeader; onHeaderChange?: (header: InspectionHeader) => void; /** * Sube un archivo al almacenamiento del host (el mismo `POST /upload` que * usan los campos `upload`) y devuelve su URL. Sin él no hay botón de foto. */ onUpload?: (file: File, point: InspectionPoint | null) => Promise; /** Emite la validación tras cada cambio (para bloquear «Guardar»/«Enviar»). */ onValidate?: (v: InspectionValidation) => void; rules?: InspectionRules; /** Umbrales de profundidad de dibujo (mm). */ treadThresholds?: TreadThresholds; /** Errores del servidor `"<índice>."`. */ serverErrors?: Record; /** Muestra la recomendación y su precio. Default true. */ allowRecommendations?: boolean; /** Permite agregar/quitar puntos a mano. Default false (los pone la plantilla). */ allowCustomPoints?: boolean; /** Solo lectura: sin edición, para revisar una inspección enviada o cerrada. */ readOnly?: boolean; currency?: string; /** Botón «Agregar al presupuesto» sobre las recomendaciones (recibe los puntos). */ onAddToBudget?: (points: InspectionPoint[]) => void; } export declare function InspectionChecklist({ points, onChange, header, onHeaderChange, onUpload, onValidate, rules, treadThresholds, serverErrors, allowRecommendations, allowCustomPoints, readOnly, currency, onAddToBudget, }: InspectionChecklistProps): import("react").JSX.Element; //# sourceMappingURL=inspection-checklist.d.ts.map