///
import type { ComponentProps } from '@fluentui/react-utilities';
import type { ComponentState } from '@fluentui/react-utilities';
import type { ForwardRefComponent } from '@fluentui/react-utilities';
import * as React_2 from 'react';
import type { Slot } from '@fluentui/react-utilities';
import { SlotClassNames } from '@fluentui/react-utilities';
/**
* Render the final JSX of Textarea
*/
export declare const renderTextarea_unstable: (state: TextareaState) => JSX.Element;
/**
* The Textarea component allows the user to enter and edit text in multiple lines.
*/
export declare const Textarea: ForwardRefComponent;
export declare const textareaClassNames: SlotClassNames;
/**
* Data passed to the `onChange` callback when the textarea's value changes.
*/
export declare type TextareaOnChangeData = {
value: string;
};
/**
* Textarea Props
*/
export declare type TextareaProps = Omit, 'textarea'>, 'defaultValue' | 'onChange' | 'size' | 'value'> & {
/**
* Styling the Textarea should use.
*
* @default outline
*
* Note: 'filled-darker-shadow' and 'filled-lighter-shadow' are deprecated and will be removed in the future.
*/
appearance?: 'outline' | 'filled-darker' | 'filled-lighter' | 'filled-darker-shadow' | 'filled-lighter-shadow';
/**
* The default value of the Textarea.
*/
defaultValue?: string;
/**
* Callback for when the user changes the value.
*/
onChange?: (ev: React_2.ChangeEvent, data: TextareaOnChangeData) => void;
/**
* Which direction the Textarea is allowed to be resized.
*
* @default none
*/
resize?: 'none' | 'horizontal' | 'vertical' | 'both';
/**
* Size of the Textarea.
*
* @default medium
*/
size?: 'small' | 'medium' | 'large';
/**
* The value of the Textarea.
*/
value?: string;
};
export declare type TextareaSlots = {
/**
* Wrapper element used for displaying the borders for Textarea. This wrapper is needed due to the focus
* indicator border animation. For more information, see Spec.md
*
* The root only receives `className` and `style`. All other props are applied to the `textarea` slot.
*/
root: NonNullable>;
/**
* The `