import { LitElement } from 'lit'; declare const Textarea_base: (new (...args: any[]) => import("../common/mixins/SizeMixin.js").SizeMixinInterface) & (new (...args: any[]) => import("../common/mixins/FormAssociatedMixin.js").FormAssociatedMixinInterface) & (new (...args: any[]) => import("../common/mixins/AutocompleteMixin.js").AutocompleteMixinInterface) & (new (...args: any[]) => import("../common/mixins/ReadonlyMixin.js").ReadonlyMixinInterface) & (new (...args: any[]) => import("../common/mixins/TextSelectableMixin.js").TextSelectableMixinInterface) & (new (...args: any[]) => import("../common/mixins/InputMixin.js").InputMixinInterface) & (new (...args: any[]) => import("../common/mixins/FocusableMixin.js").FocusableMixinInterface) & typeof LitElement; /** * Textarea is a component that allows user to write text over * multiple rows. Used when the expected user input is long. * For shorter input, use the Input component. * * @status ready * @category form * @slot label - Use when a label requires more than plain text. * @slot hint - Optional slot that holds hint text for the textarea. * @slot error - Optional slot that holds error text for the textarea. * * @cssprop [--n-textarea-inline-size=240px] - Controls the inline size, or width, of the textarea. * @cssprop [--n-textarea-block-size=76px] - Controls the block size, or height, of the textarea. * @cssprop [--n-textarea-background=var(--n-color-active)] - Controls the background of the textarea, using our [color tokens](/tokens/#color). * @cssprop [--n-textarea-color=var(--n-color-text)] - Controls the text color of the textarea, using our [color tokens](/tokens/#color). * @cssprop [--n-textarea-border-color=var(--n-color-border-strong)] - Controls the border color of the textarea, using our [color tokens](/tokens/#color). * @cssprop [--n-textarea-border-radius=var(--n-border-radius-s)] - Controls how rounded the corners are, using [border radius tokens](/tokens/#border-radius). * @cssprop [--n-label-color=var(--n-color-text)] - Controls the text color of the label, using our [color tokens](/tokens/#color). * * @localization remainingCharacters - A function which receives the number of remaining characters and returns a string to be used as the aria-live message. */ export default class Textarea extends Textarea_base { static styles: import("lit").CSSResult[]; protected inputId: string; private lengthMeasurer; private localize; /** * Controls whether the textarea is resizable. * By default is manually resizable vertically. * Set to "auto" to enable auto-resizing as content grows. */ resize: 'vertical' | 'auto'; /** * Controls whether the textarea expands to fill the width of its container. */ expand: boolean; /** * Controls the max allowed length for the textarea. */ maxLength?: number; /** * Controls whether to show a count of the number of characters in the textarea. * When combined with `maxlength`, both the count and the max length are shown. */ characterCounter: boolean; render(): import("lit").TemplateResult<1>; protected handleSelect(e: Event): void; private renderCharacterCounter; private handleLangChange; protected resizeToFitContent(): void; } declare global { interface HTMLElementTagNameMap { 'nord-textarea': Textarea; } } export {};