import type { Terminal } from '../terminal/Terminal' import type { EventBroadcaster } from '../utils/EventBroadcaster' export abstract class Shell { broadcaster: EventBroadcaster terminal: Terminal constructor(broadcaster: EventBroadcaster, terminal: Terminal) { this.broadcaster = broadcaster this.terminal = terminal } abstract Init(): void abstract HandleKeyInput(key: string, isCharacter: boolean): void }