export interface UseAutoLimitTagsOptions {
    /** Total number of tags */
    count: number;
    /** Fixed limit or "auto" for DOM-based measurement. Default "auto" */
    limitTags?: number | "auto";
    /** Placeholder text used to reserve input width (only used in "auto" mode) */
    placeholder?: string;
    /**
     * Reserve trailing space for a text input (the autocomplete combobox). Set
     * `false` for a pure chip row that has no input — then only the chips and the
     * "+N" / "⋯" overflow badge compete for the available width. Default `true`.
     */
    reserveInputWidth?: boolean;
}
export interface UseAutoLimitTagsReturn {
    /** How many tags to show */
    visibleCount: number;
    /** Ref for the zone that contains tags + input (must have overflow-hidden, gap, padding) */
    middleRef: React.RefObject<HTMLDivElement | null>;
    /** Ref for the off-screen container that holds measurement copies of ALL tags */
    measureRef: React.RefObject<HTMLDivElement | null>;
    /** Ref for the hidden span that measures placeholder text width */
    textMeasureRef: React.RefObject<HTMLSpanElement | null>;
    /** Ref for the "+N" badge element (used to measure its width) */
    badgeRef: React.RefObject<HTMLButtonElement | null>;
    /** Ref for the input element (used to read its min-width) */
    inputRef: React.RefObject<HTMLInputElement | null>;
}
/**
 * Calculates how many tags fit in a single-line container.
 *
 * Requires three off-screen measurement elements rendered by the consumer:
 * 1. A `<div ref={measureRef}>` containing Tag copies for every item (to measure widths)
 * 2. A `<span ref={textMeasureRef}>` containing the placeholder text (to reserve input width)
 * 3. The `<button ref={badgeRef}>` for the "+N" badge (to measure badge width)
 *
 * The hook reads real CSS values (padding, gap) from the middleRef container,
 * so it works regardless of responsive breakpoints or custom styling.
 */
export declare function useAutoLimitTags({ count, limitTags, placeholder, reserveInputWidth, }: UseAutoLimitTagsOptions): UseAutoLimitTagsReturn;
//# sourceMappingURL=use-auto-limit-tags.d.ts.map