mirror of
https://github.com/lifegpc/eh-downloader.git
synced 2026-06-08 14:48:45 +08:00
31 lines
844 B
TypeScript
31 lines
844 B
TypeScript
import type { Task } from "../task.ts";
|
|
import type { TaskEventData } from "../task_manager.ts";
|
|
import type { DownloadConfig } from "../tasks/download.ts";
|
|
import type { ExportZipConfig } from "../tasks/export_zip.ts";
|
|
import type { DiscriminatedUnion } from "../utils.ts";
|
|
|
|
export type TaskServerSocketData =
|
|
| TaskEventData
|
|
| { type: "close" }
|
|
| {
|
|
type: "tasks";
|
|
tasks: Task[];
|
|
running: number[];
|
|
}
|
|
| { type: "ping" }
|
|
| { type: "pong" };
|
|
|
|
type EventMap = {
|
|
new_download_task: { gid: number; token: string; cfg?: DownloadConfig };
|
|
new_export_zip_task: { gid: number; cfg?: ExportZipConfig };
|
|
};
|
|
|
|
export type TaskClientSocketData =
|
|
| DiscriminatedUnion<"type", EventMap>
|
|
| {
|
|
type: "close";
|
|
}
|
|
| { type: "task_list" }
|
|
| { type: "ping" }
|
|
| { type: "pong" };
|