homebridge-config-ui-x
Version:
A web based management, configuration and control platform for Homebridge.
27 lines (26 loc) • 1.15 kB
TypeScript
import type { TermSize, WsEventEmitter } from './terminal.interfaces.js';
import { ConfigService } from '../../../core/config/config.service.js';
import { Logger } from '../../../core/logger/logger.service.js';
import { NodePtyService } from '../../../core/node-pty/node-pty.service.js';
export declare class TerminalService {
private readonly configService;
private readonly logger;
private readonly nodePtyService;
private ending;
private static persistentTerminal;
private static connectedClients;
private static dataListenerAttached;
private static terminalBuffer;
private static persistentAptHintInjected;
private instanceId;
constructor(configService: ConfigService, logger: Logger, nodePtyService: NodePtyService);
private shouldInjectAptPackageCommandHint;
private getAptPackageCommandHintLine;
private injectAptHintBeforeNodeUpdateLine;
private getPreferredShell;
startSession(client: WsEventEmitter, size: TermSize): Promise<void>;
private createNewTerminal;
private attachToPersistentTerminal;
hasPersistentSession(): boolean;
destroyPersistentSession(): void;
}