import { type ComponentPropsWithoutRef, type ElementType, type ReactNode } from "react";
export type GridColumns = number | "auto-fit" | "auto-fill" | (string & {});
export type GridGap = 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | (string & {});
export type GridAlign = "start" | "center" | "end" | "stretch";
export interface GridProps extends Omit<ComponentPropsWithoutRef<"div">, "children"> {
    /** Column definition. Default `12`. */
    columns?: GridColumns;
    /**
     * Minimum track width — only used with `"auto-fit"` / `"auto-fill"`.
     * Default `"240px"`.
     */
    minColumnWidth?: string;
    /** Gap between cells. Default `4` (`--ods-space-4`). */
    gap?: GridGap;
    /** Row-gap override. Defaults to `gap`. */
    rowGap?: GridGap;
    /** Column-gap override. Defaults to `gap`. */
    columnGap?: GridGap;
    /** Vertical alignment of items in their cell. Default `"stretch"`. */
    alignItems?: GridAlign;
    /** Horizontal alignment of items in their cell. Default `"stretch"`. */
    justifyItems?: GridAlign;
    /** Render as a different element. Default `"div"`. */
    as?: ElementType;
    /** Children to lay out. */
    children?: ReactNode;
}
export interface GridItemProps extends Omit<ComponentPropsWithoutRef<"div">, "children"> {
    /** Column span (cells) OR a raw `grid-column` value. */
    colSpan?: number | string;
    /** Row span (cells) OR a raw `grid-row` value. */
    rowSpan?: number | string;
    /** Explicit start column. */
    colStart?: number | string;
    /** Explicit start row. */
    rowStart?: number | string;
    /** Render as a different element. Default `"div"`. */
    as?: ElementType;
    /** Children. */
    children?: ReactNode;
}
export declare const GridItem: import("react").ForwardRefExoticComponent<GridItemProps & import("react").RefAttributes<HTMLDivElement>>;
export declare const Grid: import("react").ForwardRefExoticComponent<GridProps & import("react").RefAttributes<HTMLDivElement>> & {
    Item: import("react").ForwardRefExoticComponent<GridItemProps & import("react").RefAttributes<HTMLDivElement>>;
};
//# sourceMappingURL=Grid.d.ts.map