import { GridLength, type IGridLength } from './GridLength'; /** * Describes the configuration of a single column track in a grid layout. * * Each column definition carries a `width` * that determines the sizing mode (pixel, auto, or star) and optional * `minWidth` / `maxWidth` constraints that clamp the * resolved width during layout. * * @public */ export interface IColumnDefinition { /** * The width specification for this column. * * Accepts any `IGridLength` value - absolute pixels, `auto`, or tar (`*` / `n*`). * * @public */ width: IGridLength; /** * The minimum width of this column in pixels/DIPs. Must be non-negative. Defaults to `0`. * * @public */ minWidth: number; /** * The maximum width of this column in pixels/DIPs. * Must be non-negative and greater than or equal to `minWidth`. * Defaults to `Number.MAX_SAFE_INTEGER` (unbounded). * * @public */ maxWidth: number; } /** * Represents a single column track definition in a grid layout. * * A `ColumnDefinition` pairs a `GridLength` width with optional * minimum / maximum pixel constraints. During layout the resolved track * width is clamped to `[minWidth, maxWidth]`. * * **Validation rules** * - `minWidth` and `maxWidth` must be non-negative. * - `minWidth` must not exceed `maxWidth`. * * @example * ```ts * // 200 px fixed column * new ColumnDefinition(new GridLength(200, 'pixel')); * * // Star column (proportional) clamped between 80 px and 240 px * new ColumnDefinition(new GridLength(0.5, 'star'), 80, 240); * * // Auto column – width determined by content * new ColumnDefinition(new GridLength(1, 'auto')); * ``` * * @public */ export declare class ColumnDefinition implements IColumnDefinition { private _width; private _minWidth; private _maxWidth; /** * Constructs a new instance of the `ColumnDefinition` class. * * @public * @param width The width specification. Defaults to `1*` (one star). * @param minWidth Minimum width in pixels/DIPs. Must be ≥ 0. Defaults to `0`. * @param maxWidth Maximum width in pixels/DIPs. Must be ≥ 0 and ≥ `minWidth`. Defaults to `Number.MAX_SAFE_INTEGER` (unbounded). * @throws {Error} If `minWidth` is negative. * @throws {Error} If `maxWidth` is negative. * @throws {Error} If `minWidth` exceeds `maxWidth`. */ constructor(width?: IGridLength, minWidth?: number, maxWidth?: number); /** * Gets or sets the width specification for this column. * * @public */ get width(): GridLength; set width(value: GridLength); /** * Gets or sets the minimum width in pixels/DIPs. * * @public * @throws {Error} If the new value is negative. */ get minWidth(): number; set minWidth(value: number); /** * Gets or sets the maximum width in pixels/DIPs. * * @public * @throws {Error} If the new value is negative. */ get maxWidth(): number; set maxWidth(value: number); } //# sourceMappingURL=ColumnDefinition.d.ts.map