import type { Control, Path } from 'react-hook-form';
import type { ChipStatus } from '../../components/Chip';
export type QuickFilterValue = string | number;
export type QuickFilterOption = {
    /**
     * Текст чипа / пункта списка
     */
    label: string;
    /**
     * Значение опции
     */
    value: QuickFilterValue;
    /**
     * Статус чипа
     */
    status?: ChipStatus;
    /**
     * Число счетчика справа от `label`
     */
    counter?: number;
};
export type FormQuickFiltersProps<TFieldValues extends object> = {
    /**
     * Объект control из react-hook-form
     */
    control: Control<TFieldValues>;
    /**
     * Имя поля формы
     */
    name: Path<TFieldValues>;
    /**
     * Лейбл — отображается в заголовке Select-режима (внутри модалки на мобиле)
     */
    label: string;
    /**
     * Список опций (без пункта «Все» — он добавляется автоматически и соответствует пустому значению поля)
     */
    options: QuickFilterOption[];
    /**
     * Подпись встроенного чипа «Все»
     * @default 'Все'
     */
    allLabel?: string;
    /**
     * Счётчик у чипа «Все»
     */
    allCounter?: number;
    /**
     * Максимальное чисто счетчика у чипов
     */
    maxCount?: number;
    /**
     * Режим мультивыбора.
     * - false (default) — одиночный выбор (radio-поведение)
     * - true — множественный выбор (checkbox-поведение)
     */
    multiple?: boolean;
    /**
     * Плейсхолдер для Select-режима (внутри модалки на мобиле)
     */
    placeholder?: string;
};
