public function update($itemId, $key, $value)
    {
        $item = $this->find($itemId);

        if (!$item) {
            throw new \InvalidArgumentException(sprintf('Item [%s] does not exist in cart.', $itemId));
        }

        $item->$key = $value;

        return $item->id;
    }