@param array $filter
@param array $update
@param array $options

@return $this
199646
public function updateOne(array $filter, array $update, array $options = [])
    {
        $this->writeModels[] = [BulkWrite::UPDATE_ONE => [$filter, $update, $options]];

        return $this;
    }
1356180
public function addOptions(array $options) : Select
    {
        foreach ($options as $value => $content) {
            $this->addOption($content, $value);
        }

        return $this;
    }
220162
protected function updateCollection($query, $update, $options)
    {
        return $this->getCollection()->replaceOne($query, $update, $options);
    }
400359
public function findOneAndReplace(array $filter, $replacement, array $options = [])
    {
        $options['typeMap'] = [
            'root' => $this->documentManager->getProxyClass($this->documentClass),
            'document' => 'array',
        ];

        $document = $this->getCollection()->findOneAndReplace($filter, $replacement, $options);
        if ($document instanceof DocumentManagerAwareInterface) {
            $document->setManager($this->documentManager);
        }

        return $document;
    }
1184572
public function findOneAndUpdate(array $filter, array $update, array $options = [])
    {
        $options['typeMap'] = [
            'root' => $this->documentManager->getProxyClass($this->documentClass),
            'document' => 'array',
        ];

        $document = $this->getCollection()->findOneAndUpdate($filter, $update, $options);
        if ($document instanceof DocumentManagerAwareInterface) {
            $document->setManager($this->documentManager);
        }

        return $document;
    }
838104
public function update(array $options)
    {
        $this->App->Config->§options = $this->merge($this->App->Config->§options, $options);
        $this->App->Config->§options = $this->s::applyFilters('options', $this->App->Config->§options);
        $this->s::sysOption('options', $this->App->Config->§options);

        if ($this->Wp->is_admin) { // Limit this to admin contexts.
            flush_rewrite_rules(); // In case of options that alter permalinks.
        }
        if ($this->App->Config->§options['§license_key']) {
            $this->s::dequeueNotice('§license-key-request');
        }
        $this->s::dequeueNotice('§license-key-error');
    }
1111498
public function setOptions(array $options)
    {
        foreach ($options as $option => $value) {
            $this->setOption($option, $value);
        }

        return $this;
    }
1189594
public function createSubscription(array $options = [], array $filters = [])
    {
        return $this->client->subscriptions->createFor($this, $options, $filters);
    }
93604
public function updateTransformation($transformation, $updates = array(), $options=array())
    {
        return $this->getApi()->update_transformation($transformation, $updates, $options);
    }
384345
public static function aggregate($filters, $aggregation, $options = null)
    {
        if (is_string($options)) {
            $options = ['group' => $options];
        }
        return static::query()->where($filters)->options($options)->aggregate($aggregation);
    }
519018
public function has($key, $filter, $options = null) {
		if (is_string($filter))
			$filter=array($filter);
		if (is_int(strpos($key,'.'))) {
			list($key,$fkey) = explode('.',$key,2);
			if (!isset($this->hasCond[$key.'.']))
				$this->hasCond[$key.'.'] = array();
			$this->hasCond[$key.'.'][$fkey] = array($filter,$options);
		} else {
			if (!isset($this->fieldConf[$key]))
				trigger_error(sprintf(self::E_UNKNOWN_FIELD,$key,get_called_class()),E_USER_ERROR);
			if (!isset($this->fieldConf[$key]['relType']))
				trigger_error(self::E_HAS_COND,E_USER_ERROR);
			$this->hasCond[$key] = array($filter,$options);
		}
		return $this;
	}
1046574
public function update(array $data, array $criteria = [], array $options = []) {
		return $this->getAdapter()->update(
			$this->getTableName(),
			$criteria,
			$data,
			$options
		);
	}
431331
public function findOneAndDelete(array $filter, array $options = [])
    {
        $options = ['remove' => true] + FindOneAndDeleteResolver::resolveStatic($options);

        return $this->findAndModify($filter, $options);
    }
1359933
public function buildFilters($options) {
        if (empty($options['filters']) || !is_array($options['filters'])) return [];
        return array_filter(array_map(function($filter) {
            if (empty($this->config['filters'][$filter])) return;
            return new $this->config['filters'][$filter];
        }, $options['filters']));
    }
445833
public function findAll(array $filter = [], array $options = []): DocumentsCollection
    {
        $cursor = $this->getCollection()->find($filter, $options);

        return new DocumentsCollection($this->documentManager, $cursor, $this->documentClass);
    }
435247
public function prependAfterFilter($filter, array $options = [])
    {
        array_unshift($this->afterFilters, $this->parseFilter($filter, $options));
    }
784519
public function createMandate(array $options = [], array $filters = [])
    {
        return $this->client->mandates->createFor($this, $options, $filters);
    }