import * as react_jsx_runtime from 'react/jsx-runtime';
import React__default from 'react';
import { VariantProps as VariantPropsInternal } from './variants.js';
import { l as labelStyles } from './label-size-BuYQMot6.js';

declare const textarea: (props?: ({
    variant?: "text" | "outline" | undefined;
    size?: "sm" | "md" | "lg" | undefined;
    disabled?: boolean | undefined;
    error?: boolean | undefined;
    clearable?: boolean | undefined;
} & {
    className?: string;
}) | undefined) => string;
interface TextareaProps extends React__default.DetailedHTMLProps<React__default.TextareaHTMLAttributes<HTMLTextAreaElement>, HTMLTextAreaElement> {
    rows?: number;
    cols?: number;
    maxLength?: number;
    disabled?: boolean;
    children?: React__default.ReactNode;
    size?: VariantPropsInternal<typeof textarea>['size'];
    variant?: VariantPropsInternal<typeof textarea>['variant'];
    label?: React__default.ReactNode;
    labelWeight?: keyof typeof labelStyles.weight;
    clearable?: boolean;
    onClear?: (event: React__default.MouseEvent) => void;
    renderCharacterCount?({ characterCount, maxLength, }: {
        characterCount?: number;
        maxLength?: number;
    }): React__default.ReactNode;
    helperText?: React__default.ReactNode;
    error?: string;
    labelClassName?: string;
    textareaClassName?: string;
    helperClassName?: string;
    errorClassName?: string;
    className?: string;
    ref?: React__default.Ref<HTMLTextAreaElement>;
}
declare function Textarea({ variant, size, labelWeight, cols, rows, label, error, clearable, onClear, readOnly, disabled, className, labelClassName, textareaClassName, helperClassName, errorClassName, helperText, maxLength, placeholder, renderCharacterCount, ref, ...textareaProps }: TextareaProps): react_jsx_runtime.JSX.Element;

export { Textarea, type TextareaProps };
