/**
 * GridSystem Component
 *
 * A responsive grid system based on CSS Grid
 */
import PropTypes from 'prop-types';
/**
 * GridContainer component - main container for the grid system
 * @param {Object} props - Component props
 * @param {React.ReactNode} props.children - Child components
 * @param {string} props.className - Additional CSS classes
 * @param {Object} props.style - Additional inline styles
 * @param {number|string} props.gap - Grid gap size (default: '1rem')
 * @param {string} props.maxWidth - Maximum container width (default: '1280px')
 * @param {boolean} props.fluid - Whether the container should be fluid width (default: false)
 * @param {string} props.padding - Container padding (default: '1rem')
 * @returns {React.ReactElement} GridContainer component
 */
export declare const GridContainer: {
    ({ children, className, style, gap, maxWidth, fluid, padding, ...rest }: {
        [x: string]: any;
        children: any;
        className?: string | undefined;
        style?: {} | undefined;
        gap?: string | undefined;
        maxWidth?: string | undefined;
        fluid?: boolean | undefined;
        padding?: string | undefined;
    }): import("react/jsx-runtime").JSX.Element;
    propTypes: {
        children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
        className: PropTypes.Requireable<string>;
        style: PropTypes.Requireable<object>;
        gap: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
        maxWidth: PropTypes.Requireable<string>;
        fluid: PropTypes.Requireable<boolean>;
        padding: PropTypes.Requireable<string>;
    };
};
/**
 * GridRow component - a flex row for the grid system
 * @param {Object} props - Component props
 * @param {React.ReactNode} props.children - Child components
 * @param {string} props.className - Additional CSS classes
 * @param {Object} props.style - Additional inline styles
 * @param {number|string} props.gap - Grid gap size (default: '1rem')
 * @param {string} props.justifyContent - Justify content property (default: 'flex-start')
 * @param {string} props.alignItems - Align items property (default: 'stretch')
 * @param {boolean} props.noWrap - Whether to disable wrapping (default: false)
 * @returns {React.ReactElement} GridRow component
 */
export declare const GridRow: {
    ({ children, className, style, gap, justifyContent, alignItems, noWrap, ...rest }: {
        [x: string]: any;
        children: any;
        className?: string | undefined;
        style?: {} | undefined;
        gap?: string | undefined;
        justifyContent?: string | undefined;
        alignItems?: string | undefined;
        noWrap?: boolean | undefined;
    }): import("react/jsx-runtime").JSX.Element;
    propTypes: {
        children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
        className: PropTypes.Requireable<string>;
        style: PropTypes.Requireable<object>;
        gap: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
        justifyContent: PropTypes.Requireable<string>;
        alignItems: PropTypes.Requireable<string>;
        noWrap: PropTypes.Requireable<boolean>;
    };
};
/**
 * GridColumn component - a flex column for the grid system
 * @param {Object} props - Component props
 * @param {React.ReactNode} props.children - Child components
 * @param {string} props.className - Additional CSS classes
 * @param {Object} props.style - Additional inline styles
 * @param {number|string} props.width - Column width (1-12 or CSS value)
 * @param {number|string} props.sm - Width for small screens
 * @param {number|string} props.md - Width for medium screens
 * @param {number|string} props.lg - Width for large screens
 * @param {number|string} props.xl - Width for extra large screens
 * @param {number} props.offset - Column offset (1-11)
 * @returns {React.ReactElement} GridColumn component
 */
export declare const GridColumn: {
    ({ children, className, style, width, sm, md, lg, xl, offset, ...rest }: {
        [x: string]: any;
        children: any;
        className?: string | undefined;
        style?: {} | undefined;
        width?: number | undefined;
        sm: any;
        md: any;
        lg: any;
        xl: any;
        offset?: number | undefined;
    }): import("react/jsx-runtime").JSX.Element;
    propTypes: {
        children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
        className: PropTypes.Requireable<string>;
        style: PropTypes.Requireable<object>;
        width: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
        sm: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
        md: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
        lg: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
        xl: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
        offset: PropTypes.Requireable<number>;
    };
};
/**
 * CSS Grid layout system component
 *
 * @param {Object} props - Component props
 * @param {React.ReactNode} props.children - Child components
 * @param {string} props.className - Additional CSS classes
 * @param {Object} props.style - Additional inline styles
 * @param {string|number} props.columns - Number of columns or template string (default: 12)
 * @param {string|number} props.gap - Grid gap size (default: '1rem')
 * @param {string} props.rowGap - Row gap size
 * @param {string} props.columnGap - Column gap size
 * @param {string} props.areas - Grid template areas
 * @param {string} props.rows - Grid template rows
 * @returns {React.ReactElement} GridSystem component
 */
