unified-video-framework
Version:
Cross-platform video player framework supporting iOS, Android, Web, Smart TVs (Samsung/LG), Roku, and more
29 lines • 1.26 kB
TypeScript
import { VideoSegment, VideoChapters, ChapterConfig, SegmentType } from '../../chapters/types/ChapterTypes';
export interface UseChaptersOptions {
videoElement?: HTMLVideoElement | null;
chapters?: VideoChapters;
config?: ChapterConfig;
onSegmentEntered?: (segment: VideoSegment) => void;
onSegmentSkipped?: (fromSegment: VideoSegment, toSegment?: VideoSegment) => void;
onSkipButtonShown?: (segment: VideoSegment) => void;
onSkipButtonHidden?: (segment: VideoSegment) => void;
}
export interface UseChaptersResult {
currentSegment: VideoSegment | null;
chapters: VideoChapters | null;
isSkipButtonVisible: boolean;
loadChapters: (chapters: VideoChapters) => Promise<void>;
skipToSegment: (segmentId: string) => void;
skipCurrentSegment: () => void;
getSegmentsByType: (type: SegmentType) => VideoSegment[];
hasSegmentType: (type: SegmentType) => boolean;
getChapterMarkers: () => Array<{
position: number;
segment: VideoSegment;
color: string;
}>;
formatTime: (seconds: number) => string;
isInSegment: (segmentId: string) => boolean;
}
export declare function useChapters(options?: UseChaptersOptions): UseChaptersResult;
//# sourceMappingURL=useChapters.d.ts.map