<?php

namespace EnumType;

use \WsdlToPhp\PackageBase\AbstractStructEnumBase;

/**
 * This class stands for RevRecScheduleRecurrenceType EnumType
 * @subpackage Enumerations
 */
class RevRecScheduleRecurrenceType extends AbstractStructEnumBase
{
    /**
     * Constant for value '_custom'
     * @return string '_custom'
     */
    const VALUE_CUSTOM = '_custom';
    /**
     * Constant for value '_straightLineByEvenPeriods'
     * @return string '_straightLineByEvenPeriods'
     */
    const VALUE_STRAIGHT_LINE_BY_EVEN_PERIODS = '_straightLineByEvenPeriods';
    /**
     * Constant for value '_straightLineProrateFirstAndLastPeriod'
     * @return string '_straightLineProrateFirstAndLastPeriod'
     */
    const VALUE_STRAIGHT_LINE_PRORATE_FIRST_AND_LAST_PERIOD = '_straightLineProrateFirstAndLastPeriod';
    /**
     * Constant for value '_straightLineProrateFirstAndLastPeriodPeriodRate'
     * @return string '_straightLineProrateFirstAndLastPeriodPeriodRate'
     */
    const VALUE_STRAIGHT_LINE_PRORATE_FIRST_AND_LAST_PERIOD_PERIOD_RATE = '_straightLineProrateFirstAndLastPeriodPeriodRate';
    /**
     * Constant for value '_straightLineUsingExactDays'
     * @return string '_straightLineUsingExactDays'
     */
    const VALUE_STRAIGHT_LINE_USING_EXACT_DAYS = '_straightLineUsingExactDays';
    /**
     * Return allowed values
     * @uses self::VALUE_CUSTOM
     * @uses self::VALUE_STRAIGHT_LINE_BY_EVEN_PERIODS
     * @uses self::VALUE_STRAIGHT_LINE_PRORATE_FIRST_AND_LAST_PERIOD
     * @uses self::VALUE_STRAIGHT_LINE_PRORATE_FIRST_AND_LAST_PERIOD_PERIOD_RATE
     * @uses self::VALUE_STRAIGHT_LINE_USING_EXACT_DAYS
     * @return string[]
     */
    public static function getValidValues()
    {
        return array(
            self::VALUE_CUSTOM,
            self::VALUE_STRAIGHT_LINE_BY_EVEN_PERIODS,
            self::VALUE_STRAIGHT_LINE_PRORATE_FIRST_AND_LAST_PERIOD,
            self::VALUE_STRAIGHT_LINE_PRORATE_FIRST_AND_LAST_PERIOD_PERIOD_RATE,
            self::VALUE_STRAIGHT_LINE_USING_EXACT_DAYS,
        );
    }
}