export declare const Grid: {
    ({ children, className, style, columns, gap, rowGap, columnGap, areas, rows, ...rest }: {
        [x: string]: any;
        children: any;
        className?: string | undefined;
        style?: {} | undefined;
        columns?: number | undefined;
        gap?: string | undefined;
        rowGap: any;
        columnGap: any;
        areas: any;
        rows: any;
    }): import("react/jsx-runtime").JSX.Element;
    propTypes: {
        children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
        className: PropTypes.Requireable<string>;
        style: PropTypes.Requireable<object>;
        columns: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
        gap: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
        rowGap: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
        columnGap: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
        areas: PropTypes.Requireable<string>;
        rows: PropTypes.Requireable<string>;
    };
};
/**
 * GridArea component - a grid area for the grid system
 * @param {Object} props - Component props
 * @param {React.ReactNode} props.children - Child components
 * @param {string} props.className - Additional CSS classes
 * @param {Object} props.style - Additional inline styles
 * @param {string} props.area - Grid area name
 * @param {string|number} props.column - Grid column position
 * @param {string|number} props.row - Grid row position
 * @param {string|number} props.columnSpan - Number of columns to span
 * @param {string|number} props.rowSpan - Number of rows to span
 * @returns {React.ReactElement} GridArea component
 */
export declare const GridArea: {
    ({ children, className, style, area, column, row, columnSpan, rowSpan, ...rest }: {
        [x: string]: any;
        children: any;
        className?: string | undefined;
        style?: {} | undefined;
        area: any;
        column: any;
        row: any;
        columnSpan: any;
        rowSpan: any;
    }): import("react/jsx-runtime").JSX.Element;
    propTypes: {
        children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
        className: PropTypes.Requireable<string>;
        style: PropTypes.Requireable<object>;
        area: PropTypes.Requireable<string>;
        column: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
        row: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
        columnSpan: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
        rowSpan: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
    };
};
declare const GridSystem: {
    Container: {
        ({ children, className, style, gap, maxWidth, fluid, padding, ...rest }: {
            [x: string]: any;
            children: any;
            className?: string | undefined;
            style?: {} | undefined;
            gap?: string | undefined;
            maxWidth?: string | undefined;
            fluid?: boolean | undefined;
            padding?: string | undefined;
        }): import("react/jsx-runtime").JSX.Element;
        propTypes: {
            children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
            className: PropTypes.Requireable<string>;
            style: PropTypes.Requireable<object>;
            gap: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
            maxWidth: PropTypes.Requireable<string>;
            fluid: PropTypes.Requireable<boolean>;
            padding: PropTypes.Requireable<string>;
        };
    };
    Row: {
        ({ children, className, style, gap, justifyContent, alignItems, noWrap, ...rest }: {
            [x: string]: any;
            children: any;
            className?: string | undefined;
            style?: {} | undefined;
            gap?: string | undefined;
            justifyContent?: string | undefined;
            alignItems?: string | undefined;
            noWrap?: boolean | undefined;
        }): import("react/jsx-runtime").JSX.Element;
        propTypes: {
            children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
            className: PropTypes.Requireable<string>;
            style: PropTypes.Requireable<object>;
            gap: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
            justifyContent: PropTypes.Requireable<string>;
            alignItems: PropTypes.Requireable<string>;
            noWrap: PropTypes.Requireable<boolean>;
        };
    };
    Column: {
        ({ children, className, style, width, sm, md, lg, xl, offset, ...rest }: {
            [x: string]: any;
            children: any;
            className?: string | undefined;
            style?: {} | undefined;
            width?: number | undefined;
            sm: any;
            md: any;
            lg: any;
            xl: any;
            offset?: number | undefined;
        }): import("react/jsx-runtime").JSX.Element;
        propTypes: {
            children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
            className: PropTypes.Requireable<string>;
            style: PropTypes.Requireable<object>;
            width: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
            sm: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
            md: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
            lg: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
            xl: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
            offset: PropTypes.Requireable<number>;
        };
    };
    Grid: {
        ({ children, className, style, columns, gap, rowGap, columnGap, areas, rows, ...rest }: {
            [x: string]: any;
            children: any;
            className?: string | undefined;
            style?: {} | undefined;
            columns?: number | undefined;
            gap?: string | undefined;
            rowGap: any;
            columnGap: any;
            areas: any;
            rows: any;
        }): import("react/jsx-runtime").JSX.Element;
        propTypes: {
            children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
            className: PropTypes.Requireable<string>;
            style: PropTypes.Requireable<object>;
            columns: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
            gap: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
            rowGap: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
            columnGap: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
            areas: PropTypes.Requireable<string>;
            rows: PropTypes.Requireable<string>;
        };
    };
    Area: {
        ({ children, className, style, area, column, row, columnSpan, rowSpan, ...rest }: {
            [x: string]: any;
            children: any;
            className?: string | undefined;
            style?: {} | undefined;
            area: any;
            column: any;
            row: any;
            columnSpan: any;
            rowSpan: any;
        }): import("react/jsx-runtime").JSX.Element;
        propTypes: {
            children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
            className: PropTypes.Requireable<string>;
            style: PropTypes.Requireable<object>;
            area: PropTypes.Requireable<string>;
            column: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
            row: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
            columnSpan: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
            rowSpan: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
        };
    };
};
export default GridSystem;
//# sourceMappingURL=GridSystem.d.ts.map