import type { LitElement, TemplateResult } from 'lit'; import type { InputMixinInterface } from './InputMixin.js'; import { FormDataController } from '../controllers/FormDataController.js'; import { SlotController } from '../controllers/SlotController.js'; import '../../visually-hidden/VisuallyHidden.js'; type Constructor> = new (...args: any[]) => T; export declare class FormAssociatedMixinInterface { label: string; required: boolean; hideRequired: boolean; hint?: string; hideLabel: boolean; placeholder?: string; error?: string; protected inputId: string; protected errorId: string; protected hintId: string; protected labelSlot: SlotController; protected hintSlot: SlotController; protected errorSlot: SlotController; protected formData: FormDataController; protected get formValue(): string | undefined; protected get hasError(): boolean; protected get hasHint(): boolean; protected handleChange(e: Event): void; protected handleInput(e: Event): void; protected renderLabel(additionalContent?: TemplateResult): TemplateResult; protected renderError(): TemplateResult; protected getDescribedBy(): string | undefined; protected getInvalid(): 'true' | undefined; } export declare function FormAssociatedMixin>(superClass: T): Constructor & T; export {};