
import { LayoutConstraint } from "./types.js";

//#region src/components/layout/Board/grid-core/constraints.d.ts
/**
 * Grid boundary constraint. Ensures items stay within the grid bounds. This is
 * the default position constraint.
 */
declare const gridBounds: LayoutConstraint;
/**
 * Min/max size constraint. Enforces per-item minW/maxW/minH/maxH.
 */
declare const minMaxSize: LayoutConstraint;
/**
 * Container bounds constraint. Constrains items to stay within the visible
 * container (a replacement for the legacy `isBounded` prop).
 */
declare const containerBounds: LayoutConstraint;
/** Bounded X constraint. Only constrains horizontal position. */
declare const boundedX: LayoutConstraint;
/** Bounded Y constraint. Only constrains vertical position. */
declare const boundedY: LayoutConstraint;
/**
 * Create an aspect ratio constraint (maintains width-to-height ratio in pixels).
 */
declare function aspectRatio(ratio: number): LayoutConstraint;
/** Create a snap-to-grid constraint. */
declare function snapToGrid(stepX: number, stepY?: number): LayoutConstraint;
/** Create a minimum size constraint (grid-wide). */
declare function minSize(minW: number, minH: number): LayoutConstraint;
/** Create a maximum size constraint (grid-wide). */
declare function maxSize(maxW: number, maxH: number): LayoutConstraint;
//#endregion
export { aspectRatio, boundedX, boundedY, containerBounds, gridBounds, maxSize, minMaxSize, minSize, snapToGrid };
//# sourceMappingURL=constraints.d.ts.map