import { EventEmitter, ComponentDidLoad } from '../../stencil-public-runtime'; import { HTMLStencilElement } from '../../stencil-public-runtime'; import { TimerChangeEventDetail } from './interface'; /** * @since 1.0 * @status stable * @reactive * * @part date-button: The date select button. * @part time-button: The time select button. * @part control-button: Applied to each of the time control buttons (back, play, forward etc.). */ export declare class FlowTimer implements ComponentDidLoad { private context; private timer; private parsedUpdateDelay; private parsedUpdateInterval; private parsedMinorStep; private parsedMajorStep; private dayPicker; private datePicker; private timePicker; private debouncedEmitChange; private nextUpdate; private subscription; private internalFlooredMoment; el: HTMLStencilElement; private currentMoment; /** * Set to enable/disable the play button. */ enablePlay: boolean; /** * The Flo.w context ID to use for application state. */ flowContext: string; /** * The time interval for the major step buttons. */ majorStep: string; /** * The time interval for the minor step buttons. */ minorStep: string; /** * Set to start/stop the timer. Read to retrieve the current running state. */ running: boolean; /** * The Flo.w state property to bind to the timer. The state property will * be synchronized with the value of the timer. * * @reactive */ timerState?: string; /** * Specifies the format of the Flo.w state property bound to the timer. */ timerStateFormat: 'iso' | 'millis'; /** * Set to delay scheduled updates when the timer is running. This can be used to allow time * for data to arrive in real-time use cases. */ updateDelay: string; /** * Specifies the frequency at which the timer emits updates when running. * All emitted values are also rounded down using this interval. This guarantees * that emitted values are always aligned to the interval specified. */ updateInterval: string; /** * Set to update the current date/time. Read to retrieve the current date/time. */ value?: string; /** * Set to `true` to disable interaction with the timer. */ disabled: boolean; /** * Set display mode to UTC (default is local time) */ utc: boolean; /** * Emitted when the timer value has changed. */ flowChange: EventEmitter; /** * Set to `true` to enable static positioning of popup calendars. By default * calendars are positioned absolutely using body coordinates. */ static: boolean; /** * Set to `true` to enable fixed positioning of popup calendars. By default * calendars are positioned absolutely using body coordinates. */ fixed: boolean; /** * The position of the popup date/time selectors relative to the timer control. */ position: 'above' | 'below' | 'auto'; componentDidLoad(): Promise; disconnectedCallback(): Promise; private subscribe; private updateUpdateDelay; private updateUpdateInterval; private updateMinorStep; private updateMajorStep; private valueUpdated; private updateRunning; protected updateDisabled(disabled: boolean): Promise; private start; private stop; private update; private onFastRewind; private onRewind; private onPlayPause; private onForward; private onFastForward; private datePickerChanged; unsubscribe(): void; private updateValue; private emitChange; render(): any; }