dir = $dir; } public function getDir(): string { return $this->dir; } public function addBotEvent(BotEvent $event) { $this->bot_events[] = $event; } public function addBotCommand(BotCommand $command) { $this->bot_commands[] = $command; } public function addEvent(string $event_name, callable $callback, int $level = 20) { $this->events[] = [$event_name, $callback, $level]; } public function addHttpRoute(Route $route) { $this->routes[] = $route; } public function getBotEvents(): array { return $this->bot_events; } public function getBotCommands(): array { return $this->bot_commands; } public function getEvents(): array { return $this->events; } public function getRoutes(): array { return $this->routes; } }