UNPKG

@firaenix/bittorrent-protocol

Version:

Simple, robust, BitTorrent peer wire protocol implementation

31 lines (30 loc) 1.29 kB
/// <reference types="node" /> import { ExtensionsMap } from './ExtensionsMap'; import BitField from 'bitfield'; import { RequestCallback } from './PieceRequest'; import { ExtendedHandshake } from '..'; export interface WireEvents { finish: () => void; close: () => void; error: (error: Error) => void; upload: (length: number) => void; 'keep-alive': () => void; handshake: (infoHashHex: string, peerIdHex: string, extensions: ExtensionsMap) => void; choke: () => void; unchoke: () => void; interested: () => void; uninterested: () => void; bitfield: (peerPieces: BitField) => void; have: (index: number) => void; request: (index: number, offset: number, length: number, callback: RequestCallback) => void; download: (length: number) => void; piece: (length: number, offset: number, buffer: Buffer) => void; cancel: (index: number, offset: number, length: number) => void; port: (port: number) => void; extension_message: (extensionName: string, message: Buffer) => void; missing_extension: (extensionName: string) => void; extended_handshake: (message: 'handshake', extendedHandshake: ExtendedHandshake) => void; timeout: () => void; unknown_message: (message: Buffer) => void; end: () => void; }