import { SvelteComponentTyped } from "svelte";
import type { AriaRole } from 'svelte/elements';
import { type Actions } from '@layerstack/svelte-actions';
import { type LabelPlacement } from '../types/index.js';
import { type IconInput } from '../utils/icons.js';
declare const __propDef: {
    props: {
        [x: string]: any;
        name?: string | undefined | undefined;
        label?: string | undefined;
        labelPlacement?: LabelPlacement | undefined;
        value?: ((string | number) | {
            [operator: string]: (string | number) | null;
        } | null) | undefined;
        type?: "text" | "password" | "integer" | "decimal" | "currency" | "percent" | "search" | "email" | undefined;
        placeholder?: string | undefined | undefined;
        error?: string | string[] | boolean | undefined | undefined;
        hint?: string | undefined;
        autocomplete?: HTMLTextAreaElement["autocomplete"] | undefined;
        multiline?: boolean | undefined;
        required?: boolean | undefined;
        disabled?: boolean | undefined;
        clearable?: boolean | undefined;
        base?: boolean | undefined;
        rounded?: boolean | undefined;
        dense?: boolean | undefined;
        icon?: IconInput;
        iconRight?: IconInput;
        align?: "left" | "center" | "right" | undefined;
        autofocus?: boolean | {
            restoreFocus?: boolean;
            delay?: number;
            disabled?: boolean;
        } | undefined;
        actions?: Actions<HTMLInputElement | HTMLTextAreaElement> | undefined;
        operators?: {
            label: string;
            value: string;
        }[] | undefined | undefined;
        inputEl?: (HTMLInputElement | HTMLTextAreaElement | null) | undefined;
        debounceChange?: boolean | number | undefined;
        classes?: {
            root?: string;
            container?: string;
            label?: string;
            input?: string;
            error?: string;
            prepend?: string;
            append?: string;
        } | undefined;
        mask?: string | undefined | undefined;
        replace?: string | undefined | undefined;
        accept?: string | RegExp | undefined;
        autocapitalize?: "none" | "characters" | "off" | "on" | "sentences" | "words" | null | undefined;
        role?: AriaRole | undefined;
        min?: number | undefined | undefined;
        max?: number | undefined | undefined;
        step?: number | undefined | undefined;
        id?: string | undefined;
    };
    events: {
        click: MouseEvent;
        focus: FocusEvent;
        blur: CustomEvent<any> | FocusEvent;
        keydown: KeyboardEvent;
        keypress: KeyboardEvent;
        clear: CustomEvent<null>;
        change: CustomEvent<{
            value: (string | number) | {
                [operator: string]: (string | number) | null;
            } | null;
            inputValue: (string | number) | null;
            operator?: string;
        }>;
    } & {
        [evt: string]: CustomEvent<any>;
    };
    slots: {
        prepend: {};
        prefix: {};
        suffix: {};
        append: {};
    };
};
export type TextFieldProps = typeof __propDef.props;
export type TextFieldEvents = typeof __propDef.events;
export type TextFieldSlots = typeof __propDef.slots;
export default class TextField extends SvelteComponentTyped<TextFieldProps, TextFieldEvents, TextFieldSlots> {
}
export {};
