import type { CssLength } from '@breadstone/mosaik-themes';
import type { IDisableableProps } from '../../../Behaviors/Disableable';
import type { IFitableProps } from '../../../Behaviors/Fitable';
import type { IOrientableProps } from '../../../Behaviors/Orientable';
import type { IReversibleProps } from '../../../Behaviors/Reversible';
import type { SplitLock } from '../../../Types/SplitLock';
import type { ISlottableProps } from '../../../Behaviors/Slottable';
/**
 * Represents the `{@link ISplitElementProps}` interface.
 *
 * @public
 */
export interface ISplitElementProps extends IDisableableProps, IOrientableProps, IFitableProps, IReversibleProps, ISlottableProps {
    /**
     * The position of the divider.
     * Accepts any valid CSS length value except 'auto' (e.g., '50%', '200px', '10rem').
     */
    position: Exclude<CssLength, 'auto'>;
    /**
     * The lock of the divider.
     */
    lock: SplitLock;
    /**
     * The snap points of the divider. A snap point is a position where the divider will snap to when it is dragged.
     */
    snaps: Array<Exclude<CssLength, 'auto'>>;
    /**
     * The snap threshold of the divider.
     */
    snapThreshold: number;
    /**
     * The thickness describes the width or height of the divider. It is based on the orientation.
     */
    thickness: number;
    /**
     * The minimum position constraint for the primary panel.
     * Accepts any valid CSS length value except 'auto' (e.g., '10%', '100px').
     */
    min: Exclude<CssLength, 'auto'>;
    /**
     * The maximum position constraint for the primary panel.
     * Accepts any valid CSS length value except 'auto' (e.g., '90%', '500px').
     */
    max: Exclude<CssLength, 'auto'>;
}
//# sourceMappingURL=ISplitElementProps.d.ts.map