UNPKG

aria2-client

Version:

A download client based on aria2 (a lightweight multi-protocol & multi-source, cross platform download utility operated in command-line. It supports HTTP/HTTPS, FTP, SFTP, BitTorrent and Metalink)

56 lines (55 loc) 2.68 kB
import { IAria2Config, IAria2Download, IAria2File, IAria2GlobalStat, IAria2Peer, IAria2Server, IAria2Uri } from '../interfaces/aria2.interface'; export default class Aria2Client { private readonly aria2; constructor(config?: IAria2Config); open(): Promise<Event>; close(): Promise<Event>; addUri(uris: string[], { dir }: { dir: string; }): Promise<Record<string, string>>; addTorrent(torrent: string): Promise<string>; addMetalink(metalink: string): Promise<string>; remove(gid: string): Promise<string>; forceRemove(gid: string): Promise<string>; pause(gid: string): Promise<string>; pauseAll(): Promise<'OK'>; forcePause(gid: string): Promise<string>; forcePauseAll(): Promise<'OK'>; unpause(gid: string): Promise<string>; unpauseAll(): Promise<'OK'>; tellStatus(gid: string, keys?: string[]): Promise<IAria2Download>; getUris(gid: string): Promise<IAria2Uri[]>; getFiles(gid: string): Promise<IAria2File[]>; getPeers(gid: string): Promise<IAria2Peer[]>; getServers(gid: string): Promise<IAria2Server[]>; tellActive(): Promise<IAria2Download[]>; tellWaiting(offset: number, num: number): Promise<IAria2Download[]>; tellStopped(offset: number, num: number): Promise<IAria2Download[]>; changePosition(gid: string, pos: number, how: 'POS_CUR' | 'POS_SET'): Promise<number>; changeUri(gid: string, fileIndex: number, delUris: string[], addUris: string[]): Promise<[number, number]>; getOption(gid: string): Promise<Record<string, unknown>>; changeOption(gid: string, options: Record<string, unknown>): Promise<'OK'>; getGlobalOption(): Promise<Record<string, unknown>>; changeGlobalOption(options: Record<string, unknown>): Promise<'OK'>; getGlobalStat(): Promise<IAria2GlobalStat>; purgeDownloadResult(): Promise<'OK'>; removeDownloadResult(gid: string): Promise<'OK'>; getVersion(): Promise<{ version: string; enabledFeatures: string[]; }>; getSessionInfo(): Promise<{ sessionId: string; }>; shutdown(): Promise<'OK'>; forceShutdown(): Promise<'OK'>; saveSession(): Promise<'OK'>; onOpen(callback: CallableFunction): Promise<void>; onClose(callback: CallableFunction): Promise<void>; onDownloadStart(callback: CallableFunction): Promise<void>; onDownloadPause(callback: CallableFunction): Promise<void>; onDownloadStop(callback: CallableFunction): Promise<void>; onDownloadComplete(callback: CallableFunction): Promise<void>; onDownloadError(callback: CallableFunction): Promise<void>; onBtDownloadComplete(callback: CallableFunction): Promise<void>; }