UNPKG

subtitle

Version:

Stream-based library for parsing and manipulating subtitles

30 lines (29 loc) 748 B
import { Node } from '.'; export declare type Pusher = (node: Node) => void; export interface ParseState { expect: 'header' | 'id' | 'timestamp' | 'text' | 'vtt_comment'; row: number; hasContentStarted: boolean; isWebVTT: boolean; node: Partial<Node>; buffer: string[]; } export declare class Parser { private push; private state; constructor({ push }: { push: Pusher; }); private isIndex; private isTimestamp; private isVttComment; private getError; parseLine(line: string): void; flush(): void; private parseHeader; private parseId; private parseVttComment; private parseTimestamp; private parseText; private pushNode; }