feat(merge-split): add MergeGroup type definitions to all interface locations

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
xRangerDE 2026-03-19 17:46:20 +01:00
parent 03c6e68da0
commit 4750af2f97
3 changed files with 58 additions and 0 deletions

View File

@ -153,6 +153,24 @@ interface CustomClip {
filenameTemplate?: string; filenameTemplate?: string;
} }
interface MergeGroupItem {
url: string;
title: string;
date: string;
streamer: string;
duration_str: string;
}
interface MergeGroup {
items: MergeGroupItem[];
mergePhase: 'downloading' | 'merging' | 'splitting' | 'cleanup' | 'done';
currentItemIndex: number;
downloadedFiles: Record<number, string>;
mergedFile?: string;
splitFiles?: string[];
totalDurationSec?: number;
}
interface QueueItem { interface QueueItem {
id: string; id: string;
title: string; title: string;
@ -170,6 +188,7 @@ interface QueueItem {
totalBytes?: number; totalBytes?: number;
last_error?: string; last_error?: string;
customClip?: CustomClip; customClip?: CustomClip;
mergeGroup?: MergeGroup;
} }
interface DownloadResult { interface DownloadResult {

View File

@ -9,6 +9,24 @@ interface CustomClip {
filenameTemplate?: string; filenameTemplate?: string;
} }
interface MergeGroupItem {
url: string;
title: string;
date: string;
streamer: string;
duration_str: string;
}
interface MergeGroup {
items: MergeGroupItem[];
mergePhase: 'downloading' | 'merging' | 'splitting' | 'cleanup' | 'done';
currentItemIndex: number;
downloadedFiles: Record<number, string>;
mergedFile?: string;
splitFiles?: string[];
totalDurationSec?: number;
}
interface QueueItem { interface QueueItem {
id: string; id: string;
title: string; title: string;
@ -23,6 +41,7 @@ interface QueueItem {
speed?: string; speed?: string;
eta?: string; eta?: string;
customClip?: CustomClip; customClip?: CustomClip;
mergeGroup?: MergeGroup;
} }
interface DownloadProgress { interface DownloadProgress {

View File

@ -37,6 +37,24 @@ interface CustomClip {
filenameTemplate?: string; filenameTemplate?: string;
} }
interface MergeGroupItem {
url: string;
title: string;
date: string;
streamer: string;
duration_str: string;
}
interface MergeGroup {
items: MergeGroupItem[];
mergePhase: 'downloading' | 'merging' | 'splitting' | 'cleanup' | 'done';
currentItemIndex: number;
downloadedFiles: Record<number, string>;
mergedFile?: string;
splitFiles?: string[];
totalDurationSec?: number;
}
interface QueueItem { interface QueueItem {
id: string; id: string;
title: string; title: string;
@ -55,6 +73,7 @@ interface QueueItem {
progressStatus?: string; progressStatus?: string;
last_error?: string; last_error?: string;
customClip?: CustomClip; customClip?: CustomClip;
mergeGroup?: MergeGroup;
} }
interface DownloadProgress { interface DownloadProgress {
@ -166,6 +185,7 @@ interface ApiBridge {
reorderQueue(orderIds: string[]): Promise<QueueItem[]>; reorderQueue(orderIds: string[]): Promise<QueueItem[]>;
clearCompleted(): Promise<QueueItem[]>; clearCompleted(): Promise<QueueItem[]>;
retryFailedDownloads(): Promise<QueueItem[]>; retryFailedDownloads(): Promise<QueueItem[]>;
createMergeGroup(itemIds: string[]): Promise<QueueItem[]>;
startDownload(): Promise<boolean>; startDownload(): Promise<boolean>;
pauseDownload(): Promise<boolean>; pauseDownload(): Promise<boolean>;
cancelDownload(): Promise<boolean>; cancelDownload(): Promise<boolean>;