# 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 ApihubV1
      
      class Empty
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1ApiMetadata
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1ActionExecutionDetail
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1AllowedValue
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1Api
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1ApiData
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1ApiHubInstance
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1ApiHubResource
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1ApiKeyConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1ApiMetadataList
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1ApiOperation
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1ApplicationIntegrationEndpointDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1Attribute
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1AttributeValues
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1AuthConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1AuthConfigTemplate
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1CollectApiDataRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1Config
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1ConfigTemplate
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1ConfigValueOption
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1ConfigVariable
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1ConfigVariableTemplate
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1Curation
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1CurationConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1CustomCuration
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1Definition
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1Dependency
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1DependencyEntityReference
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1DependencyErrorDetail
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1Deployment
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1DeploymentMetadata
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1DisablePluginInstanceActionRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1DisablePluginRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1DiscoveredApiObservation
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1DiscoveredApiOperation
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1Documentation
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1EnablePluginInstanceActionRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1EnablePluginRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1Endpoint
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1EnumAttributeValues
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1ExecutePluginInstanceActionRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1ExecutionStatus
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1ExternalApi
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1GoogleServiceAccountConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1Header
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1HostProjectRegistration
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1HostingService
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1HttpOperation
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1HttpOperationDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1HttpRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1HttpResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1Issue
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1LastExecution
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1LintResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1LintSpecRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1ListApiOperationsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1ListApisResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1ListAttributesResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1ListCurationsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1ListDependenciesResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1ListDeploymentsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1ListDiscoveredApiObservationsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1ListDiscoveredApiOperationsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1ListExternalApisResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1ListHostProjectRegistrationsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1ListPluginInstancesResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1ListPluginsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1ListRuntimeProjectAttachmentsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1ListSpecsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1ListVersionsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1LookupApiHubInstanceResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1LookupRuntimeProjectAttachmentResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1ManagePluginInstanceSourceDataRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1ManagePluginInstanceSourceDataResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1MatchResult
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1MultiIntValues
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1MultiSelectValues
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1MultiStringValues
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1Oauth2ClientCredentialsConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1OpenApiSpecDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1OperationDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1OperationMetadata
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1Owner
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1Path
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1PathParam
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1Plugin
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1PluginActionConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1PluginInstance
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1PluginInstanceAction
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1PluginInstanceActionId
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1PluginInstanceActionSource
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1Point
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1QueryParam
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1Range
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1ResourceConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1RuntimeProjectAttachment
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1Schema
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1SearchResourcesRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1SearchResourcesResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1SearchResult
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1Secret
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1SourceMetadata
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1Spec
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1SpecContents
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1SpecDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1SpecMetadata
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1StringAttributeValues
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1StyleGuide
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1StyleGuideContents
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1SummaryEntry
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1UserPasswordConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1Version
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudApihubV1VersionMetadata
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudCommonOperationMetadata
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudLocationListLocationsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudLocationLocation
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleLongrunningCancelOperationRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleLongrunningListOperationsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleLongrunningOperation
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleRpcStatus
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class Empty
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
        end
      end
      
      class GoogleCloudApihubV1ApiMetadata
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :api, as: 'api', class: Google::Apis::ApihubV1::GoogleCloudApihubV1Api, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1Api::Representation
      
          property :original_create_time, as: 'originalCreateTime'
          property :original_id, as: 'originalId'
          property :original_update_time, as: 'originalUpdateTime'
          collection :versions, as: 'versions', class: Google::Apis::ApihubV1::GoogleCloudApihubV1VersionMetadata, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1VersionMetadata::Representation
      
        end
      end
      
      class GoogleCloudApihubV1ActionExecutionDetail
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :action_id, as: 'actionId'
        end
      end
      
      class GoogleCloudApihubV1AllowedValue
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :description, as: 'description'
          property :display_name, as: 'displayName'
          property :id, as: 'id'
          property :immutable, as: 'immutable'
        end
      end
      
      class GoogleCloudApihubV1Api
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :api_functional_requirements, as: 'apiFunctionalRequirements', class: Google::Apis::ApihubV1::GoogleCloudApihubV1AttributeValues, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1AttributeValues::Representation
      
          property :api_requirements, as: 'apiRequirements', class: Google::Apis::ApihubV1::GoogleCloudApihubV1AttributeValues, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1AttributeValues::Representation
      
          property :api_style, as: 'apiStyle', class: Google::Apis::ApihubV1::GoogleCloudApihubV1AttributeValues, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1AttributeValues::Representation
      
          property :api_technical_requirements, as: 'apiTechnicalRequirements', class: Google::Apis::ApihubV1::GoogleCloudApihubV1AttributeValues, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1AttributeValues::Representation
      
          hash :attributes, as: 'attributes', class: Google::Apis::ApihubV1::GoogleCloudApihubV1AttributeValues, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1AttributeValues::Representation
      
          property :business_unit, as: 'businessUnit', class: Google::Apis::ApihubV1::GoogleCloudApihubV1AttributeValues, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1AttributeValues::Representation
      
          property :create_time, as: 'createTime'
          property :description, as: 'description'
          property :display_name, as: 'displayName'
          property :documentation, as: 'documentation', class: Google::Apis::ApihubV1::GoogleCloudApihubV1Documentation, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1Documentation::Representation
      
          property :fingerprint, as: 'fingerprint'
          property :maturity_level, as: 'maturityLevel', class: Google::Apis::ApihubV1::GoogleCloudApihubV1AttributeValues, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1AttributeValues::Representation
      
          property :name, as: 'name'
          property :owner, as: 'owner', class: Google::Apis::ApihubV1::GoogleCloudApihubV1Owner, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1Owner::Representation
      
          property :selected_version, as: 'selectedVersion'
          collection :source_metadata, as: 'sourceMetadata', class: Google::Apis::ApihubV1::GoogleCloudApihubV1SourceMetadata, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1SourceMetadata::Representation
      
          property :target_user, as: 'targetUser', class: Google::Apis::ApihubV1::GoogleCloudApihubV1AttributeValues, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1AttributeValues::Representation
      
          property :team, as: 'team', class: Google::Apis::ApihubV1::GoogleCloudApihubV1AttributeValues, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1AttributeValues::Representation
      
          property :update_time, as: 'updateTime'
          collection :versions, as: 'versions'
        end
      end
      
      class GoogleCloudApihubV1ApiData
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :api_metadata_list, as: 'apiMetadataList', class: Google::Apis::ApihubV1::GoogleCloudApihubV1ApiMetadataList, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1ApiMetadataList::Representation
      
        end
      end
      
      class GoogleCloudApihubV1ApiHubInstance
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :config, as: 'config', class: Google::Apis::ApihubV1::GoogleCloudApihubV1Config, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1Config::Representation
      
          property :create_time, as: 'createTime'
          property :description, as: 'description'
          hash :labels, as: 'labels'
          property :name, as: 'name'
          property :state, as: 'state'
          property :state_message, as: 'stateMessage'
          property :update_time, as: 'updateTime'
        end
      end
      
      class GoogleCloudApihubV1ApiHubResource
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :api, as: 'api', class: Google::Apis::ApihubV1::GoogleCloudApihubV1Api, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1Api::Representation
      
          property :definition, as: 'definition', class: Google::Apis::ApihubV1::GoogleCloudApihubV1Definition, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1Definition::Representation
      
          property :deployment, as: 'deployment', class: Google::Apis::ApihubV1::GoogleCloudApihubV1Deployment, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1Deployment::Representation
      
          property :operation, as: 'operation', class: Google::Apis::ApihubV1::GoogleCloudApihubV1ApiOperation, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1ApiOperation::Representation
      
          property :spec, as: 'spec', class: Google::Apis::ApihubV1::GoogleCloudApihubV1Spec, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1Spec::Representation
      
          property :version, as: 'version', class: Google::Apis::ApihubV1::GoogleCloudApihubV1Version, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1Version::Representation
      
        end
      end
      
      class GoogleCloudApihubV1ApiKeyConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :api_key, as: 'apiKey', class: Google::Apis::ApihubV1::GoogleCloudApihubV1Secret, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1Secret::Representation
      
          property :http_element_location, as: 'httpElementLocation'
          property :name, as: 'name'
        end
      end
      
      class GoogleCloudApihubV1ApiMetadataList
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :api_metadata, as: 'apiMetadata', class: Google::Apis::ApihubV1::GoogleCloudApihubV1ApiMetadata, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1ApiMetadata::Representation
      
        end
      end
      
      class GoogleCloudApihubV1ApiOperation
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          hash :attributes, as: 'attributes', class: Google::Apis::ApihubV1::GoogleCloudApihubV1AttributeValues, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1AttributeValues::Representation
      
          property :create_time, as: 'createTime'
          property :details, as: 'details', class: Google::Apis::ApihubV1::GoogleCloudApihubV1OperationDetails, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1OperationDetails::Representation
      
          property :name, as: 'name'
          collection :source_metadata, as: 'sourceMetadata', class: Google::Apis::ApihubV1::GoogleCloudApihubV1SourceMetadata, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1SourceMetadata::Representation
      
          property :spec, as: 'spec'
          property :update_time, as: 'updateTime'
        end
      end
      
      class GoogleCloudApihubV1ApplicationIntegrationEndpointDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :trigger_id, as: 'triggerId'
          property :uri, as: 'uri'
        end
      end
      
      class GoogleCloudApihubV1Attribute
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :allowed_values, as: 'allowedValues', class: Google::Apis::ApihubV1::GoogleCloudApihubV1AllowedValue, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1AllowedValue::Representation
      
          property :cardinality, as: 'cardinality'
          property :create_time, as: 'createTime'
          property :data_type, as: 'dataType'
          property :definition_type, as: 'definitionType'
          property :description, as: 'description'
          property :display_name, as: 'displayName'
          property :mandatory, as: 'mandatory'
          property :name, as: 'name'
          property :scope, as: 'scope'
          property :update_time, as: 'updateTime'
        end
      end
      
      class GoogleCloudApihubV1AttributeValues
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :attribute, as: 'attribute'
          property :enum_values, as: 'enumValues', class: Google::Apis::ApihubV1::GoogleCloudApihubV1EnumAttributeValues, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1EnumAttributeValues::Representation
      
          property :json_values, as: 'jsonValues', class: Google::Apis::ApihubV1::GoogleCloudApihubV1StringAttributeValues, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1StringAttributeValues::Representation
      
          property :string_values, as: 'stringValues', class: Google::Apis::ApihubV1::GoogleCloudApihubV1StringAttributeValues, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1StringAttributeValues::Representation
      
          property :uri_values, as: 'uriValues', class: Google::Apis::ApihubV1::GoogleCloudApihubV1StringAttributeValues, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1StringAttributeValues::Representation
      
        end
      end
      
      class GoogleCloudApihubV1AuthConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :api_key_config, as: 'apiKeyConfig', class: Google::Apis::ApihubV1::GoogleCloudApihubV1ApiKeyConfig, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1ApiKeyConfig::Representation
      
          property :auth_type, as: 'authType'
          property :google_service_account_config, as: 'googleServiceAccountConfig', class: Google::Apis::ApihubV1::GoogleCloudApihubV1GoogleServiceAccountConfig, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1GoogleServiceAccountConfig::Representation
      
          property :oauth2_client_credentials_config, as: 'oauth2ClientCredentialsConfig', class: Google::Apis::ApihubV1::GoogleCloudApihubV1Oauth2ClientCredentialsConfig, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1Oauth2ClientCredentialsConfig::Representation
      
          property :user_password_config, as: 'userPasswordConfig', class: Google::Apis::ApihubV1::GoogleCloudApihubV1UserPasswordConfig, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1UserPasswordConfig::Representation
      
        end
      end
      
      class GoogleCloudApihubV1AuthConfigTemplate
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :service_account, as: 'serviceAccount', class: Google::Apis::ApihubV1::GoogleCloudApihubV1GoogleServiceAccountConfig, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1GoogleServiceAccountConfig::Representation
      
          collection :supported_auth_types, as: 'supportedAuthTypes'
        end
      end
      
      class GoogleCloudApihubV1CollectApiDataRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :action_id, as: 'actionId'
          property :api_data, as: 'apiData', class: Google::Apis::ApihubV1::GoogleCloudApihubV1ApiData, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1ApiData::Representation
      
          property :collection_type, as: 'collectionType'
          property :plugin_instance, as: 'pluginInstance'
        end
      end
      
      class GoogleCloudApihubV1Config
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :cmek_key_name, as: 'cmekKeyName'
          property :disable_search, as: 'disableSearch'
          property :encryption_type, as: 'encryptionType'
          property :vertex_location, as: 'vertexLocation'
        end
      end
      
      class GoogleCloudApihubV1ConfigTemplate
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :additional_config_template, as: 'additionalConfigTemplate', class: Google::Apis::ApihubV1::GoogleCloudApihubV1ConfigVariableTemplate, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1ConfigVariableTemplate::Representation
      
          property :auth_config_template, as: 'authConfigTemplate', class: Google::Apis::ApihubV1::GoogleCloudApihubV1AuthConfigTemplate, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1AuthConfigTemplate::Representation
      
        end
      end
      
      class GoogleCloudApihubV1ConfigValueOption
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :description, as: 'description'
          property :display_name, as: 'displayName'
          property :id, as: 'id'
        end
      end
      
      class GoogleCloudApihubV1ConfigVariable
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :bool_value, as: 'boolValue'
          property :enum_value, as: 'enumValue', class: Google::Apis::ApihubV1::GoogleCloudApihubV1ConfigValueOption, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1ConfigValueOption::Representation
      
          property :int_value, :numeric_string => true, as: 'intValue'
          property :key, as: 'key'
          property :multi_int_values, as: 'multiIntValues', class: Google::Apis::ApihubV1::GoogleCloudApihubV1MultiIntValues, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1MultiIntValues::Representation
      
          property :multi_select_values, as: 'multiSelectValues', class: Google::Apis::ApihubV1::GoogleCloudApihubV1MultiSelectValues, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1MultiSelectValues::Representation
      
          property :multi_string_values, as: 'multiStringValues', class: Google::Apis::ApihubV1::GoogleCloudApihubV1MultiStringValues, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1MultiStringValues::Representation
      
          property :secret_value, as: 'secretValue', class: Google::Apis::ApihubV1::GoogleCloudApihubV1Secret, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1Secret::Representation
      
          property :string_value, as: 'stringValue'
        end
      end
      
      class GoogleCloudApihubV1ConfigVariableTemplate
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :description, as: 'description'
          collection :enum_options, as: 'enumOptions', class: Google::Apis::ApihubV1::GoogleCloudApihubV1ConfigValueOption, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1ConfigValueOption::Representation
      
          property :id, as: 'id'
          collection :multi_select_options, as: 'multiSelectOptions', class: Google::Apis::ApihubV1::GoogleCloudApihubV1ConfigValueOption, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1ConfigValueOption::Representation
      
          property :required, as: 'required'
          property :validation_regex, as: 'validationRegex'
          property :value_type, as: 'valueType'
        end
      end
      
      class GoogleCloudApihubV1Curation
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :create_time, as: 'createTime'
          property :description, as: 'description'
          property :display_name, as: 'displayName'
          property :endpoint, as: 'endpoint', class: Google::Apis::ApihubV1::GoogleCloudApihubV1Endpoint, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1Endpoint::Representation
      
          property :last_execution_error_code, as: 'lastExecutionErrorCode'
          property :last_execution_error_message, as: 'lastExecutionErrorMessage'
          property :last_execution_state, as: 'lastExecutionState'
          property :name, as: 'name'
          collection :plugin_instance_actions, as: 'pluginInstanceActions', class: Google::Apis::ApihubV1::GoogleCloudApihubV1PluginInstanceActionId, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1PluginInstanceActionId::Representation
      
          property :update_time, as: 'updateTime'
        end
      end
      
      class GoogleCloudApihubV1CurationConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :curation_type, as: 'curationType'
          property :custom_curation, as: 'customCuration', class: Google::Apis::ApihubV1::GoogleCloudApihubV1CustomCuration, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1CustomCuration::Representation
      
        end
      end
      
      class GoogleCloudApihubV1CustomCuration
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :curation, as: 'curation'
        end
      end
      
      class GoogleCloudApihubV1Definition
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          hash :attributes, as: 'attributes', class: Google::Apis::ApihubV1::GoogleCloudApihubV1AttributeValues, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1AttributeValues::Representation
      
          property :create_time, as: 'createTime'
          property :name, as: 'name'
          property :schema, as: 'schema', class: Google::Apis::ApihubV1::GoogleCloudApihubV1Schema, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1Schema::Representation
      
          property :spec, as: 'spec'
          property :type, as: 'type'
          property :update_time, as: 'updateTime'
        end
      end
      
      class GoogleCloudApihubV1Dependency
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          hash :attributes, as: 'attributes', class: Google::Apis::ApihubV1::GoogleCloudApihubV1AttributeValues, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1AttributeValues::Representation
      
          property :consumer, as: 'consumer', class: Google::Apis::ApihubV1::GoogleCloudApihubV1DependencyEntityReference, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1DependencyEntityReference::Representation
      
          property :create_time, as: 'createTime'
          property :description, as: 'description'
          property :discovery_mode, as: 'discoveryMode'
          property :error_detail, as: 'errorDetail', class: Google::Apis::ApihubV1::GoogleCloudApihubV1DependencyErrorDetail, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1DependencyErrorDetail::Representation
      
          property :name, as: 'name'
          property :state, as: 'state'
          property :supplier, as: 'supplier', class: Google::Apis::ApihubV1::GoogleCloudApihubV1DependencyEntityReference, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1DependencyEntityReference::Representation
      
          property :update_time, as: 'updateTime'
        end
      end
      
      class GoogleCloudApihubV1DependencyEntityReference
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :display_name, as: 'displayName'
          property :external_api_resource_name, as: 'externalApiResourceName'
          property :operation_resource_name, as: 'operationResourceName'
        end
      end
      
      class GoogleCloudApihubV1DependencyErrorDetail
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :error, as: 'error'
          property :error_time, as: 'errorTime'
        end
      end
      
      class GoogleCloudApihubV1Deployment
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :api_versions, as: 'apiVersions'
          hash :attributes, as: 'attributes', class: Google::Apis::ApihubV1::GoogleCloudApihubV1AttributeValues, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1AttributeValues::Representation
      
          property :create_time, as: 'createTime'
          property :deployment_type, as: 'deploymentType', class: Google::Apis::ApihubV1::GoogleCloudApihubV1AttributeValues, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1AttributeValues::Representation
      
          property :description, as: 'description'
          property :display_name, as: 'displayName'
          property :documentation, as: 'documentation', class: Google::Apis::ApihubV1::GoogleCloudApihubV1Documentation, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1Documentation::Representation
      
          collection :endpoints, as: 'endpoints'
          property :environment, as: 'environment', class: Google::Apis::ApihubV1::GoogleCloudApihubV1AttributeValues, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1AttributeValues::Representation
      
          property :management_url, as: 'managementUrl', class: Google::Apis::ApihubV1::GoogleCloudApihubV1AttributeValues, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1AttributeValues::Representation
      
          property :name, as: 'name'
          property :resource_uri, as: 'resourceUri'
          property :slo, as: 'slo', class: Google::Apis::ApihubV1::GoogleCloudApihubV1AttributeValues, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1AttributeValues::Representation
      
          property :source_environment, as: 'sourceEnvironment'
          collection :source_metadata, as: 'sourceMetadata', class: Google::Apis::ApihubV1::GoogleCloudApihubV1SourceMetadata, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1SourceMetadata::Representation
      
          property :source_project, as: 'sourceProject'
          property :source_uri, as: 'sourceUri', class: Google::Apis::ApihubV1::GoogleCloudApihubV1AttributeValues, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1AttributeValues::Representation
      
          property :update_time, as: 'updateTime'
        end
      end
      
      class GoogleCloudApihubV1DeploymentMetadata
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :deployment, as: 'deployment', class: Google::Apis::ApihubV1::GoogleCloudApihubV1Deployment, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1Deployment::Representation
      
          property :original_create_time, as: 'originalCreateTime'
          property :original_id, as: 'originalId'
          property :original_update_time, as: 'originalUpdateTime'
        end
      end
      
      class GoogleCloudApihubV1DisablePluginInstanceActionRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :action_id, as: 'actionId'
        end
      end
      
      class GoogleCloudApihubV1DisablePluginRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
        end
      end
      
      class GoogleCloudApihubV1DiscoveredApiObservation
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :api_operation_count, :numeric_string => true, as: 'apiOperationCount'
          property :create_time, as: 'createTime'
          property :hostname, as: 'hostname'
          property :known_operations_count, :numeric_string => true, as: 'knownOperationsCount'
          property :last_event_detected_time, as: 'lastEventDetectedTime'
          property :name, as: 'name'
          property :origin, as: 'origin'
          collection :server_ips, as: 'serverIps'
          collection :source_locations, as: 'sourceLocations'
          property :source_metadata, as: 'sourceMetadata', class: Google::Apis::ApihubV1::GoogleCloudApihubV1SourceMetadata, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1SourceMetadata::Representation
      
          collection :source_types, as: 'sourceTypes'
          property :style, as: 'style'
          property :unknown_operations_count, :numeric_string => true, as: 'unknownOperationsCount'
          property :update_time, as: 'updateTime'
        end
      end
      
      class GoogleCloudApihubV1DiscoveredApiOperation
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :classification, as: 'classification'
          property :count, :numeric_string => true, as: 'count'
          property :create_time, as: 'createTime'
          property :first_seen_time, as: 'firstSeenTime'
          property :http_operation, as: 'httpOperation', class: Google::Apis::ApihubV1::GoogleCloudApihubV1HttpOperationDetails, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1HttpOperationDetails::Representation
      
          property :last_seen_time, as: 'lastSeenTime'
          collection :match_results, as: 'matchResults', class: Google::Apis::ApihubV1::GoogleCloudApihubV1MatchResult, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1MatchResult::Representation
      
          property :name, as: 'name'
          property :source_metadata, as: 'sourceMetadata', class: Google::Apis::ApihubV1::GoogleCloudApihubV1SourceMetadata, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1SourceMetadata::Representation
      
          property :update_time, as: 'updateTime'
        end
      end
      
      class GoogleCloudApihubV1Documentation
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :external_uri, as: 'externalUri'
        end
      end
      
      class GoogleCloudApihubV1EnablePluginInstanceActionRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :action_id, as: 'actionId'
        end
      end
      
      class GoogleCloudApihubV1EnablePluginRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
        end
      end
      
      class GoogleCloudApihubV1Endpoint
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :application_integration_endpoint_details, as: 'applicationIntegrationEndpointDetails', class: Google::Apis::ApihubV1::GoogleCloudApihubV1ApplicationIntegrationEndpointDetails, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1ApplicationIntegrationEndpointDetails::Representation
      
        end
      end
      
      class GoogleCloudApihubV1EnumAttributeValues
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :values, as: 'values', class: Google::Apis::ApihubV1::GoogleCloudApihubV1AllowedValue, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1AllowedValue::Representation
      
        end
      end
      
      class GoogleCloudApihubV1ExecutePluginInstanceActionRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :action_execution_detail, as: 'actionExecutionDetail', class: Google::Apis::ApihubV1::GoogleCloudApihubV1ActionExecutionDetail, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1ActionExecutionDetail::Representation
      
        end
      end
      
      class GoogleCloudApihubV1ExecutionStatus
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :current_execution_state, as: 'currentExecutionState'
          property :last_execution, as: 'lastExecution', class: Google::Apis::ApihubV1::GoogleCloudApihubV1LastExecution, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1LastExecution::Representation
      
        end
      end
      
      class GoogleCloudApihubV1ExternalApi
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          hash :attributes, as: 'attributes', class: Google::Apis::ApihubV1::GoogleCloudApihubV1AttributeValues, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1AttributeValues::Representation
      
          property :create_time, as: 'createTime'
          property :description, as: 'description'
          property :display_name, as: 'displayName'
          property :documentation, as: 'documentation', class: Google::Apis::ApihubV1::GoogleCloudApihubV1Documentation, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1Documentation::Representation
      
          collection :endpoints, as: 'endpoints'
          property :name, as: 'name'
          collection :paths, as: 'paths'
          property :update_time, as: 'updateTime'
        end
      end
      
      class GoogleCloudApihubV1GoogleServiceAccountConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :service_account, as: 'serviceAccount'
        end
      end
      
      class GoogleCloudApihubV1Header
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :count, :numeric_string => true, as: 'count'
          property :data_type, as: 'dataType'
          property :name, as: 'name'
        end
      end
      
      class GoogleCloudApihubV1HostProjectRegistration
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :create_time, as: 'createTime'
          property :gcp_project, as: 'gcpProject'
          property :name, as: 'name'
        end
      end
      
      class GoogleCloudApihubV1HostingService
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :service_uri, as: 'serviceUri'
        end
      end
      
      class GoogleCloudApihubV1HttpOperation
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :method_prop, as: 'method'
          property :path, as: 'path', class: Google::Apis::ApihubV1::GoogleCloudApihubV1Path, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1Path::Representation
      
        end
      end
      
      class GoogleCloudApihubV1HttpOperationDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :http_operation, as: 'httpOperation', class: Google::Apis::ApihubV1::GoogleCloudApihubV1HttpOperation, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1HttpOperation::Representation
      
          collection :path_params, as: 'pathParams', class: Google::Apis::ApihubV1::GoogleCloudApihubV1PathParam, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1PathParam::Representation
      
          hash :query_params, as: 'queryParams', class: Google::Apis::ApihubV1::GoogleCloudApihubV1QueryParam, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1QueryParam::Representation
      
          property :request, as: 'request', class: Google::Apis::ApihubV1::GoogleCloudApihubV1HttpRequest, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1HttpRequest::Representation
      
          property :response, as: 'response', class: Google::Apis::ApihubV1::GoogleCloudApihubV1HttpResponse, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1HttpResponse::Representation
      
        end
      end
      
      class GoogleCloudApihubV1HttpRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          hash :headers, as: 'headers', class: Google::Apis::ApihubV1::GoogleCloudApihubV1Header, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1Header::Representation
      
        end
      end
      
      class GoogleCloudApihubV1HttpResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          hash :headers, as: 'headers', class: Google::Apis::ApihubV1::GoogleCloudApihubV1Header, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1Header::Representation
      
          hash :response_codes, as: 'responseCodes'
        end
      end
      
      class GoogleCloudApihubV1Issue
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :code, as: 'code'
          property :message, as: 'message'
          collection :path, as: 'path'
          property :range, as: 'range', class: Google::Apis::ApihubV1::GoogleCloudApihubV1Range, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1Range::Representation
      
          property :severity, as: 'severity'
        end
      end
      
      class GoogleCloudApihubV1LastExecution
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :end_time, as: 'endTime'
          property :error_message, as: 'errorMessage'
          property :result, as: 'result'
          property :start_time, as: 'startTime'
        end
      end
      
      class GoogleCloudApihubV1LintResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :create_time, as: 'createTime'
          collection :issues, as: 'issues', class: Google::Apis::ApihubV1::GoogleCloudApihubV1Issue, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1Issue::Representation
      
          property :linter, as: 'linter'
          property :source, as: 'source'
          property :state, as: 'state'
          collection :summary, as: 'summary', class: Google::Apis::ApihubV1::GoogleCloudApihubV1SummaryEntry, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1SummaryEntry::Representation
      
        end
      end
      
      class GoogleCloudApihubV1LintSpecRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
        end
      end
      
      class GoogleCloudApihubV1ListApiOperationsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :api_operations, as: 'apiOperations', class: Google::Apis::ApihubV1::GoogleCloudApihubV1ApiOperation, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1ApiOperation::Representation
      
          property :next_page_token, as: 'nextPageToken'
        end
      end
      
      class GoogleCloudApihubV1ListApisResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :apis, as: 'apis', class: Google::Apis::ApihubV1::GoogleCloudApihubV1Api, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1Api::Representation
      
          property :next_page_token, as: 'nextPageToken'
        end
      end
      
      class GoogleCloudApihubV1ListAttributesResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :attributes, as: 'attributes', class: Google::Apis::ApihubV1::GoogleCloudApihubV1Attribute, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1Attribute::Representation
      
          property :next_page_token, as: 'nextPageToken'
        end
      end
      
      class GoogleCloudApihubV1ListCurationsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :curations, as: 'curations', class: Google::Apis::ApihubV1::GoogleCloudApihubV1Curation, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1Curation::Representation
      
          property :next_page_token, as: 'nextPageToken'
        end
      end
      
      class GoogleCloudApihubV1ListDependenciesResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :dependencies, as: 'dependencies', class: Google::Apis::ApihubV1::GoogleCloudApihubV1Dependency, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1Dependency::Representation
      
          property :next_page_token, as: 'nextPageToken'
        end
      end
      
      class GoogleCloudApihubV1ListDeploymentsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :deployments, as: 'deployments', class: Google::Apis::ApihubV1::GoogleCloudApihubV1Deployment, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1Deployment::Representation
      
          property :next_page_token, as: 'nextPageToken'
        end
      end
      
      class GoogleCloudApihubV1ListDiscoveredApiObservationsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :discovered_api_observations, as: 'discoveredApiObservations', class: Google::Apis::ApihubV1::GoogleCloudApihubV1DiscoveredApiObservation, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1DiscoveredApiObservation::Representation
      
          property :next_page_token, as: 'nextPageToken'
        end
      end
      
      class GoogleCloudApihubV1ListDiscoveredApiOperationsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :discovered_api_operations, as: 'discoveredApiOperations', class: Google::Apis::ApihubV1::GoogleCloudApihubV1DiscoveredApiOperation, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1DiscoveredApiOperation::Representation
      
          property :next_page_token, as: 'nextPageToken'
        end
      end
      
      class GoogleCloudApihubV1ListExternalApisResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :external_apis, as: 'externalApis', class: Google::Apis::ApihubV1::GoogleCloudApihubV1ExternalApi, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1ExternalApi::Representation
      
          property :next_page_token, as: 'nextPageToken'
        end
      end
      
      class GoogleCloudApihubV1ListHostProjectRegistrationsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :host_project_registrations, as: 'hostProjectRegistrations', class: Google::Apis::ApihubV1::GoogleCloudApihubV1HostProjectRegistration, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1HostProjectRegistration::Representation
      
          property :next_page_token, as: 'nextPageToken'
        end
      end
      
      class GoogleCloudApihubV1ListPluginInstancesResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :next_page_token, as: 'nextPageToken'
          collection :plugin_instances, as: 'pluginInstances', class: Google::Apis::ApihubV1::GoogleCloudApihubV1PluginInstance, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1PluginInstance::Representation
      
        end
      end
      
      class GoogleCloudApihubV1ListPluginsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :next_page_token, as: 'nextPageToken'
          collection :plugins, as: 'plugins', class: Google::Apis::ApihubV1::GoogleCloudApihubV1Plugin, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1Plugin::Representation
      
        end
      end
      
      class GoogleCloudApihubV1ListRuntimeProjectAttachmentsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :next_page_token, as: 'nextPageToken'
          collection :runtime_project_attachments, as: 'runtimeProjectAttachments', class: Google::Apis::ApihubV1::GoogleCloudApihubV1RuntimeProjectAttachment, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1RuntimeProjectAttachment::Representation
      
        end
      end
      
      class GoogleCloudApihubV1ListSpecsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :next_page_token, as: 'nextPageToken'
          collection :specs, as: 'specs', class: Google::Apis::ApihubV1::GoogleCloudApihubV1Spec, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1Spec::Representation
      
        end
      end
      
      class GoogleCloudApihubV1ListVersionsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :next_page_token, as: 'nextPageToken'
          collection :versions, as: 'versions', class: Google::Apis::ApihubV1::GoogleCloudApihubV1Version, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1Version::Representation
      
        end
      end
      
      class GoogleCloudApihubV1LookupApiHubInstanceResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :api_hub_instance, as: 'apiHubInstance', class: Google::Apis::ApihubV1::GoogleCloudApihubV1ApiHubInstance, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1ApiHubInstance::Representation
      
        end
      end
      
      class GoogleCloudApihubV1LookupRuntimeProjectAttachmentResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :runtime_project_attachment, as: 'runtimeProjectAttachment', class: Google::Apis::ApihubV1::GoogleCloudApihubV1RuntimeProjectAttachment, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1RuntimeProjectAttachment::Representation
      
        end
      end
      
      class GoogleCloudApihubV1ManagePluginInstanceSourceDataRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :action, as: 'action'
          property :data, :base64 => true, as: 'data'
          property :data_type, as: 'dataType'
          property :relative_path, as: 'relativePath'
        end
      end
      
      class GoogleCloudApihubV1ManagePluginInstanceSourceDataResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
        end
      end
      
      class GoogleCloudApihubV1MatchResult
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :name, as: 'name'
        end
      end
      
      class GoogleCloudApihubV1MultiIntValues
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :values, as: 'values'
        end
      end
      
      class GoogleCloudApihubV1MultiSelectValues
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :values, as: 'values', class: Google::Apis::ApihubV1::GoogleCloudApihubV1ConfigValueOption, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1ConfigValueOption::Representation
      
        end
      end
      
      class GoogleCloudApihubV1MultiStringValues
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :values, as: 'values'
        end
      end
      
      class GoogleCloudApihubV1Oauth2ClientCredentialsConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :client_id, as: 'clientId'
          property :client_secret, as: 'clientSecret', class: Google::Apis::ApihubV1::GoogleCloudApihubV1Secret, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1Secret::Representation
      
        end
      end
      
      class GoogleCloudApihubV1OpenApiSpecDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :format, as: 'format'
          property :owner, as: 'owner', class: Google::Apis::ApihubV1::GoogleCloudApihubV1Owner, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1Owner::Representation
      
          property :version, as: 'version'
        end
      end
      
      class GoogleCloudApihubV1OperationDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :deprecated, as: 'deprecated'
          property :description, as: 'description'
          property :documentation, as: 'documentation', class: Google::Apis::ApihubV1::GoogleCloudApihubV1Documentation, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1Documentation::Representation
      
          property :http_operation, as: 'httpOperation', class: Google::Apis::ApihubV1::GoogleCloudApihubV1HttpOperation, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1HttpOperation::Representation
      
        end
      end
      
      class GoogleCloudApihubV1OperationMetadata
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :api_version, as: 'apiVersion'
          property :create_time, as: 'createTime'
          property :end_time, as: 'endTime'
          property :requested_cancellation, as: 'requestedCancellation'
          property :status_message, as: 'statusMessage'
          property :target, as: 'target'
          property :verb, as: 'verb'
        end
      end
      
      class GoogleCloudApihubV1Owner
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :display_name, as: 'displayName'
          property :email, as: 'email'
        end
      end
      
      class GoogleCloudApihubV1Path
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :description, as: 'description'
          property :path, as: 'path'
        end
      end
      
      class GoogleCloudApihubV1PathParam
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :data_type, as: 'dataType'
          property :position, as: 'position'
        end
      end
      
      class GoogleCloudApihubV1Plugin
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :actions_config, as: 'actionsConfig', class: Google::Apis::ApihubV1::GoogleCloudApihubV1PluginActionConfig, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1PluginActionConfig::Representation
      
          property :config_template, as: 'configTemplate', class: Google::Apis::ApihubV1::GoogleCloudApihubV1ConfigTemplate, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1ConfigTemplate::Representation
      
          property :create_time, as: 'createTime'
          property :description, as: 'description'
          property :display_name, as: 'displayName'
          property :documentation, as: 'documentation', class: Google::Apis::ApihubV1::GoogleCloudApihubV1Documentation, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1Documentation::Representation
      
          property :gateway_type, as: 'gatewayType'
          property :hosting_service, as: 'hostingService', class: Google::Apis::ApihubV1::GoogleCloudApihubV1HostingService, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1HostingService::Representation
      
          property :name, as: 'name'
          property :ownership_type, as: 'ownershipType'
          property :plugin_category, as: 'pluginCategory'
          property :state, as: 'state'
          property :type, as: 'type', class: Google::Apis::ApihubV1::GoogleCloudApihubV1AttributeValues, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1AttributeValues::Representation
      
          property :update_time, as: 'updateTime'
        end
      end
      
      class GoogleCloudApihubV1PluginActionConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :description, as: 'description'
          property :display_name, as: 'displayName'
          property :id, as: 'id'
          property :trigger_mode, as: 'triggerMode'
        end
      end
      
      class GoogleCloudApihubV1PluginInstance
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :actions, as: 'actions', class: Google::Apis::ApihubV1::GoogleCloudApihubV1PluginInstanceAction, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1PluginInstanceAction::Representation
      
          hash :additional_config, as: 'additionalConfig', class: Google::Apis::ApihubV1::GoogleCloudApihubV1ConfigVariable, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1ConfigVariable::Representation
      
          property :auth_config, as: 'authConfig', class: Google::Apis::ApihubV1::GoogleCloudApihubV1AuthConfig, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1AuthConfig::Representation
      
          property :create_time, as: 'createTime'
          property :display_name, as: 'displayName'
          property :error_message, as: 'errorMessage'
          property :name, as: 'name'
          property :source_project_id, as: 'sourceProjectId'
          property :state, as: 'state'
          property :update_time, as: 'updateTime'
        end
      end
      
      class GoogleCloudApihubV1PluginInstanceAction
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :action_id, as: 'actionId'
          property :curation_config, as: 'curationConfig', class: Google::Apis::ApihubV1::GoogleCloudApihubV1CurationConfig, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1CurationConfig::Representation
      
          property :hub_instance_action, as: 'hubInstanceAction', class: Google::Apis::ApihubV1::GoogleCloudApihubV1ExecutionStatus, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1ExecutionStatus::Representation
      
          property :resource_config, as: 'resourceConfig', class: Google::Apis::ApihubV1::GoogleCloudApihubV1ResourceConfig, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1ResourceConfig::Representation
      
          property :schedule_cron_expression, as: 'scheduleCronExpression'
          property :schedule_time_zone, as: 'scheduleTimeZone'
          property :service_account, as: 'serviceAccount'
          property :state, as: 'state'
        end
      end
      
      class GoogleCloudApihubV1PluginInstanceActionId
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :action_id, as: 'actionId'
          property :plugin_instance, as: 'pluginInstance'
        end
      end
      
      class GoogleCloudApihubV1PluginInstanceActionSource
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :action_id, as: 'actionId'
          property :plugin_instance, as: 'pluginInstance'
        end
      end
      
      class GoogleCloudApihubV1Point
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :character, as: 'character'
          property :line, as: 'line'
        end
      end
      
      class GoogleCloudApihubV1QueryParam
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :count, :numeric_string => true, as: 'count'
          property :data_type, as: 'dataType'
          property :name, as: 'name'
        end
      end
      
      class GoogleCloudApihubV1Range
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :end, as: 'end', class: Google::Apis::ApihubV1::GoogleCloudApihubV1Point, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1Point::Representation
      
          property :start, as: 'start', class: Google::Apis::ApihubV1::GoogleCloudApihubV1Point, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1Point::Representation
      
        end
      end
      
      class GoogleCloudApihubV1ResourceConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :action_type, as: 'actionType'
          property :pubsub_topic, as: 'pubsubTopic'
        end
      end
      
      class GoogleCloudApihubV1RuntimeProjectAttachment
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :create_time, as: 'createTime'
          property :name, as: 'name'
          property :runtime_project, as: 'runtimeProject'
        end
      end
      
      class GoogleCloudApihubV1Schema
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :display_name, as: 'displayName'
          property :raw_value, :base64 => true, as: 'rawValue'
        end
      end
      
      class GoogleCloudApihubV1SearchResourcesRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :filter, as: 'filter'
          property :page_size, as: 'pageSize'
          property :page_token, as: 'pageToken'
          property :query, as: 'query'
        end
      end
      
      class GoogleCloudApihubV1SearchResourcesResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :next_page_token, as: 'nextPageToken'
          collection :search_results, as: 'searchResults', class: Google::Apis::ApihubV1::GoogleCloudApihubV1SearchResult, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1SearchResult::Representation
      
        end
      end
      
      class GoogleCloudApihubV1SearchResult
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :resource, as: 'resource', class: Google::Apis::ApihubV1::GoogleCloudApihubV1ApiHubResource, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1ApiHubResource::Representation
      
        end
      end
      
      class GoogleCloudApihubV1Secret
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :secret_version, as: 'secretVersion'
        end
      end
      
      class GoogleCloudApihubV1SourceMetadata
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :original_resource_create_time, as: 'originalResourceCreateTime'
          property :original_resource_id, as: 'originalResourceId'
          property :original_resource_update_time, as: 'originalResourceUpdateTime'
          property :plugin_instance_action_source, as: 'pluginInstanceActionSource', class: Google::Apis::ApihubV1::GoogleCloudApihubV1PluginInstanceActionSource, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1PluginInstanceActionSource::Representation
      
          property :source_type, as: 'sourceType'
        end
      end
      
      class GoogleCloudApihubV1Spec
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          hash :attributes, as: 'attributes', class: Google::Apis::ApihubV1::GoogleCloudApihubV1AttributeValues, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1AttributeValues::Representation
      
          property :contents, as: 'contents', class: Google::Apis::ApihubV1::GoogleCloudApihubV1SpecContents, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1SpecContents::Representation
      
          property :create_time, as: 'createTime'
          property :details, as: 'details', class: Google::Apis::ApihubV1::GoogleCloudApihubV1SpecDetails, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1SpecDetails::Representation
      
          property :display_name, as: 'displayName'
          property :documentation, as: 'documentation', class: Google::Apis::ApihubV1::GoogleCloudApihubV1Documentation, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1Documentation::Representation
      
          property :lint_response, as: 'lintResponse', class: Google::Apis::ApihubV1::GoogleCloudApihubV1LintResponse, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1LintResponse::Representation
      
          property :name, as: 'name'
          property :parsing_mode, as: 'parsingMode'
          collection :source_metadata, as: 'sourceMetadata', class: Google::Apis::ApihubV1::GoogleCloudApihubV1SourceMetadata, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1SourceMetadata::Representation
      
          property :source_uri, as: 'sourceUri'
          property :spec_type, as: 'specType', class: Google::Apis::ApihubV1::GoogleCloudApihubV1AttributeValues, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1AttributeValues::Representation
      
          property :update_time, as: 'updateTime'
        end
      end
      
      class GoogleCloudApihubV1SpecContents
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :contents, :base64 => true, as: 'contents'
          property :mime_type, as: 'mimeType'
        end
      end
      
      class GoogleCloudApihubV1SpecDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :description, as: 'description'
          property :open_api_spec_details, as: 'openApiSpecDetails', class: Google::Apis::ApihubV1::GoogleCloudApihubV1OpenApiSpecDetails, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1OpenApiSpecDetails::Representation
      
        end
      end
      
      class GoogleCloudApihubV1SpecMetadata
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :original_create_time, as: 'originalCreateTime'
          property :original_id, as: 'originalId'
          property :original_update_time, as: 'originalUpdateTime'
          property :spec, as: 'spec', class: Google::Apis::ApihubV1::GoogleCloudApihubV1Spec, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1Spec::Representation
      
        end
      end
      
      class GoogleCloudApihubV1StringAttributeValues
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :values, as: 'values'
        end
      end
      
      class GoogleCloudApihubV1StyleGuide
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :contents, as: 'contents', class: Google::Apis::ApihubV1::GoogleCloudApihubV1StyleGuideContents, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1StyleGuideContents::Representation
      
          property :linter, as: 'linter'
          property :name, as: 'name'
        end
      end
      
      class GoogleCloudApihubV1StyleGuideContents
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :contents, :base64 => true, as: 'contents'
          property :mime_type, as: 'mimeType'
        end
      end
      
      class GoogleCloudApihubV1SummaryEntry
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :count, as: 'count'
          property :severity, as: 'severity'
        end
      end
      
      class GoogleCloudApihubV1UserPasswordConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :password, as: 'password', class: Google::Apis::ApihubV1::GoogleCloudApihubV1Secret, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1Secret::Representation
      
          property :username, as: 'username'
        end
      end
      
      class GoogleCloudApihubV1Version
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :accreditation, as: 'accreditation', class: Google::Apis::ApihubV1::GoogleCloudApihubV1AttributeValues, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1AttributeValues::Representation
      
          collection :api_operations, as: 'apiOperations'
          hash :attributes, as: 'attributes', class: Google::Apis::ApihubV1::GoogleCloudApihubV1AttributeValues, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1AttributeValues::Representation
      
          property :compliance, as: 'compliance', class: Google::Apis::ApihubV1::GoogleCloudApihubV1AttributeValues, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1AttributeValues::Representation
      
          property :create_time, as: 'createTime'
          collection :definitions, as: 'definitions'
          collection :deployments, as: 'deployments'
          property :description, as: 'description'
          property :display_name, as: 'displayName'
          property :documentation, as: 'documentation', class: Google::Apis::ApihubV1::GoogleCloudApihubV1Documentation, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1Documentation::Representation
      
          property :lifecycle, as: 'lifecycle', class: Google::Apis::ApihubV1::GoogleCloudApihubV1AttributeValues, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1AttributeValues::Representation
      
          property :name, as: 'name'
          property :selected_deployment, as: 'selectedDeployment'
          collection :source_metadata, as: 'sourceMetadata', class: Google::Apis::ApihubV1::GoogleCloudApihubV1SourceMetadata, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1SourceMetadata::Representation
      
          collection :specs, as: 'specs'
          property :update_time, as: 'updateTime'
        end
      end
      
      class GoogleCloudApihubV1VersionMetadata
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :deployments, as: 'deployments', class: Google::Apis::ApihubV1::GoogleCloudApihubV1DeploymentMetadata, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1DeploymentMetadata::Representation
      
          property :original_create_time, as: 'originalCreateTime'
          property :original_id, as: 'originalId'
          property :original_update_time, as: 'originalUpdateTime'
          collection :specs, as: 'specs', class: Google::Apis::ApihubV1::GoogleCloudApihubV1SpecMetadata, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1SpecMetadata::Representation
      
          property :version, as: 'version', class: Google::Apis::ApihubV1::GoogleCloudApihubV1Version, decorator: Google::Apis::ApihubV1::GoogleCloudApihubV1Version::Representation
      
        end
      end
      
      class GoogleCloudCommonOperationMetadata
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :api_version, as: 'apiVersion'
          property :cancel_requested, as: 'cancelRequested'
          property :create_time, as: 'createTime'
          property :end_time, as: 'endTime'
          property :status_detail, as: 'statusDetail'
          property :target, as: 'target'
          property :verb, as: 'verb'
        end
      end
      
      class GoogleCloudLocationListLocationsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :locations, as: 'locations', class: Google::Apis::ApihubV1::GoogleCloudLocationLocation, decorator: Google::Apis::ApihubV1::GoogleCloudLocationLocation::Representation
      
          property :next_page_token, as: 'nextPageToken'
        end
      end
      
      class GoogleCloudLocationLocation
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :display_name, as: 'displayName'
          hash :labels, as: 'labels'
          property :location_id, as: 'locationId'
          hash :metadata, as: 'metadata'
          property :name, as: 'name'
        end
      end
      
      class GoogleLongrunningCancelOperationRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
        end
      end
      
      class GoogleLongrunningListOperationsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :next_page_token, as: 'nextPageToken'
          collection :operations, as: 'operations', class: Google::Apis::ApihubV1::GoogleLongrunningOperation, decorator: Google::Apis::ApihubV1::GoogleLongrunningOperation::Representation
      
        end
      end
      
      class GoogleLongrunningOperation
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :done, as: 'done'
          property :error, as: 'error', class: Google::Apis::ApihubV1::GoogleRpcStatus, decorator: Google::Apis::ApihubV1::GoogleRpcStatus::Representation
      
          hash :metadata, as: 'metadata'
          property :name, as: 'name'
          hash :response, as: 'response'
        end
      end
      
      class GoogleRpcStatus
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :code, as: 'code'
          collection :details, as: 'details'
          property :message, as: 'message'
        end
      end
    end
  end
end
