ranui
Version:
A framework-agnostic Web Components UI library built on native custom elements, with TypeScript types, light/dark theming, SSR and PWA support.
39 lines (38 loc) • 1.44 kB
TypeScript
import type { Progress } from '@/components/progress';
export interface SpeedOption {
label: string;
value: number;
}
export interface PlayerViewRefs {
player: HTMLDivElement;
container: HTMLDivElement;
playerBtn: HTMLDivElement;
playerController: HTMLDivElement;
progress: HTMLDivElement;
progressWrap: HTMLDivElement;
progressWrapBuffer: HTMLDivElement;
progressWrapValue: HTMLDivElement;
progressDot: HTMLDivElement;
playerControllerBottom: HTMLDivElement;
playerControllerBottomRight: HTMLDivElement;
playerControllerBottomLeft: HTMLDivElement;
playerControllerBottomPlayBtn: HTMLDivElement;
playerControllerBottomTimeCurrent: HTMLDivElement;
playerControllerBottomTimeDuration: HTMLDivElement;
playerControllerBottomTimeDivide: HTMLDivElement;
playControllerBottomClarity: HTMLElement;
playControllerBottomSpeed: HTMLDivElement;
playControllerBottomSpeedIcon: HTMLDivElement;
playControllerBottomVolumeProgress: Progress;
playControllerBottomRightFullScreen: HTMLDivElement;
playControllerBottomVolume: HTMLDivElement;
playControllerBottomSpeedPopover: HTMLElement;
playerTip: HTMLDivElement;
playerTipTime: HTMLDivElement;
playerTipText: HTMLDivElement;
}
export declare function ensurePlayerView(input: {
shadowDom: ShadowRoot;
speedOptions: SpeedOption[];
onSpeedChange: (e: Event) => void;
}): PlayerViewRefs;