57 lines
1014 B
TypeScript
57 lines
1014 B
TypeScript
export type TaskStatus =
|
|
| 'queued'
|
|
| 'extracting'
|
|
| 'vad_processing'
|
|
| 'transcribing'
|
|
| 'translating'
|
|
| 'completed'
|
|
| 'failed'
|
|
|
|
export type TargetLanguage = 'zh' | 'en'
|
|
|
|
export interface SubtitleSegment {
|
|
id: string
|
|
taskId: string
|
|
start: number
|
|
end: number
|
|
sourceText: string
|
|
translatedText?: string | null
|
|
}
|
|
|
|
export interface SubtitleTask {
|
|
id: string
|
|
filePath: string
|
|
fileName: string
|
|
sourceLang?: string | null
|
|
targetLang: TargetLanguage
|
|
status: TaskStatus
|
|
progress: number
|
|
segments: SubtitleSegment[]
|
|
error?: string | null
|
|
}
|
|
|
|
export interface StartTaskPayload {
|
|
filePath: string
|
|
sourceLang?: string | null
|
|
targetLang: TargetLanguage
|
|
whisperModelPath?: string | null
|
|
vadModelPath?: string | null
|
|
}
|
|
|
|
export interface ProgressEvent {
|
|
taskId: string
|
|
status: TaskStatus
|
|
progress: number
|
|
message: string
|
|
}
|
|
|
|
export interface SegmentEvent {
|
|
taskId: string
|
|
segment: SubtitleSegment
|
|
}
|
|
|
|
export interface ErrorEvent {
|
|
taskId: string
|
|
message: string
|
|
}
|