0.0.9 • Published 6 months ago

@types/torrent-stream v0.0.9

Weekly downloads
24
License
MIT
Repository
github
Last release
6 months ago

Installation

npm install --save @types/torrent-stream

Summary

This package contains type definitions for torrent-stream (https://npmjs.com/package/torrent-stream).

Details

Files were exported from https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/torrent-stream.

index.d.ts

// Type definitions for torrent-stream
// Project: https://npmjs.com/package/torrent-stream
// Definitions by: Xavier Stouder <https://github.com/xstoudi>
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped

/// <reference types="node" />

declare namespace TorrentStream {
    interface TorrentEngine {
        files: TorrentFile[];
        destroy(callback: () => void): void;
        connect(peer: string): void;
        disconnect(peer: string): void;
        block(peer: string): void;
        remove(keepPieces: boolean, callback: () => void): void;
        listen(port: number, callback: () => void): void;
        swarm: Swarm;
        infoHash: string;

        // Events
        on(event: "ready" | "torrent" | "idle", callback: Function): void;
        on(event: "download", callback: (pieceIndex: number) => void): void;
        on(event: "upload", callback: (pieceIndex: number, offset: number, length: number) => void): void;
        on(event: string,callback: Function): void;
    }
    interface TorrentEngineOptions {
        connections?: number | undefined; // Max amount of peers to be connected to.
        uploads?: number | undefined; // Number of upload slots.
        tmp?: string | undefined; // Root folder for the files storage. Default folder under /tmp/torrent-stream/{infoHash}.
        path?: string | undefined; // Path where to save the files. Overrides 'tmp'.
        verify?: boolean | undefined; // Verify previously stored data before starting.
        dht?: boolean | undefined; // Whether or not to use DHT to initialize the swarm.
        tracker?: boolean | undefined; // Whether or not to use trackers from torrent file or magnet link.
        trackers?: string[] | undefined; // Allows to declare additional custom trackers to use.
        storage?: any; // Use a custom storage backend rather than the default disk-backed one.
    }
    interface Swarm {
        downloaded: number;
    }
    interface TorrentFile {
        name: string;
        path: string;
        length: number;

        select(): void;
        deselect(): void;
        createReadStream(options?: ReadStreamOptions): any;
    }
    interface ReadStreamOptions {
        start: number;
        end: number;
    }
}

declare module "torrent-stream" {
    function s(magnet: string | Buffer, options?: TorrentStream.TorrentEngineOptions): TorrentStream.TorrentEngine;

    namespace s {
        // Here
    }

    export = s;
}

Additional Details

  • Last updated: Fri, 02 Jul 2021 19:37:14 GMT
  • Dependencies: @types/node
  • Global values: none

Credits

These definitions were written by Xavier Stouder.

0.0.9

6 months ago

0.0.8

7 months ago

0.0.7

8 months ago

0.0.6

3 years ago

0.0.5

7 years ago

0.0.4

8 years ago

0.0.3

8 years ago

0.0.2

8 years ago

0.0.1

8 years ago