@tf2pickup-org/mumble-client
Version:
A simple bot for managing mumble servers
33 lines (32 loc) • 985 B
TypeScript
import { Observable } from 'rxjs';
import { TLSSocket } from 'tls';
import { MessageType } from '@protobuf-ts/runtime';
import { PacketType } from './packet-type.js';
interface MumbleSocketReader {
length: number;
callback: (data: Buffer) => void;
}
interface AudioPacket {
source: number;
}
export declare class MumbleSocket {
private readonly socket;
private readonly _packet;
private readonly _audioPacket;
private buffers;
private length;
private readers;
constructor(socket: TLSSocket);
get packet(): Observable<PacketType>;
get audioPacket(): Observable<AudioPacket>;
read(length: number, callback: MumbleSocketReader['callback']): void;
send<T extends object>(message: MessageType<T>, payload: T): Promise<void>;
write(buffer: Buffer | Uint8Array): Promise<void>;
end(): void;
private receiveData;
private flushReaders;
private readPrefix;
private readPacket;
private decodeAudio;
}
export {};