import { FieldValidationProps } from '../../../composables/unifyValidation/useValidation'; import { SyTextFieldLocales } from './locales'; export type IconType = 'info' | 'success' | 'warning' | 'error' | 'close' | 'calendar' | undefined; export type VariantStyle = 'outlined' | 'plain' | 'underlined' | 'filled' | 'solo' | 'solo-inverted' | 'solo-filled'; export type ColorType = 'primary' | 'secondary' | 'success' | 'info' | 'warning' | 'error'; export type ValidateOnType = 'eager' | 'lazy' | 'blur' | 'input' | 'submit' | 'invalid-input' | 'blur lazy' | 'input lazy' | 'submit lazy' | 'invalid-input lazy' | 'blur eager' | 'input eager' | 'submit eager' | 'invalid-input eager' | 'lazy blur' | 'lazy input' | 'lazy submit' | 'lazy invalid-input' | 'eager blur' | 'eager input' | 'eager submit' | 'eager invalid-input' | undefined; export type SyTextFieldProps = { modelValue?: string | number | null | undefined; prependIcon?: IconType; appendIcon?: IconType; prependInnerIcon?: IconType; appendInnerIcon?: IconType; prependTooltip?: string; appendTooltip?: string; tooltipLocation?: 'top' | 'bottom' | 'start' | 'end'; variantStyle?: VariantStyle; color?: ColorType; isClearable?: boolean; showDivider?: boolean; label?: string; readonly?: boolean; isActive?: boolean; baseColor?: string; bgColor?: string; centerAffix?: boolean; counter?: string | number | boolean; counterValue?: number | ((value: any) => number); density?: 'default' | 'comfortable' | 'compact'; direction?: 'horizontal' | 'vertical'; isDirty?: boolean; disabled?: boolean; isFlat?: boolean; isFocused?: boolean; areSpinButtonsHidden?: boolean; hint?: string; id?: string; loading?: string | boolean; maxWidth?: string | number; messages?: string | string[]; minWidth?: string | number; name?: string; displayPersistentClear?: boolean; displayPersistentCounter?: boolean; displayPersistentHint?: boolean; displayPersistentPlaceholder?: boolean; placeholder?: string; prefix?: string; isReversed?: boolean; role?: string; rounded?: string | number | boolean; isOnSingleLine?: boolean; suffix?: string; theme?: string; isTiled?: boolean; type?: string; width?: string | number; displayAsterisk?: boolean; noIcon?: boolean; disableClickButton?: boolean; autocomplete?: string; helpText?: string; maxlength?: string | number; title?: string | false; hideDetails?: boolean | 'auto'; /** Surcharge des libellés d'accessibilité (boutons +/-, vider, chargement). */ locales?: Partial; } & FieldValidationProps;