public function question($query, callable $callback)
    {
        if (!is_callable($callback)) { return $this; }

        if ($this->questionCallback) {
            $this->prompt();
        } else {
            $this->oldPrompt = $this->prompt;
            $this->setPrompt($query);
            $this->questionCallback = $callback;
            $this->prompt();
        }

        return $this;
    }