public function remove($key, $value, $type = null)
	{
		if (is_null($type)) $type = $this->type($key);

		switch ($type)
		{
			case 'list':
				$key    = str_replace(':queued', '', $key);
				$random = Str::quickRandom(64);

				$this->database->lset($key, $value, $random);

				return $this->database->lrem($key, 1, $random);

			case 'zset':
				return $this->database->zrem($key, $value);

			default:
				throw new UnexpectedValueException("Unable to delete {$value} from {$key}. List type {$type} not supported.");
		}
	}