import * as _angular_core from '@angular/core'; import { TemplateRef, ElementRef } from '@angular/core'; import * as rxjs from 'rxjs'; import * as _ng_nest_ui_core from '@ng-nest/ui/core'; import { XBoolean, XTemplate, XNumber, XAlign, XJustify, XDirection, XVariant, XPositionLeftRight, XFloatLabel, XConfigService } from '@ng-nest/ui/core'; import { XFormOption } from '@ng-nest/ui/base-form'; /** * Textarea * @selector x-textarea * @decorator component */ declare const XTextareaPrefix = "x-textarea"; declare const XTextareaProperty_base: new () => { config: _ng_nest_ui_core.XTextareaConfig | undefined; cdr: _angular_core.ChangeDetectorRef; invalid: _angular_core.Signal; invalidPattern: _angular_core.Signal; requiredIsEmpty: _angular_core.Signal; invalidMessage: _angular_core.Signal; value: _angular_core.WritableSignal; valueObservable: rxjs.Observable; validatorSignal: _angular_core.WritableSignal; disabledSignal: _angular_core.WritableSignal; requiredSignal: _angular_core.WritableSignal; patternSignal: _angular_core.WritableSignal; messageSignal: _angular_core.WritableSignal; requiredComputed: _angular_core.Signal; disabledComputed: _angular_core.Signal; validatorComputed: _angular_core.Signal; patternComputed: _angular_core.Signal; messageComputed: _angular_core.Signal; invalidInputValidator: _angular_core.WritableSignal; onChange: (value: any) => void; onTouched: () => void; writeValue(value: any): void; registerOnChange(fn: (value: any) => void): void; registerOnTouched(fn: () => void): void; setDisabledState(disabled: boolean): void; formControlValidator(): void; readonly validator: _angular_core.InputSignalWithTransform; readonly label: _angular_core.InputSignal; readonly labelWidth: _angular_core.InputSignalWithTransform; readonly labelAlign: _angular_core.InputSignal; readonly justify: _angular_core.InputSignal; readonly align: _angular_core.InputSignal; readonly direction: _angular_core.InputSignal; readonly size: _angular_core.InputSignal<_ng_nest_ui_core.XSize>; readonly placeholder: _angular_core.InputSignal; readonly disabled: _angular_core.InputSignalWithTransform; readonly required: _angular_core.InputSignalWithTransform; readonly readonly: _angular_core.InputSignalWithTransform; readonly valueTpl: _angular_core.InputSignal | undefined>; readonly valueTplContext: _angular_core.InputSignal; readonly before: _angular_core.InputSignal; readonly after: _angular_core.InputSignal; readonly pattern: _angular_core.InputSignal; readonly message: _angular_core.InputSignal; readonly active: _angular_core.ModelSignal; readonly pointer: _angular_core.InputSignalWithTransform; readonly inputValidator: _angular_core.InputSignal<((value: any) => boolean) | undefined>; }; /** * Textarea Property */ declare class XTextareaProperty extends XTextareaProperty_base { /** * @zh_CN 形态变体 * @en_US Input variant */ readonly variant: _angular_core.InputSignal; /** * @zh_CN 清除按钮 * @en_US Clear button */ readonly clearable: _angular_core.InputSignalWithTransform; /** * @zh_CN 图标 * @en_US Icon */ readonly icon: _angular_core.InputSignal; /** * @zh_CN 图标布局方式 * @en_US Icon layout */ readonly iconLayout: _angular_core.InputSignal; /** * @zh_CN 图标动画 * @en_US Icon animation */ readonly iconSpin: _angular_core.InputSignalWithTransform; /** * @zh_CN 输入最大长度 * @en_US Enter the maximum length */ readonly maxlength: _angular_core.InputSignalWithTransform; /** * @zh_CN 高度 * @en_US height */ readonly height: _angular_core.InputSignalWithTransform; /** * @zh_CN 浮动标签 * @en_US Float label */ readonly floatLabel: _angular_core.InputSignal; /** * @zh_CN 固定浮动标签 * @en_US Fixed float label */ readonly floatFixed: _angular_core.InputSignalWithTransform; /** * @zh_CN 输入提示信息 * @en_US Enter prompt information */ readonly placeholder: _angular_core.InputSignal; /** * @zh_CN 标签 * @en_US Label */ readonly label: _angular_core.InputSignal; /** * @zh_CN 标签宽度 * @en_US Label width */ readonly labelWidth: _angular_core.InputSignalWithTransform; /** * @zh_CN 标签文字对齐方式 * @en_US Label text alignment method */ readonly labelAlign: _angular_core.InputSignal; /** * @zh_CN flex 布局下的子元素水平排列方式 * @en_US The level of sub-element level arrangement under flex layout */ readonly justify: _angular_core.InputSignal; /** * @zh_CN flex 布局下的子元素垂直排列方式 * @en_US sub-element vertical arrangement method under flex layout */ readonly align: _angular_core.InputSignal; /** * @zh_CN flex 布局下的子元素排列方向 * @en_US The direction of the sub-element arrangement under flex layout */ readonly direction: _angular_core.InputSignal; /** * @zh_CN 禁用 * @en_US Disabled */ readonly disabled: _angular_core.InputSignalWithTransform; /** * @zh_CN 必填 * @en_US Required */ readonly required: _angular_core.InputSignalWithTransform; /** * @zh_CN 只读 * @en_US Readonly */ readonly readonly: _angular_core.InputSignalWithTransform; /** * @zh_CN 正则验证规则 * @en_US Regular verification rules */ readonly pattern: _angular_core.InputSignal; /** * @zh_CN 验证不通过提示文字 * @en_US Verify not pass the prompt text */ readonly message: _angular_core.InputSignal; /** * @zh_CN 输入验证函数 * @en_US Enter the verification function */ readonly inputValidator: _angular_core.InputSignal<((value: any) => boolean) | undefined>; /** * @zh_CN 清除按钮的事件 * @en_US Clear button event */ readonly clearEmit: _angular_core.OutputEmitterRef; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵcmp: _angular_core.ɵɵComponentDeclaration; } /** * Textarea Option */ interface XTextareaOption extends XFormOption { /** * @zh_CN 浮动标签 * @en_US Float label */ floatLabel?: XTextareaFloatLabel; /** * @zh_CN 固定浮动标签 * @en_US Fixed float label */ floatFixed?: boolean; /** * @zh_CN 形态变体 * @en_US Input variant */ variant?: XTextareaVariant; /** * @zh_CN 清除按钮 * @en_US Clear button */ clearable?: boolean; /** * @zh_CN 图标 * @en_US Icon */ icon?: string; /** * @zh_CN 图标布局方式 * @en_US Icon layout */ iconLayout?: XTextareaIconLayoutType; /** * @zh_CN 图标动画 * @en_US Icon animation */ iconSpin?: boolean; /** * @zh_CN 输入最大长度 * @en_US Enter the maximum length */ maxlength?: number; /** * @zh_CN 高度 * @en_US height */ height?: string; /** * @zh_CN 清除按钮的事件 * @en_US Clear button event */ clearEmit?: (value: any) => void; /** * @zh_CN 输入框点击样式 * @en_US Input pointer */ pointer?: boolean; /** * @zh_CN 标签 * @en_US Label */ label?: string; /** * @zh_CN 标签宽度 * @en_US Label width */ labelWidth?: string; /** * @zh_CN 标签文字对齐方式 * @en_US Label text alignment method */ labelAlign?: XAlign; /** * @zh_CN flex 布局下的子元素水平排列方式 * @en_US The level of sub-element level arrangement under flex layout */ justify?: XJustify; /** * @zh_CN flex 布局下的子元素垂直排列方式 * @en_US sub-element vertical arrangement method under flex layout */ align?: XAlign; /** * @zh_CN flex 布局下的子元素排列方向 * @en_US The direction of the sub-element arrangement under flex layout */ direction?: XDirection; /** * @zh_CN 输入提示信息 * @en_US Enter prompt information */ placeholder?: string; /** * @zh_CN 禁用 * @en_US Disabled */ disabled?: boolean; /** * @zh_CN 必填 * @en_US Required */ required?: boolean; /** * @zh_CN 只读 * @en_US Readonly */ readonly?: boolean; /** * @zh_CN 值模板 * @en_US Node template */ valueTpl?: TemplateRef; /** * @zh_CN 值模板参数 * @en_US Node template */ valueTplContext?: any; /** * @zh_CN 前置标签 * @en_US Before label */ before?: XTemplate; /** * @zh_CN 后置标签 * @en_US After label */ after?: XTemplate; /** * @zh_CN 正则验证规则 * @en_US Regular verification rules */ pattern?: RegExp; /** * @zh_CN 验证不通过提示文字 * @en_US Verify not pass the prompt text */ message?: string; /** * @zh_CN 激活状态 * @en_US Activation state */ active?: boolean; /** * @zh_CN 输入验证函数 * @en_US Enter the verification function */ inputValidator?: (value: any) => boolean; } /** * @zh_CN 图标布局方式,指在输入框中的位置 * @en_US Icon layout, refers to the position in the input box * @value "left" 靠左 * @value "right" 靠右 */ type XTextareaIconLayoutType = XPositionLeftRight; /** * @zh_CN 输入框形态变体 * @en_US Input box variant */ type XTextareaVariant = XVariant; /** * @zh_CN 浮动标签类型 * @en_US Float label type */ type XTextareaFloatLabel = XFloatLabel; declare class XTextareaComponent extends XTextareaProperty { textareaRef: _angular_core.Signal>; focused: _angular_core.WritableSignal; valueLength: _angular_core.Signal; lengthTotal: _angular_core.Signal; clearShow: _angular_core.Signal; hasValue: _angular_core.Signal; getIcon: _angular_core.Signal; getIconLayoutLeft: _angular_core.Signal; getIconLayoutRight: _angular_core.Signal; paddingLeft: _angular_core.Signal<"2.15rem" | "0.75rem">; paddingRight: _angular_core.Signal<"2.15rem" | "0.75rem">; configService: XConfigService; classMap: _angular_core.Signal<{ [x: string]: boolean; }>; labelMapSignal: _angular_core.Signal<{ [x: string]: boolean; }>; change(value: any): void; onClear(): void; onFocus(_event: Event): void; onBlur(_event: Event): void; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵcmp: _angular_core.ɵɵComponentDeclaration; } declare class XTextareaModule { static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵmod: _angular_core.ɵɵNgModuleDeclaration; static ɵinj: _angular_core.ɵɵInjectorDeclaration; } export { XTextareaComponent, XTextareaModule, XTextareaPrefix, XTextareaProperty }; export type { XTextareaFloatLabel, XTextareaIconLayoutType, XTextareaOption, XTextareaVariant };