import { Signal } from '@preact/signals-core';
import { ReadonlyProperties } from '@pmndrs/uikit-pub-sub';
import { type NumberValue } from '../../properties/values.js';
type HiddenInputProperties = {
    disabled: boolean;
    tabIndex: NumberValue;
    autocomplete: string;
    type: string;
};
export declare function createHtmlInputElement(onChange: (value: string) => void, multiline: boolean, onSelectionChange: () => void): HTMLInputElement | HTMLTextAreaElement;
export declare function setupHtmlInputElement(properties: ReadonlyProperties<HiddenInputProperties>, element: HTMLInputElement | HTMLTextAreaElement, value: Signal<string>, abortSignal: AbortSignal): void;
export declare function setupUpdateHasFocus(element: HTMLElement, hasFocusSignal: Signal<boolean>, onFocusChange: (focus: boolean) => void, abortSignal: AbortSignal): void;
export {};
