Validate non-optional parameters and return new instance.
965815
public function build(): StopWorkerRequest
	{
		$instance = new StopWorkerRequest();
		if ($this->versionId === null) {
			throw new BuilderException('Property [versionId] is required.');
		}
		$instance->versionId = $this->versionId;
		return $instance;
	}
211693
public function build(): SetCookiesRequest
	{
		$instance = new SetCookiesRequest();
		if ($this->cookies === null) {
			throw new BuilderException('Property [cookies] is required.');
		}
		$instance->cookies = $this->cookies;
		return $instance;
	}
1183776
public function build(): SetIgnoreInputEventsRequest
	{
		$instance = new SetIgnoreInputEventsRequest();
		if ($this->ignore === null) {
			throw new BuilderException('Property [ignore] is required.');
		}
		$instance->ignore = $this->ignore;
		return $instance;
	}
805902
public function build(): RequestEntriesRequest
	{
		$instance = new RequestEntriesRequest();
		if ($this->cacheId === null) {
			throw new BuilderException('Property [cacheId] is required.');
		}
		$instance->cacheId = $this->cacheId;
		if ($this->skipCount === null) {
			throw new BuilderException('Property [skipCount] is required.');
		}
		$instance->skipCount = $this->skipCount;
		if ($this->pageSize === null) {
			throw new BuilderException('Property [pageSize] is required.');
		}
		$instance->pageSize = $this->pageSize;
		$instance->pathFilter = $this->pathFilter;
		return $instance;
	}
212984
public function build(): RequestNodeRequest
	{
		$instance = new RequestNodeRequest();
		if ($this->objectId === null) {
			throw new BuilderException('Property [objectId] is required.');
		}
		$instance->objectId = $this->objectId;
		return $instance;
	}
973797
public function build(): SetWindowBoundsRequest
	{
		$instance = new SetWindowBoundsRequest();
		if ($this->windowId === null) {
			throw new BuilderException('Property [windowId] is required.');
		}
		$instance->windowId = $this->windowId;
		if ($this->bounds === null) {
			throw new BuilderException('Property [bounds] is required.');
		}
		$instance->bounds = $this->bounds;
		return $instance;
	}
646054
public function call() {
        $request = $this->createRequest();
        $response = $this->api->execute($request, $this);
        $this->response = $response;

        if ($this->shouldResponseBeProcessed($response)) {
            $instance = $this->api->instantiateResult($response, $this);

            return $instance;
        }
        return $response;
    }
632810
public function build(): GetAttributesRequest
	{
		$instance = new GetAttributesRequest();
		if ($this->nodeId === null) {
			throw new BuilderException('Property [nodeId] is required.');
		}
		$instance->nodeId = $this->nodeId;
		return $instance;
	}
35125
public function build(): ReleaseSnapshotRequest
	{
		$instance = new ReleaseSnapshotRequest();
		if ($this->snapshotId === null) {
			throw new BuilderException('Property [snapshotId] is required.');
		}
		$instance->snapshotId = $this->snapshotId;
		return $instance;
	}
726114
public function build(): SetTouchEmulationEnabledRequest
	{
		$instance = new SetTouchEmulationEnabledRequest();
		if ($this->enabled === null) {
			throw new BuilderException('Property [enabled] is required.');
		}
		$instance->enabled = $this->enabled;
		$instance->configuration = $this->configuration;
		return $instance;
	}
358976
public function build(): TakeResponseBodyAsStreamRequest
	{
		$instance = new TakeResponseBodyAsStreamRequest();
		if ($this->requestId === null) {
			throw new BuilderException('Property [requestId] is required.');
		}
		$instance->requestId = $this->requestId;
		return $instance;
	}
231474
public function build(): SetBypassServiceWorkerRequest
	{
		$instance = new SetBypassServiceWorkerRequest();
		if ($this->bypass === null) {
			throw new BuilderException('Property [bypass] is required.');
		}
		$instance->bypass = $this->bypass;
		return $instance;
	}
73623
public function build(): ForcePseudoStateRequest
	{
		$instance = new ForcePseudoStateRequest();
		if ($this->nodeId === null) {
			throw new BuilderException('Property [nodeId] is required.');
		}
		$instance->nodeId = $this->nodeId;
		if ($this->forcedPseudoClasses === null) {
			throw new BuilderException('Property [forcedPseudoClasses] is required.');
		}
		$instance->forcedPseudoClasses = $this->forcedPseudoClasses;
		return $instance;
	}
1040477
public function build(): ExecuteSQLRequest
	{
		$instance = new ExecuteSQLRequest();
		if ($this->databaseId === null) {
			throw new BuilderException('Property [databaseId] is required.');
		}
		$instance->databaseId = $this->databaseId;
		if ($this->query === null) {
			throw new BuilderException('Property [query] is required.');
		}
		$instance->query = $this->query;
		return $instance;
	}
302435
public function build(): GetCurrentTimeRequest
	{
		$instance = new GetCurrentTimeRequest();
		if ($this->id === null) {
			throw new BuilderException('Property [id] is required.');
		}
		$instance->id = $this->id;
		return $instance;
	}
668934
public function build(): GetRelayoutBoundaryRequest
	{
		$instance = new GetRelayoutBoundaryRequest();
		if ($this->nodeId === null) {
			throw new BuilderException('Property [nodeId] is required.');
		}
		$instance->nodeId = $this->nodeId;
		return $instance;
	}
222067
public function build(): PerformSearchRequest
	{
		$instance = new PerformSearchRequest();
		if ($this->query === null) {
			throw new BuilderException('Property [query] is required.');
		}
		$instance->query = $this->query;
		$instance->includeUserAgentShadowDOM = $this->includeUserAgentShadowDOM;
		return $instance;
	}