import '../time-slider/define'; import '../seekable-progress-bar/define'; import { CSSResultGroup, LitElement, PropertyValues, TemplateResult } from 'lit'; import { DisposalBin } from '../../base/events'; import { ElementLogger } from '../../base/logger'; import { ScrubberPreviewConnectEvent, ScrubberPreviewElement, ScrubberPreviewHideEvent, ScrubberPreviewShowEvent, ScrubberPreviewTimeUpdateEvent } from '../scrubber-preview'; import { SeekableProgressBarElement } from '../seekable-progress-bar'; import { SliderDragEndEvent, SliderDragStartEvent, SliderValueChangeEvent } from '../slider/events'; import { TimeSliderElement } from '../time-slider'; export declare const SCRUBBER_ELEMENT_TAG_NAME = "vds-scrubber"; declare const ScrubberElement_base: typeof LitElement; /** * A control that displays the progression of playback and the amount seekable on a slider. This * control can be used to update the current playback time by interacting with the slider. * * 💡 The following attributes are updated for your styling needs: * * - `media-can-play`: Applied when media can begin playback. * - `media-waiting`: Applied when playback has stopped because of a lack of temporary data. * * 💡 See the `` element if you'd like to include previews. * * @tagname vds-scrubber * @csspart time-slider - The time slider (``). * @csspart time-slider-* - All `vds-time-slider` parts re-exported with the `time-slider` prefix. * @csspart progress-bar - The progress bar (``). * @csspart progress-bar-* - All `vds-seekable-progress-bar` parts re-exported with the `progress-bar` prefix. * @slot Used to pass content into the slider. * @slot progress-bar - Used to pass content into the progress bar. */ export declare class ScrubberElement extends ScrubberElement_base { static get styles(): CSSResultGroup; static get parts(): string[]; protected readonly _logger: ElementLogger; protected readonly ctx: import("../../base/context").ContextProviderRecord<{ dragging: import("../../base/context").Context; pointing: import("../../base/context").Context; interacting: import("../../base/context").DerivedContext; }>; /** * Whether the scrubber should be disabled (not-interactable). */ disabled: boolean; /** * Whether the scrubber should be hidden. */ hidden: boolean; /** * ♿ **ARIA:** The `aria-label` for the time slider. */ label: string; /** * The time slider orientation. */ orientation: string; /** * ♿ **ARIA:** The `aria-label` for the progress bar. */ progressLabel: string; /** * ♿ **ARIA:** Human-readable text alternative for the progress bar value. If you pass * in a string containing `{seekableAmount}` or `{duration}` templates they'll be replaced with * the spoken form such as `1 hour 30 minutes`. */ progressValueText: string; /** * Whether the scrubber should request playback to pause while the user is dragging the * thumb. If the media was playing before the dragging starts, the state will be restored by * dispatching a user play request once the dragging ends. */ pauseWhileDragging: boolean; /** * A number that specifies the granularity that the time slider value must adhere to in seconds. * For example, a step with the value `1` indicates a granularity of 1 second increments. */ step: number; /** * ♿ **ARIA:** A number that specifies the number of steps taken when interacting with * the time slider via keyboard. Think of it as `step * keyboardStep`. */ keyboardStep: number; /** * ♿ **ARIA:** A number that will be used to multiply the `keyboardStep` when the `Shift` key * is held down and the slider value is changed by pressing `LeftArrow` or `RightArrow`. Think * of it as `keyboardStep * shiftKeyMultiplier`. */ shiftKeyMultiplier: number; /** * The amount of milliseconds to throttle media seeking request events being dispatched. */ seekingRequestThrottle: number; /** * ♿ **ARIA:** Human-readable text alternative for the time slider value. If you pass * in a string containing `{currentTime}` or `{duration}` templates they'll be replaced with * the spoken form such as `1 hour 30 minutes`. */ valueText: string; protected _handleCanPlayContextUpdate(canPlay: boolean): void; protected _handleWaitingContextUpdate(waiting: boolean): void; protected update(changedProperties: PropertyValues): void; protected render(): TemplateResult; protected _handlePointerEnter(event: PointerEvent): void; protected _handlePointerMove(event: PointerEvent): void; protected _handlePointerLeave(event: PointerEvent): void; protected readonly _timeSliderRef: import("lit-html/directives/ref").Ref; /** * Returns the underlying `vds-time-slider` component. */ get timeSliderElement(): TimeSliderElement | undefined; protected _renderTimeSlider(): TemplateResult; protected _renderTimeSliderChildren(): TemplateResult; protected _renderDefaultSlot(): TemplateResult; protected _handleSliderDragStart(event: SliderDragStartEvent): void; protected _handleSliderValueChange(event: SliderValueChangeEvent): void; protected _handleSliderDragEnd(event: SliderDragEndEvent): void; protected readonly _progressBarRef: import("lit-html/directives/ref").Ref; /** * Returns the underlying `` component. */ get progressBarElement(): SeekableProgressBarElement | undefined; protected _renderProgressBar(): TemplateResult; protected _renderProgressBarChildren(): TemplateResult; protected _renderProgressBarSlot(): TemplateResult; protected _scrubberPreviewElement: ScrubberPreviewElement | undefined; /** * The scrubber preview element `` (if given). */ get scrubberPreviewElement(): ScrubberPreviewElement | undefined; protected readonly _scrubberPreviewDisconnectDisposal: DisposalBin; protected _handlePreviewConnect(event: ScrubberPreviewConnectEvent): void; protected _handlePreviewShow(event: ScrubberPreviewShowEvent): void; protected _handlePreviewTimeUpdate(event: ScrubberPreviewTimeUpdateEvent): void; protected _handlePreviewHide(event: ScrubberPreviewHideEvent): void; } export {};