<?php
/**
 * TaxType
 *
 * PHP version 7.4
 *
 * @category Class
 * @package  Xero2\Accounting
 * @author   OpenAPI Generator team
 * @link     https://openapi-generator.tech
 */

/**
 * Xero Accounting API
 *
 * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
 *
 * The version of the OpenAPI document: 2.10.0
 * Contact: api@xero.com
 * Generated by: https://openapi-generator.tech
 * OpenAPI Generator version: 6.0.0
 */

/**
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

namespace Xero2\Accounting\Model;
use \Xero2\Accounting\ObjectSerializer;

/**
 * TaxType Class Doc Comment
 *
 * @category Class
 * @description See Tax Types – can only be used on update calls
 * @package  Xero2\Accounting
 * @author   OpenAPI Generator team
 * @link     https://openapi-generator.tech
 */
class TaxType
{
    /**
     * Possible values of this enum
     */
    public const OUTPUT = 'OUTPUT';

    public const INPUT = 'INPUT';

    public const CAPEXINPUT = 'CAPEXINPUT';

    public const EXEMPTEXPORT = 'EXEMPTEXPORT';

    public const EXEMPTEXPENSES = 'EXEMPTEXPENSES';

    public const EXEMPTCAPITAL = 'EXEMPTCAPITAL';

    public const EXEMPTOUTPUT = 'EXEMPTOUTPUT';

    public const INPUTTAXED = 'INPUTTAXED';

    public const BASEXCLUDED = 'BASEXCLUDED';

    public const GSTONCAPIMPORTS = 'GSTONCAPIMPORTS';

    public const GSTONIMPORTS = 'GSTONIMPORTS';

    public const NONE = 'NONE';

    public const INPUT2 = 'INPUT2';

    public const ZERORATED = 'ZERORATED';

    public const OUTPUT2 = 'OUTPUT2';

    public const CAPEXINPUT2 = 'CAPEXINPUT2';

    public const CAPEXOUTPUT = 'CAPEXOUTPUT';

    public const CAPEXOUTPUT2 = 'CAPEXOUTPUT2';

    public const CAPEXSRINPUT = 'CAPEXSRINPUT';

    public const CAPEXSROUTPUT = 'CAPEXSROUTPUT';

    public const ECACQUISITIONS = 'ECACQUISITIONS';

    public const ECZRINPUT = 'ECZRINPUT';

    public const ECZROUTPUT = 'ECZROUTPUT';

    public const ECZROUTPUTSERVICES = 'ECZROUTPUTSERVICES';

    public const EXEMPTINPUT = 'EXEMPTINPUT';

    public const REVERSECHARGES = 'REVERSECHARGES';

    public const RRINPUT = 'RRINPUT';

    public const RROUTPUT = 'RROUTPUT';

    public const SRINPUT = 'SRINPUT';

    public const SROUTPUT = 'SROUTPUT';

    public const ZERORATEDINPUT = 'ZERORATEDINPUT';

    public const ZERORATEDOUTPUT = 'ZERORATEDOUTPUT';

    public const BLINPUT = 'BLINPUT';

    public const DSOUTPUT = 'DSOUTPUT';

    public const EPINPUT = 'EPINPUT';

    public const ES33_OUTPUT = 'ES33OUTPUT';

    public const ESN33_OUTPUT = 'ESN33OUTPUT';

    public const IGDSINPUT2 = 'IGDSINPUT2';

    public const IMINPUT2 = 'IMINPUT2';

    public const MEINPUT = 'MEINPUT';

    public const NRINPUT = 'NRINPUT';

    public const OPINPUT = 'OPINPUT';

    public const OSOUTPUT = 'OSOUTPUT';

    public const TXESSINPUT = 'TXESSINPUT';

    public const TXN33_INPUT = 'TXN33INPUT';

    public const TXPETINPUT = 'TXPETINPUT';

    public const TXREINPUT = 'TXREINPUT';

    public const INPUT3 = 'INPUT3';

    public const INPUT4 = 'INPUT4';

    public const OUTPUT3 = 'OUTPUT3';

    public const OUTPUT4 = 'OUTPUT4';

    public const SROUTPUT2 = 'SROUTPUT2';

    public const TXCA = 'TXCA';

    public const SRCAS = 'SRCAS';

    public const BLINPUT2 = 'BLINPUT2';

    public const DRCHARGESUPPLY20 = 'DRCHARGESUPPLY20';

    public const DRCHARGE20 = 'DRCHARGE20';

    public const DRCHARGESUPPLY5 = 'DRCHARGESUPPLY5';

    public const DRCHARGE5 = 'DRCHARGE5';

    /**
     * Gets allowable values of the enum
     * @return string[]
     */
    public static function getAllowableEnumValues()
    {
        return [
            self::OUTPUT,
            self::INPUT,
            self::CAPEXINPUT,
            self::EXEMPTEXPORT,
            self::EXEMPTEXPENSES,
            self::EXEMPTCAPITAL,
            self::EXEMPTOUTPUT,
            self::INPUTTAXED,
            self::BASEXCLUDED,
            self::GSTONCAPIMPORTS,
            self::GSTONIMPORTS,
            self::NONE,
            self::INPUT2,
            self::ZERORATED,
            self::OUTPUT2,
            self::CAPEXINPUT2,
            self::CAPEXOUTPUT,
            self::CAPEXOUTPUT2,
            self::CAPEXSRINPUT,
            self::CAPEXSROUTPUT,
            self::ECACQUISITIONS,
            self::ECZRINPUT,
            self::ECZROUTPUT,
            self::ECZROUTPUTSERVICES,
            self::EXEMPTINPUT,
            self::REVERSECHARGES,
            self::RRINPUT,
            self::RROUTPUT,
            self::SRINPUT,
            self::SROUTPUT,
            self::ZERORATEDINPUT,
            self::ZERORATEDOUTPUT,
            self::BLINPUT,
            self::DSOUTPUT,
            self::EPINPUT,
            self::ES33_OUTPUT,
            self::ESN33_OUTPUT,
            self::IGDSINPUT2,
            self::IMINPUT2,
            self::MEINPUT,
            self::NRINPUT,
            self::OPINPUT,
            self::OSOUTPUT,
            self::TXESSINPUT,
            self::TXN33_INPUT,
            self::TXPETINPUT,
            self::TXREINPUT,
            self::INPUT3,
            self::INPUT4,
            self::OUTPUT3,
            self::OUTPUT4,
            self::SROUTPUT2,
            self::TXCA,
            self::SRCAS,
            self::BLINPUT2,
            self::DRCHARGESUPPLY20,
            self::DRCHARGE20,
            self::DRCHARGESUPPLY5,
            self::DRCHARGE5
        ];
    }
}


