import './pl-textarea.scss';
/** Component for multi-line string data manipulation */
declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
    /**
     * The current value of the texarea.
     */
    modelValue?: string;
    /**
     * The label to display above the texarea.
     */
    label?: string;
    /**
     * If `true`, the textarea is marked as required.
     */
    required?: boolean;
    /**
     * An error message to display below the textarea.
     */
    error?: string;
    /**
     * A helper text to display below the textarea when there are no errors.
     */
    helper?: string;
    /**
     * A placeholder text to display inside the textarea when it is empty.
     */
    placeholder?: string;
    /**
     * If `true`, the textarea is disabled and cannot be interacted with.
     */
    disabled?: boolean;
    /**
     * If `true`, the textarea is in a read-only state and cannot be edited, but it can still be focused and text can be selected.
     */
    readonly?: boolean;
    /**
     * If `true`, applies a dashed border style to the textarea, likely used for stylistic purposes or to indicate a certain state.
     */
    dashed?: boolean;
    /**
     * The number of visible text lines for the textarea, which controls the height of the textarea.
     */
    rows?: number;
    /**
     * If `true`, the textarea automatically adjusts its height to fit the content as the user types.
     */
    autogrow?: boolean;
    /**
     * An array of validation rules that are applied to the textarea input. Each rule is a function that receives the input value and returns `true` for valid input or an error message string for invalid input.
     */
    rules?: ((v: string) => boolean | string)[];
}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
    "update:modelValue": (value: string) => any;
}, string, import("vue").PublicProps, Readonly<{
    /**
     * The current value of the texarea.
     */
    modelValue?: string;
    /**
     * The label to display above the texarea.
     */
    label?: string;
    /**
     * If `true`, the textarea is marked as required.
     */
    required?: boolean;
    /**
     * An error message to display below the textarea.
     */
    error?: string;
    /**
     * A helper text to display below the textarea when there are no errors.
     */
    helper?: string;
    /**
     * A placeholder text to display inside the textarea when it is empty.
     */
    placeholder?: string;
    /**
     * If `true`, the textarea is disabled and cannot be interacted with.
     */
    disabled?: boolean;
    /**
     * If `true`, the textarea is in a read-only state and cannot be edited, but it can still be focused and text can be selected.
     */
    readonly?: boolean;
    /**
     * If `true`, applies a dashed border style to the textarea, likely used for stylistic purposes or to indicate a certain state.
     */
    dashed?: boolean;
    /**
     * The number of visible text lines for the textarea, which controls the height of the textarea.
     */
    rows?: number;
    /**
     * If `true`, the textarea automatically adjusts its height to fit the content as the user types.
     */
    autogrow?: boolean;
    /**
     * An array of validation rules that are applied to the textarea input. Each rule is a function that receives the input value and returns `true` for valid input or an error message string for invalid input.
     */
    rules?: ((v: string) => boolean | string)[];
}> & Readonly<{
    "onUpdate:modelValue"?: ((value: string) => any) | undefined;
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, HTMLDivElement>, {
    tooltip?(_: {}): any;
    append?(_: {}): any;
}>;
export default _default;
type __VLS_WithTemplateSlots<T, S> = T & {
    new (): {
        $slots: S;
    };
};
