<?php

namespace patest\EnumType;

use \WsdlToPhp\PackageBase\AbstractStructEnumBase;

/**
 * This class stands for GroupedBasketBuildingOptions EnumType
 * Meta information extracted from the WSDL
 * - nillable: true
 * - type: tns:GroupedBasketBuildingOptions
 * @subpackage Enumerations
 */
class GroupedBasketBuildingOptions extends AbstractStructEnumBase
{
    /**
     * Constant for value 'Default'
     * @return string 'Default'
     */
    const VALUE_DEFAULT = 'Default';
    /**
     * Constant for value 'IncludeInsideCommissions'
     * @return string 'IncludeInsideCommissions'
     */
    const VALUE_INCLUDE_INSIDE_COMMISSIONS = 'IncludeInsideCommissions';
    /**
     * Constant for value 'IncludeVats'
     * @return string 'IncludeVats'
     */
    const VALUE_INCLUDE_VATS = 'IncludeVats';
    /**
     * Constant for value 'ExcludePriceModifiers'
     * @return string 'ExcludePriceModifiers'
     */
    const VALUE_EXCLUDE_PRICE_MODIFIERS = 'ExcludePriceModifiers';
    /**
     * Constant for value 'ExcludeItemsInGroups'
     * @return string 'ExcludeItemsInGroups'
     */
    const VALUE_EXCLUDE_ITEMS_IN_GROUPS = 'ExcludeItemsInGroups';
    /**
     * Constant for value 'ExcludeServiceSpecificDetails'
     * @return string 'ExcludeServiceSpecificDetails'
     */
    const VALUE_EXCLUDE_SERVICE_SPECIFIC_DETAILS = 'ExcludeServiceSpecificDetails';
    /**
     * Constant for value 'ExplodeBundles'
     * @return string 'ExplodeBundles'
     */
    const VALUE_EXPLODE_BUNDLES = 'ExplodeBundles';
    /**
     * Constant for value 'IgnoreItemState'
     * @return string 'IgnoreItemState'
     */
    const VALUE_IGNORE_ITEM_STATE = 'IgnoreItemState';
    /**
     * Return allowed values
     * @uses self::VALUE_DEFAULT
     * @uses self::VALUE_INCLUDE_INSIDE_COMMISSIONS
     * @uses self::VALUE_INCLUDE_VATS
     * @uses self::VALUE_EXCLUDE_PRICE_MODIFIERS
     * @uses self::VALUE_EXCLUDE_ITEMS_IN_GROUPS
     * @uses self::VALUE_EXCLUDE_SERVICE_SPECIFIC_DETAILS
     * @uses self::VALUE_EXPLODE_BUNDLES
     * @uses self::VALUE_IGNORE_ITEM_STATE
     * @return string[]
     */
    public static function getValidValues()
    {
        return array(
            self::VALUE_DEFAULT,
            self::VALUE_INCLUDE_INSIDE_COMMISSIONS,
            self::VALUE_INCLUDE_VATS,
            self::VALUE_EXCLUDE_PRICE_MODIFIERS,
            self::VALUE_EXCLUDE_ITEMS_IN_GROUPS,
            self::VALUE_EXCLUDE_SERVICE_SPECIFIC_DETAILS,
            self::VALUE_EXPLODE_BUNDLES,
            self::VALUE_IGNORE_ITEM_STATE,
        );
    }
}
