import * as _angular_cdk_overlay from '@angular/cdk/overlay'; import { OverlayRef, OverlayConfig } from '@angular/cdk/overlay'; import * as _angular_core from '@angular/core'; import { TemplateRef, OnInit, AfterViewInit, OnDestroy, ElementRef, ComponentRef, SimpleChanges } 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, XCorner, XData, XIdentityProperty, XFloatLabel, XPositionTopBottom, XIdentity } from '@ng-nest/ui/core'; import { XFormOption } from '@ng-nest/ui/base-form'; import { XInputComponent } from '@ng-nest/ui/input'; import { XI18nTimePicker } from '@ng-nest/ui/i18n'; import { XPortalOverlayRef } from '@ng-nest/ui/portal'; /** * TimePicker * @selector x-time-picker * @decorator component */ declare const XTimePickerPrefix = "x-time-picker"; declare const XTimePickerProperty_base: new () => { config: _ng_nest_ui_core.XTimePickerConfig | 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>; }; /** * TimePicker Property */ declare class XTimePickerProperty extends XTimePickerProperty_base { /** * @zh_CN 时间类型 * @en_US Time type */ readonly type: _angular_core.InputSignal; /** * @zh_CN 形态变体 * @en_US Input variant */ readonly variant: _angular_core.InputSignal; /** * @zh_CN 格式化 * @en_US Format */ readonly format: _angular_core.InputSignal; /** * @zh_CN 展示方位 * @en_US Display position */ readonly placement: _angular_core.InputSignal; /** * @zh_CN 使用12小时制 * @en_US Use 12 hour clock */ readonly use12Hours: _angular_core.InputSignalWithTransform; /** * @zh_CN 显示边框 * @en_US Display Border */ readonly bordered: _angular_core.InputSignalWithTransform; /** * @zh_CN 小时选项间隔 * @en_US Hour option interval */ readonly hourStep: _angular_core.InputSignalWithTransform; /** * @zh_CN 分钟选项间隔 * @en_US Minute option interval */ readonly minuteStep: _angular_core.InputSignalWithTransform; /** * @zh_CN 秒选项间隔 * @en_US Second option interval */ readonly secondStep: _angular_core.InputSignalWithTransform; /** * @zh_CN 快捷选择按钮,支持此刻以及自定义 * @en_US Quick selection button, support now and custom */ readonly preset: _angular_core.InputSignal>; /** * @zh_CN 禁用的时间 * @en_US Disabled time */ readonly disabledTime: _angular_core.InputSignal; /** * @zh_CN 下拉框设置样式名 * @en_US The style class name of the drop-down box */ readonly portalClass: _angular_core.InputSignal; /** * @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 Size */ readonly size: _angular_core.InputSignal; /** * @zh_CN 输入框点击样式 * @en_US Input pointer */ readonly pointer: _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 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 Node click event */ readonly nodeEmit: _angular_core.OutputEmitterRef; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵcmp: _angular_core.ɵɵComponentDeclaration; } /** * TimePicker Option */ interface XTimePickerOption extends XFormOption { /** * @zh_CN 时间类型 * @en_US Time type */ type?: XTimePickerType; /** * @zh_CN 形态变体 * @en_US Input variant */ variant?: XTimePickerVariant; /** * @zh_CN 浮动标签 * @en_US Float label */ floatLabel?: XTimePickerFloatLabel; /** * @zh_CN 固定浮动标签 * @en_US Fixed float label */ floatFixed?: boolean; /** * @zh_CN 格式化 * @en_US Format */ format?: string; /** * @zh_CN 展示方位 * @en_US Display position */ placement?: XCorner; /** * @zh_CN 使用12小时制 * @en_US Use 12 hour clock */ use12Hours?: boolean; /** * @zh_CN 显示边框 * @en_US Display Border */ bordered?: boolean; /** * @zh_CN 小时选项间隔 * @en_US Hour option interval */ hourStep?: number; /** * @zh_CN 分钟选项间隔 * @en_US Minute option interval */ minuteStep?: number; /** * @zh_CN 秒选项间隔 * @en_US Second option interval */ secondStep?: number; /** * @zh_CN 快捷选择按钮,支持此刻以及自定义 * @en_US Quick selection button, support now and custom */ preset?: XData; /** * @zh_CN 禁用的时间 * @en_US Disabled time */ disabledTime?: XTimePickerDisabledTime; /** * @zh_CN 节点点击的事件 * @en_US Node click event */ nodeEmit?: (node: number) => void; /** * @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 Time selection */ type XTimePickerType = 'time' | 'hour' | 'minute'; /** * @zh_CN 浮动标签类型 * @en_US Float label type */ type XTimePickerFloatLabel = XFloatLabel; /** * @zh_CN 输入框形态变体 * @en_US Input box variant */ type XTimePickerVariant = XVariant; /** * @zh_CN 快捷选择按钮 * @en_US Quick selection button */ interface XTimePickerPreset extends XIdentityProperty { /** * @zh_CN 自定义函数 * @en_US Custom function */ func: () => Date; } /** * TimePickerPortal * @selector x-time-picker-portal * @decorator component */ declare const XTimePickerPortalPrefix = "x-time-picker-portal"; /** * TimePickerFrame * @selector x-time-picker-frame * @decorator component */ declare const XTimePickerFramePrefix = "x-time-picker-frame"; /** * @zh_CN 禁用时间的自定义类型 * @en_US Disable custom type of time */ type XTimePickerDisabledTime = (param?: any) => XTimePickerDisabledTimeFn; /** * @zh_CN 禁用时间的自定义函数 * @en_US Disable custom type of time */ type XTimePickerDisabledTimeFn = { /** * @zh_CN 禁用小时的自定义函数 * @en_US Disable custom type of hours */ disabledHours?: () => number[]; /** * @zh_CN 禁用分钟的自定义函数 * @en_US Disable custom type of minutes */ disabledMinutes?: () => number[]; /** * @zh_CN 禁用秒的自定义函数 * @en_US Disable custom type of seconds */ disabledSeconds?: () => number[]; }; declare class XTimePickerPortalComponent { private i18n; animateEnter: string; animateLeave: string; done(): void; start(): void; value: _angular_core.ModelSignal; type: _angular_core.InputSignal; placement: _angular_core.InputSignal; inputCom: _angular_core.InputSignal; use12Hours: _angular_core.InputSignal; hourStep: _angular_core.InputSignal; minuteStep: _angular_core.InputSignal; secondStep: _angular_core.InputSignal; preset: _angular_core.InputSignal; disabledTime: _angular_core.InputSignal; animating: _angular_core.OutputEmitterRef; nodeClick: _angular_core.OutputEmitterRef; locale: _angular_core.Signal; destroy: _angular_core.WritableSignal; private destroyRef; ngOnInit(): void; stopPropagation(event: Event): void; onPresetFunc(item: XTimePickerPreset): void; onNow(): void; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵcmp: _angular_core.ɵɵComponentDeclaration; } declare class XTimePickerComponent extends XTimePickerProperty implements OnInit, AfterViewInit, OnDestroy { private elementRef; private portalService; private viewContainerRef; private datePipe; private overlay; private i18n; datePicker: _angular_core.Signal>; inputCom: _angular_core.Signal; numberValue: _angular_core.WritableSignal; locale: _angular_core.Signal; writeValue(value: any): void; displayValue: _angular_core.Signal; formatSignal: _angular_core.Signal; clearable: _angular_core.WritableSignal; enter: _angular_core.WritableSignal; animating: _angular_core.WritableSignal; portal: XPortalOverlayRef; icon: _angular_core.WritableSignal; closeSubject: Subject; valueType: _angular_core.WritableSignal<"string" | "number" | "date">; private unSubject; document: Document; getPlaceholder: _angular_core.Signal; private realPlacement; portalComponent: _angular_core.WritableSignal | null>; portalOverlayRef: _angular_core.WritableSignal; constructor(); ngOnInit(): void; ngAfterViewInit(): void; ngOnDestroy(): void; setParantScroll(): void; setSubject(): void; menter(): void; mleave(): void; clearEmit(): void; portalAttached(): boolean | undefined; closePortal(): boolean; showPortal(): void; setPosition(config: OverlayConfig): void; setInstance(): void; onNodeClick(date: Date): void; modelChange(): void; getValue(): string | number | Date | null; setPlacement(): _angular_cdk_overlay.PositionStrategy; setPortal(): void; formControlChanges(): void; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵcmp: _angular_core.ɵɵComponentDeclaration; } declare class XTimePickerFrameComponent { private i18n; type: _angular_core.InputSignal; value: _angular_core.InputSignal; use12Hours: _angular_core.InputSignal; hourStep: _angular_core.InputSignal; minuteStep: _angular_core.InputSignal; secondStep: _angular_core.InputSignal; defaultNow: _angular_core.InputSignal; disabledTime: _angular_core.InputSignal; disabledTimeParam: _angular_core.InputSignal; nodeEmit: _angular_core.OutputEmitterRef; hourRef: _angular_core.Signal>; minuteRef: _angular_core.Signal | undefined>; secondRef: _angular_core.Signal | undefined>; use12HoursRef: _angular_core.Signal | undefined>; model: _angular_core.WritableSignal; hour: _angular_core.WritableSignal; minute: _angular_core.WritableSignal; second: _angular_core.WritableSignal; use12Hour: _angular_core.WritableSignal; scrollAnimating: _angular_core.WritableSignal<{ [key: string]: boolean; }>; hourData: _angular_core.Signal<{ disabled: boolean; label: string; id: number; }[]>; minuteData: _angular_core.Signal<{ disabled: boolean; label: string; id: number; }[]>; secondData: _angular_core.Signal<{ disabled: boolean; label: string; id: number; }[]>; use12HoursData: _angular_core.Signal<{ id: string; label: string | undefined; }[]>; locale: _angular_core.Signal; ngOnChanges(changes: SimpleChanges): void; ngOnInit(): void; ngAfterViewInit(): void; setDisabled(type: 'hours' | 'minutes' | 'seconds', num: number): boolean; init(): void; setNow(): Date; setZero(): Date; setTime(date: Date): void; prefixZero(num: number, n: number): string; setScrollTop(animating?: boolean): void; selected(type: 'hour' | 'minute' | 'second' | 'use12Hour', ele?: HTMLElement, num?: number | string, animating?: boolean): void; isLastItem(data: XIdentity[], item: XIdentity): boolean; itemClick(type: 'hour' | 'minute' | 'second' | 'use12Hours'): void; private scrollTo; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵcmp: _angular_core.ɵɵComponentDeclaration; } declare class XTimePickerModule { static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵmod: _angular_core.ɵɵNgModuleDeclaration; static ɵinj: _angular_core.ɵɵInjectorDeclaration; } export { XTimePickerComponent, XTimePickerFrameComponent, XTimePickerFramePrefix, XTimePickerModule, XTimePickerPortalComponent, XTimePickerPortalPrefix, XTimePickerPrefix, XTimePickerProperty }; export type { XTimePickerDisabledTime, XTimePickerDisabledTimeFn, XTimePickerFloatLabel, XTimePickerOption, XTimePickerPreset, XTimePickerType, XTimePickerVariant };