import type { LayoutPoint, LayoutRect, LayoutSheet } from './types.js'; export declare function compareIds(a: string, b: string): number; export declare function rectFromCenter(center: LayoutPoint, width: number, height: number, id?: string): LayoutRect; export declare function rectCenter(rect: LayoutRect): LayoutPoint; export declare function rectArea(rect: LayoutRect): number; export declare function rectsOverlap(a: LayoutRect, b: LayoutRect, clearance?: number): boolean; export declare function inflateRect(rect: LayoutRect, amount: number): LayoutRect; export declare function rectInsideRect(inner: LayoutRect, outer: LayoutRect): boolean; export declare function sheetRect(sheet: LayoutSheet): LayoutRect; export declare function intersectionArea(a: LayoutRect, b: LayoutRect): number; export declare function boundingRect(rects: readonly LayoutRect[]): LayoutRect | undefined; export declare function translateRect(rect: LayoutRect, dx: number, dy: number): LayoutRect; export declare function clampRect(rect: LayoutRect, bounds: LayoutRect): LayoutRect; export declare function pointInsideRect(point: LayoutPoint, rect: LayoutRect): boolean; export declare function pointsEqual(a: LayoutPoint, b: LayoutPoint): boolean; export declare function segmentsIntersect(a1: LayoutPoint, a2: LayoutPoint, b1: LayoutPoint, b2: LayoutPoint): boolean; export declare function segmentIntersectsRect(a: LayoutPoint, b: LayoutPoint, rect: LayoutRect): boolean; export declare function polylineLength(points: readonly LayoutPoint[]): number; export declare function polylineBends(points: readonly LayoutPoint[]): number; export declare function candidateGrid(bounds: LayoutRect, step: number): LayoutPoint[];