@bililive-tools/manager
Version:
Batch scheduling recorders
56 lines (55 loc) • 1.87 kB
TypeScript
import EventEmitter from "node:events";
import { IDownloader, BililiveRecorderOptions, Segment } from "./IDownloader.js";
declare class BililiveRecorderCommand extends EventEmitter {
private _input;
private _output;
private _inputOptions;
private process;
constructor();
input(source: string): BililiveRecorderCommand;
output(target: string): BililiveRecorderCommand;
inputOptions(options: string[]): BililiveRecorderCommand;
inputOptions(...options: string[]): BililiveRecorderCommand;
_getArguments(): string[];
run(): void;
stop(): void;
kill(): void;
cut(): void;
}
export declare const createBililiveBuilder: () => BililiveRecorderCommand;
export declare class BililiveDownloader extends EventEmitter implements IDownloader {
private onEnd;
private onUpdateLiveInfo;
type: "bililive";
private command;
private streamManager;
private timeoutChecker;
readonly hasSegment: boolean;
readonly getSavePath: (data: {
startTime: number;
title?: string;
}) => string;
readonly segment: Segment;
readonly inputOptions: string[];
readonly disableDanma: boolean;
readonly url: string;
readonly debugLevel: "none" | "basic" | "verbose";
readonly headers: {
[key: string]: string | undefined;
} | undefined;
constructor(opts: BililiveRecorderOptions, onEnd: (...args: unknown[]) => void, onUpdateLiveInfo: () => Promise<{
title?: string;
cover?: string;
}>);
createCommand(): BililiveRecorderCommand;
formatLine(line: string): {
time: string | null;
} | null;
run(): void;
getArguments(): string[];
stop(): Promise<void>;
getExtraDataController(): import("../xml_stream_controller.js").XmlStreamController | null;
get videoFilePath(): string;
cut(): void;
}
export {};