declare enum LineType { INVALID = "invalid", METADATA = "metadata", LYRIC = "lyric", ENHANCED_LYRIC = "enhanced_lyric" } interface Line { lineNumber: number; raw: string; type: LineType; } interface MetadataLine extends Line { type: LineType.METADATA; key: MetadataKey; value: string; } interface LyricLine extends Line { type: LineType.LYRIC; startMillisecond: number; content: string; } interface InvalidLine extends Line { type: LineType.INVALID; } interface EnhancedWord { index: number; raw: string; startMillisecond: number; content: string; } interface EnhancedLyricLine extends Omit { type: LineType.ENHANCED_LYRIC; words: EnhancedWord[]; } /** * parse lrc string * @author mebtte */ declare function parse(lrc: string): Array | LyricLine>; declare function parseEnhanced(lrc: string): Array | EnhancedLyricLine>; export { type EnhancedLyricLine, type EnhancedWord, type Line, LineType, type LyricLine, type MetadataLine, parse, parseEnhanced };