import type { HTMLElementClassNames } from '../../types/index.js'; import type { FormFieldCheckboxProps } from './FormFieldCheckbox.vue.js'; import type { FormFieldCheckboxGroupProps } from './FormFieldCheckboxGroup.vue.js'; import type { FormFieldRadioGroupProps } from './FormFieldRadioGroup.vue.js'; import type { FormFieldSelectProps } from './FormFieldSelect.vue.js'; import type { FormFieldSelectButtonProps } from './FormFieldSelectButton.vue.js'; import type { FormFieldTextProps } from './FormFieldText.vue.js'; import type { FormFieldTextareaProps } from './FormFieldTextarea.vue.js'; import type { FormFieldToggleSwitchProps } from './FormFieldToggleSwitch.vue.js'; import type { FormFieldTurnstileProps } from './FormFieldTurnstile.vue.js'; import type { FormSubmitButtonProps } from './FormSubmitButton.vue.js'; export interface CommonOptions { width?: 'full' | 'half'; gridCellClass?: HTMLElementClassNames; } export interface CheckboxField extends FormFieldCheckboxProps, CommonOptions { fieldType: 'checkbox'; } export interface CheckboxGroupField extends FormFieldCheckboxGroupProps, CommonOptions { fieldType: 'checkbox-group'; } export interface SelectField extends FormFieldSelectProps, CommonOptions { fieldType: 'select'; } export interface SelectButtonField extends FormFieldSelectButtonProps, CommonOptions { fieldType: 'select-button'; } export interface RadioGroup extends FormFieldRadioGroupProps, CommonOptions { fieldType: 'radio'; } export interface TextField extends FormFieldTextProps, CommonOptions { fieldType: 'text'; } export interface TextareaField extends FormFieldTextareaProps, CommonOptions { fieldType: 'textarea'; } export interface ToggleSwitchField extends FormFieldToggleSwitchProps, CommonOptions { fieldType: 'toggle'; } export interface TurnstileField extends FormFieldTurnstileProps, CommonOptions { fieldType: 'turnstile'; } export interface SubmitButton extends FormSubmitButtonProps, CommonOptions { fieldType: 'submit'; } export interface HeadingField { fieldType: 'heading'; heading: string; subheading?: string; gridCellClass?: string; } export type FormFieldBuilderOption = CheckboxField | CheckboxGroupField | SelectField | SelectButtonField | RadioGroup | TextField | TextareaField | ToggleSwitchField | TurnstileField | SubmitButton | HeadingField; export interface FormFieldBuilderProps { fields: undefined | FormFieldBuilderOption[]; gridClass?: string; gridCellClass?: string; gridCellHalfClass?: string; gridCellFullClass?: string; variant?: 'blocks'; } declare const _default: typeof __VLS_export; export default _default; declare const __VLS_export: import("vue").DefineComponent & Readonly<{}>, { variant: "blocks"; gridClass: string; gridCellClass: string; gridCellHalfClass: string; gridCellFullClass: string; }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;