public function add(string $handle, string $path, array $dependencies = [], $version = null, $arg = null)
    {
        if (empty($handle) || empty($path)) {
            throw new \InvalidArgumentException('The asset instance expects a handle name and a path or URL.');
        }

        return (new Asset($this->finder->find($path), $this->action, $this->filter, $this->html))
            ->setHandle($handle)
            ->setDependencies($dependencies)
            ->setVersion($version)
            ->setArgument($arg);
    }