<?php

namespace App\Entities\PagSeguro\Order;

use App\Utils\Entity;

class PagSeguroOrder extends Entity {
	protected $reference_id;
	protected $customer;
	protected $items;
	protected $shipping;
	protected $charges;

	public static function builder(): PagSeguroOrderBuilder {

		return new PagSeguroOrderBuilder();

	}

	/**
	 *
	 * @return mixed
	 */
	public function getReferenceId() {

		return $this->reference_id;

	}

	/**
	 *
	 * @return mixed
	 */
	public function getCustomer() {

		return $this->customer;

	}

	/**
	 *
	 * @return mixed
	 */
	public function getItems() {

		return $this->items;

	}

	/**
	 *
	 * @return mixed
	 */
	public function getShipping() {

		return $this->shipping;

	}

	/**
	 *
	 * @return mixed
	 */
	public function getCharges() {

		return $this->charges;

	}

	/**
	 *
	 * @param mixed $reference_id
	 */
	public function setReferenceId($reference_id) {

		$this->reference_id = $reference_id;

	}

	/**
	 *
	 * @param mixed $customer
	 */
	public function setCustomer(PagSeguroCustomer $customer) {

		$this->customer = $customer;

	}

	/**
	 *
	 * @param mixed $items
	 */
	public function setItems($items) {

		$this->items = $items;

	}

	/**
	 *
	 * @param mixed $shipping
	 */
	public function setShipping($shipping) {

		$this->shipping = $shipping;

	}


	/**
	 *
	 * @param mixed $charges
	 */
	public function setCharges(array $charges) {

		$this->charges = $charges;

	}

}

