/** * @param array|CategoryDecideTransfer $data * @return array|CategoryTransfer[] */ public function decide($data) { if (!$data instanceof CategoryDecideTransfer) { if (!is_array($data)) { throw new InvalidArgumentException('Data argument should be an array of instance of CategoryDecideTransfer'); } $data = CategoryDecideTransfer::make($data); } $endpoint = new Decide($this->getTransport()); $endpoint->setTransfer($data); $resultRequest = $endpoint->performRequest(); Response::checkBody($resultRequest); $result = []; foreach ($resultRequest['json'] as $item) { $result[] = CategoryTransfer::make($item); } return $result; }