import '@components/icon/icon.js'; import { FormBase } from '@internal/components/formBase.js'; import '@internal/components/hint/hint.js'; import type { FormFieldBaseProps } from '@internal/types/formField.js'; import { type CSSResultGroup } from 'lit'; interface SkfTextAreaProps extends Omit { cols?: number; maxLength?: number; minLength?: number; rows?: number; } /** * The skf-textarea is used to create a textarea. Use it inside a form element or wherever you like. * * @documentation See [InVision DSM](https://skf.invisionapp.com/dsm/ab-skf/4-web-applications/nav/5fa7caf78c01200018354495/asset/619e4125b3d2147c0c584b11) for design principles. * * @attribute {boolean} disabled - If true, sets disabled state * @attribute {boolean} required - If true, value is required or must be checked for the form to be submittable * * @event change - Fires when the value of the input changes * @event invalid - Fires when the input is invalid * * @slot The textareas label. Alternatively, you can use the `label` attribute. * * @tagname skf-textarea */ export declare class SkfTextArea extends FormBase implements SkfTextAreaProps { static styles: CSSResultGroup; private customError; /** If provided, sets the cols of the textarea */ cols?: number | undefined; /** If provided, forces component to invalid state until removed. Its value is used as hint text. */ set customInvalid(value: string | undefined); get customInvalid(): string | undefined; /** If provided, outputs helping hints in console */ debug: boolean; /** hide-label - If true, hides the label visually */ hideLabel: boolean; /** If provided, displays informational text below the field */ hint?: string; /** The input's label. Alternatively, you can use the component slot. */ label: string; /** If provided, adds name to the input-element */ name?: string; /** If provided, sets the maximum character length to accept for this input */ maxLength?: number; /** If provided, sets the minimum character length to accept for this input */ minLength?: number; /** If provided, displays placeholder text */ placeholder?: string; /** If true, makes the element not mutable, meaning the user can not edit the control */ readonly?: boolean; /** If provided, renders an alternative A11y text for the asterisk */ requiredLabel?: string; /** If provided, sets the rows of the textarea */ rows?: number | undefined; /** @type { "success" | "error" } - If provided, displays provided severity state */ severity?: SkfTextAreaProps['severity']; /** If true, displays valid state after interaction */ showValid?: boolean; /** If provided, displays an alternative size */ size?: 'sm' | 'md'; /** If provided, sets validation start, "input", "change" or "submit" */ validateOn?: 'input' | 'change' | 'submit'; /** The current value of the text area */ value: string; /** @internal */ /** true if the internal state is invalid */ invalid: boolean; /** @internal */ private $input; firstUpdated(): void; willUpdate(changedProperties: Map): void; attributeChangedCallback(name: string, oldValue: string, newValue: string): void; /** @internal */ _resetValue: (event: Event) => void; /** @internal */ _handleInput: () => void; /** @internal */ validateInput(): void; render(): import("lit").TemplateResult<1>; } export {};