<?php

namespace  Onestartup\FacturaDigital\Lib;

class FacturaImpuesto
{
    private $TotalImpuestosTrasladados;
    private $Impuesto;
    private $TipoFactor;
    private $TasaOCuota;
    private $Importe;

    private $data;
    private $traslado;

    public function getData()
    {
        return array_merge($this->data, ['Traslados'=>[$this->traslado]]);
    }

    /**
     * @return mixed
     */
    public function getTotalImpuestosTrasladados()
    {
        return $this->TotalImpuestosTrasladados;
    }

    /**
     * @param mixed $TotalImpuestosTrasladados
     *
     * @return self
     */
    public function setTotalImpuestosTrasladados($TotalImpuestosTrasladados)
    {
        $this->TotalImpuestosTrasladados = $TotalImpuestosTrasladados;
        $this->data['TotalImpuestosTrasladados'] = $TotalImpuestosTrasladados;
        return $this;
    }

    /**
     * @return mixed
     */
    public function getImpuesto()
    {
        return $this->Impuesto;
    }

    /**
     * @param mixed $Impuesto
     *
     * @return self
     */
    public function setImpuesto($Impuesto)
    {
        $this->Impuesto = $Impuesto;
        $this->traslado['Impuesto'] = $Impuesto;
        return $this;
    }

    /**
     * @return mixed
     */
    public function getTipoFactor()
    {
        return $this->TipoFactor;
    }

    /**
     * @param mixed $TipoFactor
     *
     * @return self
     */
    public function setTipoFactor($TipoFactor)
    {
        $this->TipoFactor = $TipoFactor;
        $this->traslado['TipoFactor'] = $TipoFactor;
        return $this;
    }

    /**
     * @return mixed
     */
    public function getTasaOCuota()
    {
        return $this->TasaOCuota;
    }

    /**
     * @param mixed $TasaOCuota
     *
     * @return self
     */
    public function setTasaOCuota($TasaOCuota)
    {
        $this->TasaOCuota = $TasaOCuota;
        $this->traslado['TasaOCuota'] = $TasaOCuota;
        return $this;
    }

    /**
     * @return mixed
     */
    public function getImporte()
    {
        return $this->Importe;
    }

    /**
     * @param mixed $Importe
     *
     * @return self
     */
    public function setImporte($Importe)
    {
        $this->Importe = $Importe;
        $this->traslado['Importe'] = $Importe;
        return $this;
    }
}