import { FunctionN } from 'fp-ts/lib/function'; import { PropType, ExtractPropTypes, Ref } from 'vue'; import { AllColorsVariant } from '../../types/ColorVariants'; export declare const PROVIDE_FIELD_DATA_INJECTION_SYMBOL: unique symbol; export declare const ProvideFieldDataPropsDefinition: { variant: { type: PropType; required: boolean; }; message: { type: PropType; required: boolean; }; isExpanded: { type: PropType; default: boolean; }; labelFor: PropType; label: { type: PropType; default: string; }; }; export declare type ProvideFieldDataProps = ExtractPropTypes; export declare function formatMessage(message: string | { [K: string]: boolean; } | Array | undefined): string; export interface FieldDataAttrs { label: Ref; isFullwidth: Ref; isExpanded: Ref; message: Ref; messageVariant: Ref; id: Ref; labelId: Ref; } export interface FieldDataListeners { onNewMessage: FunctionN<[string | { [K: string]: boolean; } | Array], void>; onNewVariant: FunctionN<[AllColorsVariant], void>; } export interface FieldDataInjection { attrs: FieldDataAttrs; setters: FieldDataListeners; } export declare const DEFAULT_FIELD_DATA_INJECTION: FieldDataInjection; export declare function provideFieldData(props: ProvideFieldDataProps): FieldDataInjection;