import { ComputedRef, Ref } from 'vue'; export type SelectionLimitSource = T | Ref | ComputedRef | (() => T); export interface UseSelectionLimitOptions { count: SelectionLimitSource; max?: SelectionLimitSource; } export interface UseSelectionLimitReturn { count: ComputedRef; max: ComputedRef; isLimited: ComputedRef; isAtLimit: ComputedRef; canAddMore: ComputedRef; remaining: ComputedRef; canAdd: (amount?: number, fromCount?: number) => boolean; } /** Shared cap logic for chip, tag, and multi-select controls. */ export declare function useSelectionLimit(options: UseSelectionLimitOptions): UseSelectionLimitReturn;