import * as _angular_core from '@angular/core'; import { TemplateRef, OnInit, ElementRef, ChangeDetectorRef } from '@angular/core'; import * as rxjs from 'rxjs'; import { Subject } from 'rxjs'; import * as _ng_nest_ui_core from '@ng-nest/ui/core'; import { XBoolean, XTemplate, XNumber, XAlign, XJustify, XDirection, XSize, XVariant, XPositionLeftRight, XFloatLabel } from '@ng-nest/ui/core'; import { XFormOption } from '@ng-nest/ui/base-form'; /** * Input * @selector x-input * @decorator component */ declare const XInputPrefix = "x-input"; declare const XInputProperty_base: new () => { config: _ng_nest_ui_core.XInputConfig | 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; 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>; }; /** * Input Property */ declare class XInputProperty extends XInputProperty_base { /** * @zh_CN 输入类型 * @en_US Input type */ readonly type: _angular_core.InputSignal; /** * @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 Enter the max */ readonly max: _angular_core.InputSignalWithTransform; /** * @zh_CN 最小值 * @en_US Enter the min */ readonly min: _angular_core.InputSignalWithTransform; /** * @zh_CN 宽度 * @en_US width */ readonly width: _angular_core.InputSignalWithTransform; /** * @zh_CN 自适应宽度,input 需要有默认值 * @en_US auto width,input needs a default value */ readonly autoWidth: _angular_core.InputSignalWithTransform; /** * @zh_CN 自适应宽度对比的值,默认是 value 的值 * @en_US auto width contrast value, defaults to the value of value */ readonly autoWidthValue: _angular_core.InputSignal; /** * @zh_CN 自适应最小的宽度 * @en_US auto min width */ readonly autoMinWidth: _angular_core.InputSignalWithTransform; /** * @zh_CN 自适应最大的宽度 * @en_US auto max width,input needs a default value */ readonly autoMaxWidth: _angular_core.InputSignalWithTransform; /** * @zh_CN 显示边框 * @en_US Display Border */ readonly bordered: _angular_core.InputSignalWithTransform; /** * @zh_CN 输入框样式 * @en_US Input Style */ readonly inputStyle: _angular_core.InputSignal<{ [style: string]: any; } | undefined>; /** * @zh_CN 输入框内边距。主要指输入框中的左右内边距 * @en_US Enter the border of the input box. */ readonly inputPadding: _angular_core.InputSignalWithTransform; /** * @zh_CN 输入框内边距(包含图标)。主要指输入框中的有图标的时候左右内边距 * @en_US Enter the border between the input box (including icon). */ readonly inputIconPadding: _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 Initial enable validation, which is automatically enabled when the input value is */ readonly validator: _angular_core.InputSignalWithTransform; /** * @zh_CN 尺寸 * @en_US Size */ readonly size: _angular_core.InputSignal; /** * @zh_CN 输入框点击样式 * @en_US Input pointer */ readonly pointer: _angular_core.InputSignalWithTransform; /** * @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 Enter prompt information */ readonly placeholder: _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 Node template */ readonly valueTpl: _angular_core.InputSignal | undefined>; /** * @zh_CN 值模板参数 * @en_US Node template */ readonly valueTplContext: _angular_core.InputSignal; /** * @zh_CN 前置标签 * @en_US Before label */ readonly before: _angular_core.InputSignal; /** * @zh_CN 后置标签 * @en_US After label */ readonly after: _angular_core.InputSignal; /** * @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 Activation state */ readonly active: _angular_core.ModelSignal; /** * @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; /** * @zh_CN 获取焦点的事件 * @en_US Focus event */ readonly xFocus: _angular_core.OutputEmitterRef; /** * @zh_CN 失去焦点的事件 * @en_US Blur event */ readonly xBlur: _angular_core.OutputEmitterRef; /** * @zh_CN Input * @en_US Input event */ readonly xInput: _angular_core.OutputEmitterRef; /** * @zh_CN Keydown * @en_US Keydown event */ readonly xKeydown: _angular_core.OutputEmitterRef; /** * @zh_CN Click * @en_US Click event */ readonly xClick: _angular_core.OutputEmitterRef; /** * @zh_CN Mouseenter * @en_US Mouseenter event */ readonly xMouseenter: _angular_core.OutputEmitterRef; /** * @zh_CN Mouseleave * @en_US Mouseleave event */ readonly xMouseleave: _angular_core.OutputEmitterRef; /** * @zh_CN Composition * @en_US Composition event */ readonly xComposition: _angular_core.OutputEmitterRef; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵcmp: _angular_core.ɵɵComponentDeclaration; } /** * Input Option */ interface XInputOption extends XFormOption { /** * @zh_CN 输入类型 * @en_US Input type */ type?: XInputType; /** * @zh_CN 形态变体 * @en_US Input variant */ variant?: XInputVariant; /** * @zh_CN 浮动标签 * @en_US Float label */ floatLabel?: XInputFloatLabel; /** * @zh_CN 固定浮动标签 * @en_US Fixed float label */ floatFixed?: boolean; /** * @zh_CN 清除按钮 * @en_US Clear button */ clearable?: boolean; /** * @zh_CN 图标 * @en_US Icon */ icon?: string; /** * @zh_CN 图标布局方式 * @en_US Icon layout */ iconLayout?: XInputIconLayoutType; /** * @zh_CN 图标动画 * @en_US Icon animation */ iconSpin?: boolean; /** * @zh_CN 输入最大长度 * @en_US Enter the maximum length */ maxlength?: number; /** * @zh_CN 最大值 * @en_US Enter the max */ max?: number; /** * @zh_CN 最小值 * @en_US Enter the min */ min?: number; /** * @zh_CN 宽度 * @en_US width */ width?: string; /** * @zh_CN 显示边框 * @en_US Display Border */ bordered?: boolean; /** * @zh_CN 输入框样式 * @en_US Input Style */ inputStyle?: { [style: string]: any; }; /** * @zh_CN 输入框内边距。主要指输入框中的左右内边距 * @en_US Enter the border of the input box. */ inputPadding?: string; /** * @zh_CN 输入框内边距(包含图标)。主要指输入框中的有图标的时候左右内边距 * @en_US Enter the border between the input box (including icon). */ inputIconPadding?: string; /** * @zh_CN 初始启用验证,在输入值都自动开启 * @en_US Initial enable validation, which is automatically enabled when the input value is */ validator?: boolean; /** * @zh_CN 尺寸 * @en_US Size */ size?: XSize; /** * @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 Clear button event */ clearEmit?: (value: any) => void; /** * @zh_CN 获取焦点的事件 * @en_US Focus event */ xFocus?: (event: FocusEvent) => void; /** * @zh_CN 失去焦点的事件 * @en_US Blur event */ xBlur?: (event: FocusEvent) => void; /** * @zh_CN Input * @en_US Input event */ xInput?: (event: Event) => void; /** * @zh_CN Keydown * @en_US Keydown event */ xKeydown?: (event: KeyboardEvent) => void; /** * @zh_CN Click * @en_US Click event */ xClick?: (event: MouseEvent) => void; /** * @zh_CN Mouseenter * @en_US Mouseenter event */ xMouseenter?: (event: MouseEvent) => void; /** * @zh_CN Mouseleave * @en_US Mouseleave event */ xMouseleave?: (event: MouseEvent) => void; /** * @zh_CN Composition * @en_US Composition event */ xComposition?: (event: CompositionEvent) => void; } /** * @zh_CN 输入框类型 * @en_US Input box type * @value "text" 文本 * @value "password" 密码 * @value "number" 数字 */ type XInputType = 'text' | 'password' | 'number'; /** * @zh_CN 浮动标签类型 * @en_US Float label type */ type XInputFloatLabel = XFloatLabel; /** * @zh_CN 输入框形态变体 * @en_US Input box variant */ type XInputVariant = XVariant; /** * @zh_CN 图标布局方式,指在输入框中的位置 * @en_US Icon layout, refers to the position in the input box * @value "left" 靠左 * @value "right" 靠右 */ type XInputIconLayoutType = XPositionLeftRight; /** * Input Group * @selector x-input-group * @decorator component */ declare const XInputGroupPrefix = "x-input-group"; declare const XInputGroupProperty_base: new () => { config: _ng_nest_ui_core.XInputGroupConfig | undefined; }; /** * Input Group Property */ declare class XInputGroupProperty extends XInputGroupProperty_base { /** * @zh_CN 尺寸 * @en_US Size */ readonly size: _angular_core.InputSignal; /** * @zh_CN 显示边框 * @en_US Display Border */ readonly bordered: _angular_core.InputSignalWithTransform; /** * @zh_CN 是否使用紧凑模式 * @en_US Whether to use a compact mode */ readonly compact: _angular_core.InputSignalWithTransform; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵcmp: _angular_core.ɵɵComponentDeclaration; } declare class XInputComponent extends XInputProperty implements OnInit { inputElement: _angular_core.Signal>; inputRef: _angular_core.Signal>; inputValueRef: _angular_core.Signal | undefined>; maxLengthRef: _angular_core.Signal | undefined>; measureRef: _angular_core.Signal | undefined>; measureRefChanged: _angular_core.WritableSignal; get getWidth(): string; writeValue(value: any): void; classMap: _angular_core.Signal<{ [x: string]: boolean; }>; labelMapSignal: _angular_core.Signal<{ [x: string]: boolean; }>; valueLength: _angular_core.WritableSignal; lengthTotal: _angular_core.WritableSignal; paddingLeft: _angular_core.Signal; paddingRight: _angular_core.Signal; clearShow: _angular_core.Signal; hasValue: _angular_core.Signal; valueChange: Subject; valueChangeSignal: _angular_core.Signal; isComposition: _angular_core.WritableSignal; isWriteValue: _angular_core.WritableSignal; private unSubject; getIcon: _angular_core.Signal; getIconLayoutLeft: _angular_core.Signal; getIconLayoutRight: _angular_core.Signal; getMaxLengthWidth: _angular_core.Signal; beforeIsTemplate: _angular_core.Signal; afterIsTemplate: _angular_core.Signal; getTemplateWidth: _angular_core.Signal; inputWidth: _angular_core.Signal; focused: _angular_core.WritableSignal; groupSize: _angular_core.WritableSignal; groupBordered: _angular_core.WritableSignal; cdr: ChangeDetectorRef; private inputGroup; elementRef: ElementRef; private resizeObserver; ngOnInit(): void; ngAfterViewInit(): void; ngOnDestroy(): void; setAutoElement(): void; setEvent(): void; inputCheckValue(x: Event): void; change(value: any): void; validatorValue(value: any): void; onClear(): void; setInheritedValue(): void; inputFocus(type?: 'focus' | 'select' | 'before' | 'after'): void; formControlChanges(): void; onClick($event: MouseEvent): void; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵcmp: _angular_core.ɵɵComponentDeclaration; } declare class XInputGroupComponent extends XInputGroupProperty { elementRef: ElementRef; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵcmp: _angular_core.ɵɵComponentDeclaration; } declare class XInputModule { static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵmod: _angular_core.ɵɵNgModuleDeclaration; static ɵinj: _angular_core.ɵɵInjectorDeclaration; } export { XInputComponent, XInputGroupComponent, XInputGroupPrefix, XInputGroupProperty, XInputModule, XInputPrefix, XInputProperty }; export type { XInputFloatLabel, XInputIconLayoutType, XInputOption, XInputType, XInputVariant };