import { TagColor } from './tag'; import { InputSize } from './types'; export interface BadgeItem { id: string; label: string; color?: TagColor; } /** Tipo de entrada para badges: puede ser un array de BadgeItem o un array de strings */ export type BadgesInputValue = BadgeItem[] | string[]; export type BadgesChangeType = 'add' | 'remove'; export interface BadgesChangeEvent { type: BadgesChangeType; item: BadgeItem; items: BadgeItem[]; } export interface BadgesProps { /** Lista inicial de badges (puede ser array de BadgeItem o array de strings) */ value?: BadgesInputValue; /** Placeholder del input */ placeholder?: string; /** Label del componente */ label?: string; /** Texto de ayuda */ helperText?: string; /** Mensaje de error */ error?: string; /** Color por defecto para nuevos badges */ defaultColor?: TagColor; /** Colores cíclicos para badges (si se define, se ignora defaultColor) */ colorCycle?: TagColor[]; /** Tamaño del componente */ size?: InputSize; /** Si está deshabilitado */ disabled?: boolean; /** Si ocupa todo el ancho */ fullWidth?: boolean; /** Máximo número de badges permitidos */ maxBadges?: number; /** Evento cuando cambia la lista de badges (add o remove) */ onChange?: (event: BadgesChangeEvent) => void; /** Evento cuando se agrega un badge */ onAdd?: (item: BadgeItem) => void; /** Evento cuando se elimina un badge */ onRemove?: (item: BadgeItem) => void; /** Evento de focus */ onFocus?: (event?: React.FocusEvent) => void; /** Evento de blur */ onBlur?: (event?: React.FocusEvent) => void; /** Clases adicionales para el contenedor */ className?: string; } //# sourceMappingURL=badges.d.ts.map