declare const MATERIAL_CONSTANTS: {
    readonly STEEL_DENSITY: 7.85;
    readonly LENGTH_CONVERSION_FACTOR: 1000;
    readonly TUBE_CALCULATION_FACTOR: 0.024662;
    readonly COIL_WEIGHTS: {
        readonly GI: 2879.95;
        readonly HR: 2356.59;
    };
};
type SteelType = keyof typeof MATERIAL_CONSTANTS.COIL_WEIGHTS;
type TubeType = 'Round' | 'Square' | 'Rectangle';
interface BaseFormValues {
    face_width?: string | number;
    bending?: string | number;
    height?: string | number;
    total_width?: string | number;
    boards_thickness?: string | number;
    boards_length?: string | number;
    steel_length?: string | number;
    steel_width?: string | number;
    steel_thickness?: string | number;
    steel_type?: SteelType;
    tube_type?: TubeType;
    tube_od?: string | number;
    shape_width?: string | number;
    shape_height?: string | number;
    material_thickness?: string | number;
    material_length?: string | number;
}
interface MaterialCalculations {
    totalWidth: number;
    materialUnit: number;
    boardsWeight: number;
    steelWeight: number;
    materialWeight: number;
}
interface CalculationResult<T = number> {
    value: T;
    isValid: boolean;
    error?: string;
}
/**
 * Custom hook for optimized material calculations with comprehensive error handling
 * and performance optimization through memoization
 */
export declare const useMaterialCalculations: (formValues?: BaseFormValues) => MaterialCalculations;
/**
 * Utility function to validate form values before calculations
 */
export declare const validateFormValues: (formValues: BaseFormValues) => {
    isValid: boolean;
    errors: string[];
};
/**
 * Get available steel types for form validation
 */
export declare const getAvailableSteelTypes: () => SteelType[];
/**
 * Get available tube types for form validation
 */
export declare const getAvailableTubeTypes: () => TubeType[];
declare const _default: {
    useMaterialCalculations: (formValues?: BaseFormValues) => MaterialCalculations;
    validateFormValues: (formValues: BaseFormValues) => {
        isValid: boolean;
        errors: string[];
    };
    getAvailableSteelTypes: () => SteelType[];
    getAvailableTubeTypes: () => TubeType[];
    MATERIAL_CONSTANTS: {
        readonly STEEL_DENSITY: 7.85;
        readonly LENGTH_CONVERSION_FACTOR: 1000;
        readonly TUBE_CALCULATION_FACTOR: 0.024662;
        readonly COIL_WEIGHTS: {
            readonly GI: 2879.95;
            readonly HR: 2356.59;
        };
    };
};
export default _default;
export type { BaseFormValues, MaterialCalculations, SteelType, TubeType, CalculationResult, };
