@exadel/esl
Version:
Exadel Smart Library (ESL) is the lightweight custom elements library that provide a set of super-flexible components
27 lines (26 loc) • 1.04 kB
TypeScript
import { BaseProvider, PlayerStates } from '../../core/esl-media-provider';
import type { MediaProviderConfig, ProviderObservedParams } from '../../core/esl-media-provider';
/**
* Simple Native Media API provider for {@link ESLMedia}
* @author Yuliya Adamskaya, Alexey Stsefanovich (ala'n)
*/
export declare abstract class HTMLMediaProvider extends BaseProvider {
static readonly urlPattern: RegExp;
static parseUrl(mediaSrc: string): Partial<MediaProviderConfig> | null;
protected _el: HTMLMediaElement;
protected abstract createElement(): HTMLMediaElement;
protected applyElementSettings(cfg: MediaProviderConfig): void;
onConfigChange(param: ProviderObservedParams, value: boolean): void;
bind(): void;
protected bindListeners(): void;
unbind(): void;
get ready(): Promise<any>;
protected get src(): string;
get state(): PlayerStates;
get duration(): number;
get currentTime(): number;
seekTo(pos: number): void;
play(): Promise<any>;
pause(): void;
stop(): void;
}