import { Spacing } from '../../styles/spacing';
import { DivAttributes } from '../../utils/types';
declare type NextGridSpacing = Spacing | Partial<SpacingByBreakpoint>;
export interface NextGridProps extends DivAttributes {
    /**
     * If given a spacing string value (e.g. "sm" or "none"), sets horizontal
     * column spacing across all breakpoints.
     *
     * If given an object, sets horizontal column spacing for given breakpoints
     * (keys in configuration object, e.g. {"tabletMd": "xs", "mobileLg": "none"}).
     * @since 10.19.0
     */
    gutterX?: NextGridSpacing;
    /**
     * If given a spacing string value (e.g. "sm" or "none"), sets vertical
     * column spacing across all breakpoints. Vertical spacing is only displayed
     * when the columns are stacked (typically, on smaller breakpoints or
     * as defined by "colStackCap").
     *
     * If given an object, sets vertical column spacing for given breakpoints
     * (keys in configuration object, e.g. {"tabletMd": "xs", "mobileLg": "none"}).
     * @since 10.19.0
     */
    gutterY?: NextGridSpacing;
    /**
     * Sets a breakpoing at which columns will start stacking on top of each other.
     * E.g. if set to "tabletMd" - columns will stack on "tabletMd", "tabletSm"
     * and "mobileLg" breakpoints.
     * @since 10.19.0
     */
    colStackCap?: NextGridBreakpoint;
}
export interface NextGridContextShape {
    /**
     * @since 10.19.0
     */
    gutterX: NextGridSpacing;
    /**
     * @since 10.19.0
     */
    gutterY: NextGridSpacing;
    /**
     * @since 10.19.0
     */
    colStackCap: NextGridBreakpoint;
}
export interface NextGridRowProps extends DivAttributes {
}
export declare type NextGridColSpan = 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12;
export declare type SpanByBreakpoint = Record<NextGridBreakpoint, NextGridColSpan>;
export declare type GutterByBreakpoint = Record<NextGridBreakpoint, Spacing>;
export declare type OffsetByBreakpoint = Record<NextGridBreakpoint, number>;
export declare type SpacingByBreakpoint = Record<NextGridBreakpoint, Spacing>;
export interface NextGridColProps extends DivAttributes {
    /**
     * @defaultValue auto
     * If given a number value between 1 and 12, sets column width across all
     * breakpoints.
     *
     * If given an object, sets column widths for given breakpoints
     * (keys in configuration object, e.g. {"tabletMd": 10, "mobileLg": 5}).
     *
     * If set to "auto", the column will take all the available space
     * @since 10.19.0
     */
    colWidth?: number | Partial<SpanByBreakpoint> | 'auto';
    /**
     * If given a number value between 1 and 12, sets start positions across all
     * breakpoints.
     * @since 10.19.0
     *
     * If given an object, sets start positions for given breakpoints
     * (keys in configuration object, e.g. {"tabletMd": 10, "mobileLg": 5}).
     * @since 10.19.0
     */
    colStart?: number | Partial<OffsetByBreakpoint>;
}
export declare type NextGridBreakpoint = 'mobileLg' | 'tabletSm' | 'tabletMd' | 'tabletLg' | 'desktopSm' | 'desktopMd';
export {};
