import type { MaybeRef, PropType } from 'vue';
export interface XFormInputMethods {
    focus: () => void;
    validate: (val: any) => boolean;
    setError: (val: string) => void;
}
export declare const useInputtable: {
    (props: any, { focus, emit, withListeners }: {
        focus: () => void;
        emit: any;
        withListeners?: boolean | undefined;
    }): {
        isFirstValidation: import("vue").Ref<boolean>;
        errorInternal: any;
        hideFooterInternal: any;
        isFocused: import("vue").Ref<boolean>;
        isInsideForm: boolean;
        isInsideFormGroup: boolean;
        inputListeners: MaybeRef<{
            focus: (event: Event) => void;
            blur: (event: Event) => void;
            input: (event: Event) => void;
            change: (event: Event) => void;
        }>;
        formGroup: import("..").FormGroupInjection;
        reset: () => void;
        validate: (val?: any) => boolean;
        setError: (val: string) => void;
    };
    emits(withListeners?: boolean): string[];
    props(): {
        readonly modelValue: PropType<string | number | boolean | object | any[] | undefined>;
        readonly id: StringConstructor;
        readonly name: StringConstructor;
        readonly readonly: BooleanConstructor;
        readonly required: BooleanConstructor;
        readonly validateOnInput: {
            readonly type: BooleanConstructor;
            readonly default: true;
        };
        readonly label: StringConstructor;
        readonly helper: StringConstructor;
        readonly error: StringConstructor;
        readonly hideFooter: BooleanConstructor;
        readonly rules: {
            readonly type: ArrayConstructor;
            readonly default: () => never[];
        };
        readonly tooltip: StringConstructor;
    };
};
