code: public function defineRoutes(callable $definitionCallback)
      {
          if (!$this->cached) {
              $definitionCallback($this->routeCollection);
              // Cache
              if ($this->cache) {
                  $this->cache->set(static::CACHE_KEY, $this->routeCollection, $this->options['cacheTimeout']);
              }
          }
          
          $this->dispatcher = new $this->options['dispatcher']($this->routeCollection->getData());
          return $this;
      }
docs: Define routes using a routerCollector
  See https://github.com/nikic/FastRoute for more details
  
  @param callable $definitionCallback Callback that will define the routes
  @return self