import * as _angular_core from '@angular/core'; import { OnDestroy, AfterViewInit, ElementRef, ChangeDetectorRef } from '@angular/core'; import { XTooltipDirective } from '@ng-nest/ui/tooltip'; import * as rxjs from 'rxjs'; import * as _ng_nest_ui_core from '@ng-nest/ui/core'; import { XBoolean, XTemplate, XNumber, XAlign, XJustify, XDirection } from '@ng-nest/ui/core'; import { XFormOption } from '@ng-nest/ui/base-form'; import { CdkDragStart, CdkDragMove, CdkDragEnd } from '@angular/cdk/drag-drop'; /** * SliderSelect * @selector x-slider-select * @decorator component */ declare const XSliderSelectPrefix = "x-slider-select"; declare const XSliderSelectProperty_base: new () => { config: _ng_nest_ui_core.XSliderSelectConfig | 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<_angular_core.TemplateRef | 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>; }; /** * SliderSelect Property */ declare class XSliderSelectProperty extends XSliderSelectProperty_base { /** * @zh_CN 最小值 * @en_US Minimum */ readonly min: _angular_core.InputSignalWithTransform; /** * @zh_CN 最大值 * @en_US Max */ readonly max: _angular_core.InputSignalWithTransform; /** * @zh_CN 步数 * @en_US Step count */ readonly step: _angular_core.InputSignalWithTransform; /** * @zh_CN 精度,默认根据步数来计算 * @en_US Precision, calculated based on the number of steps by default */ readonly precision: _angular_core.InputSignalWithTransform; /** * @zh_CN 显示 tooltip 提示 * @en_US Display Tooltip prompts */ readonly showTooltip: _angular_core.InputSignalWithTransform; /** * @zh_CN 反向 * @en_US Reverse */ readonly reverse: _angular_core.InputSignalWithTransform; /** * @zh_CN 垂直 * @en_US Vertical */ readonly vertical: _angular_core.InputSignalWithTransform; /** * @zh_CN 范围 * @en_US Range */ readonly range: _angular_core.InputSignalWithTransform; /** * @zh_CN 自定义滑块 * @en_US Custom button */ readonly customButton: _angular_core.InputSignal; /** * @zh_CN 刻度标记,key 为实际数字,在 [min,max] 内,可通过 style 设置样式 * @en_US Scale marking, key is the actual number, in [min, max], you can set style through style */ readonly marks: _angular_core.InputSignal; /** * @zh_CN 自定义 tooltip * @en_US Custom tooltip */ readonly tooltipCustom: _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 Start drag event */ readonly dragStartEmit: _angular_core.OutputEmitterRef>; /** * @zh_CN 按住移动中的事件 * @en_US Hold down the moving event */ readonly dragMoveEmit: _angular_core.OutputEmitterRef>; /** * @zh_CN 移动结束的事件 * @en_US Mobile end event */ readonly dragEndEmit: _angular_core.OutputEmitterRef>; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵcmp: _angular_core.ɵɵComponentDeclaration; } /** * SliderSelect Option */ interface XSliderSelectOption extends XFormOption { /** * @zh_CN 最小值 * @en_US Minimum */ min?: number; /** * @zh_CN 最大值 * @en_US Max */ max?: number; /** * @zh_CN 步数 * @en_US Step count */ step?: number; /** * @zh_CN 精度,默认根据步数来计算 * @en_US Precision, calculated based on the number of steps by default */ precision?: number; /** * @zh_CN 显示 tooltip 提示 * @en_US Display Tooltip prompts */ showTooltip?: boolean; /** * @zh_CN 反向 * @en_US Reverse */ reverse?: boolean; /** * @zh_CN 垂直 * @en_US Vertical */ vertical?: boolean; /** * @zh_CN 范围 * @en_US Range */ range?: boolean; /** * @zh_CN 自定义滑块 * @en_US Custom button */ customButton?: XTemplate; /** * @zh_CN 刻度标记,key 为实际数字,在 [min,max] 内,可通过 style 设置样式 * @en_US Scale marking, key is the actual number, in [min, max], you can set style through style */ marks?: XSliderSelectMark[]; /** * @zh_CN 自定义 tooltip * @en_US Custom tooltip */ tooltipCustom?: XTemplate; /** * @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 Disabled */ disabled?: boolean; /** * @zh_CN 必填 * @en_US Required */ required?: boolean; /** * @zh_CN 开始拖动的事件 * @en_US Start drag event */ dragStartEmit?: (start: CdkDragStart) => void; /** * @zh_CN 按住移动中的事件 * @en_US Hold down the moving event */ dragMoveEmit?: (move: CdkDragMove) => void; /** * @zh_CN 移动结束的事件 * @en_US Mobile end event */ dragEndEmit?: (end: CdkDragEnd) => void; } /** * @zh_CN 刻度标记 * @en_US Scale marking */ interface XSliderSelectMark { /** * @zh_CN 数值 * @en_US Value */ value: number; /** * @zh_CN 显示标签 * @en_US Label */ label: string; /** * @zh_CN 标签样式 * @en_US style */ style?: { [style: string]: any; }; /** * @zh_CN 实际偏移量(自动计算) * @en_US Offset. automatic calculation */ offset?: number; } declare class XSliderSelectComponent extends XSliderSelectProperty implements OnDestroy, AfterViewInit { sliderSelect: _angular_core.Signal>; dragStartRef: _angular_core.Signal>; dragEndRef: _angular_core.Signal>; railRef: _angular_core.Signal>; processRef: _angular_core.Signal>; get getVertical(): boolean; tooltips: _angular_core.Signal; tooltipStart: _angular_core.Signal; tooltipEnd: _angular_core.Signal; value: _angular_core.WritableSignal; starting: _angular_core.WritableSignal; startOffset: _angular_core.WritableSignal; startVisible: _angular_core.WritableSignal; startManual: _angular_core.WritableSignal; start: _angular_core.WritableSignal; startDisplayValue: _angular_core.WritableSignal; showStartTooltip: _angular_core.WritableSignal; endOffset: _angular_core.WritableSignal; endVisible: _angular_core.WritableSignal; endManual: _angular_core.WritableSignal; end: _angular_core.WritableSignal; endDisplayValue: _angular_core.WritableSignal; showEndTooltip: _angular_core.WritableSignal; markList: _angular_core.Signal; private unSubject; private resizeObserver; isNumber: _angular_core.Signal; isArray: _angular_core.Signal; classMap: _angular_core.Signal<{ [x: string]: boolean; }>; labelMapSignal: _angular_core.Signal<{ [x: string]: boolean; }>; precisionSignal: _angular_core.Signal; requiredIsEmpty: _angular_core.Signal; writeValue(value: number | number[]): void; private renderer; cdr: ChangeDetectorRef; elementRef: ElementRef; ngAfterViewInit(): void; ngOnDestroy(): void; change(): void; getOffset(val: number): number; setLeft(): void; setDisplayValue(): void; started(drag: CdkDragStart, type?: 'start' | 'end' | 'both'): void; moved(drag: CdkDragMove, type?: 'start' | 'end' | 'both'): void; ended(drag: CdkDragEnd, type?: 'start' | 'end' | 'both'): void; setDrag(distance?: number, type?: 'start' | 'end' | 'both'): void; setDragStyles(): void; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵcmp: _angular_core.ɵɵComponentDeclaration; } declare class XSliderSelectModule { static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵmod: _angular_core.ɵɵNgModuleDeclaration; static ɵinj: _angular_core.ɵɵInjectorDeclaration; } export { XSliderSelectComponent, XSliderSelectModule, XSliderSelectPrefix, XSliderSelectProperty }; export type { XSliderSelectMark, XSliderSelectOption };