client); } /** * Get the collection object that is used by this API endpoint. Every API endpoint uses one type of collection object. * * @param int $count * @param \stdClass $_links * * @return SalesInvoiceCollection */ protected function getResourceCollectionObject($count, $_links) : \Mollie\Api\Resources\SalesInvoiceCollection { return new \Mollie\Api\Resources\SalesInvoiceCollection($this->client, $count, $_links); } /** * Creates a payment in Mollie. * * @param array $data An array containing details on the payment. * * @return SalesInvoice * @throws ApiException */ public function create(array $data = []) : \Mollie\Api\Resources\SalesInvoice { return $this->rest_create($data, []); } /** * Update the given Payment. * * Will throw a ApiException if the payment id is invalid or the resource cannot be found. * * @param string $salesInvoiceId * * @param array $data * @return SalesInvoice * @throws ApiException */ public function update($salesInvoiceId, array $data = []) : \Mollie\Api\Resources\SalesInvoice { if (empty($salesInvoiceId) || \strpos($salesInvoiceId, self::RESOURCE_ID_PREFIX) !== 0) { throw new \Mollie\Api\Exceptions\ApiException("Invalid sales invoice ID: '{$salesInvoiceId}'. A sales invoice ID should start with '" . self::RESOURCE_ID_PREFIX . "'."); } return parent::rest_update($salesInvoiceId, $data); } /** * @param string $salesInvoiceId * @param array $parameters * @return SalesInvoice * @throws ApiException */ public function get($salesInvoiceId, array $parameters = []) : \Mollie\Api\Resources\SalesInvoice { if (empty($salesInvoiceId) || \strpos($salesInvoiceId, self::RESOURCE_ID_PREFIX) !== 0) { throw new \Mollie\Api\Exceptions\ApiException("Invalid sales invoice ID: '{$salesInvoiceId}'. A sales invoice ID should start with '" . self::RESOURCE_ID_PREFIX . "'."); } return parent::rest_read($salesInvoiceId, $parameters); } /** * @param string $salesInvoiceId * * @param array $data * @throws ApiException */ public function delete($salesInvoiceId, array $data = []) : void { $this->rest_delete($salesInvoiceId, $data); } /** * @param string $from The first payment ID you want to include in your list. * @param int $limit * * @return SalesInvoiceCollection * @throws ApiException */ public function page($from = null, $limit = null) { return $this->rest_list($from, $limit, []); } /** * @param string $from The first resource ID you want to include in your list. * @param int $limit * @param bool $iterateBackwards Set to true for reverse order iteration (default is false). * * @return LazyCollection */ public function iterator(?string $from = null, ?int $limit = null, bool $iterateBackwards = \false) : \Mollie\Api\Resources\LazyCollection { return $this->rest_iterator($from, $limit, [], $iterateBackwards); } }