@u4/adbkit
Version:
A Typescript client for the Android Debug Bridge.
53 lines • 1.67 kB
TypeScript
import { Socket } from 'node:net';
import EventEmitter from 'node:events';
import { Buffer } from 'node:buffer';
import Parser from './parser.js';
import { ClientOptions } from '../models/ClientOptions.js';
import Client from '../adb/client.js';
/**
* enforce EventEmitter typing
*/
interface IEmissions {
connect: () => void;
end: () => void;
drain: () => void;
timeout: () => void;
close: (hadError: boolean) => void;
error: (error: Error) => void;
}
export default class Connection extends EventEmitter {
private _parent;
socket: Socket;
parser: Parser;
private triedStarting;
options: ClientOptions;
private _errored?;
constructor(_parent: Client);
on: <K extends keyof IEmissions>(event: K, listener: IEmissions[K]) => this;
off: <K extends keyof IEmissions>(event: K, listener: IEmissions[K]) => this;
once: <K extends keyof IEmissions>(event: K, listener: IEmissions[K]) => this;
emit: <K extends keyof IEmissions>(event: K, ...args: Parameters<IEmissions[K]>) => boolean;
get parent(): Client;
connect(): Promise<Connection>;
/**
* added for Mock testing
*/
getSocket(): unknown;
end(): this;
/**
* New Writen Call imported from Piotr Roszatycki implementation
* https://github.com/dex4er/js-promise-writable
* this method take care of any drain needed.
*
* @param data data to write
* @returns number of byte writen
*/
write(data: Buffer): Promise<number>;
startServer(): Promise<{
stdout: string;
stderr: string;
}>;
private _exec;
}
export {};
//# sourceMappingURL=connection.d.ts.map