<?php

declare(strict_types=1);

namespace Drupal\netforum\xWeb\Generated\EnumType;

use WsdlToPhp\PackageBase\AbstractStructEnumBase;

/**
 * This class stands for QueryOperatorType EnumType
 * @subpackage Enumerations
 * @author Drupal NetForum xWeb PHP SDK Generator
 * @version 1.0.0
 * @license GPL-2.0-or-later https://www.gnu.org/licenses/old-licenses/gpl-2.0.html
 * @see https://www.drupal.org/project/netforum
 * @generatedDate 2025-08-05
 * @generatedRelease Official
 * @generatedNetForumVersion 37
 */
class QueryOperatorType extends AbstractStructEnumBase
{
    /**
     * Constant for value 'Like'
     * @return string 'Like'
     */
    const VALUE_LIKE = 'Like';
    /**
     * Constant for value 'NotLike'
     * @return string 'NotLike'
     */
    const VALUE_NOT_LIKE = 'NotLike';
    /**
     * Constant for value 'Equals'
     * @return string 'Equals'
     */
    const VALUE_EQUALS = 'Equals';
    /**
     * Constant for value 'NotEquals'
     * @return string 'NotEquals'
     */
    const VALUE_NOT_EQUALS = 'NotEquals';
    /**
     * Constant for value 'GreaterThan'
     * @return string 'GreaterThan'
     */
    const VALUE_GREATER_THAN = 'GreaterThan';
    /**
     * Constant for value 'LessThan'
     * @return string 'LessThan'
     */
    const VALUE_LESS_THAN = 'LessThan';
    /**
     * Constant for value 'GreaterThanOrEqualTo'
     * @return string 'GreaterThanOrEqualTo'
     */
    const VALUE_GREATER_THAN_OR_EQUAL_TO = 'GreaterThanOrEqualTo';
    /**
     * Constant for value 'LessThanOrEqualTo'
     * @return string 'LessThanOrEqualTo'
     */
    const VALUE_LESS_THAN_OR_EQUAL_TO = 'LessThanOrEqualTo';
    /**
     * Constant for value 'IsIn'
     * @return string 'IsIn'
     */
    const VALUE_IS_IN = 'IsIn';
    /**
     * Constant for value 'IsNotIn'
     * @return string 'IsNotIn'
     */
    const VALUE_IS_NOT_IN = 'IsNotIn';
    /**
     * Constant for value 'IsNull'
     * @return string 'IsNull'
     */
    const VALUE_IS_NULL = 'IsNull';
    /**
     * Constant for value 'IsNotNull'
     * @return string 'IsNotNull'
     */
    const VALUE_IS_NOT_NULL = 'IsNotNull';
    /**
     * Constant for value 'SoundsLike'
     * @return string 'SoundsLike'
     */
    const VALUE_SOUNDS_LIKE = 'SoundsLike';
    /**
     * Constant for value 'BeginsWith'
     * @return string 'BeginsWith'
     */
    const VALUE_BEGINS_WITH = 'BeginsWith';
    /**
     * Constant for value 'DoesNotBeginWith'
     * @return string 'DoesNotBeginWith'
     */
    const VALUE_DOES_NOT_BEGIN_WITH = 'DoesNotBeginWith';
    /**
     * Constant for value 'Contains'
     * @return string 'Contains'
     */
    const VALUE_CONTAINS = 'Contains';
    /**
     * Constant for value 'DoesNotContain'
     * @return string 'DoesNotContain'
     */
    const VALUE_DOES_NOT_CONTAIN = 'DoesNotContain';
    /**
     * Constant for value 'EndsWith'
     * @return string 'EndsWith'
     */
    const VALUE_ENDS_WITH = 'EndsWith';
    /**
     * Constant for value 'DoesNotEndWith'
     * @return string 'DoesNotEndWith'
     */
    const VALUE_DOES_NOT_END_WITH = 'DoesNotEndWith';
    /**
     * Return allowed values
     * @uses self::VALUE_LIKE
     * @uses self::VALUE_NOT_LIKE
     * @uses self::VALUE_EQUALS
     * @uses self::VALUE_NOT_EQUALS
     * @uses self::VALUE_GREATER_THAN
     * @uses self::VALUE_LESS_THAN
     * @uses self::VALUE_GREATER_THAN_OR_EQUAL_TO
     * @uses self::VALUE_LESS_THAN_OR_EQUAL_TO
     * @uses self::VALUE_IS_IN
     * @uses self::VALUE_IS_NOT_IN
     * @uses self::VALUE_IS_NULL
     * @uses self::VALUE_IS_NOT_NULL
     * @uses self::VALUE_SOUNDS_LIKE
     * @uses self::VALUE_BEGINS_WITH
     * @uses self::VALUE_DOES_NOT_BEGIN_WITH
     * @uses self::VALUE_CONTAINS
     * @uses self::VALUE_DOES_NOT_CONTAIN
     * @uses self::VALUE_ENDS_WITH
     * @uses self::VALUE_DOES_NOT_END_WITH
     * @return string[]
     */
    public static function getValidValues(): array
    {
        return [
            self::VALUE_LIKE,
            self::VALUE_NOT_LIKE,
            self::VALUE_EQUALS,
            self::VALUE_NOT_EQUALS,
            self::VALUE_GREATER_THAN,
            self::VALUE_LESS_THAN,
            self::VALUE_GREATER_THAN_OR_EQUAL_TO,
            self::VALUE_LESS_THAN_OR_EQUAL_TO,
            self::VALUE_IS_IN,
            self::VALUE_IS_NOT_IN,
            self::VALUE_IS_NULL,
            self::VALUE_IS_NOT_NULL,
            self::VALUE_SOUNDS_LIKE,
            self::VALUE_BEGINS_WITH,
            self::VALUE_DOES_NOT_BEGIN_WITH,
            self::VALUE_CONTAINS,
            self::VALUE_DOES_NOT_CONTAIN,
            self::VALUE_ENDS_WITH,
            self::VALUE_DOES_NOT_END_WITH,
        ];
    }
}
