# Copyright 2020 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#      http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

require 'date'
require 'google/apis/core/base_service'
require 'google/apis/core/json_representation'
require 'google/apis/core/hashable'
require 'google/apis/errors'

module Google
  module Apis
    module DrivelabelsV2
      
      class GoogleAppsDriveLabelsV2BadgeColors
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2BadgeConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2BatchDeleteLabelPermissionsRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2BatchUpdateLabelPermissionsRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2BatchUpdateLabelPermissionsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2DateLimits
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2DeleteLabelPermissionRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2DeltaUpdateLabelRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2DeltaUpdateLabelRequestCreateFieldRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2DeltaUpdateLabelRequestCreateSelectionChoiceRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2DeltaUpdateLabelRequestDeleteFieldRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2DeltaUpdateLabelRequestDeleteSelectionChoiceRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2DeltaUpdateLabelRequestDisableFieldRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2DeltaUpdateLabelRequestDisableSelectionChoiceRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2DeltaUpdateLabelRequestEnableFieldRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2DeltaUpdateLabelRequestEnableSelectionChoiceRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2DeltaUpdateLabelRequestRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2DeltaUpdateLabelRequestUpdateFieldPropertiesRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2DeltaUpdateLabelRequestUpdateFieldTypeRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2DeltaUpdateLabelRequestUpdateLabelPropertiesRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2DeltaUpdateLabelRequestUpdateSelectionChoicePropertiesRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2DeltaUpdateLabelResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2DeltaUpdateLabelResponseCreateFieldResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2DeltaUpdateLabelResponseCreateSelectionChoiceResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2DeltaUpdateLabelResponseDeleteFieldResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2DeltaUpdateLabelResponseDeleteSelectionChoiceResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2DeltaUpdateLabelResponseDisableFieldResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2DeltaUpdateLabelResponseDisableSelectionChoiceResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2DeltaUpdateLabelResponseEnableFieldResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2DeltaUpdateLabelResponseEnableSelectionChoiceResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2DeltaUpdateLabelResponseResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2DeltaUpdateLabelResponseUpdateFieldPropertiesResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2DeltaUpdateLabelResponseUpdateFieldTypeResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2DeltaUpdateLabelResponseUpdateLabelPropertiesResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2DeltaUpdateLabelResponseUpdateSelectionChoicePropertiesResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2DisableLabelRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2EnableLabelRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2Field
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2FieldAppliedCapabilities
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2FieldDateOptions
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2FieldDisplayHints
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2FieldIntegerOptions
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2FieldLimits
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2FieldListOptions
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2FieldProperties
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2FieldSchemaCapabilities
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2FieldSelectionOptions
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2FieldSelectionOptionsChoice
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2FieldSelectionOptionsChoiceAppliedCapabilities
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2FieldSelectionOptionsChoiceDisplayHints
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2FieldSelectionOptionsChoiceProperties
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2FieldSelectionOptionsChoiceSchemaCapabilities
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2FieldTextOptions
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2FieldUserOptions
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2IntegerLimits
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2Label
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2LabelAppliedCapabilities
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2LabelAppliedLabelPolicy
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2LabelDisplayHints
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2LabelEnabledAppSettings
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2LabelEnabledAppSettingsEnabledApp
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2LabelLimits
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2LabelLock
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2LabelLockCapabilities
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2LabelPermission
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2LabelProperties
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2LabelSchemaCapabilities
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2Lifecycle
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2LifecycleDisabledPolicy
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2ListLabelLocksResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2ListLabelPermissionsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2ListLabelsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2ListLimits
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2LockStatus
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2LongTextLimits
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2PublishLabelRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2SelectionLimits
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2TextLimits
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2UpdateLabelCopyModeRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2UpdateLabelEnabledAppSettingsRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2UpdateLabelPermissionRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2UserCapabilities
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2UserInfo
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2UserLimits
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2WriteControl
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleProtobufEmpty
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleTypeColor
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleTypeDate
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAppsDriveLabelsV2BadgeColors
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :background_color, as: 'backgroundColor', class: Google::Apis::DrivelabelsV2::GoogleTypeColor, decorator: Google::Apis::DrivelabelsV2::GoogleTypeColor::Representation
      
          property :foreground_color, as: 'foregroundColor', class: Google::Apis::DrivelabelsV2::GoogleTypeColor, decorator: Google::Apis::DrivelabelsV2::GoogleTypeColor::Representation
      
          property :solo_color, as: 'soloColor', class: Google::Apis::DrivelabelsV2::GoogleTypeColor, decorator: Google::Apis::DrivelabelsV2::GoogleTypeColor::Representation
      
        end
      end
      
      class GoogleAppsDriveLabelsV2BadgeConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :color, as: 'color', class: Google::Apis::DrivelabelsV2::GoogleTypeColor, decorator: Google::Apis::DrivelabelsV2::GoogleTypeColor::Representation
      
          property :priority_override, :numeric_string => true, as: 'priorityOverride'
        end
      end
      
      class GoogleAppsDriveLabelsV2BatchDeleteLabelPermissionsRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :requests, as: 'requests', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2DeleteLabelPermissionRequest, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2DeleteLabelPermissionRequest::Representation
      
          property :use_admin_access, as: 'useAdminAccess'
        end
      end
      
      class GoogleAppsDriveLabelsV2BatchUpdateLabelPermissionsRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :requests, as: 'requests', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2UpdateLabelPermissionRequest, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2UpdateLabelPermissionRequest::Representation
      
          property :use_admin_access, as: 'useAdminAccess'
        end
      end
      
      class GoogleAppsDriveLabelsV2BatchUpdateLabelPermissionsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :permissions, as: 'permissions', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2LabelPermission, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2LabelPermission::Representation
      
        end
      end
      
      class GoogleAppsDriveLabelsV2DateLimits
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :max_value, as: 'maxValue', class: Google::Apis::DrivelabelsV2::GoogleTypeDate, decorator: Google::Apis::DrivelabelsV2::GoogleTypeDate::Representation
      
          property :min_value, as: 'minValue', class: Google::Apis::DrivelabelsV2::GoogleTypeDate, decorator: Google::Apis::DrivelabelsV2::GoogleTypeDate::Representation
      
        end
      end
      
      class GoogleAppsDriveLabelsV2DeleteLabelPermissionRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :name, as: 'name'
          property :use_admin_access, as: 'useAdminAccess'
        end
      end
      
      class GoogleAppsDriveLabelsV2DeltaUpdateLabelRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :language_code, as: 'languageCode'
          collection :requests, as: 'requests', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2DeltaUpdateLabelRequestRequest, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2DeltaUpdateLabelRequestRequest::Representation
      
          property :use_admin_access, as: 'useAdminAccess'
          property :view, as: 'view'
          property :write_control, as: 'writeControl', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2WriteControl, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2WriteControl::Representation
      
        end
      end
      
      class GoogleAppsDriveLabelsV2DeltaUpdateLabelRequestCreateFieldRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :field, as: 'field', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2Field, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2Field::Representation
      
        end
      end
      
      class GoogleAppsDriveLabelsV2DeltaUpdateLabelRequestCreateSelectionChoiceRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :choice, as: 'choice', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2FieldSelectionOptionsChoice, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2FieldSelectionOptionsChoice::Representation
      
          property :field_id, as: 'fieldId'
        end
      end
      
      class GoogleAppsDriveLabelsV2DeltaUpdateLabelRequestDeleteFieldRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :id, as: 'id'
        end
      end
      
      class GoogleAppsDriveLabelsV2DeltaUpdateLabelRequestDeleteSelectionChoiceRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :field_id, as: 'fieldId'
          property :id, as: 'id'
        end
      end
      
      class GoogleAppsDriveLabelsV2DeltaUpdateLabelRequestDisableFieldRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :disabled_policy, as: 'disabledPolicy', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2LifecycleDisabledPolicy, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2LifecycleDisabledPolicy::Representation
      
          property :id, as: 'id'
          property :update_mask, as: 'updateMask'
        end
      end
      
      class GoogleAppsDriveLabelsV2DeltaUpdateLabelRequestDisableSelectionChoiceRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :disabled_policy, as: 'disabledPolicy', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2LifecycleDisabledPolicy, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2LifecycleDisabledPolicy::Representation
      
          property :field_id, as: 'fieldId'
          property :id, as: 'id'
          property :update_mask, as: 'updateMask'
        end
      end
      
      class GoogleAppsDriveLabelsV2DeltaUpdateLabelRequestEnableFieldRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :id, as: 'id'
        end
      end
      
      class GoogleAppsDriveLabelsV2DeltaUpdateLabelRequestEnableSelectionChoiceRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :field_id, as: 'fieldId'
          property :id, as: 'id'
        end
      end
      
      class GoogleAppsDriveLabelsV2DeltaUpdateLabelRequestRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :create_field, as: 'createField', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2DeltaUpdateLabelRequestCreateFieldRequest, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2DeltaUpdateLabelRequestCreateFieldRequest::Representation
      
          property :create_selection_choice, as: 'createSelectionChoice', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2DeltaUpdateLabelRequestCreateSelectionChoiceRequest, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2DeltaUpdateLabelRequestCreateSelectionChoiceRequest::Representation
      
          property :delete_field, as: 'deleteField', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2DeltaUpdateLabelRequestDeleteFieldRequest, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2DeltaUpdateLabelRequestDeleteFieldRequest::Representation
      
          property :delete_selection_choice, as: 'deleteSelectionChoice', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2DeltaUpdateLabelRequestDeleteSelectionChoiceRequest, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2DeltaUpdateLabelRequestDeleteSelectionChoiceRequest::Representation
      
          property :disable_field, as: 'disableField', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2DeltaUpdateLabelRequestDisableFieldRequest, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2DeltaUpdateLabelRequestDisableFieldRequest::Representation
      
          property :disable_selection_choice, as: 'disableSelectionChoice', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2DeltaUpdateLabelRequestDisableSelectionChoiceRequest, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2DeltaUpdateLabelRequestDisableSelectionChoiceRequest::Representation
      
          property :enable_field, as: 'enableField', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2DeltaUpdateLabelRequestEnableFieldRequest, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2DeltaUpdateLabelRequestEnableFieldRequest::Representation
      
          property :enable_selection_choice, as: 'enableSelectionChoice', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2DeltaUpdateLabelRequestEnableSelectionChoiceRequest, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2DeltaUpdateLabelRequestEnableSelectionChoiceRequest::Representation
      
          property :update_field, as: 'updateField', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2DeltaUpdateLabelRequestUpdateFieldPropertiesRequest, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2DeltaUpdateLabelRequestUpdateFieldPropertiesRequest::Representation
      
          property :update_field_type, as: 'updateFieldType', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2DeltaUpdateLabelRequestUpdateFieldTypeRequest, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2DeltaUpdateLabelRequestUpdateFieldTypeRequest::Representation
      
          property :update_label, as: 'updateLabel', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2DeltaUpdateLabelRequestUpdateLabelPropertiesRequest, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2DeltaUpdateLabelRequestUpdateLabelPropertiesRequest::Representation
      
          property :update_selection_choice_properties, as: 'updateSelectionChoiceProperties', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2DeltaUpdateLabelRequestUpdateSelectionChoicePropertiesRequest, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2DeltaUpdateLabelRequestUpdateSelectionChoicePropertiesRequest::Representation
      
        end
      end
      
      class GoogleAppsDriveLabelsV2DeltaUpdateLabelRequestUpdateFieldPropertiesRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :id, as: 'id'
          property :properties, as: 'properties', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2FieldProperties, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2FieldProperties::Representation
      
          property :update_mask, as: 'updateMask'
        end
      end
      
      class GoogleAppsDriveLabelsV2DeltaUpdateLabelRequestUpdateFieldTypeRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :date_options, as: 'dateOptions', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2FieldDateOptions, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2FieldDateOptions::Representation
      
          property :id, as: 'id'
          property :integer_options, as: 'integerOptions', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2FieldIntegerOptions, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2FieldIntegerOptions::Representation
      
          property :selection_options, as: 'selectionOptions', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2FieldSelectionOptions, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2FieldSelectionOptions::Representation
      
          property :text_options, as: 'textOptions', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2FieldTextOptions, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2FieldTextOptions::Representation
      
          property :update_mask, as: 'updateMask'
          property :user_options, as: 'userOptions', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2FieldUserOptions, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2FieldUserOptions::Representation
      
        end
      end
      
      class GoogleAppsDriveLabelsV2DeltaUpdateLabelRequestUpdateLabelPropertiesRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :properties, as: 'properties', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2LabelProperties, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2LabelProperties::Representation
      
          property :update_mask, as: 'updateMask'
        end
      end
      
      class GoogleAppsDriveLabelsV2DeltaUpdateLabelRequestUpdateSelectionChoicePropertiesRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :field_id, as: 'fieldId'
          property :id, as: 'id'
          property :properties, as: 'properties', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2FieldSelectionOptionsChoiceProperties, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2FieldSelectionOptionsChoiceProperties::Representation
      
          property :update_mask, as: 'updateMask'
        end
      end
      
      class GoogleAppsDriveLabelsV2DeltaUpdateLabelResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :responses, as: 'responses', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2DeltaUpdateLabelResponseResponse, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2DeltaUpdateLabelResponseResponse::Representation
      
          property :updated_label, as: 'updatedLabel', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2Label, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2Label::Representation
      
        end
      end
      
      class GoogleAppsDriveLabelsV2DeltaUpdateLabelResponseCreateFieldResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :id, as: 'id'
          property :priority, as: 'priority'
        end
      end
      
      class GoogleAppsDriveLabelsV2DeltaUpdateLabelResponseCreateSelectionChoiceResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :field_id, as: 'fieldId'
          property :id, as: 'id'
        end
      end
      
      class GoogleAppsDriveLabelsV2DeltaUpdateLabelResponseDeleteFieldResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
        end
      end
      
      class GoogleAppsDriveLabelsV2DeltaUpdateLabelResponseDeleteSelectionChoiceResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
        end
      end
      
      class GoogleAppsDriveLabelsV2DeltaUpdateLabelResponseDisableFieldResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
        end
      end
      
      class GoogleAppsDriveLabelsV2DeltaUpdateLabelResponseDisableSelectionChoiceResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
        end
      end
      
      class GoogleAppsDriveLabelsV2DeltaUpdateLabelResponseEnableFieldResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
        end
      end
      
      class GoogleAppsDriveLabelsV2DeltaUpdateLabelResponseEnableSelectionChoiceResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
        end
      end
      
      class GoogleAppsDriveLabelsV2DeltaUpdateLabelResponseResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :create_field, as: 'createField', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2DeltaUpdateLabelResponseCreateFieldResponse, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2DeltaUpdateLabelResponseCreateFieldResponse::Representation
      
          property :create_selection_choice, as: 'createSelectionChoice', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2DeltaUpdateLabelResponseCreateSelectionChoiceResponse, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2DeltaUpdateLabelResponseCreateSelectionChoiceResponse::Representation
      
          property :delete_field, as: 'deleteField', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2DeltaUpdateLabelResponseDeleteFieldResponse, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2DeltaUpdateLabelResponseDeleteFieldResponse::Representation
      
          property :delete_selection_choice, as: 'deleteSelectionChoice', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2DeltaUpdateLabelResponseDeleteSelectionChoiceResponse, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2DeltaUpdateLabelResponseDeleteSelectionChoiceResponse::Representation
      
          property :disable_field, as: 'disableField', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2DeltaUpdateLabelResponseDisableFieldResponse, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2DeltaUpdateLabelResponseDisableFieldResponse::Representation
      
          property :disable_selection_choice, as: 'disableSelectionChoice', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2DeltaUpdateLabelResponseDisableSelectionChoiceResponse, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2DeltaUpdateLabelResponseDisableSelectionChoiceResponse::Representation
      
          property :enable_field, as: 'enableField', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2DeltaUpdateLabelResponseEnableFieldResponse, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2DeltaUpdateLabelResponseEnableFieldResponse::Representation
      
          property :enable_selection_choice, as: 'enableSelectionChoice', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2DeltaUpdateLabelResponseEnableSelectionChoiceResponse, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2DeltaUpdateLabelResponseEnableSelectionChoiceResponse::Representation
      
          property :update_field, as: 'updateField', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2DeltaUpdateLabelResponseUpdateFieldPropertiesResponse, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2DeltaUpdateLabelResponseUpdateFieldPropertiesResponse::Representation
      
          property :update_field_type, as: 'updateFieldType', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2DeltaUpdateLabelResponseUpdateFieldTypeResponse, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2DeltaUpdateLabelResponseUpdateFieldTypeResponse::Representation
      
          property :update_label, as: 'updateLabel', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2DeltaUpdateLabelResponseUpdateLabelPropertiesResponse, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2DeltaUpdateLabelResponseUpdateLabelPropertiesResponse::Representation
      
          property :update_selection_choice_properties, as: 'updateSelectionChoiceProperties', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2DeltaUpdateLabelResponseUpdateSelectionChoicePropertiesResponse, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2DeltaUpdateLabelResponseUpdateSelectionChoicePropertiesResponse::Representation
      
        end
      end
      
      class GoogleAppsDriveLabelsV2DeltaUpdateLabelResponseUpdateFieldPropertiesResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :priority, as: 'priority'
        end
      end
      
      class GoogleAppsDriveLabelsV2DeltaUpdateLabelResponseUpdateFieldTypeResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
        end
      end
      
      class GoogleAppsDriveLabelsV2DeltaUpdateLabelResponseUpdateLabelPropertiesResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
        end
      end
      
      class GoogleAppsDriveLabelsV2DeltaUpdateLabelResponseUpdateSelectionChoicePropertiesResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :priority, as: 'priority'
        end
      end
      
      class GoogleAppsDriveLabelsV2DisableLabelRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :disabled_policy, as: 'disabledPolicy', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2LifecycleDisabledPolicy, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2LifecycleDisabledPolicy::Representation
      
          property :language_code, as: 'languageCode'
          property :update_mask, as: 'updateMask'
          property :use_admin_access, as: 'useAdminAccess'
          property :write_control, as: 'writeControl', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2WriteControl, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2WriteControl::Representation
      
        end
      end
      
      class GoogleAppsDriveLabelsV2EnableLabelRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :language_code, as: 'languageCode'
          property :use_admin_access, as: 'useAdminAccess'
          property :write_control, as: 'writeControl', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2WriteControl, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2WriteControl::Representation
      
        end
      end
      
      class GoogleAppsDriveLabelsV2Field
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :applied_capabilities, as: 'appliedCapabilities', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2FieldAppliedCapabilities, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2FieldAppliedCapabilities::Representation
      
          property :create_time, as: 'createTime'
          property :creator, as: 'creator', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2UserInfo, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2UserInfo::Representation
      
          property :date_options, as: 'dateOptions', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2FieldDateOptions, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2FieldDateOptions::Representation
      
          property :disable_time, as: 'disableTime'
          property :disabler, as: 'disabler', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2UserInfo, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2UserInfo::Representation
      
          property :display_hints, as: 'displayHints', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2FieldDisplayHints, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2FieldDisplayHints::Representation
      
          property :id, as: 'id'
          property :integer_options, as: 'integerOptions', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2FieldIntegerOptions, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2FieldIntegerOptions::Representation
      
          property :lifecycle, as: 'lifecycle', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2Lifecycle, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2Lifecycle::Representation
      
          property :lock_status, as: 'lockStatus', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2LockStatus, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2LockStatus::Representation
      
          property :properties, as: 'properties', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2FieldProperties, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2FieldProperties::Representation
      
          property :publisher, as: 'publisher', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2UserInfo, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2UserInfo::Representation
      
          property :query_key, as: 'queryKey'
          property :schema_capabilities, as: 'schemaCapabilities', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2FieldSchemaCapabilities, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2FieldSchemaCapabilities::Representation
      
          property :selection_options, as: 'selectionOptions', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2FieldSelectionOptions, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2FieldSelectionOptions::Representation
      
          property :text_options, as: 'textOptions', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2FieldTextOptions, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2FieldTextOptions::Representation
      
          property :update_time, as: 'updateTime'
          property :updater, as: 'updater', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2UserInfo, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2UserInfo::Representation
      
          property :user_options, as: 'userOptions', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2FieldUserOptions, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2FieldUserOptions::Representation
      
        end
      end
      
      class GoogleAppsDriveLabelsV2FieldAppliedCapabilities
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :can_read, as: 'canRead'
          property :can_search, as: 'canSearch'
          property :can_write, as: 'canWrite'
        end
      end
      
      class GoogleAppsDriveLabelsV2FieldDateOptions
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :date_format, as: 'dateFormat'
          property :date_format_type, as: 'dateFormatType'
          property :max_value, as: 'maxValue', class: Google::Apis::DrivelabelsV2::GoogleTypeDate, decorator: Google::Apis::DrivelabelsV2::GoogleTypeDate::Representation
      
          property :min_value, as: 'minValue', class: Google::Apis::DrivelabelsV2::GoogleTypeDate, decorator: Google::Apis::DrivelabelsV2::GoogleTypeDate::Representation
      
        end
      end
      
      class GoogleAppsDriveLabelsV2FieldDisplayHints
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :disabled, as: 'disabled'
          property :hidden_in_search, as: 'hiddenInSearch'
          property :required, as: 'required'
          property :shown_in_apply, as: 'shownInApply'
        end
      end
      
      class GoogleAppsDriveLabelsV2FieldIntegerOptions
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :max_value, :numeric_string => true, as: 'maxValue'
          property :min_value, :numeric_string => true, as: 'minValue'
        end
      end
      
      class GoogleAppsDriveLabelsV2FieldLimits
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :date_limits, as: 'dateLimits', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2DateLimits, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2DateLimits::Representation
      
          property :integer_limits, as: 'integerLimits', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2IntegerLimits, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2IntegerLimits::Representation
      
          property :long_text_limits, as: 'longTextLimits', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2LongTextLimits, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2LongTextLimits::Representation
      
          property :max_description_length, as: 'maxDescriptionLength'
          property :max_display_name_length, as: 'maxDisplayNameLength'
          property :max_id_length, as: 'maxIdLength'
          property :selection_limits, as: 'selectionLimits', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2SelectionLimits, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2SelectionLimits::Representation
      
          property :text_limits, as: 'textLimits', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2TextLimits, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2TextLimits::Representation
      
          property :user_limits, as: 'userLimits', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2UserLimits, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2UserLimits::Representation
      
        end
      end
      
      class GoogleAppsDriveLabelsV2FieldListOptions
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :max_entries, as: 'maxEntries'
        end
      end
      
      class GoogleAppsDriveLabelsV2FieldProperties
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :display_name, as: 'displayName'
          property :insert_before_field, as: 'insertBeforeField'
          property :required, as: 'required'
        end
      end
      
      class GoogleAppsDriveLabelsV2FieldSchemaCapabilities
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :can_delete, as: 'canDelete'
          property :can_disable, as: 'canDisable'
          property :can_enable, as: 'canEnable'
          property :can_update, as: 'canUpdate'
        end
      end
      
      class GoogleAppsDriveLabelsV2FieldSelectionOptions
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :choices, as: 'choices', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2FieldSelectionOptionsChoice, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2FieldSelectionOptionsChoice::Representation
      
          property :list_options, as: 'listOptions', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2FieldListOptions, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2FieldListOptions::Representation
      
        end
      end
      
      class GoogleAppsDriveLabelsV2FieldSelectionOptionsChoice
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :applied_capabilities, as: 'appliedCapabilities', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2FieldSelectionOptionsChoiceAppliedCapabilities, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2FieldSelectionOptionsChoiceAppliedCapabilities::Representation
      
          property :create_time, as: 'createTime'
          property :creator, as: 'creator', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2UserInfo, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2UserInfo::Representation
      
          property :disable_time, as: 'disableTime'
          property :disabler, as: 'disabler', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2UserInfo, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2UserInfo::Representation
      
          property :display_hints, as: 'displayHints', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2FieldSelectionOptionsChoiceDisplayHints, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2FieldSelectionOptionsChoiceDisplayHints::Representation
      
          property :id, as: 'id'
          property :lifecycle, as: 'lifecycle', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2Lifecycle, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2Lifecycle::Representation
      
          property :lock_status, as: 'lockStatus', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2LockStatus, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2LockStatus::Representation
      
          property :properties, as: 'properties', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2FieldSelectionOptionsChoiceProperties, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2FieldSelectionOptionsChoiceProperties::Representation
      
          property :publish_time, as: 'publishTime'
          property :publisher, as: 'publisher', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2UserInfo, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2UserInfo::Representation
      
          property :schema_capabilities, as: 'schemaCapabilities', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2FieldSelectionOptionsChoiceSchemaCapabilities, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2FieldSelectionOptionsChoiceSchemaCapabilities::Representation
      
          property :update_time, as: 'updateTime'
          property :updater, as: 'updater', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2UserInfo, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2UserInfo::Representation
      
        end
      end
      
      class GoogleAppsDriveLabelsV2FieldSelectionOptionsChoiceAppliedCapabilities
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :can_read, as: 'canRead'
          property :can_search, as: 'canSearch'
          property :can_select, as: 'canSelect'
        end
      end
      
      class GoogleAppsDriveLabelsV2FieldSelectionOptionsChoiceDisplayHints
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :badge_colors, as: 'badgeColors', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2BadgeColors, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2BadgeColors::Representation
      
          property :badge_priority, :numeric_string => true, as: 'badgePriority'
          property :dark_badge_colors, as: 'darkBadgeColors', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2BadgeColors, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2BadgeColors::Representation
      
          property :disabled, as: 'disabled'
          property :hidden_in_search, as: 'hiddenInSearch'
          property :shown_in_apply, as: 'shownInApply'
        end
      end
      
      class GoogleAppsDriveLabelsV2FieldSelectionOptionsChoiceProperties
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :badge_config, as: 'badgeConfig', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2BadgeConfig, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2BadgeConfig::Representation
      
          property :description, as: 'description'
          property :display_name, as: 'displayName'
          property :insert_before_choice, as: 'insertBeforeChoice'
        end
      end
      
      class GoogleAppsDriveLabelsV2FieldSelectionOptionsChoiceSchemaCapabilities
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :can_delete, as: 'canDelete'
          property :can_disable, as: 'canDisable'
          property :can_enable, as: 'canEnable'
          property :can_update, as: 'canUpdate'
        end
      end
      
      class GoogleAppsDriveLabelsV2FieldTextOptions
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :max_length, as: 'maxLength'
          property :min_length, as: 'minLength'
        end
      end
      
      class GoogleAppsDriveLabelsV2FieldUserOptions
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :list_options, as: 'listOptions', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2FieldListOptions, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2FieldListOptions::Representation
      
        end
      end
      
      class GoogleAppsDriveLabelsV2IntegerLimits
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :max_value, :numeric_string => true, as: 'maxValue'
          property :min_value, :numeric_string => true, as: 'minValue'
        end
      end
      
      class GoogleAppsDriveLabelsV2Label
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :applied_capabilities, as: 'appliedCapabilities', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2LabelAppliedCapabilities, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2LabelAppliedCapabilities::Representation
      
          property :applied_label_policy, as: 'appliedLabelPolicy', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2LabelAppliedLabelPolicy, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2LabelAppliedLabelPolicy::Representation
      
          property :create_time, as: 'createTime'
          property :creator, as: 'creator', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2UserInfo, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2UserInfo::Representation
      
          property :customer, as: 'customer'
          property :disable_time, as: 'disableTime'
          property :disabler, as: 'disabler', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2UserInfo, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2UserInfo::Representation
      
          property :display_hints, as: 'displayHints', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2LabelDisplayHints, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2LabelDisplayHints::Representation
      
          property :enabled_app_settings, as: 'enabledAppSettings', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2LabelEnabledAppSettings, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2LabelEnabledAppSettings::Representation
      
          collection :fields, as: 'fields', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2Field, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2Field::Representation
      
          property :id, as: 'id'
          property :label_type, as: 'labelType'
          property :learn_more_uri, as: 'learnMoreUri'
          property :lifecycle, as: 'lifecycle', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2Lifecycle, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2Lifecycle::Representation
      
          property :lock_status, as: 'lockStatus', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2LockStatus, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2LockStatus::Representation
      
          property :name, as: 'name'
          property :properties, as: 'properties', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2LabelProperties, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2LabelProperties::Representation
      
          property :publish_time, as: 'publishTime'
          property :publisher, as: 'publisher', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2UserInfo, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2UserInfo::Representation
      
          property :revision_create_time, as: 'revisionCreateTime'
          property :revision_creator, as: 'revisionCreator', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2UserInfo, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2UserInfo::Representation
      
          property :revision_id, as: 'revisionId'
          property :schema_capabilities, as: 'schemaCapabilities', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2LabelSchemaCapabilities, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2LabelSchemaCapabilities::Representation
      
        end
      end
      
      class GoogleAppsDriveLabelsV2LabelAppliedCapabilities
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :can_apply, as: 'canApply'
          property :can_read, as: 'canRead'
          property :can_remove, as: 'canRemove'
        end
      end
      
      class GoogleAppsDriveLabelsV2LabelAppliedLabelPolicy
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :copy_mode, as: 'copyMode'
        end
      end
      
      class GoogleAppsDriveLabelsV2LabelDisplayHints
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :disabled, as: 'disabled'
          property :hidden_in_search, as: 'hiddenInSearch'
          property :priority, :numeric_string => true, as: 'priority'
          property :shown_in_apply, as: 'shownInApply'
        end
      end
      
      class GoogleAppsDriveLabelsV2LabelEnabledAppSettings
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :enabled_apps, as: 'enabledApps', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2LabelEnabledAppSettingsEnabledApp, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2LabelEnabledAppSettingsEnabledApp::Representation
      
        end
      end
      
      class GoogleAppsDriveLabelsV2LabelEnabledAppSettingsEnabledApp
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :app, as: 'app'
        end
      end
      
      class GoogleAppsDriveLabelsV2LabelLimits
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :field_limits, as: 'fieldLimits', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2FieldLimits, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2FieldLimits::Representation
      
          property :max_deleted_fields, as: 'maxDeletedFields'
          property :max_description_length, as: 'maxDescriptionLength'
          property :max_draft_revisions, as: 'maxDraftRevisions'
          property :max_fields, as: 'maxFields'
          property :max_title_length, as: 'maxTitleLength'
          property :name, as: 'name'
        end
      end
      
      class GoogleAppsDriveLabelsV2LabelLock
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :capabilities, as: 'capabilities', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2LabelLockCapabilities, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2LabelLockCapabilities::Representation
      
          property :choice_id, as: 'choiceId'
          property :create_time, as: 'createTime'
          property :creator, as: 'creator', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2UserInfo, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2UserInfo::Representation
      
          property :delete_time, as: 'deleteTime'
          property :field_id, as: 'fieldId'
          property :name, as: 'name'
          property :state, as: 'state'
        end
      end
      
      class GoogleAppsDriveLabelsV2LabelLockCapabilities
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :can_view_policy, as: 'canViewPolicy'
        end
      end
      
      class GoogleAppsDriveLabelsV2LabelPermission
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :audience, as: 'audience'
          property :email, as: 'email'
          property :group, as: 'group'
          property :name, as: 'name'
          property :person, as: 'person'
          property :role, as: 'role'
        end
      end
      
      class GoogleAppsDriveLabelsV2LabelProperties
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :description, as: 'description'
          property :title, as: 'title'
        end
      end
      
      class GoogleAppsDriveLabelsV2LabelSchemaCapabilities
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :can_delete, as: 'canDelete'
          property :can_disable, as: 'canDisable'
          property :can_enable, as: 'canEnable'
          property :can_update, as: 'canUpdate'
        end
      end
      
      class GoogleAppsDriveLabelsV2Lifecycle
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :disabled_policy, as: 'disabledPolicy', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2LifecycleDisabledPolicy, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2LifecycleDisabledPolicy::Representation
      
          property :has_unpublished_changes, as: 'hasUnpublishedChanges'
          property :state, as: 'state'
        end
      end
      
      class GoogleAppsDriveLabelsV2LifecycleDisabledPolicy
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :hide_in_search, as: 'hideInSearch'
          property :show_in_apply, as: 'showInApply'
        end
      end
      
      class GoogleAppsDriveLabelsV2ListLabelLocksResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :label_locks, as: 'labelLocks', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2LabelLock, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2LabelLock::Representation
      
          property :next_page_token, as: 'nextPageToken'
        end
      end
      
      class GoogleAppsDriveLabelsV2ListLabelPermissionsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :label_permissions, as: 'labelPermissions', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2LabelPermission, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2LabelPermission::Representation
      
          property :next_page_token, as: 'nextPageToken'
        end
      end
      
      class GoogleAppsDriveLabelsV2ListLabelsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :labels, as: 'labels', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2Label, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2Label::Representation
      
          property :next_page_token, as: 'nextPageToken'
        end
      end
      
      class GoogleAppsDriveLabelsV2ListLimits
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :max_entries, as: 'maxEntries'
        end
      end
      
      class GoogleAppsDriveLabelsV2LockStatus
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :locked, as: 'locked'
        end
      end
      
      class GoogleAppsDriveLabelsV2LongTextLimits
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :max_length, as: 'maxLength'
          property :min_length, as: 'minLength'
        end
      end
      
      class GoogleAppsDriveLabelsV2PublishLabelRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :language_code, as: 'languageCode'
          property :use_admin_access, as: 'useAdminAccess'
          property :write_control, as: 'writeControl', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2WriteControl, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2WriteControl::Representation
      
        end
      end
      
      class GoogleAppsDriveLabelsV2SelectionLimits
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :list_limits, as: 'listLimits', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2ListLimits, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2ListLimits::Representation
      
          property :max_choices, as: 'maxChoices'
          property :max_deleted_choices, as: 'maxDeletedChoices'
          property :max_display_name_length, as: 'maxDisplayNameLength'
          property :max_id_length, as: 'maxIdLength'
        end
      end
      
      class GoogleAppsDriveLabelsV2TextLimits
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :max_length, as: 'maxLength'
          property :min_length, as: 'minLength'
        end
      end
      
      class GoogleAppsDriveLabelsV2UpdateLabelCopyModeRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :copy_mode, as: 'copyMode'
          property :language_code, as: 'languageCode'
          property :use_admin_access, as: 'useAdminAccess'
          property :view, as: 'view'
        end
      end
      
      class GoogleAppsDriveLabelsV2UpdateLabelEnabledAppSettingsRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :enabled_app_settings, as: 'enabledAppSettings', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2LabelEnabledAppSettings, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2LabelEnabledAppSettings::Representation
      
          property :language_code, as: 'languageCode'
          property :use_admin_access, as: 'useAdminAccess'
          property :view, as: 'view'
        end
      end
      
      class GoogleAppsDriveLabelsV2UpdateLabelPermissionRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :label_permission, as: 'labelPermission', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2LabelPermission, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2LabelPermission::Representation
      
          property :parent, as: 'parent'
          property :use_admin_access, as: 'useAdminAccess'
        end
      end
      
      class GoogleAppsDriveLabelsV2UserCapabilities
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :can_access_label_manager, as: 'canAccessLabelManager'
          property :can_administrate_labels, as: 'canAdministrateLabels'
          property :can_create_admin_labels, as: 'canCreateAdminLabels'
          property :can_create_shared_labels, as: 'canCreateSharedLabels'
          property :name, as: 'name'
        end
      end
      
      class GoogleAppsDriveLabelsV2UserInfo
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :person, as: 'person'
        end
      end
      
      class GoogleAppsDriveLabelsV2UserLimits
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :list_limits, as: 'listLimits', class: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2ListLimits, decorator: Google::Apis::DrivelabelsV2::GoogleAppsDriveLabelsV2ListLimits::Representation
      
        end
      end
      
      class GoogleAppsDriveLabelsV2WriteControl
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :required_revision_id, as: 'requiredRevisionId'
        end
      end
      
      class GoogleProtobufEmpty
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
        end
      end
      
      class GoogleTypeColor
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :alpha, as: 'alpha'
          property :blue, as: 'blue'
          property :green, as: 'green'
          property :red, as: 'red'
        end
      end
      
      class GoogleTypeDate
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :day, as: 'day'
          property :month, as: 'month'
          property :year, as: 'year'
        end
      end
    end
  end
end
