import { default as React } from 'react';
import { default as PropTypes } from 'prop-types';
export class Rack extends React.Component<any, any, any> {
    constructor(props: any);
    drawSide(width: any, height: any, xCorner: any, yCorner: any, key: any): import("react/jsx-runtime").JSX.Element;
    buildRmuArray(childElements: any, rmuCount: any, inchToRmu: any): {
        front: {
            name: any;
            position: number;
        }[];
        back: {
            name: any;
            position: number;
        }[];
    };
    drawRack(rackPxHeight: any, rackPxWidth: any, rackPxOffset: any, inchToRmu: any, yOffsetTop: any, pxToInch: any): import("react/jsx-runtime").JSX.Element;
    drawHeightMarkers(inchToRmu: any, middle: any, x: any, initialY: any, pxToInch: any): import("react/jsx-runtime").JSX.Element[];
    drawLabel(x: any, y: any, label: any, position: any, offset: any): import("react/jsx-runtime").JSX.Element;
    renderChildren(childElements: any, rackPxHeight: any, rackPxWidth: any, rackPxOffset: any, inchToRmu: any, yOffsetTop: any, pxToInch: any, childMap: any): any;
    render(): import("react/jsx-runtime").JSX.Element;
}
export namespace Rack {
    namespace propTypes {
        let yOffsetTop: PropTypes.Requireable<number>;
        let yOffsetBottom: PropTypes.Requireable<number>;
        let width: PropTypes.Requireable<number>;
        let rackHeight: PropTypes.Requireable<number>;
        let rackWidth: PropTypes.Requireable<number>;
        let pxToInch: PropTypes.Requireable<number>;
        let widthOffset: PropTypes.Requireable<number>;
        let rackStyle: PropTypes.Requireable<object>;
        let labelStyle: PropTypes.Requireable<object>;
    }
    namespace defaultProps {
        let yOffsetTop_1: number;
        export { yOffsetTop_1 as yOffsetTop };
        let yOffsetBottom_1: number;
        export { yOffsetBottom_1 as yOffsetBottom };
        let width_1: number;
        export { width_1 as width };
        let rackHeight_1: number;
        export { rackHeight_1 as rackHeight };
        let rackWidth_1: number;
        export { rackWidth_1 as rackWidth };
        let pxToInch_1: number;
        export { pxToInch_1 as pxToInch };
        let widthOffset_1: number;
        export { widthOffset_1 as widthOffset };
        export namespace rackStyle_1 {
            let stroke: string;
            let strokeWidth: number;
            let fill: string;
        }
        export { rackStyle_1 as rackStyle };
        export namespace labelStyle_1 {
            namespace normal {
                let fill_1: string;
                export { fill_1 as fill };
                export let fontSize: number;
                export let fontFamily: string;
            }
        }
        export { labelStyle_1 as labelStyle };
    }
}
