import { ExtractPropTypes, PropType } from 'vue';
import { SizeT, RoundT, VariantT, Color2T } from '../_utils/types';
export declare const textareaProps: {
    /**
     * 大小 SizeT
     */
    size: {
        type: PropType<SizeT>;
    };
    /**
     * 圆角值 RoundT
     */
    round: {
        type: PropType<RoundT>;
    };
    /**
     * 颜色类型 Color2T
     */
    color: {
        type: PropType<Color2T>;
        default: string;
    };
    /**
     * 按钮类型 VariantT
     */
    variant: {
        type: PropType<VariantT>;
        default: string;
    };
    modelValue: {
        type: StringConstructor;
    };
    defaultValue: {
        type: StringConstructor;
    };
    placeholder: {
        type: StringConstructor;
    };
    disabled: {
        type: BooleanConstructor;
    };
    readonly: {
        type: BooleanConstructor;
    };
    clearable: {
        type: BooleanConstructor;
    };
    format: {
        type: PropType<(value: string) => string>;
    };
    validate: {
        type: PropType<(value: string) => boolean>;
    };
    valueOnInvalidChange: {
        type: PropType<(inputValue: string, lastValidInputValue: string) => string>;
    };
    rows: {
        type: NumberConstructor;
        default: undefined;
    };
    cols: {
        type: NumberConstructor;
        default: undefined;
    };
    resize: {
        type: PropType<import('../_components/in-textarea').TextareaResizeT>;
        default: string;
    };
    minLength: {
        type: NumberConstructor;
    };
    maxLength: {
        type: NumberConstructor;
    };
    getLength: {
        type: PropType<(val: string) => number>;
    };
    inputOnOutlimit: {
        type: BooleanConstructor;
        default: boolean;
    };
    autoSize: {
        type: BooleanConstructor;
    };
    textareaId: {
        type: StringConstructor;
    };
    scrollbar: {
        type: PropType<boolean | Partial<import('..').BaseScrollerPropsT>>;
        default: boolean;
    };
};
export type TextareaPropsT = ExtractPropTypes<typeof textareaProps>;
