import { PropertyValueMap } from "lit";
import { FIcon } from "../f-icon/f-icon";
import { FInputBase, FInputCustomEvent } from "./f-input-base";
import { FInputLight } from "./f-input-light";
export type { FInputState, FInputCustomEvent, FInputSuffixWhen } from "./f-input-base";
export declare class FInput extends FInputBase {
    /**
     * css loaded from scss file
     */
    static styles: import("lit").CSSResult[];
    _labelNodes: NodeListOf<HTMLElement>;
    _hasLabel: boolean;
    _helpNodes: NodeListOf<HTMLElement>;
    _hasHelperText: boolean;
    /**
     * input element reference
     */
    inputLight: FInputLight;
    get inputElement(): HTMLInputElement;
    get inputWrapperElement(): HTMLInputElement;
    get clearIcon(): FIcon | undefined;
    _onLabelSlotChange(): void;
    _onHelpSlotChange(): void;
    updateValue(e: CustomEvent<FInputCustomEvent>): void;
    protected willUpdate(changedProperties: PropertyValueMap<any> | Map<PropertyKey, unknown>): void;
    render(): import("lit-html").TemplateResult<1>;
    protected updated(changedProperties: PropertyValueMap<any> | Map<PropertyKey, unknown>): void;
}
/**
 * Required for typescript
 */
declare global {
    interface HTMLElementTagNameMap {
        "f-input": FInput;
    }
}
