import type { DefineComponent, ExtractPropTypes, ComponentOptionsMixin, PublicProps, ComponentProvideOptions, PropType as __PropType } from 'vue'; export interface GFormFieldProps { /** Field value for character counting */ value?: string | number | unknown; /** Disabled state */ disabled?: boolean; /** Field label */ label?: string | null; /** CSS class(es) for label */ labelClass?: string | string[] | null; /** Helper text displayed near field */ helperText?: string | null; /** Position of helper text */ helperTextPosition?: 'before' | 'after'; /** CSS class(es) for helper text */ helperTextClass?: string | string[] | null; /** General message */ message?: string | null; /** Error message (takes precedence over message) */ errorMessage?: string | null; /** Visual variant class */ variant?: string | null; /** Error state */ error?: boolean; /** Input options passed to child components */ inputOptions?: Record | (() => Record) | null; /** Position of message */ messagePosition?: 'before' | 'after'; /** Maximum character length */ maxLength?: number | string; /** Count display type: 'outOf' (X / Y) or 'descriptive' (N characters left) */ countType?: 'outOf' | 'descriptive'; /** Custom count template with {characterCount}, {charactersLeft}, {maxLength} placeholders */ countTemplate?: string; } export type GFormFieldExposed = HTMLElement & { /** Reference to the field element */ fieldRef: HTMLElement | null; /** Whether field has an error */ hasError: boolean; /** Computed message to display */ computedMessage: string; /** Whether field has a message */ hasMessage: boolean; /** Current character count */ characterCount: number; /** Characters left (if maxlength is set) */ charactersLeft: number; /** Formatted character count string */ formattedCount: string; /** Update the field value */ updateValue: (value: unknown) => void; }; declare const _sfc_main: DefineComponent; required: false; default: undefined; }; disabled: { type: __PropType; required: false; default: boolean; }; label: { type: __PropType; required: false; default: null; }; labelClass: { type: __PropType; required: false; default: null; }; helperText: { type: __PropType; required: false; default: null; }; helperTextPosition: { type: __PropType<"after" | "before" | undefined>; required: false; default: string; }; helperTextClass: { type: __PropType; required: false; default: null; }; message: { type: __PropType; required: false; default: null; }; errorMessage: { type: __PropType; required: false; default: null; }; variant: { type: __PropType; required: false; default: null; }; error: { type: __PropType; required: false; default: boolean; }; inputOptions: { type: __PropType | (() => Record) | null | undefined>; required: false; default: null; }; messagePosition: { type: __PropType<"after" | "before" | undefined>; required: false; default: string; }; maxLength: { type: __PropType; required: false; default: undefined; }; countType: { type: __PropType<"outOf" | "descriptive" | undefined>; required: false; default: string; }; countTemplate: { type: __PropType; required: false; default: undefined; }; }>, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, ("refMounted" | "update:el" | "update:value" | "update:error" | "update:errorMessage")[], "refMounted" | "update:el" | "update:value" | "update:error" | "update:errorMessage", PublicProps, Readonly; required: false; default: undefined; }; disabled: { type: __PropType; required: false; default: boolean; }; label: { type: __PropType; required: false; default: null; }; labelClass: { type: __PropType; required: false; default: null; }; helperText: { type: __PropType; required: false; default: null; }; helperTextPosition: { type: __PropType<"after" | "before" | undefined>; required: false; default: string; }; helperTextClass: { type: __PropType; required: false; default: null; }; message: { type: __PropType; required: false; default: null; }; errorMessage: { type: __PropType; required: false; default: null; }; variant: { type: __PropType; required: false; default: null; }; error: { type: __PropType; required: false; default: boolean; }; inputOptions: { type: __PropType | (() => Record) | null | undefined>; required: false; default: null; }; messagePosition: { type: __PropType<"after" | "before" | undefined>; required: false; default: string; }; maxLength: { type: __PropType; required: false; default: undefined; }; countType: { type: __PropType<"outOf" | "descriptive" | undefined>; required: false; default: string; }; countTemplate: { type: __PropType; required: false; default: undefined; }; }>> & Readonly<{ onRefMounted?: ((...args: any[]) => any) | undefined; "onUpdate:el"?: ((...args: any[]) => any) | undefined; "onUpdate:value"?: ((...args: any[]) => any) | undefined; "onUpdate:error"?: ((...args: any[]) => any) | undefined; "onUpdate:errorMessage"?: ((...args: any[]) => any) | undefined; }>, { error: boolean | undefined; label: string | null | undefined; variant: string | null | undefined; disabled: boolean | undefined; value: undefined; inputOptions: Record | (() => Record) | null | undefined; errorMessage: string | null | undefined; labelClass: string | string[] | null | undefined; helperText: string | null | undefined; helperTextPosition: "after" | "before" | undefined; helperTextClass: string | string[] | null | undefined; message: string | null | undefined; messagePosition: "after" | "before" | undefined; maxLength: string | number | undefined; countType: "outOf" | "descriptive" | undefined; countTemplate: string | undefined; }, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>; export default _sfc_main;