text: # Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
  # This product includes software developed at Datadog (https://www.datadoghq.com/).
  # Copyright 2019-Present Datadog, Inc.
  
  
  from datadog_api_client.v2.model_utils import (
      ModelNormal,
      cached_property,
  )
  
  
  def lazy_import():
      from datadog_api_client.v2.model.security_filter_exclusion_filter_response import (
          SecurityFilterExclusionFilterResponse,
      )
      from datadog_api_client.v2.model.security_filter_filtered_data_type import SecurityFilterFilteredDataType
  
      globals()["SecurityFilterExclusionFilterResponse"] = SecurityFilterExclusionFilterResponse
      globals()["SecurityFilterFilteredDataType"] = SecurityFilterFilteredDataType
  
  
  class SecurityFilterAttributes(ModelNormal):
      """NOTE: This class is auto generated by OpenAPI Generator.
      Ref: https://openapi-generator.tech
  
      Do not edit the class manually.
      """
  
      validations = {
          "version": {
              "inclusive_maximum": 2147483647,
          },
      }
  
      @cached_property
      def openapi_types():
          lazy_import()
          return {
              "exclusion_filters": ([SecurityFilterExclusionFilterResponse],),
              "filtered_data_type": (SecurityFilterFilteredDataType,),
              "is_builtin": (bool,),
              "is_enabled": (bool,),
              "name": (str,),
              "query": (str,),
              "version": (int,),
          }
  
      attribute_map = {
          "exclusion_filters": "exclusion_filters",
          "filtered_data_type": "filtered_data_type",
          "is_builtin": "is_builtin",
          "is_enabled": "is_enabled",
          "name": "name",
          "query": "query",
          "version": "version",
      }
  
      read_only_vars = {}
  
      def __init__(self, *args, **kwargs):
          """SecurityFilterAttributes - a model defined in OpenAPI
  
          Keyword Args:
              exclusion_filters ([SecurityFilterExclusionFilterResponse]): [optional] The list of exclusion filters applied in this security filter.
              filtered_data_type (SecurityFilterFilteredDataType): [optional]
              is_builtin (bool): [optional] Whether the security filter is the built-in filter.
              is_enabled (bool): [optional] Whether the security filter is enabled.
              name (str): [optional] The security filter name.
              query (str): [optional] The security filter query. Logs accepted by this query will be accepted by this filter.
              version (int): [optional] The version of the security filter.
          """
          super().__init__(kwargs)
  
          self._check_pos_args(args)
  
      @classmethod
      def _from_openapi_data(cls, *args, **kwargs):
          """Helper creating a new instance from a response."""
  
          self = super(SecurityFilterAttributes, cls)._from_openapi_data(kwargs)
  
          self._check_pos_args(args)
  
          return self
  