import './style';
import { TdTextareaProps } from './type';
export * from './type';
export type TextareaProps = TdTextareaProps;
export declare const Textarea: {
    new (...args: any[]): import("vue").CreateComponentPublicInstanceWithMixins<Readonly<import("vue").ExtractPropTypes<{
        allowInputOverMax: BooleanConstructor;
        autofocus: BooleanConstructor;
        autosize: {
            type: import("vue").PropType<boolean | {
                minRows?: number;
                maxRows?: number;
            }>;
            default: boolean | {
                minRows?: number;
                maxRows?: number;
            };
        };
        bordered: BooleanConstructor;
        cursorColor: {
            type: StringConstructor;
            default: string;
        };
        disabled: {
            type: BooleanConstructor;
            default: any;
        };
        indicator: BooleanConstructor;
        label: {
            type: import("vue").PropType<string | ((h: typeof import("vue").h) => import("@/common").SlotReturnValue)>;
        };
        layout: {
            type: import("vue").PropType<"horizontal" | "vertical">;
            default: "horizontal" | "vertical";
            validator(val: "horizontal" | "vertical"): boolean;
        };
        maxcharacter: {
            type: NumberConstructor;
        };
        maxlength: {
            type: import("vue").PropType<string | number>;
        };
        name: {
            type: StringConstructor;
            default: string;
        };
        placeholder: {
            type: StringConstructor;
            default: any;
        };
        readonly: {
            type: BooleanConstructor;
            default: any;
        };
        value: {
            type: import("vue").PropType<import("@/components").TextareaValue>;
            default: import("@/components").TextareaValue;
        };
        modelValue: {
            type: import("vue").PropType<import("@/components").TextareaValue>;
            default: import("@/components").TextareaValue;
        };
        defaultValue: {
            type: import("vue").PropType<import("@/components").TextareaValue>;
        };
        onBlur: import("vue").PropType<(value: import("@/components").TextareaValue, context: {
            e: FocusEvent;
        }) => void>;
        onChange: import("vue").PropType<(value: import("@/components").TextareaValue, context?: {
            e?: InputEvent;
        }) => void>;
        onFocus: import("vue").PropType<(value: import("@/components").TextareaValue, context: {
            e: FocusEvent;
        }) => void>;
    }>> & Readonly<{}>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, import("vue").PublicProps, {
        allowInputOverMax: boolean;
        autofocus: boolean;
        autosize: boolean | {
            minRows?: number;
            maxRows?: number;
        };
        bordered: boolean;
        cursorColor: string;
        disabled: boolean;
        indicator: boolean;
        layout: "horizontal" | "vertical";
        name: string;
        placeholder: string;
        readonly: boolean;
        value: import("@/components").TextareaValue;
        modelValue: import("@/components").TextareaValue;
    }, true, {}, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, {
        P: {};
        B: {};
        D: {};
        C: {};
        M: {};
        Defaults: {};
    }, Readonly<import("vue").ExtractPropTypes<{
        allowInputOverMax: BooleanConstructor;
        autofocus: BooleanConstructor;
        autosize: {
            type: import("vue").PropType<boolean | {
                minRows?: number;
                maxRows?: number;
            }>;
            default: boolean | {
                minRows?: number;
                maxRows?: number;
            };
        };
        bordered: BooleanConstructor;
        cursorColor: {
            type: StringConstructor;
            default: string;
        };
        disabled: {
            type: BooleanConstructor;
            default: any;
        };
        indicator: BooleanConstructor;
        label: {
            type: import("vue").PropType<string | ((h: typeof import("vue").h) => import("@/common").SlotReturnValue)>;
        };
        layout: {
            type: import("vue").PropType<"horizontal" | "vertical">;
            default: "horizontal" | "vertical";
            validator(val: "horizontal" | "vertical"): boolean;
        };
        maxcharacter: {
            type: NumberConstructor;
        };
        maxlength: {
            type: import("vue").PropType<string | number>;
        };
        name: {
            type: StringConstructor;
            default: string;
        };
        placeholder: {
            type: StringConstructor;
            default: any;
        };
        readonly: {
            type: BooleanConstructor;
            default: any;
        };
        value: {
            type: import("vue").PropType<import("@/components").TextareaValue>;
            default: import("@/components").TextareaValue;
        };
        modelValue: {
            type: import("vue").PropType<import("@/components").TextareaValue>;
            default: import("@/components").TextareaValue;
        };
        defaultValue: {
            type: import("vue").PropType<import("@/components").TextareaValue>;
        };
        onBlur: import("vue").PropType<(value: import("@/components").TextareaValue, context: {
            e: FocusEvent;
        }) => void>;
        onChange: import("vue").PropType<(value: import("@/components").TextareaValue, context?: {
            e?: InputEvent;
        }) => void>;
        onFocus: import("vue").PropType<(value: import("@/components").TextareaValue, context: {
            e: FocusEvent;
        }) => void>;
    }>> & Readonly<{}>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, {
        allowInputOverMax: boolean;
        autofocus: boolean;
        autosize: boolean | {
            minRows?: number;
            maxRows?: number;
        };
        bordered: boolean;
        cursorColor: string;
        disabled: boolean;
        indicator: boolean;
        layout: "horizontal" | "vertical";
        name: string;
        placeholder: string;
        readonly: boolean;
        value: import("@/components").TextareaValue;
        modelValue: import("@/components").TextareaValue;
    }>;
    __isFragment?: never;
    __isTeleport?: never;
    __isSuspense?: never;
} & import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
    allowInputOverMax: BooleanConstructor;
    autofocus: BooleanConstructor;
    autosize: {
        type: import("vue").PropType<boolean | {
            minRows?: number;
            maxRows?: number;
        }>;
        default: boolean | {
            minRows?: number;
            maxRows?: number;
        };
    };
    bordered: BooleanConstructor;
    cursorColor: {
        type: StringConstructor;
        default: string;
    };
    disabled: {
        type: BooleanConstructor;
        default: any;
    };
    indicator: BooleanConstructor;
    label: {
        type: import("vue").PropType<string | ((h: typeof import("vue").h) => import("@/common").SlotReturnValue)>;
    };
    layout: {
        type: import("vue").PropType<"horizontal" | "vertical">;
        default: "horizontal" | "vertical";
        validator(val: "horizontal" | "vertical"): boolean;
    };
    maxcharacter: {
        type: NumberConstructor;
    };
    maxlength: {
        type: import("vue").PropType<string | number>;
    };
    name: {
        type: StringConstructor;
        default: string;
    };
    placeholder: {
        type: StringConstructor;
        default: any;
    };
    readonly: {
        type: BooleanConstructor;
        default: any;
    };
    value: {
        type: import("vue").PropType<import("@/components").TextareaValue>;
        default: import("@/components").TextareaValue;
    };
    modelValue: {
        type: import("vue").PropType<import("@/components").TextareaValue>;
        default: import("@/components").TextareaValue;
    };
    defaultValue: {
        type: import("vue").PropType<import("@/components").TextareaValue>;
    };
    onBlur: import("vue").PropType<(value: import("@/components").TextareaValue, context: {
        e: FocusEvent;
    }) => void>;
    onChange: import("vue").PropType<(value: import("@/components").TextareaValue, context?: {
        e?: InputEvent;
    }) => void>;
    onFocus: import("vue").PropType<(value: import("@/components").TextareaValue, context: {
        e: FocusEvent;
    }) => void>;
}>> & Readonly<{}>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, {
    allowInputOverMax: boolean;
    autofocus: boolean;
    autosize: boolean | {
        minRows?: number;
        maxRows?: number;
    };
    bordered: boolean;
    cursorColor: string;
    disabled: boolean;
    indicator: boolean;
    layout: "horizontal" | "vertical";
    name: string;
    placeholder: string;
    readonly: boolean;
    value: import("@/components").TextareaValue;
    modelValue: import("@/components").TextareaValue;
}, {}, string, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & import("vue").Plugin;
export default Textarea;
