UNPKG

@nuralyui/timepicker

Version:

NuralyUI TimePicker - A comprehensive time selection component with clock interface, multiple formats, and validation

95 lines 3.15 kB
import { LitElement, TemplateResult } from 'lit'; import { TimeValue, TimeFormat, TimePickerConfig, TimePickerPlacement } from './timepicker.types.js'; export interface TimePickerHost extends LitElement { getCurrentTime(): TimeValue; setTime(time: TimeValue): void; formatTime(time: TimeValue): string; parseTime(timeString: string): TimeValue | null; getConfig(): TimePickerConfig; requestUpdate(): void; } declare const NrTimePickerElement_base: (new (...args: any[]) => import("../../shared/dependency-mixin.js").DependencyAware) & (new (...args: any[]) => import("../../shared/theme-mixin.js").ThemeAware) & (new (...args: any[]) => import("../../shared/event-handler-mixin.js").EventHandlerCapable) & typeof LitElement; /** * A comprehensive time picker component that supports both 12-hour and 24-hour formats, * with optional seconds display and extensive customization options. * * @example * ```html * <nr-timepicker * value="14:30:00" * format="24h" * show-seconds * placeholder="Select time"> * </nr-timepicker> * ``` */ export declare class NrTimePickerElement extends NrTimePickerElement_base implements TimePickerHost { static styles: import("lit").CSSResult[]; value: string; name: string; placeholder: string; format: TimeFormat; showSeconds: boolean; disabled: boolean; readonly: boolean; required: boolean; minTime?: string; maxTime?: string; disabledTimes?: string[]; enabledTimes?: string[]; helperText: string; label: string; size: 'small' | 'medium' | 'large'; variant: 'outlined' | 'filled' | 'standard'; placement: TimePickerPlacement; private clockOpen; private inputValue; private state; private validationMessage; private selectionController; private validationController; private formattingController; constructor(); connectedCallback(): void; updated(changedProperties: Map<string, any>): void; render(): TemplateResult; open(): void; close(): void; clear(): void; setToNow(): void; validate(): boolean; private renderLabel; private renderInput; private renderDropdown; private renderColumnPicker; private renderHourColumn; private renderMinuteColumn; private renderSecondColumn; private renderActions; private renderHelperText; private handleInputChange; private handleInputFocus; private handleInputBlur; private handleTriggerClick; private handleHourSelect; private handleMinuteSelect; private handleSecondSelect; private handleOutsideClick; private shouldUpdateConstraints; private updateConstraints; private setTimeFromValue; private updateInputValue; private validateTime; getCurrentTime(): TimeValue; setTime(time: TimeValue): void; formatTime(time: TimeValue): string; parseTime(timeString: string): TimeValue | null; getConfig(): TimePickerConfig; } declare global { interface HTMLElementTagNameMap { 'nr-timepicker': NrTimePickerElement; } } export {}; //# sourceMappingURL=timepicker.component.clean.d.ts.map