import { GctInputProps } from './types';
declare function __VLS_template(): {
    attrs: Partial<{}>;
    slots: {
        prependIcon?(_: {}): any;
        clearIcon?(_: {}): any;
    };
    refs: {
        inputRef: HTMLInputElement;
    };
    rootEl: HTMLDivElement;
};
type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
declare const __VLS_component: import('vue').DefineComponent<GctInputProps, {
    focus: () => void;
    blur: () => void;
    select: () => void;
    inputRef: import('vue').Ref<HTMLTextAreaElement | HTMLInputElement | null, HTMLTextAreaElement | HTMLInputElement | null>;
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
    input: (value: string | number, event: Event) => any;
    search: (value: string | number) => any;
    blur: (event: FocusEvent) => any;
    change: (value: string | number, event: Event) => any;
    focus: (event: FocusEvent) => any;
    keydown: (event: KeyboardEvent) => any;
    keypress: (event: KeyboardEvent) => any;
    keyup: (event: KeyboardEvent) => any;
    clear: () => any;
    "update:modelValue": (value: string | number) => any;
    pressEnter: (event: KeyboardEvent) => any;
}, string, import('vue').PublicProps, Readonly<GctInputProps> & Readonly<{
    onInput?: ((value: string | number, event: Event) => any) | undefined;
    onSearch?: ((value: string | number) => any) | undefined;
    onBlur?: ((event: FocusEvent) => any) | undefined;
    onChange?: ((value: string | number, event: Event) => any) | undefined;
    onFocus?: ((event: FocusEvent) => any) | undefined;
    onKeydown?: ((event: KeyboardEvent) => any) | undefined;
    onKeypress?: ((event: KeyboardEvent) => any) | undefined;
    onKeyup?: ((event: KeyboardEvent) => any) | undefined;
    onClear?: (() => any) | undefined;
    "onUpdate:modelValue"?: ((value: string | number) => any) | undefined;
    onPressEnter?: ((event: KeyboardEvent) => any) | undefined;
}>, {
    name: string;
    type: import('./types').InputType;
    id: string;
    rows: number;
    readonly: boolean;
    disabled: boolean;
    size: import('./types').InputSize;
    placeholder: string;
    autocomplete: string;
    spellcheck: boolean;
    prefix: string;
    modelValue: string | number;
    suffix: string;
    addonBefore: string;
    addonAfter: string;
    allowClear: boolean;
    showCount: boolean;
    showPasswordToggle: boolean;
    maxLength: number;
    autofocus: boolean;
    bordered: boolean;
    showSearchButton: boolean;
    customStyle: Record<string, string | number>;
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {
    inputRef: HTMLInputElement;
}, HTMLDivElement>;
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
export default _default;
type __VLS_WithTemplateSlots<T, S> = T & {
    new (): {
        $slots: S;
    };
};
