import type { AnalysisBatchResult, AnalysisComponent, AnalysisResult } from "./types.js"; export declare const COMPACT_SECTIONS: readonly ["overview", "geometry", "stock", "machining", "route", "dfm", "preview"]; export type CompactSection = (typeof COMPACT_SECTIONS)[number]; export declare function analysisResultInMinutes(result: AnalysisBatchResult): { items: (AnalysisResult | { machining: { total_processing_minutes: number; stages: { code: string; minutes: number; }[]; source?: "autocam"; setup_count?: number; setup_count_confidence?: number; setup_prediction?: import("./types.js").SetupPrediction; estimate_grade?: string; cnc_breakdown_minutes?: { holemaking: number; roughing: number; finishing: number; deburring: number; }; route?: import("./types.js").AutoCamRouteProjection; stock?: import("./types.js").MachiningStock; }; analysis_id: string; status: import("./types.js").AnalysisStatus; file_name: string; material: string; process: string; tolerance?: string; surface_roughness?: string; components: { geometry: AnalysisComponent; dfm: AnalysisComponent; machining: AnalysisComponent; preview: AnalysisComponent; }; source_format?: string; geometry?: import("./types.js").AnalysisGeometry; dfm?: import("./types.js").AnalysisDfm; preview?: import("./types.js").AnalysisPreview; requested_at: string; completed_at?: string; expires_at: string; })[]; batch_id: string; status: import("./types.js").AnalysisStatus; result_path: string; result_url?: string; requested_at: string; expires_at: string; }; export declare function compactAnalysisResult(result: AnalysisBatchResult): { ok: boolean; format: string; limited: boolean; limits: { findings_per_item: number; warnings_per_item: number; suggestions_per_item: number; node_ids_per_finding: number; text_chars: number; }; batch: { batch_id: string; status: import("./types.js").AnalysisStatus; result_url: string; expires_at: string; item_count: number; items: { index: number; analysis_id: string; file_name: string; status: import("./types.js").AnalysisStatus; source_format: string | undefined; material: string; process: string; tolerance: string | undefined; surface_roughness: string | undefined; components: { [k: string]: { status: "failed" | "pending" | "succeeded" | "unavailable"; error_code: string | undefined; }; }; geometry: { length_mm: number; width_mm: number; height_mm: number; volume_cm3: number; surface_area_cm2: number; complexity_score: number; complexity_level: "low" | "medium" | "high"; minimum_stock: import("./types.js").MinimumStock | undefined; } | undefined; machining: { total_processing_minutes: number; estimate_grade: string | undefined; setup_count: number | undefined; setup_count_confidence: number | undefined; setup_prediction: import("./types.js").SetupPrediction | undefined; stock: import("./types.js").MachiningStock | undefined; stages: { code: string; minutes: number; }[]; stages_omitted: number; cnc_breakdown_minutes: { holemaking: number; roughing: number; finishing: number; deburring: number; } | undefined; route: { machining_class: "mill_3axis" | "mill_5axis_required"; time_basis: string; toolpath_executable: boolean; setup_count: number | undefined; setup_count_confidence: number | undefined; setup_prediction: import("./types.js").SetupPrediction | undefined; manual_quote_required: boolean; manual_quote_reason_codes: string[]; recommended_route: { process_family: "milling" | "turning" | "mill_turn"; kinematics: string; route_class: "mill_turn" | "mill_3axis" | "mill_5axis"; time_basis: string; toolpath_executable: boolean; estimated_seconds: number; required_region_coverage: number; setup_count: number | undefined; reclamp_count: number | undefined; reason_codes: string[]; } | undefined; selected_route: { process_family: "milling" | "turning" | "mill_turn"; kinematics: string; route_class: "mill_turn" | "mill_3axis" | "mill_5axis"; time_basis: string; toolpath_executable: boolean; estimated_seconds: number; required_region_coverage: number; setup_count: number | undefined; reclamp_count: number | undefined; reason_codes: string[]; } | undefined; } | undefined; } | undefined; dfm: { risk_level: string; finding_count: number; findings: { code: string | undefined; level: string | undefined; status: string | undefined; blocking: boolean; message: string | undefined; viewer_node_ids: number[]; viewer_node_ids_omitted: number; }[]; findings_omitted: number; warning_count: number; warnings: string[]; warnings_omitted: number; suggestion_count: number; suggestions: string[]; suggestions_omitted: number; } | undefined; preview: { status: "failed" | "pending" | "running" | "succeeded"; image_status: "failed" | "pending" | "running" | "succeeded" | undefined; preview_available: boolean; thumbnail_available: boolean; error_message: string | undefined; } | undefined; }[]; }; }; export declare function extractCompactAnalysisResult(result: AnalysisBatchResult, section: CompactSection): { ok: boolean; format: string; limited: boolean; limits: { findings_per_item: number; warnings_per_item: number; suggestions_per_item: number; node_ids_per_finding: number; text_chars: number; }; batch: { batch_id: string; status: import("./types.js").AnalysisStatus; result_url: string; expires_at: string; item_count: number; extract: "stock" | "machining" | "geometry" | "dfm" | "preview" | "overview" | "route"; items: { index: number; analysis_id: string; file_name: string; status: import("./types.js").AnalysisStatus; material: string; process: string; components: { [k: string]: { status: "failed" | "pending" | "succeeded" | "unavailable"; error_code: string | undefined; }; }; content: unknown; }[]; }; }; export declare function isCompactSection(value: string): value is CompactSection; export declare function isSetupCountDfmCode(value: string): boolean; export declare function isSetupCountDfmText(value: string): boolean;