<?php

namespace EnumType;

use \WsdlToPhp\PackageBase\AbstractStructEnumBase;

/**
 * This class stands for TrafficRestrictions EnumType
 * Meta information extracted from the WSDL
 * - documentation: Traffic restriction information. Valid values are:A = No traffic permittedB = Not for connectionsC = Not for international connectionsH = Restricted by marketI = Technical stop - no trafficJ = Conditional trafficK = Connecting
 * trafficL = Online Connecting trafficM = International online stopover traffic onlyN = International online traffic onlyO = International online connection traffic onlyP = Subject to government approvalQ = International online connection or stopover
 * trafficR = Permanent requestS = Stopover traffic onlyT = Online stopover trafficU = International stopover trafficV = Connection or stopover trafficW = International connection or stopover traffic onlyX = Online connection or stopover traffic onlyY =
 * Online connectionsBlank = no restrictions Example: X
 * @subpackage Enumerations
 */
class TrafficRestrictions extends AbstractStructEnumBase
{
    /**
     * Constant for value 'A'
     * @return string 'A'
     */
    const VALUE_A = 'A';
    /**
     * Constant for value 'B'
     * @return string 'B'
     */
    const VALUE_B = 'B';
    /**
     * Constant for value 'C'
     * @return string 'C'
     */
    const VALUE_C = 'C';
    /**
     * Constant for value 'H'
     * @return string 'H'
     */
    const VALUE_H = 'H';
    /**
     * Constant for value 'I'
     * @return string 'I'
     */
    const VALUE_I = 'I';
    /**
     * Constant for value 'J'
     * @return string 'J'
     */
    const VALUE_J = 'J';
    /**
     * Constant for value 'K'
     * @return string 'K'
     */
    const VALUE_K = 'K';
    /**
     * Constant for value 'L'
     * @return string 'L'
     */
    const VALUE_L = 'L';
    /**
     * Constant for value 'M'
     * @return string 'M'
     */
    const VALUE_M = 'M';
    /**
     * Constant for value 'N'
     * @return string 'N'
     */
    const VALUE_N = 'N';
    /**
     * Constant for value 'O'
     * @return string 'O'
     */
    const VALUE_O = 'O';
    /**
     * Constant for value 'P'
     * @return string 'P'
     */
    const VALUE_P = 'P';
    /**
     * Constant for value 'Q'
     * @return string 'Q'
     */
    const VALUE_Q = 'Q';
    /**
     * Constant for value 'R'
     * @return string 'R'
     */
    const VALUE_R = 'R';
    /**
     * Constant for value 'S'
     * @return string 'S'
     */
    const VALUE_S = 'S';
    /**
     * Constant for value 'T'
     * @return string 'T'
     */
    const VALUE_T = 'T';
    /**
     * Constant for value 'U'
     * @return string 'U'
     */
    const VALUE_U = 'U';
    /**
     * Constant for value 'V'
     * @return string 'V'
     */
    const VALUE_V = 'V';
    /**
     * Constant for value 'W'
     * @return string 'W'
     */
    const VALUE_W = 'W';
    /**
     * Constant for value 'X'
     * @return string 'X'
     */
    const VALUE_X = 'X';
    /**
     * Constant for value 'Y'
     * @return string 'Y'
     */
    const VALUE_Y = 'Y';
    /**
     * Constant for value ''
     * @return string ''
     */
    const VALUE_ = '';
    /**
     * Return allowed values
     * @uses self::VALUE_A
     * @uses self::VALUE_B
     * @uses self::VALUE_C
     * @uses self::VALUE_H
     * @uses self::VALUE_I
     * @uses self::VALUE_J
     * @uses self::VALUE_K
     * @uses self::VALUE_L
     * @uses self::VALUE_M
     * @uses self::VALUE_N
     * @uses self::VALUE_O
     * @uses self::VALUE_P
     * @uses self::VALUE_Q
     * @uses self::VALUE_R
     * @uses self::VALUE_S
     * @uses self::VALUE_T
     * @uses self::VALUE_U
     * @uses self::VALUE_V
     * @uses self::VALUE_W
     * @uses self::VALUE_X
     * @uses self::VALUE_Y
     * @uses self::VALUE_
     * @return string[]
     */
    public static function getValidValues()
    {
        return array(
            self::VALUE_A,
            self::VALUE_B,
            self::VALUE_C,
            self::VALUE_H,
            self::VALUE_I,
            self::VALUE_J,
            self::VALUE_K,
            self::VALUE_L,
            self::VALUE_M,
            self::VALUE_N,
            self::VALUE_O,
            self::VALUE_P,
            self::VALUE_Q,
            self::VALUE_R,
            self::VALUE_S,
            self::VALUE_T,
            self::VALUE_U,
            self::VALUE_V,
            self::VALUE_W,
            self::VALUE_X,
            self::VALUE_Y,
            self::VALUE_,
        );
    }
}
