import { Client } from 'minecraft-protocol' import { Logger } from 'pino' import { child } from '../core/logger' export default abstract class IModule { protected logger!: Logger public abstract get key(): string; public abstract mount(client: Client): void protected prepare(): void { this.logger = child(this.key) } }