UNPKG

unified-video-framework

Version:

Cross-platform video player framework supporting iOS, Android, Web, Smart TVs (Samsung/LG), Roku, and more

46 lines 1.82 kB
import { VideoSegment, ChapterConfig } from './types/ChapterTypes'; interface CreditsButtonCallbacks { onWatchCredits: (segment: VideoSegment) => void; onNextEpisode: (segment: VideoSegment, url: string) => void; onAutoRedirect: (segment: VideoSegment, url: string) => void; onButtonsShown: (segment: VideoSegment) => void; onButtonsHidden: (segment: VideoSegment, reason: string) => void; } export declare class CreditsButtonController { private playerContainer; private config; private callbacks; private buttonsContainer; private watchCreditsButton; private nextEpisodeButton; private currentSegment; private autoRedirectTimeout; private countdownInterval; private isVisible; private userWatchingCredits; private readonly DEFAULT_WATCH_CREDITS_LABEL; private readonly DEFAULT_NEXT_EPISODE_LABEL; private readonly DEFAULT_AUTO_REDIRECT_DELAY; constructor(playerContainer: HTMLElement, config: ChapterConfig, callbacks: CreditsButtonCallbacks); showCreditsButtons(segment: VideoSegment, currentTime: number): void; hideCreditsButtons(reason?: 'timeout' | 'segment-end' | 'user-action' | 'manual'): void; isUserWatchingCredits(): boolean; getCurrentSegment(): VideoSegment | null; isButtonsVisible(): boolean; destroy(): void; private createCreditsButtons; private applyContainerPosition; private applyButtonStyles; private adjustBrightness; private updateButtonLabels; private showButtons; private hideButtons; private handleWatchCreditsClick; private handleNextEpisodeClick; private startAutoRedirectCountdown; private createProgressBar; private redirectToNextEpisode; private clearTimeouts; } export {}; //# sourceMappingURL=CreditsButtonController.d.ts.map