16 lines
453 B
TypeScript
16 lines
453 B
TypeScript
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
|
|
}
|