/** * Copyright (c) Cisco Systems, Inc. and its affiliates. * * This source code is licensed under the MIT license found in the * LICENSE src in the root directory of this source tree. * */ import "../button/Button"; import "../icon/Icon"; import "../tooltip/Tooltip"; import { LitElement, PropertyValues } from "lit"; export type AudioEvent = { name: string; onEvent: EventListener; }; export declare const playbackSpeeds: { value: number; label: string; }[]; export type Label = { ariaLabel: string; tooltipText: string; }; export type LabelMap = { playBtn: Label; pauseBtn: Label; duration: Label; timeline: Label; volumeBtn: Label; volumeSlider: Label; playbackSpeedBtn: Label; }; export declare const defaultLabelMap: { playBtn: { ariaLabel: string; tooltipText: string; }; pauseBtn: { ariaLabel: string; tooltipText: string; }; duration: { ariaLabel: string; tooltipText: string; }; timeline: { ariaLabel: string; tooltipText: string; }; volumeBtn: { ariaLabel: string; tooltipText: string; }; volumeSlider: { ariaLabel: string; tooltipText: string; }; playbackSpeedBtn: { ariaLabel: string; tooltipText: string; }; }; export declare namespace AudioPlayer { class ELEMENT extends LitElement { src: string; labelMap: LabelMap; events: AudioEvent[]; audio: HTMLAudioElement; volumeElement: HTMLElement; isPlaying: boolean; isMuted: boolean; duration: number; volume: number; currentTime: number; showSpeedPopup: boolean; playbackSpeed: number; volumeExpanded: boolean; bufferedRange: number; selectedPlaybackSpeed: number; currentlySelectingPlaybackSpeed: boolean; constructor(); firstUpdated(changedProperties: PropertyValues): void; updated(changedProperties: PropertyValues): void; connectedCallback(): void; disconnectedCallback(): void; setAudioEventListeners(): void; togglePlay(): void; toTimecode(time: number): string; setTime(e: MouseEvent): void; setVolumeElement(e: MouseEvent): void; handleVolumeChange(e: MouseEvent): void; getVolumeFromSlider(e: MouseEvent): number; setVolume(e: MouseEvent): void; getBarPercentage(e: MouseEvent, className: string): number; toggleSoundMute(): void; toggleSpeedPopup(): void; onOutsideClick: (e: MouseEvent) => void; setTimeKeydown(value: number): void; setVolumeKeydown(value: number): void; handleKeyDown: (event: KeyboardEvent) => void; private get popupClassMap(); setPlaybackSpeed(speed: number): void; toggleVolumeExpand(show: boolean): void; static get styles(): import("lit").CSSResult[]; render(): import("lit-html").TemplateResult<1>; } } declare global { interface HTMLElementTagNameMap { "md-audio-player": AudioPlayer.ELEMENT; } }