/** 歌词类型 */ export declare enum LyricType { /** 普通歌词 */ REG = 0, /** 卡拉OK歌词 */ KARA = 1 } /** 卡拉OK歌词行信息 */ export interface IKaraokeWord { /** 开始时间,相对于行时间 */ start: number; /** 持续时间 */ duration: number; /** 内容 */ content: string; } /** 歌词行 */ export interface ILyricLine { /** 开始时间 */ start: number; /** 持续时间,普通歌词无此字段 */ duration?: number; /** 文字内容 */ content: T; } interface ILyricCommon { /** 标题 */ ti?: string; /** 艺术家 */ ar?: string; /** 专辑 */ al?: string; /** 制作人 */ by?: string; /** 偏移 */ offset?: number; /** 其他扩展的标记 */ ext?: { [K in string]: string; }; } /** 普通歌词信息 */ export interface IRegularLyric extends ILyricCommon { /** 歌词类型 */ type: LyricType.REG; /** 歌词内容 */ content: ILyricLine[]; } /** 卡拉歌词信息 */ export interface IKaraOKLyric extends ILyricCommon { /** 歌词类型 */ type: LyricType.KARA; /** 歌词内容 */ content: ILyricLine[]; } /** 歌词信息 */ export type ILyric = (IRegularLyric | IKaraOKLyric); export {};