# 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 DataprocV1
      
      class AcceleratorConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class AccessSessionSparkApplicationEnvironmentInfoResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class AccessSessionSparkApplicationJobResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class AccessSessionSparkApplicationResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class AccessSessionSparkApplicationSqlQueryResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class AccessSessionSparkApplicationSqlSparkPlanGraphResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class AccessSessionSparkApplicationStageAttemptResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class AccessSessionSparkApplicationStageRddOperationGraphResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class AccessSparkApplicationEnvironmentInfoResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class AccessSparkApplicationJobResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class AccessSparkApplicationResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class AccessSparkApplicationSqlQueryResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class AccessSparkApplicationSqlSparkPlanGraphResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class AccessSparkApplicationStageAttemptResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class AccessSparkApplicationStageRddOperationGraphResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class AccumulableInfo
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class AnalyzeBatchRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class AnalyzeOperationMetadata
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class AppSummary
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ApplicationAttemptInfo
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ApplicationEnvironmentInfo
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ApplicationInfo
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class AuthenticationConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class AutoscalingConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class AutoscalingPolicy
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class AutotuningConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class AuxiliaryNodeGroup
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class AuxiliaryServicesConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class BasicAutoscalingAlgorithm
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class BasicYarnAutoscalingConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class Batch
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class BatchOperationMetadata
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class Binding
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class BuildInfo
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class CancelJobRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class Cluster
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ClusterConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ClusterMetrics
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ClusterOperation
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ClusterOperationMetadata
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ClusterOperationStatus
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ClusterSelector
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ClusterStatus
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ClusterToRepair
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ConfidentialInstanceConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ConsolidatedExecutorSummary
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class DataprocMetricConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class DiagnoseClusterRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class DiagnoseClusterResults
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class DiskConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class DriverSchedulingConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class Empty
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class EncryptionConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class EndpointConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class EnvironmentConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ExecutionConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ExecutorMetrics
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ExecutorMetricsDistributions
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ExecutorPeakMetricsDistributions
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ExecutorResourceRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ExecutorStageSummary
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ExecutorSummary
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class Expr
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class FallbackReason
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class FlinkJob
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GceClusterConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GetIamPolicyRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GetPolicyOptions
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GkeClusterConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GkeNodeConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GkeNodePoolAcceleratorConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GkeNodePoolAutoscalingConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GkeNodePoolConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GkeNodePoolTarget
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleCloudDataprocV1WorkflowTemplateEncryptionConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class HadoopJob
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class HiveJob
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class IdentityConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class InjectCredentialsRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class InputMetrics
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class InputQuantileMetrics
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class InstanceFlexibilityPolicy
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class InstanceGroupAutoscalingPolicyConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class InstanceGroupConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class InstanceReference
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class InstanceSelection
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class InstanceSelectionResult
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class InstantiateWorkflowTemplateRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class Interval
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class Job
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class JobData
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class JobMetadata
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class JobPlacement
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class JobReference
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class JobScheduling
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class JobStatus
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class JobsSummary
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class JupyterConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class KerberosConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class KubernetesClusterConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class KubernetesSoftwareConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class LifecycleConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ListAutoscalingPoliciesResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ListBatchesResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ListClustersResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ListJobsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ListOperationsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ListSessionTemplatesResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ListSessionsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ListWorkflowTemplatesResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class LoggingConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ManagedCluster
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ManagedGroupConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class MemoryMetrics
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class MetastoreConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class Metric
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class NamespacedGkeDeploymentTarget
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class NativeBuildInfoUiData
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class NativeSqlExecutionUiData
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class NodeGroup
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class NodeGroupAffinity
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class NodeGroupOperationMetadata
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class NodeInitializationAction
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class NodePool
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class Operation
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class OrderedJob
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class OutputMetrics
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class OutputQuantileMetrics
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ParameterValidation
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class PeripheralsConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class PigJob
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class Policy
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class PoolData
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class PrestoJob
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ProcessSummary
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class PropertiesInfo
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ProvisioningModelMix
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class PyPiRepositoryConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class PySparkBatch
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class PySparkJob
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class Quantiles
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class QueryList
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class RddDataDistribution
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class RddOperationCluster
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class RddOperationEdge
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class RddOperationGraph
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class RddOperationNode
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class RddPartitionInfo
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class RddStorageInfo
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class RegexValidation
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class RepairClusterRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class RepairNodeGroupRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class RepositoryConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ReservationAffinity
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ResizeNodeGroupRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ResourceInformation
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ResourceProfileInfo
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class RuntimeConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class RuntimeInfo
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SearchSessionSparkApplicationExecutorStageSummaryResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SearchSessionSparkApplicationExecutorsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SearchSessionSparkApplicationJobsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SearchSessionSparkApplicationSqlQueriesResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SearchSessionSparkApplicationStageAttemptTasksResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SearchSessionSparkApplicationStageAttemptsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SearchSessionSparkApplicationStagesResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SearchSessionSparkApplicationsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SearchSparkApplicationExecutorStageSummaryResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SearchSparkApplicationExecutorsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SearchSparkApplicationJobsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SearchSparkApplicationSqlQueriesResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SearchSparkApplicationStageAttemptTasksResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SearchSparkApplicationStageAttemptsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SearchSparkApplicationStagesResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SearchSparkApplicationsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SecurityConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class Session
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SessionOperationMetadata
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SessionStateHistory
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SessionTemplate
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SetIamPolicyRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ShieldedInstanceConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ShufflePushReadMetrics
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ShufflePushReadQuantileMetrics
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ShuffleReadMetrics
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ShuffleReadQuantileMetrics
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ShuffleWriteMetrics
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ShuffleWriteQuantileMetrics
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SinkProgress
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SoftwareConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SourceProgress
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SparkApplication
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SparkBatch
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SparkConnectConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SparkHistoryServerConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SparkJob
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SparkPlanGraph
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SparkPlanGraphCluster
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SparkPlanGraphEdge
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SparkPlanGraphNode
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SparkPlanGraphNodeWrapper
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SparkRBatch
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SparkRJob
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SparkRuntimeInfo
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SparkSqlBatch
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SparkSqlJob
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SparkStandaloneAutoscalingConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SparkWrapperObject
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SpeculationStageSummary
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SqlExecutionUiData
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SqlPlanMetric
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class StageAttemptTasksSummary
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class StageData
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class StageInputMetrics
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class StageMetrics
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class StageOutputMetrics
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class StageShufflePushReadMetrics
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class StageShuffleReadMetrics
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class StageShuffleWriteMetrics
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class StagesSummary
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class StartClusterRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class StartupConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class StateHistory
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class StateOperatorProgress
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class Status
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class StopClusterRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class StreamBlockData
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class StreamingQueryData
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class StreamingQueryProgress
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SubmitJobRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SummarizeSessionSparkApplicationExecutorsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SummarizeSessionSparkApplicationJobsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SummarizeSessionSparkApplicationStageAttemptTasksResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SummarizeSessionSparkApplicationStagesResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SummarizeSparkApplicationExecutorsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SummarizeSparkApplicationJobsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SummarizeSparkApplicationStageAttemptTasksResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SummarizeSparkApplicationStagesResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class TaskData
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class TaskMetrics
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class TaskQuantileMetrics
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class TaskResourceRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class TemplateParameter
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class TerminateSessionRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class TestIamPermissionsRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class TestIamPermissionsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class TrinoJob
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class UsageMetrics
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class UsageSnapshot
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ValueInfo
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ValueValidation
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class VirtualClusterConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class WorkflowGraph
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class WorkflowMetadata
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class WorkflowNode
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class WorkflowTemplate
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class WorkflowTemplatePlacement
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class WriteSessionSparkApplicationContextRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class WriteSessionSparkApplicationContextResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class WriteSparkApplicationContextRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class WriteSparkApplicationContextResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class YarnApplication
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class AcceleratorConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :accelerator_count, as: 'acceleratorCount'
          property :accelerator_type_uri, as: 'acceleratorTypeUri'
        end
      end
      
      class AccessSessionSparkApplicationEnvironmentInfoResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :application_environment_info, as: 'applicationEnvironmentInfo', class: Google::Apis::DataprocV1::ApplicationEnvironmentInfo, decorator: Google::Apis::DataprocV1::ApplicationEnvironmentInfo::Representation
      
        end
      end
      
      class AccessSessionSparkApplicationJobResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :job_data, as: 'jobData', class: Google::Apis::DataprocV1::JobData, decorator: Google::Apis::DataprocV1::JobData::Representation
      
        end
      end
      
      class AccessSessionSparkApplicationResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :application, as: 'application', class: Google::Apis::DataprocV1::ApplicationInfo, decorator: Google::Apis::DataprocV1::ApplicationInfo::Representation
      
        end
      end
      
      class AccessSessionSparkApplicationSqlQueryResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :execution_data, as: 'executionData', class: Google::Apis::DataprocV1::SqlExecutionUiData, decorator: Google::Apis::DataprocV1::SqlExecutionUiData::Representation
      
        end
      end
      
      class AccessSessionSparkApplicationSqlSparkPlanGraphResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :spark_plan_graph, as: 'sparkPlanGraph', class: Google::Apis::DataprocV1::SparkPlanGraph, decorator: Google::Apis::DataprocV1::SparkPlanGraph::Representation
      
        end
      end
      
      class AccessSessionSparkApplicationStageAttemptResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :stage_data, as: 'stageData', class: Google::Apis::DataprocV1::StageData, decorator: Google::Apis::DataprocV1::StageData::Representation
      
        end
      end
      
      class AccessSessionSparkApplicationStageRddOperationGraphResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :rdd_operation_graph, as: 'rddOperationGraph', class: Google::Apis::DataprocV1::RddOperationGraph, decorator: Google::Apis::DataprocV1::RddOperationGraph::Representation
      
        end
      end
      
      class AccessSparkApplicationEnvironmentInfoResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :application_environment_info, as: 'applicationEnvironmentInfo', class: Google::Apis::DataprocV1::ApplicationEnvironmentInfo, decorator: Google::Apis::DataprocV1::ApplicationEnvironmentInfo::Representation
      
        end
      end
      
      class AccessSparkApplicationJobResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :job_data, as: 'jobData', class: Google::Apis::DataprocV1::JobData, decorator: Google::Apis::DataprocV1::JobData::Representation
      
        end
      end
      
      class AccessSparkApplicationResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :application, as: 'application', class: Google::Apis::DataprocV1::ApplicationInfo, decorator: Google::Apis::DataprocV1::ApplicationInfo::Representation
      
        end
      end
      
      class AccessSparkApplicationSqlQueryResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :execution_data, as: 'executionData', class: Google::Apis::DataprocV1::SqlExecutionUiData, decorator: Google::Apis::DataprocV1::SqlExecutionUiData::Representation
      
        end
      end
      
      class AccessSparkApplicationSqlSparkPlanGraphResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :spark_plan_graph, as: 'sparkPlanGraph', class: Google::Apis::DataprocV1::SparkPlanGraph, decorator: Google::Apis::DataprocV1::SparkPlanGraph::Representation
      
        end
      end
      
      class AccessSparkApplicationStageAttemptResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :stage_data, as: 'stageData', class: Google::Apis::DataprocV1::StageData, decorator: Google::Apis::DataprocV1::StageData::Representation
      
        end
      end
      
      class AccessSparkApplicationStageRddOperationGraphResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :rdd_operation_graph, as: 'rddOperationGraph', class: Google::Apis::DataprocV1::RddOperationGraph, decorator: Google::Apis::DataprocV1::RddOperationGraph::Representation
      
        end
      end
      
      class AccumulableInfo
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :accumullable_info_id, :numeric_string => true, as: 'accumullableInfoId'
          property :name, as: 'name'
          property :update, as: 'update'
          property :value, as: 'value'
        end
      end
      
      class AnalyzeBatchRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :request_id, as: 'requestId'
          property :requestor_id, as: 'requestorId'
        end
      end
      
      class AnalyzeOperationMetadata
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :analyzed_workload_name, as: 'analyzedWorkloadName'
          property :analyzed_workload_type, as: 'analyzedWorkloadType'
          property :analyzed_workload_uuid, as: 'analyzedWorkloadUuid'
          property :create_time, as: 'createTime'
          property :description, as: 'description'
          property :done_time, as: 'doneTime'
          hash :labels, as: 'labels'
          collection :warnings, as: 'warnings'
        end
      end
      
      class AppSummary
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :num_completed_jobs, as: 'numCompletedJobs'
          property :num_completed_stages, as: 'numCompletedStages'
        end
      end
      
      class ApplicationAttemptInfo
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :app_spark_version, as: 'appSparkVersion'
          property :attempt_id, as: 'attemptId'
          property :completed, as: 'completed'
          property :duration_millis, :numeric_string => true, as: 'durationMillis'
          property :end_time, as: 'endTime'
          property :last_updated, as: 'lastUpdated'
          property :spark_user, as: 'sparkUser'
          property :start_time, as: 'startTime'
        end
      end
      
      class ApplicationEnvironmentInfo
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          hash :classpath_entries, as: 'classpathEntries'
          hash :hadoop_properties, as: 'hadoopProperties'
          hash :metrics_properties, as: 'metricsProperties'
          collection :resource_profiles, as: 'resourceProfiles', class: Google::Apis::DataprocV1::ResourceProfileInfo, decorator: Google::Apis::DataprocV1::ResourceProfileInfo::Representation
      
          property :runtime, as: 'runtime', class: Google::Apis::DataprocV1::SparkRuntimeInfo, decorator: Google::Apis::DataprocV1::SparkRuntimeInfo::Representation
      
          hash :spark_properties, as: 'sparkProperties'
          hash :system_properties, as: 'systemProperties'
        end
      end
      
      class ApplicationInfo
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :application_context_ingestion_status, as: 'applicationContextIngestionStatus'
          property :application_id, as: 'applicationId'
          collection :attempts, as: 'attempts', class: Google::Apis::DataprocV1::ApplicationAttemptInfo, decorator: Google::Apis::DataprocV1::ApplicationAttemptInfo::Representation
      
          property :cores_granted, as: 'coresGranted'
          property :cores_per_executor, as: 'coresPerExecutor'
          property :max_cores, as: 'maxCores'
          property :memory_per_executor_mb, as: 'memoryPerExecutorMb'
          property :name, as: 'name'
          property :quantile_data_status, as: 'quantileDataStatus'
        end
      end
      
      class AuthenticationConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :user_workload_authentication_type, as: 'userWorkloadAuthenticationType'
        end
      end
      
      class AutoscalingConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :policy_uri, as: 'policyUri'
        end
      end
      
      class AutoscalingPolicy
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :basic_algorithm, as: 'basicAlgorithm', class: Google::Apis::DataprocV1::BasicAutoscalingAlgorithm, decorator: Google::Apis::DataprocV1::BasicAutoscalingAlgorithm::Representation
      
          property :cluster_type, as: 'clusterType'
          property :id, as: 'id'
          hash :labels, as: 'labels'
          property :name, as: 'name'
          property :secondary_worker_config, as: 'secondaryWorkerConfig', class: Google::Apis::DataprocV1::InstanceGroupAutoscalingPolicyConfig, decorator: Google::Apis::DataprocV1::InstanceGroupAutoscalingPolicyConfig::Representation
      
          property :worker_config, as: 'workerConfig', class: Google::Apis::DataprocV1::InstanceGroupAutoscalingPolicyConfig, decorator: Google::Apis::DataprocV1::InstanceGroupAutoscalingPolicyConfig::Representation
      
        end
      end
      
      class AutotuningConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :scenarios, as: 'scenarios'
        end
      end
      
      class AuxiliaryNodeGroup
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :node_group, as: 'nodeGroup', class: Google::Apis::DataprocV1::NodeGroup, decorator: Google::Apis::DataprocV1::NodeGroup::Representation
      
          property :node_group_id, as: 'nodeGroupId'
        end
      end
      
      class AuxiliaryServicesConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :metastore_config, as: 'metastoreConfig', class: Google::Apis::DataprocV1::MetastoreConfig, decorator: Google::Apis::DataprocV1::MetastoreConfig::Representation
      
          property :spark_history_server_config, as: 'sparkHistoryServerConfig', class: Google::Apis::DataprocV1::SparkHistoryServerConfig, decorator: Google::Apis::DataprocV1::SparkHistoryServerConfig::Representation
      
        end
      end
      
      class BasicAutoscalingAlgorithm
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :cooldown_period, as: 'cooldownPeriod'
          property :spark_standalone_config, as: 'sparkStandaloneConfig', class: Google::Apis::DataprocV1::SparkStandaloneAutoscalingConfig, decorator: Google::Apis::DataprocV1::SparkStandaloneAutoscalingConfig::Representation
      
          property :yarn_config, as: 'yarnConfig', class: Google::Apis::DataprocV1::BasicYarnAutoscalingConfig, decorator: Google::Apis::DataprocV1::BasicYarnAutoscalingConfig::Representation
      
        end
      end
      
      class BasicYarnAutoscalingConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :graceful_decommission_timeout, as: 'gracefulDecommissionTimeout'
          property :scale_down_factor, as: 'scaleDownFactor'
          property :scale_down_min_worker_fraction, as: 'scaleDownMinWorkerFraction'
          property :scale_up_factor, as: 'scaleUpFactor'
          property :scale_up_min_worker_fraction, as: 'scaleUpMinWorkerFraction'
        end
      end
      
      class Batch
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :create_time, as: 'createTime'
          property :creator, as: 'creator'
          property :environment_config, as: 'environmentConfig', class: Google::Apis::DataprocV1::EnvironmentConfig, decorator: Google::Apis::DataprocV1::EnvironmentConfig::Representation
      
          hash :labels, as: 'labels'
          property :name, as: 'name'
          property :operation, as: 'operation'
          property :pyspark_batch, as: 'pysparkBatch', class: Google::Apis::DataprocV1::PySparkBatch, decorator: Google::Apis::DataprocV1::PySparkBatch::Representation
      
          property :runtime_config, as: 'runtimeConfig', class: Google::Apis::DataprocV1::RuntimeConfig, decorator: Google::Apis::DataprocV1::RuntimeConfig::Representation
      
          property :runtime_info, as: 'runtimeInfo', class: Google::Apis::DataprocV1::RuntimeInfo, decorator: Google::Apis::DataprocV1::RuntimeInfo::Representation
      
          property :spark_batch, as: 'sparkBatch', class: Google::Apis::DataprocV1::SparkBatch, decorator: Google::Apis::DataprocV1::SparkBatch::Representation
      
          property :spark_r_batch, as: 'sparkRBatch', class: Google::Apis::DataprocV1::SparkRBatch, decorator: Google::Apis::DataprocV1::SparkRBatch::Representation
      
          property :spark_sql_batch, as: 'sparkSqlBatch', class: Google::Apis::DataprocV1::SparkSqlBatch, decorator: Google::Apis::DataprocV1::SparkSqlBatch::Representation
      
          property :state, as: 'state'
          collection :state_history, as: 'stateHistory', class: Google::Apis::DataprocV1::StateHistory, decorator: Google::Apis::DataprocV1::StateHistory::Representation
      
          property :state_message, as: 'stateMessage'
          property :state_time, as: 'stateTime'
          property :uuid, as: 'uuid'
        end
      end
      
      class BatchOperationMetadata
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :batch, as: 'batch'
          property :batch_uuid, as: 'batchUuid'
          property :create_time, as: 'createTime'
          property :description, as: 'description'
          property :done_time, as: 'doneTime'
          hash :labels, as: 'labels'
          property :operation_type, as: 'operationType'
          collection :warnings, as: 'warnings'
        end
      end
      
      class Binding
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :condition, as: 'condition', class: Google::Apis::DataprocV1::Expr, decorator: Google::Apis::DataprocV1::Expr::Representation
      
          collection :members, as: 'members'
          property :role, as: 'role'
        end
      end
      
      class BuildInfo
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :build_key, as: 'buildKey'
          property :build_value, as: 'buildValue'
        end
      end
      
      class CancelJobRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
        end
      end
      
      class Cluster
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :cluster_name, as: 'clusterName'
          property :cluster_uuid, as: 'clusterUuid'
          property :config, as: 'config', class: Google::Apis::DataprocV1::ClusterConfig, decorator: Google::Apis::DataprocV1::ClusterConfig::Representation
      
          hash :labels, as: 'labels'
          property :metrics, as: 'metrics', class: Google::Apis::DataprocV1::ClusterMetrics, decorator: Google::Apis::DataprocV1::ClusterMetrics::Representation
      
          property :project_id, as: 'projectId'
          property :status, as: 'status', class: Google::Apis::DataprocV1::ClusterStatus, decorator: Google::Apis::DataprocV1::ClusterStatus::Representation
      
          collection :status_history, as: 'statusHistory', class: Google::Apis::DataprocV1::ClusterStatus, decorator: Google::Apis::DataprocV1::ClusterStatus::Representation
      
          property :virtual_cluster_config, as: 'virtualClusterConfig', class: Google::Apis::DataprocV1::VirtualClusterConfig, decorator: Google::Apis::DataprocV1::VirtualClusterConfig::Representation
      
        end
      end
      
      class ClusterConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :autoscaling_config, as: 'autoscalingConfig', class: Google::Apis::DataprocV1::AutoscalingConfig, decorator: Google::Apis::DataprocV1::AutoscalingConfig::Representation
      
          collection :auxiliary_node_groups, as: 'auxiliaryNodeGroups', class: Google::Apis::DataprocV1::AuxiliaryNodeGroup, decorator: Google::Apis::DataprocV1::AuxiliaryNodeGroup::Representation
      
          property :cluster_tier, as: 'clusterTier'
          property :cluster_type, as: 'clusterType'
          property :config_bucket, as: 'configBucket'
          property :dataproc_metric_config, as: 'dataprocMetricConfig', class: Google::Apis::DataprocV1::DataprocMetricConfig, decorator: Google::Apis::DataprocV1::DataprocMetricConfig::Representation
      
          property :encryption_config, as: 'encryptionConfig', class: Google::Apis::DataprocV1::EncryptionConfig, decorator: Google::Apis::DataprocV1::EncryptionConfig::Representation
      
          property :endpoint_config, as: 'endpointConfig', class: Google::Apis::DataprocV1::EndpointConfig, decorator: Google::Apis::DataprocV1::EndpointConfig::Representation
      
          property :gce_cluster_config, as: 'gceClusterConfig', class: Google::Apis::DataprocV1::GceClusterConfig, decorator: Google::Apis::DataprocV1::GceClusterConfig::Representation
      
          property :gke_cluster_config, as: 'gkeClusterConfig', class: Google::Apis::DataprocV1::GkeClusterConfig, decorator: Google::Apis::DataprocV1::GkeClusterConfig::Representation
      
          collection :initialization_actions, as: 'initializationActions', class: Google::Apis::DataprocV1::NodeInitializationAction, decorator: Google::Apis::DataprocV1::NodeInitializationAction::Representation
      
          property :lifecycle_config, as: 'lifecycleConfig', class: Google::Apis::DataprocV1::LifecycleConfig, decorator: Google::Apis::DataprocV1::LifecycleConfig::Representation
      
          property :master_config, as: 'masterConfig', class: Google::Apis::DataprocV1::InstanceGroupConfig, decorator: Google::Apis::DataprocV1::InstanceGroupConfig::Representation
      
          property :metastore_config, as: 'metastoreConfig', class: Google::Apis::DataprocV1::MetastoreConfig, decorator: Google::Apis::DataprocV1::MetastoreConfig::Representation
      
          property :secondary_worker_config, as: 'secondaryWorkerConfig', class: Google::Apis::DataprocV1::InstanceGroupConfig, decorator: Google::Apis::DataprocV1::InstanceGroupConfig::Representation
      
          property :security_config, as: 'securityConfig', class: Google::Apis::DataprocV1::SecurityConfig, decorator: Google::Apis::DataprocV1::SecurityConfig::Representation
      
          property :software_config, as: 'softwareConfig', class: Google::Apis::DataprocV1::SoftwareConfig, decorator: Google::Apis::DataprocV1::SoftwareConfig::Representation
      
          property :temp_bucket, as: 'tempBucket'
          property :worker_config, as: 'workerConfig', class: Google::Apis::DataprocV1::InstanceGroupConfig, decorator: Google::Apis::DataprocV1::InstanceGroupConfig::Representation
      
        end
      end
      
      class ClusterMetrics
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          hash :hdfs_metrics, as: 'hdfsMetrics'
          hash :yarn_metrics, as: 'yarnMetrics'
        end
      end
      
      class ClusterOperation
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :done, as: 'done'
          property :error, as: 'error'
          property :operation_id, as: 'operationId'
        end
      end
      
      class ClusterOperationMetadata
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :child_operation_ids, as: 'childOperationIds'
          property :cluster_name, as: 'clusterName'
          property :cluster_uuid, as: 'clusterUuid'
          property :description, as: 'description'
          hash :labels, as: 'labels'
          property :operation_type, as: 'operationType'
          property :status, as: 'status', class: Google::Apis::DataprocV1::ClusterOperationStatus, decorator: Google::Apis::DataprocV1::ClusterOperationStatus::Representation
      
          collection :status_history, as: 'statusHistory', class: Google::Apis::DataprocV1::ClusterOperationStatus, decorator: Google::Apis::DataprocV1::ClusterOperationStatus::Representation
      
          collection :warnings, as: 'warnings'
        end
      end
      
      class ClusterOperationStatus
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :details, as: 'details'
          property :inner_state, as: 'innerState'
          property :state, as: 'state'
          property :state_start_time, as: 'stateStartTime'
        end
      end
      
      class ClusterSelector
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          hash :cluster_labels, as: 'clusterLabels'
          property :zone, as: 'zone'
        end
      end
      
      class ClusterStatus
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :detail, as: 'detail'
          property :state, as: 'state'
          property :state_start_time, as: 'stateStartTime'
          property :substate, as: 'substate'
        end
      end
      
      class ClusterToRepair
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :cluster_repair_action, as: 'clusterRepairAction'
        end
      end
      
      class ConfidentialInstanceConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :enable_confidential_compute, as: 'enableConfidentialCompute'
        end
      end
      
      class ConsolidatedExecutorSummary
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :active_tasks, as: 'activeTasks'
          property :completed_tasks, as: 'completedTasks'
          property :count, as: 'count'
          property :disk_used, :numeric_string => true, as: 'diskUsed'
          property :failed_tasks, as: 'failedTasks'
          property :is_excluded, as: 'isExcluded'
          property :max_memory, :numeric_string => true, as: 'maxMemory'
          property :memory_metrics, as: 'memoryMetrics', class: Google::Apis::DataprocV1::MemoryMetrics, decorator: Google::Apis::DataprocV1::MemoryMetrics::Representation
      
          property :memory_used, :numeric_string => true, as: 'memoryUsed'
          property :rdd_blocks, as: 'rddBlocks'
          property :total_cores, as: 'totalCores'
          property :total_duration_millis, :numeric_string => true, as: 'totalDurationMillis'
          property :total_gc_time_millis, :numeric_string => true, as: 'totalGcTimeMillis'
          property :total_input_bytes, :numeric_string => true, as: 'totalInputBytes'
          property :total_shuffle_read, :numeric_string => true, as: 'totalShuffleRead'
          property :total_shuffle_write, :numeric_string => true, as: 'totalShuffleWrite'
          property :total_tasks, as: 'totalTasks'
        end
      end
      
      class DataprocMetricConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :metrics, as: 'metrics', class: Google::Apis::DataprocV1::Metric, decorator: Google::Apis::DataprocV1::Metric::Representation
      
        end
      end
      
      class DiagnoseClusterRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :diagnosis_interval, as: 'diagnosisInterval', class: Google::Apis::DataprocV1::Interval, decorator: Google::Apis::DataprocV1::Interval::Representation
      
          property :job, as: 'job'
          collection :jobs, as: 'jobs'
          property :tarball_access, as: 'tarballAccess'
          property :tarball_gcs_dir, as: 'tarballGcsDir'
          property :yarn_application_id, as: 'yarnApplicationId'
          collection :yarn_application_ids, as: 'yarnApplicationIds'
        end
      end
      
      class DiagnoseClusterResults
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :output_uri, as: 'outputUri'
        end
      end
      
      class DiskConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :boot_disk_provisioned_iops, :numeric_string => true, as: 'bootDiskProvisionedIops'
          property :boot_disk_provisioned_throughput, :numeric_string => true, as: 'bootDiskProvisionedThroughput'
          property :boot_disk_size_gb, as: 'bootDiskSizeGb'
          property :boot_disk_type, as: 'bootDiskType'
          property :local_ssd_interface, as: 'localSsdInterface'
          property :num_local_ssds, as: 'numLocalSsds'
        end
      end
      
      class DriverSchedulingConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :memory_mb, as: 'memoryMb'
          property :vcores, as: 'vcores'
        end
      end
      
      class Empty
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
        end
      end
      
      class EncryptionConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :gce_pd_kms_key_name, as: 'gcePdKmsKeyName'
          property :kms_key, as: 'kmsKey'
        end
      end
      
      class EndpointConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :enable_http_port_access, as: 'enableHttpPortAccess'
          hash :http_ports, as: 'httpPorts'
        end
      end
      
      class EnvironmentConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :execution_config, as: 'executionConfig', class: Google::Apis::DataprocV1::ExecutionConfig, decorator: Google::Apis::DataprocV1::ExecutionConfig::Representation
      
          property :peripherals_config, as: 'peripheralsConfig', class: Google::Apis::DataprocV1::PeripheralsConfig, decorator: Google::Apis::DataprocV1::PeripheralsConfig::Representation
      
        end
      end
      
      class ExecutionConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :authentication_config, as: 'authenticationConfig', class: Google::Apis::DataprocV1::AuthenticationConfig, decorator: Google::Apis::DataprocV1::AuthenticationConfig::Representation
      
          property :idle_ttl, as: 'idleTtl'
          property :kms_key, as: 'kmsKey'
          collection :network_tags, as: 'networkTags'
          property :network_uri, as: 'networkUri'
          property :service_account, as: 'serviceAccount'
          property :staging_bucket, as: 'stagingBucket'
          property :subnetwork_uri, as: 'subnetworkUri'
          property :ttl, as: 'ttl'
        end
      end
      
      class ExecutorMetrics
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          hash :metrics, as: 'metrics'
        end
      end
      
      class ExecutorMetricsDistributions
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :disk_bytes_spilled, as: 'diskBytesSpilled'
          collection :failed_tasks, as: 'failedTasks'
          collection :input_bytes, as: 'inputBytes'
          collection :input_records, as: 'inputRecords'
          collection :killed_tasks, as: 'killedTasks'
          collection :memory_bytes_spilled, as: 'memoryBytesSpilled'
          collection :output_bytes, as: 'outputBytes'
          collection :output_records, as: 'outputRecords'
          property :peak_memory_metrics, as: 'peakMemoryMetrics', class: Google::Apis::DataprocV1::ExecutorPeakMetricsDistributions, decorator: Google::Apis::DataprocV1::ExecutorPeakMetricsDistributions::Representation
      
          collection :quantiles, as: 'quantiles'
          collection :shuffle_read, as: 'shuffleRead'
          collection :shuffle_read_records, as: 'shuffleReadRecords'
          collection :shuffle_write, as: 'shuffleWrite'
          collection :shuffle_write_records, as: 'shuffleWriteRecords'
          collection :succeeded_tasks, as: 'succeededTasks'
          collection :task_time_millis, as: 'taskTimeMillis'
        end
      end
      
      class ExecutorPeakMetricsDistributions
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :executor_metrics, as: 'executorMetrics', class: Google::Apis::DataprocV1::ExecutorMetrics, decorator: Google::Apis::DataprocV1::ExecutorMetrics::Representation
      
          collection :quantiles, as: 'quantiles'
        end
      end
      
      class ExecutorResourceRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :amount, :numeric_string => true, as: 'amount'
          property :discovery_script, as: 'discoveryScript'
          property :resource_name, as: 'resourceName'
          property :vendor, as: 'vendor'
        end
      end
      
      class ExecutorStageSummary
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :disk_bytes_spilled, :numeric_string => true, as: 'diskBytesSpilled'
          property :executor_id, as: 'executorId'
          property :failed_tasks, as: 'failedTasks'
          property :input_bytes, :numeric_string => true, as: 'inputBytes'
          property :input_records, :numeric_string => true, as: 'inputRecords'
          property :is_excluded_for_stage, as: 'isExcludedForStage'
          property :killed_tasks, as: 'killedTasks'
          property :memory_bytes_spilled, :numeric_string => true, as: 'memoryBytesSpilled'
          property :output_bytes, :numeric_string => true, as: 'outputBytes'
          property :output_records, :numeric_string => true, as: 'outputRecords'
          property :peak_memory_metrics, as: 'peakMemoryMetrics', class: Google::Apis::DataprocV1::ExecutorMetrics, decorator: Google::Apis::DataprocV1::ExecutorMetrics::Representation
      
          property :shuffle_read, :numeric_string => true, as: 'shuffleRead'
          property :shuffle_read_records, :numeric_string => true, as: 'shuffleReadRecords'
          property :shuffle_write, :numeric_string => true, as: 'shuffleWrite'
          property :shuffle_write_records, :numeric_string => true, as: 'shuffleWriteRecords'
          property :stage_attempt_id, as: 'stageAttemptId'
          property :stage_id, :numeric_string => true, as: 'stageId'
          property :succeeded_tasks, as: 'succeededTasks'
          property :task_time_millis, :numeric_string => true, as: 'taskTimeMillis'
        end
      end
      
      class ExecutorSummary
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :active_tasks, as: 'activeTasks'
          property :add_time, as: 'addTime'
          hash :attributes, as: 'attributes'
          property :completed_tasks, as: 'completedTasks'
          property :disk_used, :numeric_string => true, as: 'diskUsed'
          collection :excluded_in_stages, as: 'excludedInStages'
          property :executor_id, as: 'executorId'
          hash :executor_logs, as: 'executorLogs'
          property :failed_tasks, as: 'failedTasks'
          property :host_port, as: 'hostPort'
          property :is_active, as: 'isActive'
          property :is_excluded, as: 'isExcluded'
          property :max_memory, :numeric_string => true, as: 'maxMemory'
          property :max_tasks, as: 'maxTasks'
          property :memory_metrics, as: 'memoryMetrics', class: Google::Apis::DataprocV1::MemoryMetrics, decorator: Google::Apis::DataprocV1::MemoryMetrics::Representation
      
          property :memory_used, :numeric_string => true, as: 'memoryUsed'
          property :peak_memory_metrics, as: 'peakMemoryMetrics', class: Google::Apis::DataprocV1::ExecutorMetrics, decorator: Google::Apis::DataprocV1::ExecutorMetrics::Representation
      
          property :rdd_blocks, as: 'rddBlocks'
          property :remove_reason, as: 'removeReason'
          property :remove_time, as: 'removeTime'
          property :resource_profile_id, as: 'resourceProfileId'
          hash :resources, as: 'resources', class: Google::Apis::DataprocV1::ResourceInformation, decorator: Google::Apis::DataprocV1::ResourceInformation::Representation
      
          property :total_cores, as: 'totalCores'
          property :total_duration_millis, :numeric_string => true, as: 'totalDurationMillis'
          property :total_gc_time_millis, :numeric_string => true, as: 'totalGcTimeMillis'
          property :total_input_bytes, :numeric_string => true, as: 'totalInputBytes'
          property :total_shuffle_read, :numeric_string => true, as: 'totalShuffleRead'
          property :total_shuffle_write, :numeric_string => true, as: 'totalShuffleWrite'
          property :total_tasks, as: 'totalTasks'
        end
      end
      
      class Expr
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :description, as: 'description'
          property :expression, as: 'expression'
          property :location, as: 'location'
          property :title, as: 'title'
        end
      end
      
      class FallbackReason
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :fallback_node, as: 'fallbackNode'
          property :fallback_reason, as: 'fallbackReason'
        end
      end
      
      class FlinkJob
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :args, as: 'args'
          collection :jar_file_uris, as: 'jarFileUris'
          property :logging_config, as: 'loggingConfig', class: Google::Apis::DataprocV1::LoggingConfig, decorator: Google::Apis::DataprocV1::LoggingConfig::Representation
      
          property :main_class, as: 'mainClass'
          property :main_jar_file_uri, as: 'mainJarFileUri'
          hash :properties, as: 'properties'
          property :savepoint_uri, as: 'savepointUri'
        end
      end
      
      class GceClusterConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :confidential_instance_config, as: 'confidentialInstanceConfig', class: Google::Apis::DataprocV1::ConfidentialInstanceConfig, decorator: Google::Apis::DataprocV1::ConfidentialInstanceConfig::Representation
      
          property :internal_ip_only, as: 'internalIpOnly'
          hash :metadata, as: 'metadata'
          property :network_uri, as: 'networkUri'
          property :node_group_affinity, as: 'nodeGroupAffinity', class: Google::Apis::DataprocV1::NodeGroupAffinity, decorator: Google::Apis::DataprocV1::NodeGroupAffinity::Representation
      
          property :private_ipv6_google_access, as: 'privateIpv6GoogleAccess'
          property :reservation_affinity, as: 'reservationAffinity', class: Google::Apis::DataprocV1::ReservationAffinity, decorator: Google::Apis::DataprocV1::ReservationAffinity::Representation
      
          hash :resource_manager_tags, as: 'resourceManagerTags'
          property :service_account, as: 'serviceAccount'
          collection :service_account_scopes, as: 'serviceAccountScopes'
          property :shielded_instance_config, as: 'shieldedInstanceConfig', class: Google::Apis::DataprocV1::ShieldedInstanceConfig, decorator: Google::Apis::DataprocV1::ShieldedInstanceConfig::Representation
      
          property :subnetwork_uri, as: 'subnetworkUri'
          collection :tags, as: 'tags'
          property :zone_uri, as: 'zoneUri'
        end
      end
      
      class GetIamPolicyRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :options, as: 'options', class: Google::Apis::DataprocV1::GetPolicyOptions, decorator: Google::Apis::DataprocV1::GetPolicyOptions::Representation
      
        end
      end
      
      class GetPolicyOptions
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :requested_policy_version, as: 'requestedPolicyVersion'
        end
      end
      
      class GkeClusterConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :gke_cluster_target, as: 'gkeClusterTarget'
          property :namespaced_gke_deployment_target, as: 'namespacedGkeDeploymentTarget', class: Google::Apis::DataprocV1::NamespacedGkeDeploymentTarget, decorator: Google::Apis::DataprocV1::NamespacedGkeDeploymentTarget::Representation
      
          collection :node_pool_target, as: 'nodePoolTarget', class: Google::Apis::DataprocV1::GkeNodePoolTarget, decorator: Google::Apis::DataprocV1::GkeNodePoolTarget::Representation
      
        end
      end
      
      class GkeNodeConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :accelerators, as: 'accelerators', class: Google::Apis::DataprocV1::GkeNodePoolAcceleratorConfig, decorator: Google::Apis::DataprocV1::GkeNodePoolAcceleratorConfig::Representation
      
          property :boot_disk_kms_key, as: 'bootDiskKmsKey'
          property :local_ssd_count, as: 'localSsdCount'
          property :machine_type, as: 'machineType'
          property :min_cpu_platform, as: 'minCpuPlatform'
          property :preemptible, as: 'preemptible'
          property :spot, as: 'spot'
        end
      end
      
      class GkeNodePoolAcceleratorConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :accelerator_count, :numeric_string => true, as: 'acceleratorCount'
          property :accelerator_type, as: 'acceleratorType'
          property :gpu_partition_size, as: 'gpuPartitionSize'
        end
      end
      
      class GkeNodePoolAutoscalingConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :max_node_count, as: 'maxNodeCount'
          property :min_node_count, as: 'minNodeCount'
        end
      end
      
      class GkeNodePoolConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :autoscaling, as: 'autoscaling', class: Google::Apis::DataprocV1::GkeNodePoolAutoscalingConfig, decorator: Google::Apis::DataprocV1::GkeNodePoolAutoscalingConfig::Representation
      
          property :config, as: 'config', class: Google::Apis::DataprocV1::GkeNodeConfig, decorator: Google::Apis::DataprocV1::GkeNodeConfig::Representation
      
          collection :locations, as: 'locations'
        end
      end
      
      class GkeNodePoolTarget
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :node_pool, as: 'nodePool'
          property :node_pool_config, as: 'nodePoolConfig', class: Google::Apis::DataprocV1::GkeNodePoolConfig, decorator: Google::Apis::DataprocV1::GkeNodePoolConfig::Representation
      
          collection :roles, as: 'roles'
        end
      end
      
      class GoogleCloudDataprocV1WorkflowTemplateEncryptionConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :kms_key, as: 'kmsKey'
        end
      end
      
      class HadoopJob
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :archive_uris, as: 'archiveUris'
          collection :args, as: 'args'
          collection :file_uris, as: 'fileUris'
          collection :jar_file_uris, as: 'jarFileUris'
          property :logging_config, as: 'loggingConfig', class: Google::Apis::DataprocV1::LoggingConfig, decorator: Google::Apis::DataprocV1::LoggingConfig::Representation
      
          property :main_class, as: 'mainClass'
          property :main_jar_file_uri, as: 'mainJarFileUri'
          hash :properties, as: 'properties'
        end
      end
      
      class HiveJob
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :continue_on_failure, as: 'continueOnFailure'
          collection :jar_file_uris, as: 'jarFileUris'
          hash :properties, as: 'properties'
          property :query_file_uri, as: 'queryFileUri'
          property :query_list, as: 'queryList', class: Google::Apis::DataprocV1::QueryList, decorator: Google::Apis::DataprocV1::QueryList::Representation
      
          hash :script_variables, as: 'scriptVariables'
        end
      end
      
      class IdentityConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          hash :user_service_account_mapping, as: 'userServiceAccountMapping'
        end
      end
      
      class InjectCredentialsRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :cluster_uuid, as: 'clusterUuid'
          property :credentials_ciphertext, as: 'credentialsCiphertext'
        end
      end
      
      class InputMetrics
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :bytes_read, :numeric_string => true, as: 'bytesRead'
          property :records_read, :numeric_string => true, as: 'recordsRead'
        end
      end
      
      class InputQuantileMetrics
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :bytes_read, as: 'bytesRead', class: Google::Apis::DataprocV1::Quantiles, decorator: Google::Apis::DataprocV1::Quantiles::Representation
      
          property :records_read, as: 'recordsRead', class: Google::Apis::DataprocV1::Quantiles, decorator: Google::Apis::DataprocV1::Quantiles::Representation
      
        end
      end
      
      class InstanceFlexibilityPolicy
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :instance_selection_list, as: 'instanceSelectionList', class: Google::Apis::DataprocV1::InstanceSelection, decorator: Google::Apis::DataprocV1::InstanceSelection::Representation
      
          collection :instance_selection_results, as: 'instanceSelectionResults', class: Google::Apis::DataprocV1::InstanceSelectionResult, decorator: Google::Apis::DataprocV1::InstanceSelectionResult::Representation
      
          property :provisioning_model_mix, as: 'provisioningModelMix', class: Google::Apis::DataprocV1::ProvisioningModelMix, decorator: Google::Apis::DataprocV1::ProvisioningModelMix::Representation
      
        end
      end
      
      class InstanceGroupAutoscalingPolicyConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :max_instances, as: 'maxInstances'
          property :min_instances, as: 'minInstances'
          property :weight, as: 'weight'
        end
      end
      
      class InstanceGroupConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :accelerators, as: 'accelerators', class: Google::Apis::DataprocV1::AcceleratorConfig, decorator: Google::Apis::DataprocV1::AcceleratorConfig::Representation
      
          property :disk_config, as: 'diskConfig', class: Google::Apis::DataprocV1::DiskConfig, decorator: Google::Apis::DataprocV1::DiskConfig::Representation
      
          property :image_uri, as: 'imageUri'
          property :instance_flexibility_policy, as: 'instanceFlexibilityPolicy', class: Google::Apis::DataprocV1::InstanceFlexibilityPolicy, decorator: Google::Apis::DataprocV1::InstanceFlexibilityPolicy::Representation
      
          collection :instance_names, as: 'instanceNames'
          collection :instance_references, as: 'instanceReferences', class: Google::Apis::DataprocV1::InstanceReference, decorator: Google::Apis::DataprocV1::InstanceReference::Representation
      
          property :is_preemptible, as: 'isPreemptible'
          property :machine_type_uri, as: 'machineTypeUri'
          property :managed_group_config, as: 'managedGroupConfig', class: Google::Apis::DataprocV1::ManagedGroupConfig, decorator: Google::Apis::DataprocV1::ManagedGroupConfig::Representation
      
          property :min_cpu_platform, as: 'minCpuPlatform'
          property :min_num_instances, as: 'minNumInstances'
          property :num_instances, as: 'numInstances'
          property :preemptibility, as: 'preemptibility'
          property :startup_config, as: 'startupConfig', class: Google::Apis::DataprocV1::StartupConfig, decorator: Google::Apis::DataprocV1::StartupConfig::Representation
      
        end
      end
      
      class InstanceReference
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :instance_id, as: 'instanceId'
          property :instance_name, as: 'instanceName'
          property :public_ecies_key, as: 'publicEciesKey'
          property :public_key, as: 'publicKey'
        end
      end
      
      class InstanceSelection
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :machine_types, as: 'machineTypes'
          property :rank, as: 'rank'
        end
      end
      
      class InstanceSelectionResult
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :machine_type, as: 'machineType'
          property :vm_count, as: 'vmCount'
        end
      end
      
      class InstantiateWorkflowTemplateRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          hash :parameters, as: 'parameters'
          property :request_id, as: 'requestId'
          property :version, as: 'version'
        end
      end
      
      class Interval
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :end_time, as: 'endTime'
          property :start_time, as: 'startTime'
        end
      end
      
      class Job
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :done, as: 'done'
          property :driver_control_files_uri, as: 'driverControlFilesUri'
          property :driver_output_resource_uri, as: 'driverOutputResourceUri'
          property :driver_scheduling_config, as: 'driverSchedulingConfig', class: Google::Apis::DataprocV1::DriverSchedulingConfig, decorator: Google::Apis::DataprocV1::DriverSchedulingConfig::Representation
      
          property :flink_job, as: 'flinkJob', class: Google::Apis::DataprocV1::FlinkJob, decorator: Google::Apis::DataprocV1::FlinkJob::Representation
      
          property :hadoop_job, as: 'hadoopJob', class: Google::Apis::DataprocV1::HadoopJob, decorator: Google::Apis::DataprocV1::HadoopJob::Representation
      
          property :hive_job, as: 'hiveJob', class: Google::Apis::DataprocV1::HiveJob, decorator: Google::Apis::DataprocV1::HiveJob::Representation
      
          property :job_uuid, as: 'jobUuid'
          hash :labels, as: 'labels'
          property :pig_job, as: 'pigJob', class: Google::Apis::DataprocV1::PigJob, decorator: Google::Apis::DataprocV1::PigJob::Representation
      
          property :placement, as: 'placement', class: Google::Apis::DataprocV1::JobPlacement, decorator: Google::Apis::DataprocV1::JobPlacement::Representation
      
          property :presto_job, as: 'prestoJob', class: Google::Apis::DataprocV1::PrestoJob, decorator: Google::Apis::DataprocV1::PrestoJob::Representation
      
          property :pyspark_job, as: 'pysparkJob', class: Google::Apis::DataprocV1::PySparkJob, decorator: Google::Apis::DataprocV1::PySparkJob::Representation
      
          property :reference, as: 'reference', class: Google::Apis::DataprocV1::JobReference, decorator: Google::Apis::DataprocV1::JobReference::Representation
      
          property :scheduling, as: 'scheduling', class: Google::Apis::DataprocV1::JobScheduling, decorator: Google::Apis::DataprocV1::JobScheduling::Representation
      
          property :spark_job, as: 'sparkJob', class: Google::Apis::DataprocV1::SparkJob, decorator: Google::Apis::DataprocV1::SparkJob::Representation
      
          property :spark_r_job, as: 'sparkRJob', class: Google::Apis::DataprocV1::SparkRJob, decorator: Google::Apis::DataprocV1::SparkRJob::Representation
      
          property :spark_sql_job, as: 'sparkSqlJob', class: Google::Apis::DataprocV1::SparkSqlJob, decorator: Google::Apis::DataprocV1::SparkSqlJob::Representation
      
          property :status, as: 'status', class: Google::Apis::DataprocV1::JobStatus, decorator: Google::Apis::DataprocV1::JobStatus::Representation
      
          collection :status_history, as: 'statusHistory', class: Google::Apis::DataprocV1::JobStatus, decorator: Google::Apis::DataprocV1::JobStatus::Representation
      
          property :trino_job, as: 'trinoJob', class: Google::Apis::DataprocV1::TrinoJob, decorator: Google::Apis::DataprocV1::TrinoJob::Representation
      
          collection :yarn_applications, as: 'yarnApplications', class: Google::Apis::DataprocV1::YarnApplication, decorator: Google::Apis::DataprocV1::YarnApplication::Representation
      
        end
      end
      
      class JobData
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :completion_time, as: 'completionTime'
          property :description, as: 'description'
          property :job_group, as: 'jobGroup'
          property :job_id, :numeric_string => true, as: 'jobId'
          hash :kill_tasks_summary, as: 'killTasksSummary'
          property :name, as: 'name'
          property :num_active_stages, as: 'numActiveStages'
          property :num_active_tasks, as: 'numActiveTasks'
          property :num_completed_indices, as: 'numCompletedIndices'
          property :num_completed_stages, as: 'numCompletedStages'
          property :num_completed_tasks, as: 'numCompletedTasks'
          property :num_failed_stages, as: 'numFailedStages'
          property :num_failed_tasks, as: 'numFailedTasks'
          property :num_killed_tasks, as: 'numKilledTasks'
          property :num_skipped_stages, as: 'numSkippedStages'
          property :num_skipped_tasks, as: 'numSkippedTasks'
          property :num_tasks, as: 'numTasks'
          collection :skipped_stages, as: 'skippedStages'
          property :sql_execution_id, :numeric_string => true, as: 'sqlExecutionId'
          collection :stage_ids, as: 'stageIds'
          property :status, as: 'status'
          property :submission_time, as: 'submissionTime'
        end
      end
      
      class JobMetadata
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :job_id, as: 'jobId'
          property :operation_type, as: 'operationType'
          property :start_time, as: 'startTime'
          property :status, as: 'status', class: Google::Apis::DataprocV1::JobStatus, decorator: Google::Apis::DataprocV1::JobStatus::Representation
      
        end
      end
      
      class JobPlacement
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          hash :cluster_labels, as: 'clusterLabels'
          property :cluster_name, as: 'clusterName'
          property :cluster_uuid, as: 'clusterUuid'
        end
      end
      
      class JobReference
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :job_id, as: 'jobId'
          property :project_id, as: 'projectId'
        end
      end
      
      class JobScheduling
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :max_failures_per_hour, as: 'maxFailuresPerHour'
          property :max_failures_total, as: 'maxFailuresTotal'
        end
      end
      
      class JobStatus
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :details, as: 'details'
          property :state, as: 'state'
          property :state_start_time, as: 'stateStartTime'
          property :substate, as: 'substate'
        end
      end
      
      class JobsSummary
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :active_jobs, as: 'activeJobs'
          property :application_id, as: 'applicationId'
          collection :attempts, as: 'attempts', class: Google::Apis::DataprocV1::ApplicationAttemptInfo, decorator: Google::Apis::DataprocV1::ApplicationAttemptInfo::Representation
      
          property :completed_jobs, as: 'completedJobs'
          property :failed_jobs, as: 'failedJobs'
          property :scheduling_mode, as: 'schedulingMode'
        end
      end
      
      class JupyterConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :display_name, as: 'displayName'
          property :kernel, as: 'kernel'
        end
      end
      
      class KerberosConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :cross_realm_trust_admin_server, as: 'crossRealmTrustAdminServer'
          property :cross_realm_trust_kdc, as: 'crossRealmTrustKdc'
          property :cross_realm_trust_realm, as: 'crossRealmTrustRealm'
          property :cross_realm_trust_shared_password_uri, as: 'crossRealmTrustSharedPasswordUri'
          property :enable_kerberos, as: 'enableKerberos'
          property :kdc_db_key_uri, as: 'kdcDbKeyUri'
          property :key_password_uri, as: 'keyPasswordUri'
          property :keystore_password_uri, as: 'keystorePasswordUri'
          property :keystore_uri, as: 'keystoreUri'
          property :kms_key_uri, as: 'kmsKeyUri'
          property :realm, as: 'realm'
          property :root_principal_password_uri, as: 'rootPrincipalPasswordUri'
          property :tgt_lifetime_hours, as: 'tgtLifetimeHours'
          property :truststore_password_uri, as: 'truststorePasswordUri'
          property :truststore_uri, as: 'truststoreUri'
        end
      end
      
      class KubernetesClusterConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :gke_cluster_config, as: 'gkeClusterConfig', class: Google::Apis::DataprocV1::GkeClusterConfig, decorator: Google::Apis::DataprocV1::GkeClusterConfig::Representation
      
          property :kubernetes_namespace, as: 'kubernetesNamespace'
          property :kubernetes_software_config, as: 'kubernetesSoftwareConfig', class: Google::Apis::DataprocV1::KubernetesSoftwareConfig, decorator: Google::Apis::DataprocV1::KubernetesSoftwareConfig::Representation
      
        end
      end
      
      class KubernetesSoftwareConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          hash :component_version, as: 'componentVersion'
          hash :properties, as: 'properties'
        end
      end
      
      class LifecycleConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :auto_delete_time, as: 'autoDeleteTime'
          property :auto_delete_ttl, as: 'autoDeleteTtl'
          property :auto_stop_time, as: 'autoStopTime'
          property :auto_stop_ttl, as: 'autoStopTtl'
          property :idle_delete_ttl, as: 'idleDeleteTtl'
          property :idle_start_time, as: 'idleStartTime'
          property :idle_stop_ttl, as: 'idleStopTtl'
        end
      end
      
      class ListAutoscalingPoliciesResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :next_page_token, as: 'nextPageToken'
          collection :policies, as: 'policies', class: Google::Apis::DataprocV1::AutoscalingPolicy, decorator: Google::Apis::DataprocV1::AutoscalingPolicy::Representation
      
        end
      end
      
      class ListBatchesResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :batches, as: 'batches', class: Google::Apis::DataprocV1::Batch, decorator: Google::Apis::DataprocV1::Batch::Representation
      
          property :next_page_token, as: 'nextPageToken'
          collection :unreachable, as: 'unreachable'
        end
      end
      
      class ListClustersResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :clusters, as: 'clusters', class: Google::Apis::DataprocV1::Cluster, decorator: Google::Apis::DataprocV1::Cluster::Representation
      
          property :next_page_token, as: 'nextPageToken'
        end
      end
      
      class ListJobsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :jobs, as: 'jobs', class: Google::Apis::DataprocV1::Job, decorator: Google::Apis::DataprocV1::Job::Representation
      
          property :next_page_token, as: 'nextPageToken'
          collection :unreachable, as: 'unreachable'
        end
      end
      
      class ListOperationsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :next_page_token, as: 'nextPageToken'
          collection :operations, as: 'operations', class: Google::Apis::DataprocV1::Operation, decorator: Google::Apis::DataprocV1::Operation::Representation
      
        end
      end
      
      class ListSessionTemplatesResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :next_page_token, as: 'nextPageToken'
          collection :session_templates, as: 'sessionTemplates', class: Google::Apis::DataprocV1::SessionTemplate, decorator: Google::Apis::DataprocV1::SessionTemplate::Representation
      
        end
      end
      
      class ListSessionsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :next_page_token, as: 'nextPageToken'
          collection :sessions, as: 'sessions', class: Google::Apis::DataprocV1::Session, decorator: Google::Apis::DataprocV1::Session::Representation
      
        end
      end
      
      class ListWorkflowTemplatesResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :next_page_token, as: 'nextPageToken'
          collection :templates, as: 'templates', class: Google::Apis::DataprocV1::WorkflowTemplate, decorator: Google::Apis::DataprocV1::WorkflowTemplate::Representation
      
          collection :unreachable, as: 'unreachable'
        end
      end
      
      class LoggingConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          hash :driver_log_levels, as: 'driverLogLevels'
        end
      end
      
      class ManagedCluster
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :cluster_name, as: 'clusterName'
          property :config, as: 'config', class: Google::Apis::DataprocV1::ClusterConfig, decorator: Google::Apis::DataprocV1::ClusterConfig::Representation
      
          hash :labels, as: 'labels'
        end
      end
      
      class ManagedGroupConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :instance_group_manager_name, as: 'instanceGroupManagerName'
          property :instance_group_manager_uri, as: 'instanceGroupManagerUri'
          property :instance_template_name, as: 'instanceTemplateName'
        end
      end
      
      class MemoryMetrics
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :total_off_heap_storage_memory, :numeric_string => true, as: 'totalOffHeapStorageMemory'
          property :total_on_heap_storage_memory, :numeric_string => true, as: 'totalOnHeapStorageMemory'
          property :used_off_heap_storage_memory, :numeric_string => true, as: 'usedOffHeapStorageMemory'
          property :used_on_heap_storage_memory, :numeric_string => true, as: 'usedOnHeapStorageMemory'
        end
      end
      
      class MetastoreConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :dataproc_metastore_service, as: 'dataprocMetastoreService'
        end
      end
      
      class Metric
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :metric_overrides, as: 'metricOverrides'
          property :metric_source, as: 'metricSource'
        end
      end
      
      class NamespacedGkeDeploymentTarget
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :cluster_namespace, as: 'clusterNamespace'
          property :target_gke_cluster, as: 'targetGkeCluster'
        end
      end
      
      class NativeBuildInfoUiData
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :build_class, as: 'buildClass'
          collection :build_info, as: 'buildInfo', class: Google::Apis::DataprocV1::BuildInfo, decorator: Google::Apis::DataprocV1::BuildInfo::Representation
      
        end
      end
      
      class NativeSqlExecutionUiData
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :description, as: 'description'
          property :execution_id, :numeric_string => true, as: 'executionId'
          property :fallback_description, as: 'fallbackDescription'
          collection :fallback_node_to_reason, as: 'fallbackNodeToReason', class: Google::Apis::DataprocV1::FallbackReason, decorator: Google::Apis::DataprocV1::FallbackReason::Representation
      
          property :num_fallback_nodes, as: 'numFallbackNodes'
          property :num_native_nodes, as: 'numNativeNodes'
        end
      end
      
      class NodeGroup
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          hash :labels, as: 'labels'
          property :name, as: 'name'
          property :node_group_config, as: 'nodeGroupConfig', class: Google::Apis::DataprocV1::InstanceGroupConfig, decorator: Google::Apis::DataprocV1::InstanceGroupConfig::Representation
      
          collection :roles, as: 'roles'
        end
      end
      
      class NodeGroupAffinity
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :node_group_uri, as: 'nodeGroupUri'
        end
      end
      
      class NodeGroupOperationMetadata
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :cluster_uuid, as: 'clusterUuid'
          property :description, as: 'description'
          hash :labels, as: 'labels'
          property :node_group_id, as: 'nodeGroupId'
          property :operation_type, as: 'operationType'
          property :status, as: 'status', class: Google::Apis::DataprocV1::ClusterOperationStatus, decorator: Google::Apis::DataprocV1::ClusterOperationStatus::Representation
      
          collection :status_history, as: 'statusHistory', class: Google::Apis::DataprocV1::ClusterOperationStatus, decorator: Google::Apis::DataprocV1::ClusterOperationStatus::Representation
      
          collection :warnings, as: 'warnings'
        end
      end
      
      class NodeInitializationAction
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :executable_file, as: 'executableFile'
          property :execution_timeout, as: 'executionTimeout'
        end
      end
      
      class NodePool
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :id, as: 'id'
          collection :instance_names, as: 'instanceNames'
          property :repair_action, as: 'repairAction'
        end
      end
      
      class Operation
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :done, as: 'done'
          property :error, as: 'error', class: Google::Apis::DataprocV1::Status, decorator: Google::Apis::DataprocV1::Status::Representation
      
          hash :metadata, as: 'metadata'
          property :name, as: 'name'
          hash :response, as: 'response'
        end
      end
      
      class OrderedJob
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :flink_job, as: 'flinkJob', class: Google::Apis::DataprocV1::FlinkJob, decorator: Google::Apis::DataprocV1::FlinkJob::Representation
      
          property :hadoop_job, as: 'hadoopJob', class: Google::Apis::DataprocV1::HadoopJob, decorator: Google::Apis::DataprocV1::HadoopJob::Representation
      
          property :hive_job, as: 'hiveJob', class: Google::Apis::DataprocV1::HiveJob, decorator: Google::Apis::DataprocV1::HiveJob::Representation
      
          hash :labels, as: 'labels'
          property :pig_job, as: 'pigJob', class: Google::Apis::DataprocV1::PigJob, decorator: Google::Apis::DataprocV1::PigJob::Representation
      
          collection :prerequisite_step_ids, as: 'prerequisiteStepIds'
          property :presto_job, as: 'prestoJob', class: Google::Apis::DataprocV1::PrestoJob, decorator: Google::Apis::DataprocV1::PrestoJob::Representation
      
          property :pyspark_job, as: 'pysparkJob', class: Google::Apis::DataprocV1::PySparkJob, decorator: Google::Apis::DataprocV1::PySparkJob::Representation
      
          property :scheduling, as: 'scheduling', class: Google::Apis::DataprocV1::JobScheduling, decorator: Google::Apis::DataprocV1::JobScheduling::Representation
      
          property :spark_job, as: 'sparkJob', class: Google::Apis::DataprocV1::SparkJob, decorator: Google::Apis::DataprocV1::SparkJob::Representation
      
          property :spark_r_job, as: 'sparkRJob', class: Google::Apis::DataprocV1::SparkRJob, decorator: Google::Apis::DataprocV1::SparkRJob::Representation
      
          property :spark_sql_job, as: 'sparkSqlJob', class: Google::Apis::DataprocV1::SparkSqlJob, decorator: Google::Apis::DataprocV1::SparkSqlJob::Representation
      
          property :step_id, as: 'stepId'
          property :trino_job, as: 'trinoJob', class: Google::Apis::DataprocV1::TrinoJob, decorator: Google::Apis::DataprocV1::TrinoJob::Representation
      
        end
      end
      
      class OutputMetrics
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :bytes_written, :numeric_string => true, as: 'bytesWritten'
          property :records_written, :numeric_string => true, as: 'recordsWritten'
        end
      end
      
      class OutputQuantileMetrics
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :bytes_written, as: 'bytesWritten', class: Google::Apis::DataprocV1::Quantiles, decorator: Google::Apis::DataprocV1::Quantiles::Representation
      
          property :records_written, as: 'recordsWritten', class: Google::Apis::DataprocV1::Quantiles, decorator: Google::Apis::DataprocV1::Quantiles::Representation
      
        end
      end
      
      class ParameterValidation
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :regex, as: 'regex', class: Google::Apis::DataprocV1::RegexValidation, decorator: Google::Apis::DataprocV1::RegexValidation::Representation
      
          property :values, as: 'values', class: Google::Apis::DataprocV1::ValueValidation, decorator: Google::Apis::DataprocV1::ValueValidation::Representation
      
        end
      end
      
      class PeripheralsConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :metastore_service, as: 'metastoreService'
          property :spark_history_server_config, as: 'sparkHistoryServerConfig', class: Google::Apis::DataprocV1::SparkHistoryServerConfig, decorator: Google::Apis::DataprocV1::SparkHistoryServerConfig::Representation
      
        end
      end
      
      class PigJob
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :continue_on_failure, as: 'continueOnFailure'
          collection :jar_file_uris, as: 'jarFileUris'
          property :logging_config, as: 'loggingConfig', class: Google::Apis::DataprocV1::LoggingConfig, decorator: Google::Apis::DataprocV1::LoggingConfig::Representation
      
          hash :properties, as: 'properties'
          property :query_file_uri, as: 'queryFileUri'
          property :query_list, as: 'queryList', class: Google::Apis::DataprocV1::QueryList, decorator: Google::Apis::DataprocV1::QueryList::Representation
      
          hash :script_variables, as: 'scriptVariables'
        end
      end
      
      class Policy
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :bindings, as: 'bindings', class: Google::Apis::DataprocV1::Binding, decorator: Google::Apis::DataprocV1::Binding::Representation
      
          property :etag, :base64 => true, as: 'etag'
          property :version, as: 'version'
        end
      end
      
      class PoolData
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :name, as: 'name'
          collection :stage_ids, as: 'stageIds'
        end
      end
      
      class PrestoJob
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :client_tags, as: 'clientTags'
          property :continue_on_failure, as: 'continueOnFailure'
          property :logging_config, as: 'loggingConfig', class: Google::Apis::DataprocV1::LoggingConfig, decorator: Google::Apis::DataprocV1::LoggingConfig::Representation
      
          property :output_format, as: 'outputFormat'
          hash :properties, as: 'properties'
          property :query_file_uri, as: 'queryFileUri'
          property :query_list, as: 'queryList', class: Google::Apis::DataprocV1::QueryList, decorator: Google::Apis::DataprocV1::QueryList::Representation
      
        end
      end
      
      class ProcessSummary
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :add_time, as: 'addTime'
          property :host_port, as: 'hostPort'
          property :is_active, as: 'isActive'
          property :process_id, as: 'processId'
          hash :process_logs, as: 'processLogs'
          property :remove_time, as: 'removeTime'
          property :total_cores, as: 'totalCores'
        end
      end
      
      class PropertiesInfo
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          hash :autotuning_properties, as: 'autotuningProperties', class: Google::Apis::DataprocV1::ValueInfo, decorator: Google::Apis::DataprocV1::ValueInfo::Representation
      
        end
      end
      
      class ProvisioningModelMix
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :standard_capacity_base, as: 'standardCapacityBase'
          property :standard_capacity_percent_above_base, as: 'standardCapacityPercentAboveBase'
        end
      end
      
      class PyPiRepositoryConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :pypi_repository, as: 'pypiRepository'
        end
      end
      
      class PySparkBatch
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :archive_uris, as: 'archiveUris'
          collection :args, as: 'args'
          collection :file_uris, as: 'fileUris'
          collection :jar_file_uris, as: 'jarFileUris'
          property :main_python_file_uri, as: 'mainPythonFileUri'
          collection :python_file_uris, as: 'pythonFileUris'
        end
      end
      
      class PySparkJob
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :archive_uris, as: 'archiveUris'
          collection :args, as: 'args'
          collection :file_uris, as: 'fileUris'
          collection :jar_file_uris, as: 'jarFileUris'
          property :logging_config, as: 'loggingConfig', class: Google::Apis::DataprocV1::LoggingConfig, decorator: Google::Apis::DataprocV1::LoggingConfig::Representation
      
          property :main_python_file_uri, as: 'mainPythonFileUri'
          hash :properties, as: 'properties'
          collection :python_file_uris, as: 'pythonFileUris'
        end
      end
      
      class Quantiles
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :count, :numeric_string => true, as: 'count'
          property :maximum, :numeric_string => true, as: 'maximum'
          property :minimum, :numeric_string => true, as: 'minimum'
          property :percentile25, :numeric_string => true, as: 'percentile25'
          property :percentile50, :numeric_string => true, as: 'percentile50'
          property :percentile75, :numeric_string => true, as: 'percentile75'
          property :sum, :numeric_string => true, as: 'sum'
        end
      end
      
      class QueryList
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :queries, as: 'queries'
        end
      end
      
      class RddDataDistribution
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :address, as: 'address'
          property :disk_used, :numeric_string => true, as: 'diskUsed'
          property :memory_remaining, :numeric_string => true, as: 'memoryRemaining'
          property :memory_used, :numeric_string => true, as: 'memoryUsed'
          property :off_heap_memory_remaining, :numeric_string => true, as: 'offHeapMemoryRemaining'
          property :off_heap_memory_used, :numeric_string => true, as: 'offHeapMemoryUsed'
          property :on_heap_memory_remaining, :numeric_string => true, as: 'onHeapMemoryRemaining'
          property :on_heap_memory_used, :numeric_string => true, as: 'onHeapMemoryUsed'
        end
      end
      
      class RddOperationCluster
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :child_clusters, as: 'childClusters', class: Google::Apis::DataprocV1::RddOperationCluster, decorator: Google::Apis::DataprocV1::RddOperationCluster::Representation
      
          collection :child_nodes, as: 'childNodes', class: Google::Apis::DataprocV1::RddOperationNode, decorator: Google::Apis::DataprocV1::RddOperationNode::Representation
      
          property :name, as: 'name'
          property :rdd_cluster_id, as: 'rddClusterId'
        end
      end
      
      class RddOperationEdge
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :from_id, as: 'fromId'
          property :to_id, as: 'toId'
        end
      end
      
      class RddOperationGraph
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :edges, as: 'edges', class: Google::Apis::DataprocV1::RddOperationEdge, decorator: Google::Apis::DataprocV1::RddOperationEdge::Representation
      
          collection :incoming_edges, as: 'incomingEdges', class: Google::Apis::DataprocV1::RddOperationEdge, decorator: Google::Apis::DataprocV1::RddOperationEdge::Representation
      
          collection :outgoing_edges, as: 'outgoingEdges', class: Google::Apis::DataprocV1::RddOperationEdge, decorator: Google::Apis::DataprocV1::RddOperationEdge::Representation
      
          property :root_cluster, as: 'rootCluster', class: Google::Apis::DataprocV1::RddOperationCluster, decorator: Google::Apis::DataprocV1::RddOperationCluster::Representation
      
          property :stage_id, :numeric_string => true, as: 'stageId'
        end
      end
      
      class RddOperationNode
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :barrier, as: 'barrier'
          property :cached, as: 'cached'
          property :callsite, as: 'callsite'
          property :name, as: 'name'
          property :node_id, as: 'nodeId'
          property :output_deterministic_level, as: 'outputDeterministicLevel'
        end
      end
      
      class RddPartitionInfo
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :block_name, as: 'blockName'
          property :disk_used, :numeric_string => true, as: 'diskUsed'
          collection :executors, as: 'executors'
          property :memory_used, :numeric_string => true, as: 'memoryUsed'
          property :storage_level, as: 'storageLevel'
        end
      end
      
      class RddStorageInfo
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :data_distribution, as: 'dataDistribution', class: Google::Apis::DataprocV1::RddDataDistribution, decorator: Google::Apis::DataprocV1::RddDataDistribution::Representation
      
          property :disk_used, :numeric_string => true, as: 'diskUsed'
          property :memory_used, :numeric_string => true, as: 'memoryUsed'
          property :name, as: 'name'
          property :num_cached_partitions, as: 'numCachedPartitions'
          property :num_partitions, as: 'numPartitions'
          collection :partitions, as: 'partitions', class: Google::Apis::DataprocV1::RddPartitionInfo, decorator: Google::Apis::DataprocV1::RddPartitionInfo::Representation
      
          property :rdd_storage_id, as: 'rddStorageId'
          property :storage_level, as: 'storageLevel'
        end
      end
      
      class RegexValidation
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :regexes, as: 'regexes'
        end
      end
      
      class RepairClusterRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :cluster, as: 'cluster', class: Google::Apis::DataprocV1::ClusterToRepair, decorator: Google::Apis::DataprocV1::ClusterToRepair::Representation
      
          property :cluster_uuid, as: 'clusterUuid'
          property :graceful_decommission_timeout, as: 'gracefulDecommissionTimeout'
          collection :node_pools, as: 'nodePools', class: Google::Apis::DataprocV1::NodePool, decorator: Google::Apis::DataprocV1::NodePool::Representation
      
          property :parent_operation_id, as: 'parentOperationId'
          property :request_id, as: 'requestId'
        end
      end
      
      class RepairNodeGroupRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :instance_names, as: 'instanceNames'
          property :repair_action, as: 'repairAction'
          property :request_id, as: 'requestId'
        end
      end
      
      class RepositoryConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :pypi_repository_config, as: 'pypiRepositoryConfig', class: Google::Apis::DataprocV1::PyPiRepositoryConfig, decorator: Google::Apis::DataprocV1::PyPiRepositoryConfig::Representation
      
        end
      end
      
      class ReservationAffinity
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :consume_reservation_type, as: 'consumeReservationType'
          property :key, as: 'key'
          collection :values, as: 'values'
        end
      end
      
      class ResizeNodeGroupRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :graceful_decommission_timeout, as: 'gracefulDecommissionTimeout'
          property :parent_operation_id, as: 'parentOperationId'
          property :request_id, as: 'requestId'
          property :size, as: 'size'
        end
      end
      
      class ResourceInformation
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :addresses, as: 'addresses'
          property :name, as: 'name'
        end
      end
      
      class ResourceProfileInfo
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          hash :executor_resources, as: 'executorResources', class: Google::Apis::DataprocV1::ExecutorResourceRequest, decorator: Google::Apis::DataprocV1::ExecutorResourceRequest::Representation
      
          property :resource_profile_id, as: 'resourceProfileId'
          hash :task_resources, as: 'taskResources', class: Google::Apis::DataprocV1::TaskResourceRequest, decorator: Google::Apis::DataprocV1::TaskResourceRequest::Representation
      
        end
      end
      
      class RuntimeConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :autotuning_config, as: 'autotuningConfig', class: Google::Apis::DataprocV1::AutotuningConfig, decorator: Google::Apis::DataprocV1::AutotuningConfig::Representation
      
          property :cohort, as: 'cohort'
          property :container_image, as: 'containerImage'
          hash :properties, as: 'properties'
          property :repository_config, as: 'repositoryConfig', class: Google::Apis::DataprocV1::RepositoryConfig, decorator: Google::Apis::DataprocV1::RepositoryConfig::Representation
      
          property :version, as: 'version'
        end
      end
      
      class RuntimeInfo
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :approximate_usage, as: 'approximateUsage', class: Google::Apis::DataprocV1::UsageMetrics, decorator: Google::Apis::DataprocV1::UsageMetrics::Representation
      
          property :current_usage, as: 'currentUsage', class: Google::Apis::DataprocV1::UsageSnapshot, decorator: Google::Apis::DataprocV1::UsageSnapshot::Representation
      
          property :diagnostic_output_uri, as: 'diagnosticOutputUri'
          hash :endpoints, as: 'endpoints'
          property :output_uri, as: 'outputUri'
          property :properties_info, as: 'propertiesInfo', class: Google::Apis::DataprocV1::PropertiesInfo, decorator: Google::Apis::DataprocV1::PropertiesInfo::Representation
      
        end
      end
      
      class SearchSessionSparkApplicationExecutorStageSummaryResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :next_page_token, as: 'nextPageToken'
          collection :spark_application_stage_executors, as: 'sparkApplicationStageExecutors', class: Google::Apis::DataprocV1::ExecutorStageSummary, decorator: Google::Apis::DataprocV1::ExecutorStageSummary::Representation
      
        end
      end
      
      class SearchSessionSparkApplicationExecutorsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :next_page_token, as: 'nextPageToken'
          collection :spark_application_executors, as: 'sparkApplicationExecutors', class: Google::Apis::DataprocV1::ExecutorSummary, decorator: Google::Apis::DataprocV1::ExecutorSummary::Representation
      
        end
      end
      
      class SearchSessionSparkApplicationJobsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :next_page_token, as: 'nextPageToken'
          collection :spark_application_jobs, as: 'sparkApplicationJobs', class: Google::Apis::DataprocV1::JobData, decorator: Google::Apis::DataprocV1::JobData::Representation
      
        end
      end
      
      class SearchSessionSparkApplicationSqlQueriesResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :next_page_token, as: 'nextPageToken'
          collection :spark_application_sql_queries, as: 'sparkApplicationSqlQueries', class: Google::Apis::DataprocV1::SqlExecutionUiData, decorator: Google::Apis::DataprocV1::SqlExecutionUiData::Representation
      
        end
      end
      
      class SearchSessionSparkApplicationStageAttemptTasksResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :next_page_token, as: 'nextPageToken'
          collection :spark_application_stage_attempt_tasks, as: 'sparkApplicationStageAttemptTasks', class: Google::Apis::DataprocV1::TaskData, decorator: Google::Apis::DataprocV1::TaskData::Representation
      
        end
      end
      
      class SearchSessionSparkApplicationStageAttemptsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :next_page_token, as: 'nextPageToken'
          collection :spark_application_stage_attempts, as: 'sparkApplicationStageAttempts', class: Google::Apis::DataprocV1::StageData, decorator: Google::Apis::DataprocV1::StageData::Representation
      
        end
      end
      
      class SearchSessionSparkApplicationStagesResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :next_page_token, as: 'nextPageToken'
          collection :spark_application_stages, as: 'sparkApplicationStages', class: Google::Apis::DataprocV1::StageData, decorator: Google::Apis::DataprocV1::StageData::Representation
      
        end
      end
      
      class SearchSessionSparkApplicationsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :next_page_token, as: 'nextPageToken'
          collection :spark_applications, as: 'sparkApplications', class: Google::Apis::DataprocV1::SparkApplication, decorator: Google::Apis::DataprocV1::SparkApplication::Representation
      
        end
      end
      
      class SearchSparkApplicationExecutorStageSummaryResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :next_page_token, as: 'nextPageToken'
          collection :spark_application_stage_executors, as: 'sparkApplicationStageExecutors', class: Google::Apis::DataprocV1::ExecutorStageSummary, decorator: Google::Apis::DataprocV1::ExecutorStageSummary::Representation
      
        end
      end
      
      class SearchSparkApplicationExecutorsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :next_page_token, as: 'nextPageToken'
          collection :spark_application_executors, as: 'sparkApplicationExecutors', class: Google::Apis::DataprocV1::ExecutorSummary, decorator: Google::Apis::DataprocV1::ExecutorSummary::Representation
      
        end
      end
      
      class SearchSparkApplicationJobsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :next_page_token, as: 'nextPageToken'
          collection :spark_application_jobs, as: 'sparkApplicationJobs', class: Google::Apis::DataprocV1::JobData, decorator: Google::Apis::DataprocV1::JobData::Representation
      
        end
      end
      
      class SearchSparkApplicationSqlQueriesResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :next_page_token, as: 'nextPageToken'
          collection :spark_application_sql_queries, as: 'sparkApplicationSqlQueries', class: Google::Apis::DataprocV1::SqlExecutionUiData, decorator: Google::Apis::DataprocV1::SqlExecutionUiData::Representation
      
        end
      end
      
      class SearchSparkApplicationStageAttemptTasksResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :next_page_token, as: 'nextPageToken'
          collection :spark_application_stage_attempt_tasks, as: 'sparkApplicationStageAttemptTasks', class: Google::Apis::DataprocV1::TaskData, decorator: Google::Apis::DataprocV1::TaskData::Representation
      
        end
      end
      
      class SearchSparkApplicationStageAttemptsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :next_page_token, as: 'nextPageToken'
          collection :spark_application_stage_attempts, as: 'sparkApplicationStageAttempts', class: Google::Apis::DataprocV1::StageData, decorator: Google::Apis::DataprocV1::StageData::Representation
      
        end
      end
      
      class SearchSparkApplicationStagesResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :next_page_token, as: 'nextPageToken'
          collection :spark_application_stages, as: 'sparkApplicationStages', class: Google::Apis::DataprocV1::StageData, decorator: Google::Apis::DataprocV1::StageData::Representation
      
        end
      end
      
      class SearchSparkApplicationsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :next_page_token, as: 'nextPageToken'
          collection :spark_applications, as: 'sparkApplications', class: Google::Apis::DataprocV1::SparkApplication, decorator: Google::Apis::DataprocV1::SparkApplication::Representation
      
        end
      end
      
      class SecurityConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :identity_config, as: 'identityConfig', class: Google::Apis::DataprocV1::IdentityConfig, decorator: Google::Apis::DataprocV1::IdentityConfig::Representation
      
          property :kerberos_config, as: 'kerberosConfig', class: Google::Apis::DataprocV1::KerberosConfig, decorator: Google::Apis::DataprocV1::KerberosConfig::Representation
      
        end
      end
      
      class Session
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :create_time, as: 'createTime'
          property :creator, as: 'creator'
          property :environment_config, as: 'environmentConfig', class: Google::Apis::DataprocV1::EnvironmentConfig, decorator: Google::Apis::DataprocV1::EnvironmentConfig::Representation
      
          property :jupyter_session, as: 'jupyterSession', class: Google::Apis::DataprocV1::JupyterConfig, decorator: Google::Apis::DataprocV1::JupyterConfig::Representation
      
          hash :labels, as: 'labels'
          property :name, as: 'name'
          property :runtime_config, as: 'runtimeConfig', class: Google::Apis::DataprocV1::RuntimeConfig, decorator: Google::Apis::DataprocV1::RuntimeConfig::Representation
      
          property :runtime_info, as: 'runtimeInfo', class: Google::Apis::DataprocV1::RuntimeInfo, decorator: Google::Apis::DataprocV1::RuntimeInfo::Representation
      
          property :session_template, as: 'sessionTemplate'
          property :spark_connect_session, as: 'sparkConnectSession', class: Google::Apis::DataprocV1::SparkConnectConfig, decorator: Google::Apis::DataprocV1::SparkConnectConfig::Representation
      
          property :state, as: 'state'
          collection :state_history, as: 'stateHistory', class: Google::Apis::DataprocV1::SessionStateHistory, decorator: Google::Apis::DataprocV1::SessionStateHistory::Representation
      
          property :state_message, as: 'stateMessage'
          property :state_time, as: 'stateTime'
          property :user, as: 'user'
          property :uuid, as: 'uuid'
        end
      end
      
      class SessionOperationMetadata
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :create_time, as: 'createTime'
          property :description, as: 'description'
          property :done_time, as: 'doneTime'
          hash :labels, as: 'labels'
          property :operation_type, as: 'operationType'
          property :session, as: 'session'
          property :session_uuid, as: 'sessionUuid'
          collection :warnings, as: 'warnings'
        end
      end
      
      class SessionStateHistory
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :state, as: 'state'
          property :state_message, as: 'stateMessage'
          property :state_start_time, as: 'stateStartTime'
        end
      end
      
      class SessionTemplate
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :create_time, as: 'createTime'
          property :creator, as: 'creator'
          property :description, as: 'description'
          property :environment_config, as: 'environmentConfig', class: Google::Apis::DataprocV1::EnvironmentConfig, decorator: Google::Apis::DataprocV1::EnvironmentConfig::Representation
      
          property :jupyter_session, as: 'jupyterSession', class: Google::Apis::DataprocV1::JupyterConfig, decorator: Google::Apis::DataprocV1::JupyterConfig::Representation
      
          hash :labels, as: 'labels'
          property :name, as: 'name'
          property :runtime_config, as: 'runtimeConfig', class: Google::Apis::DataprocV1::RuntimeConfig, decorator: Google::Apis::DataprocV1::RuntimeConfig::Representation
      
          property :spark_connect_session, as: 'sparkConnectSession', class: Google::Apis::DataprocV1::SparkConnectConfig, decorator: Google::Apis::DataprocV1::SparkConnectConfig::Representation
      
          property :update_time, as: 'updateTime'
          property :uuid, as: 'uuid'
        end
      end
      
      class SetIamPolicyRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :policy, as: 'policy', class: Google::Apis::DataprocV1::Policy, decorator: Google::Apis::DataprocV1::Policy::Representation
      
        end
      end
      
      class ShieldedInstanceConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :enable_integrity_monitoring, as: 'enableIntegrityMonitoring'
          property :enable_secure_boot, as: 'enableSecureBoot'
          property :enable_vtpm, as: 'enableVtpm'
        end
      end
      
      class ShufflePushReadMetrics
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :corrupt_merged_block_chunks, :numeric_string => true, as: 'corruptMergedBlockChunks'
          property :local_merged_blocks_fetched, :numeric_string => true, as: 'localMergedBlocksFetched'
          property :local_merged_bytes_read, :numeric_string => true, as: 'localMergedBytesRead'
          property :local_merged_chunks_fetched, :numeric_string => true, as: 'localMergedChunksFetched'
          property :merged_fetch_fallback_count, :numeric_string => true, as: 'mergedFetchFallbackCount'
          property :remote_merged_blocks_fetched, :numeric_string => true, as: 'remoteMergedBlocksFetched'
          property :remote_merged_bytes_read, :numeric_string => true, as: 'remoteMergedBytesRead'
          property :remote_merged_chunks_fetched, :numeric_string => true, as: 'remoteMergedChunksFetched'
          property :remote_merged_reqs_duration, :numeric_string => true, as: 'remoteMergedReqsDuration'
        end
      end
      
      class ShufflePushReadQuantileMetrics
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :corrupt_merged_block_chunks, as: 'corruptMergedBlockChunks', class: Google::Apis::DataprocV1::Quantiles, decorator: Google::Apis::DataprocV1::Quantiles::Representation
      
          property :local_merged_blocks_fetched, as: 'localMergedBlocksFetched', class: Google::Apis::DataprocV1::Quantiles, decorator: Google::Apis::DataprocV1::Quantiles::Representation
      
          property :local_merged_bytes_read, as: 'localMergedBytesRead', class: Google::Apis::DataprocV1::Quantiles, decorator: Google::Apis::DataprocV1::Quantiles::Representation
      
          property :local_merged_chunks_fetched, as: 'localMergedChunksFetched', class: Google::Apis::DataprocV1::Quantiles, decorator: Google::Apis::DataprocV1::Quantiles::Representation
      
          property :merged_fetch_fallback_count, as: 'mergedFetchFallbackCount', class: Google::Apis::DataprocV1::Quantiles, decorator: Google::Apis::DataprocV1::Quantiles::Representation
      
          property :remote_merged_blocks_fetched, as: 'remoteMergedBlocksFetched', class: Google::Apis::DataprocV1::Quantiles, decorator: Google::Apis::DataprocV1::Quantiles::Representation
      
          property :remote_merged_bytes_read, as: 'remoteMergedBytesRead', class: Google::Apis::DataprocV1::Quantiles, decorator: Google::Apis::DataprocV1::Quantiles::Representation
      
          property :remote_merged_chunks_fetched, as: 'remoteMergedChunksFetched', class: Google::Apis::DataprocV1::Quantiles, decorator: Google::Apis::DataprocV1::Quantiles::Representation
      
          property :remote_merged_reqs_duration, as: 'remoteMergedReqsDuration', class: Google::Apis::DataprocV1::Quantiles, decorator: Google::Apis::DataprocV1::Quantiles::Representation
      
        end
      end
      
      class ShuffleReadMetrics
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :fetch_wait_time_millis, :numeric_string => true, as: 'fetchWaitTimeMillis'
          property :local_blocks_fetched, :numeric_string => true, as: 'localBlocksFetched'
          property :local_bytes_read, :numeric_string => true, as: 'localBytesRead'
          property :records_read, :numeric_string => true, as: 'recordsRead'
          property :remote_blocks_fetched, :numeric_string => true, as: 'remoteBlocksFetched'
          property :remote_bytes_read, :numeric_string => true, as: 'remoteBytesRead'
          property :remote_bytes_read_to_disk, :numeric_string => true, as: 'remoteBytesReadToDisk'
          property :remote_reqs_duration, :numeric_string => true, as: 'remoteReqsDuration'
          property :shuffle_push_read_metrics, as: 'shufflePushReadMetrics', class: Google::Apis::DataprocV1::ShufflePushReadMetrics, decorator: Google::Apis::DataprocV1::ShufflePushReadMetrics::Representation
      
        end
      end
      
      class ShuffleReadQuantileMetrics
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :fetch_wait_time_millis, as: 'fetchWaitTimeMillis', class: Google::Apis::DataprocV1::Quantiles, decorator: Google::Apis::DataprocV1::Quantiles::Representation
      
          property :local_blocks_fetched, as: 'localBlocksFetched', class: Google::Apis::DataprocV1::Quantiles, decorator: Google::Apis::DataprocV1::Quantiles::Representation
      
          property :read_bytes, as: 'readBytes', class: Google::Apis::DataprocV1::Quantiles, decorator: Google::Apis::DataprocV1::Quantiles::Representation
      
          property :read_records, as: 'readRecords', class: Google::Apis::DataprocV1::Quantiles, decorator: Google::Apis::DataprocV1::Quantiles::Representation
      
          property :remote_blocks_fetched, as: 'remoteBlocksFetched', class: Google::Apis::DataprocV1::Quantiles, decorator: Google::Apis::DataprocV1::Quantiles::Representation
      
          property :remote_bytes_read, as: 'remoteBytesRead', class: Google::Apis::DataprocV1::Quantiles, decorator: Google::Apis::DataprocV1::Quantiles::Representation
      
          property :remote_bytes_read_to_disk, as: 'remoteBytesReadToDisk', class: Google::Apis::DataprocV1::Quantiles, decorator: Google::Apis::DataprocV1::Quantiles::Representation
      
          property :remote_reqs_duration, as: 'remoteReqsDuration', class: Google::Apis::DataprocV1::Quantiles, decorator: Google::Apis::DataprocV1::Quantiles::Representation
      
          property :shuffle_push_read_metrics, as: 'shufflePushReadMetrics', class: Google::Apis::DataprocV1::ShufflePushReadQuantileMetrics, decorator: Google::Apis::DataprocV1::ShufflePushReadQuantileMetrics::Representation
      
          property :total_blocks_fetched, as: 'totalBlocksFetched', class: Google::Apis::DataprocV1::Quantiles, decorator: Google::Apis::DataprocV1::Quantiles::Representation
      
        end
      end
      
      class ShuffleWriteMetrics
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :bytes_written, :numeric_string => true, as: 'bytesWritten'
          property :records_written, :numeric_string => true, as: 'recordsWritten'
          property :write_time_nanos, :numeric_string => true, as: 'writeTimeNanos'
        end
      end
      
      class ShuffleWriteQuantileMetrics
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :write_bytes, as: 'writeBytes', class: Google::Apis::DataprocV1::Quantiles, decorator: Google::Apis::DataprocV1::Quantiles::Representation
      
          property :write_records, as: 'writeRecords', class: Google::Apis::DataprocV1::Quantiles, decorator: Google::Apis::DataprocV1::Quantiles::Representation
      
          property :write_time_nanos, as: 'writeTimeNanos', class: Google::Apis::DataprocV1::Quantiles, decorator: Google::Apis::DataprocV1::Quantiles::Representation
      
        end
      end
      
      class SinkProgress
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :description, as: 'description'
          hash :metrics, as: 'metrics'
          property :num_output_rows, :numeric_string => true, as: 'numOutputRows'
        end
      end
      
      class SoftwareConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :image_version, as: 'imageVersion'
          collection :optional_components, as: 'optionalComponents'
          hash :properties, as: 'properties'
        end
      end
      
      class SourceProgress
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :description, as: 'description'
          property :end_offset, as: 'endOffset'
          property :input_rows_per_second, as: 'inputRowsPerSecond'
          property :latest_offset, as: 'latestOffset'
          hash :metrics, as: 'metrics'
          property :num_input_rows, :numeric_string => true, as: 'numInputRows'
          property :processed_rows_per_second, as: 'processedRowsPerSecond'
          property :start_offset, as: 'startOffset'
        end
      end
      
      class SparkApplication
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :application, as: 'application', class: Google::Apis::DataprocV1::ApplicationInfo, decorator: Google::Apis::DataprocV1::ApplicationInfo::Representation
      
          property :name, as: 'name'
        end
      end
      
      class SparkBatch
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :archive_uris, as: 'archiveUris'
          collection :args, as: 'args'
          collection :file_uris, as: 'fileUris'
          collection :jar_file_uris, as: 'jarFileUris'
          property :main_class, as: 'mainClass'
          property :main_jar_file_uri, as: 'mainJarFileUri'
        end
      end
      
      class SparkConnectConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
        end
      end
      
      class SparkHistoryServerConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :dataproc_cluster, as: 'dataprocCluster'
        end
      end
      
      class SparkJob
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :archive_uris, as: 'archiveUris'
          collection :args, as: 'args'
          collection :file_uris, as: 'fileUris'
          collection :jar_file_uris, as: 'jarFileUris'
          property :logging_config, as: 'loggingConfig', class: Google::Apis::DataprocV1::LoggingConfig, decorator: Google::Apis::DataprocV1::LoggingConfig::Representation
      
          property :main_class, as: 'mainClass'
          property :main_jar_file_uri, as: 'mainJarFileUri'
          hash :properties, as: 'properties'
        end
      end
      
      class SparkPlanGraph
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :edges, as: 'edges', class: Google::Apis::DataprocV1::SparkPlanGraphEdge, decorator: Google::Apis::DataprocV1::SparkPlanGraphEdge::Representation
      
          property :execution_id, :numeric_string => true, as: 'executionId'
          collection :nodes, as: 'nodes', class: Google::Apis::DataprocV1::SparkPlanGraphNodeWrapper, decorator: Google::Apis::DataprocV1::SparkPlanGraphNodeWrapper::Representation
      
        end
      end
      
      class SparkPlanGraphCluster
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :desc, as: 'desc'
          collection :metrics, as: 'metrics', class: Google::Apis::DataprocV1::SqlPlanMetric, decorator: Google::Apis::DataprocV1::SqlPlanMetric::Representation
      
          property :name, as: 'name'
          collection :nodes, as: 'nodes', class: Google::Apis::DataprocV1::SparkPlanGraphNodeWrapper, decorator: Google::Apis::DataprocV1::SparkPlanGraphNodeWrapper::Representation
      
          property :spark_plan_graph_cluster_id, :numeric_string => true, as: 'sparkPlanGraphClusterId'
        end
      end
      
      class SparkPlanGraphEdge
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :from_id, :numeric_string => true, as: 'fromId'
          property :to_id, :numeric_string => true, as: 'toId'
        end
      end
      
      class SparkPlanGraphNode
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :desc, as: 'desc'
          collection :metrics, as: 'metrics', class: Google::Apis::DataprocV1::SqlPlanMetric, decorator: Google::Apis::DataprocV1::SqlPlanMetric::Representation
      
          property :name, as: 'name'
          property :spark_plan_graph_node_id, :numeric_string => true, as: 'sparkPlanGraphNodeId'
        end
      end
      
      class SparkPlanGraphNodeWrapper
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :cluster, as: 'cluster', class: Google::Apis::DataprocV1::SparkPlanGraphCluster, decorator: Google::Apis::DataprocV1::SparkPlanGraphCluster::Representation
      
          property :node, as: 'node', class: Google::Apis::DataprocV1::SparkPlanGraphNode, decorator: Google::Apis::DataprocV1::SparkPlanGraphNode::Representation
      
        end
      end
      
      class SparkRBatch
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :archive_uris, as: 'archiveUris'
          collection :args, as: 'args'
          collection :file_uris, as: 'fileUris'
          property :main_r_file_uri, as: 'mainRFileUri'
        end
      end
      
      class SparkRJob
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :archive_uris, as: 'archiveUris'
          collection :args, as: 'args'
          collection :file_uris, as: 'fileUris'
          property :logging_config, as: 'loggingConfig', class: Google::Apis::DataprocV1::LoggingConfig, decorator: Google::Apis::DataprocV1::LoggingConfig::Representation
      
          property :main_r_file_uri, as: 'mainRFileUri'
          hash :properties, as: 'properties'
        end
      end
      
      class SparkRuntimeInfo
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :java_home, as: 'javaHome'
          property :java_version, as: 'javaVersion'
          property :scala_version, as: 'scalaVersion'
        end
      end
      
      class SparkSqlBatch
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :jar_file_uris, as: 'jarFileUris'
          property :query_file_uri, as: 'queryFileUri'
          hash :query_variables, as: 'queryVariables'
        end
      end
      
      class SparkSqlJob
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :jar_file_uris, as: 'jarFileUris'
          property :logging_config, as: 'loggingConfig', class: Google::Apis::DataprocV1::LoggingConfig, decorator: Google::Apis::DataprocV1::LoggingConfig::Representation
      
          hash :properties, as: 'properties'
          property :query_file_uri, as: 'queryFileUri'
          property :query_list, as: 'queryList', class: Google::Apis::DataprocV1::QueryList, decorator: Google::Apis::DataprocV1::QueryList::Representation
      
          hash :script_variables, as: 'scriptVariables'
        end
      end
      
      class SparkStandaloneAutoscalingConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :graceful_decommission_timeout, as: 'gracefulDecommissionTimeout'
          property :remove_only_idle_workers, as: 'removeOnlyIdleWorkers'
          property :scale_down_factor, as: 'scaleDownFactor'
          property :scale_down_min_worker_fraction, as: 'scaleDownMinWorkerFraction'
          property :scale_up_factor, as: 'scaleUpFactor'
          property :scale_up_min_worker_fraction, as: 'scaleUpMinWorkerFraction'
        end
      end
      
      class SparkWrapperObject
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :app_summary, as: 'appSummary', class: Google::Apis::DataprocV1::AppSummary, decorator: Google::Apis::DataprocV1::AppSummary::Representation
      
          property :application_environment_info, as: 'applicationEnvironmentInfo', class: Google::Apis::DataprocV1::ApplicationEnvironmentInfo, decorator: Google::Apis::DataprocV1::ApplicationEnvironmentInfo::Representation
      
          property :application_id, as: 'applicationId'
          property :application_info, as: 'applicationInfo', class: Google::Apis::DataprocV1::ApplicationInfo, decorator: Google::Apis::DataprocV1::ApplicationInfo::Representation
      
          property :event_timestamp, as: 'eventTimestamp'
          property :executor_stage_summary, as: 'executorStageSummary', class: Google::Apis::DataprocV1::ExecutorStageSummary, decorator: Google::Apis::DataprocV1::ExecutorStageSummary::Representation
      
          property :executor_summary, as: 'executorSummary', class: Google::Apis::DataprocV1::ExecutorSummary, decorator: Google::Apis::DataprocV1::ExecutorSummary::Representation
      
          property :job_data, as: 'jobData', class: Google::Apis::DataprocV1::JobData, decorator: Google::Apis::DataprocV1::JobData::Representation
      
          property :native_build_info_ui_data, as: 'nativeBuildInfoUiData', class: Google::Apis::DataprocV1::NativeBuildInfoUiData, decorator: Google::Apis::DataprocV1::NativeBuildInfoUiData::Representation
      
          property :native_sql_execution_ui_data, as: 'nativeSqlExecutionUiData', class: Google::Apis::DataprocV1::NativeSqlExecutionUiData, decorator: Google::Apis::DataprocV1::NativeSqlExecutionUiData::Representation
      
          property :pool_data, as: 'poolData', class: Google::Apis::DataprocV1::PoolData, decorator: Google::Apis::DataprocV1::PoolData::Representation
      
          property :process_summary, as: 'processSummary', class: Google::Apis::DataprocV1::ProcessSummary, decorator: Google::Apis::DataprocV1::ProcessSummary::Representation
      
          property :rdd_operation_graph, as: 'rddOperationGraph', class: Google::Apis::DataprocV1::RddOperationGraph, decorator: Google::Apis::DataprocV1::RddOperationGraph::Representation
      
          property :rdd_storage_info, as: 'rddStorageInfo', class: Google::Apis::DataprocV1::RddStorageInfo, decorator: Google::Apis::DataprocV1::RddStorageInfo::Representation
      
          property :resource_profile_info, as: 'resourceProfileInfo', class: Google::Apis::DataprocV1::ResourceProfileInfo, decorator: Google::Apis::DataprocV1::ResourceProfileInfo::Representation
      
          property :spark_plan_graph, as: 'sparkPlanGraph', class: Google::Apis::DataprocV1::SparkPlanGraph, decorator: Google::Apis::DataprocV1::SparkPlanGraph::Representation
      
          property :speculation_stage_summary, as: 'speculationStageSummary', class: Google::Apis::DataprocV1::SpeculationStageSummary, decorator: Google::Apis::DataprocV1::SpeculationStageSummary::Representation
      
          property :sql_execution_ui_data, as: 'sqlExecutionUiData', class: Google::Apis::DataprocV1::SqlExecutionUiData, decorator: Google::Apis::DataprocV1::SqlExecutionUiData::Representation
      
          property :stage_data, as: 'stageData', class: Google::Apis::DataprocV1::StageData, decorator: Google::Apis::DataprocV1::StageData::Representation
      
          property :stream_block_data, as: 'streamBlockData', class: Google::Apis::DataprocV1::StreamBlockData, decorator: Google::Apis::DataprocV1::StreamBlockData::Representation
      
          property :streaming_query_data, as: 'streamingQueryData', class: Google::Apis::DataprocV1::StreamingQueryData, decorator: Google::Apis::DataprocV1::StreamingQueryData::Representation
      
          property :streaming_query_progress, as: 'streamingQueryProgress', class: Google::Apis::DataprocV1::StreamingQueryProgress, decorator: Google::Apis::DataprocV1::StreamingQueryProgress::Representation
      
          property :task_data, as: 'taskData', class: Google::Apis::DataprocV1::TaskData, decorator: Google::Apis::DataprocV1::TaskData::Representation
      
        end
      end
      
      class SpeculationStageSummary
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :num_active_tasks, as: 'numActiveTasks'
          property :num_completed_tasks, as: 'numCompletedTasks'
          property :num_failed_tasks, as: 'numFailedTasks'
          property :num_killed_tasks, as: 'numKilledTasks'
          property :num_tasks, as: 'numTasks'
          property :stage_attempt_id, as: 'stageAttemptId'
          property :stage_id, :numeric_string => true, as: 'stageId'
        end
      end
      
      class SqlExecutionUiData
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :completion_time, as: 'completionTime'
          property :description, as: 'description'
          property :details, as: 'details'
          property :error_message, as: 'errorMessage'
          property :execution_id, :numeric_string => true, as: 'executionId'
          hash :jobs, as: 'jobs'
          hash :metric_values, as: 'metricValues'
          property :metric_values_is_null, as: 'metricValuesIsNull'
          collection :metrics, as: 'metrics', class: Google::Apis::DataprocV1::SqlPlanMetric, decorator: Google::Apis::DataprocV1::SqlPlanMetric::Representation
      
          hash :modified_configs, as: 'modifiedConfigs'
          property :physical_plan_description, as: 'physicalPlanDescription'
          property :root_execution_id, :numeric_string => true, as: 'rootExecutionId'
          collection :stages, as: 'stages'
          property :submission_time, as: 'submissionTime'
        end
      end
      
      class SqlPlanMetric
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :accumulator_id, :numeric_string => true, as: 'accumulatorId'
          property :metric_type, as: 'metricType'
          property :name, as: 'name'
        end
      end
      
      class StageAttemptTasksSummary
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :application_id, as: 'applicationId'
          property :num_failed_tasks, as: 'numFailedTasks'
          property :num_killed_tasks, as: 'numKilledTasks'
          property :num_pending_tasks, as: 'numPendingTasks'
          property :num_running_tasks, as: 'numRunningTasks'
          property :num_success_tasks, as: 'numSuccessTasks'
          property :num_tasks, as: 'numTasks'
          property :stage_attempt_id, as: 'stageAttemptId'
          property :stage_id, :numeric_string => true, as: 'stageId'
        end
      end
      
      class StageData
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :accumulator_updates, as: 'accumulatorUpdates', class: Google::Apis::DataprocV1::AccumulableInfo, decorator: Google::Apis::DataprocV1::AccumulableInfo::Representation
      
          property :completion_time, as: 'completionTime'
          property :description, as: 'description'
          property :details, as: 'details'
          property :executor_metrics_distributions, as: 'executorMetricsDistributions', class: Google::Apis::DataprocV1::ExecutorMetricsDistributions, decorator: Google::Apis::DataprocV1::ExecutorMetricsDistributions::Representation
      
          hash :executor_summary, as: 'executorSummary', class: Google::Apis::DataprocV1::ExecutorStageSummary, decorator: Google::Apis::DataprocV1::ExecutorStageSummary::Representation
      
          property :failure_reason, as: 'failureReason'
          property :first_task_launched_time, as: 'firstTaskLaunchedTime'
          property :is_shuffle_push_enabled, as: 'isShufflePushEnabled'
          collection :job_ids, as: 'jobIds'
          hash :killed_tasks_summary, as: 'killedTasksSummary'
          hash :locality, as: 'locality'
          property :name, as: 'name'
          property :num_active_tasks, as: 'numActiveTasks'
          property :num_complete_tasks, as: 'numCompleteTasks'
          property :num_completed_indices, as: 'numCompletedIndices'
          property :num_failed_tasks, as: 'numFailedTasks'
          property :num_killed_tasks, as: 'numKilledTasks'
          property :num_tasks, as: 'numTasks'
          collection :parent_stage_ids, as: 'parentStageIds'
          property :peak_executor_metrics, as: 'peakExecutorMetrics', class: Google::Apis::DataprocV1::ExecutorMetrics, decorator: Google::Apis::DataprocV1::ExecutorMetrics::Representation
      
          collection :rdd_ids, as: 'rddIds'
          property :resource_profile_id, as: 'resourceProfileId'
          property :scheduling_pool, as: 'schedulingPool'
          property :shuffle_mergers_count, as: 'shuffleMergersCount'
          property :speculation_summary, as: 'speculationSummary', class: Google::Apis::DataprocV1::SpeculationStageSummary, decorator: Google::Apis::DataprocV1::SpeculationStageSummary::Representation
      
          property :stage_attempt_id, as: 'stageAttemptId'
          property :stage_id, :numeric_string => true, as: 'stageId'
          property :stage_metrics, as: 'stageMetrics', class: Google::Apis::DataprocV1::StageMetrics, decorator: Google::Apis::DataprocV1::StageMetrics::Representation
      
          property :status, as: 'status'
          property :submission_time, as: 'submissionTime'
          property :task_quantile_metrics, as: 'taskQuantileMetrics', class: Google::Apis::DataprocV1::TaskQuantileMetrics, decorator: Google::Apis::DataprocV1::TaskQuantileMetrics::Representation
      
          hash :tasks, as: 'tasks', class: Google::Apis::DataprocV1::TaskData, decorator: Google::Apis::DataprocV1::TaskData::Representation
      
        end
      end
      
      class StageInputMetrics
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :bytes_read, :numeric_string => true, as: 'bytesRead'
          property :records_read, :numeric_string => true, as: 'recordsRead'
        end
      end
      
      class StageMetrics
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :disk_bytes_spilled, :numeric_string => true, as: 'diskBytesSpilled'
          property :executor_cpu_time_nanos, :numeric_string => true, as: 'executorCpuTimeNanos'
          property :executor_deserialize_cpu_time_nanos, :numeric_string => true, as: 'executorDeserializeCpuTimeNanos'
          property :executor_deserialize_time_millis, :numeric_string => true, as: 'executorDeserializeTimeMillis'
          property :executor_run_time_millis, :numeric_string => true, as: 'executorRunTimeMillis'
          property :jvm_gc_time_millis, :numeric_string => true, as: 'jvmGcTimeMillis'
          property :memory_bytes_spilled, :numeric_string => true, as: 'memoryBytesSpilled'
          property :peak_execution_memory_bytes, :numeric_string => true, as: 'peakExecutionMemoryBytes'
          property :result_serialization_time_millis, :numeric_string => true, as: 'resultSerializationTimeMillis'
          property :result_size, :numeric_string => true, as: 'resultSize'
          property :stage_input_metrics, as: 'stageInputMetrics', class: Google::Apis::DataprocV1::StageInputMetrics, decorator: Google::Apis::DataprocV1::StageInputMetrics::Representation
      
          property :stage_output_metrics, as: 'stageOutputMetrics', class: Google::Apis::DataprocV1::StageOutputMetrics, decorator: Google::Apis::DataprocV1::StageOutputMetrics::Representation
      
          property :stage_shuffle_read_metrics, as: 'stageShuffleReadMetrics', class: Google::Apis::DataprocV1::StageShuffleReadMetrics, decorator: Google::Apis::DataprocV1::StageShuffleReadMetrics::Representation
      
          property :stage_shuffle_write_metrics, as: 'stageShuffleWriteMetrics', class: Google::Apis::DataprocV1::StageShuffleWriteMetrics, decorator: Google::Apis::DataprocV1::StageShuffleWriteMetrics::Representation
      
        end
      end
      
      class StageOutputMetrics
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :bytes_written, :numeric_string => true, as: 'bytesWritten'
          property :records_written, :numeric_string => true, as: 'recordsWritten'
        end
      end
      
      class StageShufflePushReadMetrics
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :corrupt_merged_block_chunks, :numeric_string => true, as: 'corruptMergedBlockChunks'
          property :local_merged_blocks_fetched, :numeric_string => true, as: 'localMergedBlocksFetched'
          property :local_merged_bytes_read, :numeric_string => true, as: 'localMergedBytesRead'
          property :local_merged_chunks_fetched, :numeric_string => true, as: 'localMergedChunksFetched'
          property :merged_fetch_fallback_count, :numeric_string => true, as: 'mergedFetchFallbackCount'
          property :remote_merged_blocks_fetched, :numeric_string => true, as: 'remoteMergedBlocksFetched'
          property :remote_merged_bytes_read, :numeric_string => true, as: 'remoteMergedBytesRead'
          property :remote_merged_chunks_fetched, :numeric_string => true, as: 'remoteMergedChunksFetched'
          property :remote_merged_reqs_duration, :numeric_string => true, as: 'remoteMergedReqsDuration'
        end
      end
      
      class StageShuffleReadMetrics
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :bytes_read, :numeric_string => true, as: 'bytesRead'
          property :fetch_wait_time_millis, :numeric_string => true, as: 'fetchWaitTimeMillis'
          property :local_blocks_fetched, :numeric_string => true, as: 'localBlocksFetched'
          property :local_bytes_read, :numeric_string => true, as: 'localBytesRead'
          property :records_read, :numeric_string => true, as: 'recordsRead'
          property :remote_blocks_fetched, :numeric_string => true, as: 'remoteBlocksFetched'
          property :remote_bytes_read, :numeric_string => true, as: 'remoteBytesRead'
          property :remote_bytes_read_to_disk, :numeric_string => true, as: 'remoteBytesReadToDisk'
          property :remote_reqs_duration, :numeric_string => true, as: 'remoteReqsDuration'
          property :stage_shuffle_push_read_metrics, as: 'stageShufflePushReadMetrics', class: Google::Apis::DataprocV1::StageShufflePushReadMetrics, decorator: Google::Apis::DataprocV1::StageShufflePushReadMetrics::Representation
      
        end
      end
      
      class StageShuffleWriteMetrics
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :bytes_written, :numeric_string => true, as: 'bytesWritten'
          property :records_written, :numeric_string => true, as: 'recordsWritten'
          property :write_time_nanos, :numeric_string => true, as: 'writeTimeNanos'
        end
      end
      
      class StagesSummary
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :application_id, as: 'applicationId'
          property :num_active_stages, as: 'numActiveStages'
          property :num_completed_stages, as: 'numCompletedStages'
          property :num_failed_stages, as: 'numFailedStages'
          property :num_pending_stages, as: 'numPendingStages'
          property :num_skipped_stages, as: 'numSkippedStages'
        end
      end
      
      class StartClusterRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :cluster_uuid, as: 'clusterUuid'
          property :request_id, as: 'requestId'
        end
      end
      
      class StartupConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :required_registration_fraction, as: 'requiredRegistrationFraction'
        end
      end
      
      class StateHistory
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :state, as: 'state'
          property :state_message, as: 'stateMessage'
          property :state_start_time, as: 'stateStartTime'
        end
      end
      
      class StateOperatorProgress
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :all_removals_time_ms, :numeric_string => true, as: 'allRemovalsTimeMs'
          property :all_updates_time_ms, :numeric_string => true, as: 'allUpdatesTimeMs'
          property :commit_time_ms, :numeric_string => true, as: 'commitTimeMs'
          hash :custom_metrics, as: 'customMetrics'
          property :memory_used_bytes, :numeric_string => true, as: 'memoryUsedBytes'
          property :num_rows_dropped_by_watermark, :numeric_string => true, as: 'numRowsDroppedByWatermark'
          property :num_rows_removed, :numeric_string => true, as: 'numRowsRemoved'
          property :num_rows_total, :numeric_string => true, as: 'numRowsTotal'
          property :num_rows_updated, :numeric_string => true, as: 'numRowsUpdated'
          property :num_shuffle_partitions, :numeric_string => true, as: 'numShufflePartitions'
          property :num_state_store_instances, :numeric_string => true, as: 'numStateStoreInstances'
          property :operator_name, as: 'operatorName'
        end
      end
      
      class Status
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :code, as: 'code'
          collection :details, as: 'details'
          property :message, as: 'message'
        end
      end
      
      class StopClusterRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :cluster_uuid, as: 'clusterUuid'
          property :request_id, as: 'requestId'
        end
      end
      
      class StreamBlockData
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :deserialized, as: 'deserialized'
          property :disk_size, :numeric_string => true, as: 'diskSize'
          property :executor_id, as: 'executorId'
          property :host_port, as: 'hostPort'
          property :mem_size, :numeric_string => true, as: 'memSize'
          property :name, as: 'name'
          property :storage_level, as: 'storageLevel'
          property :use_disk, as: 'useDisk'
          property :use_memory, as: 'useMemory'
        end
      end
      
      class StreamingQueryData
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :end_timestamp, :numeric_string => true, as: 'endTimestamp'
          property :exception, as: 'exception'
          property :is_active, as: 'isActive'
          property :name, as: 'name'
          property :run_id, as: 'runId'
          property :start_timestamp, :numeric_string => true, as: 'startTimestamp'
          property :streaming_query_id, as: 'streamingQueryId'
        end
      end
      
      class StreamingQueryProgress
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :batch_duration, :numeric_string => true, as: 'batchDuration'
          property :batch_id, :numeric_string => true, as: 'batchId'
          hash :duration_millis, as: 'durationMillis'
          hash :event_time, as: 'eventTime'
          property :name, as: 'name'
          hash :observed_metrics, as: 'observedMetrics'
          property :run_id, as: 'runId'
          property :sink, as: 'sink', class: Google::Apis::DataprocV1::SinkProgress, decorator: Google::Apis::DataprocV1::SinkProgress::Representation
      
          collection :sources, as: 'sources', class: Google::Apis::DataprocV1::SourceProgress, decorator: Google::Apis::DataprocV1::SourceProgress::Representation
      
          collection :state_operators, as: 'stateOperators', class: Google::Apis::DataprocV1::StateOperatorProgress, decorator: Google::Apis::DataprocV1::StateOperatorProgress::Representation
      
          property :streaming_query_progress_id, as: 'streamingQueryProgressId'
          property :timestamp, as: 'timestamp'
        end
      end
      
      class SubmitJobRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :job, as: 'job', class: Google::Apis::DataprocV1::Job, decorator: Google::Apis::DataprocV1::Job::Representation
      
          property :request_id, as: 'requestId'
        end
      end
      
      class SummarizeSessionSparkApplicationExecutorsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :active_executor_summary, as: 'activeExecutorSummary', class: Google::Apis::DataprocV1::ConsolidatedExecutorSummary, decorator: Google::Apis::DataprocV1::ConsolidatedExecutorSummary::Representation
      
          property :application_id, as: 'applicationId'
          property :dead_executor_summary, as: 'deadExecutorSummary', class: Google::Apis::DataprocV1::ConsolidatedExecutorSummary, decorator: Google::Apis::DataprocV1::ConsolidatedExecutorSummary::Representation
      
          property :total_executor_summary, as: 'totalExecutorSummary', class: Google::Apis::DataprocV1::ConsolidatedExecutorSummary, decorator: Google::Apis::DataprocV1::ConsolidatedExecutorSummary::Representation
      
        end
      end
      
      class SummarizeSessionSparkApplicationJobsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :jobs_summary, as: 'jobsSummary', class: Google::Apis::DataprocV1::JobsSummary, decorator: Google::Apis::DataprocV1::JobsSummary::Representation
      
        end
      end
      
      class SummarizeSessionSparkApplicationStageAttemptTasksResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :stage_attempt_tasks_summary, as: 'stageAttemptTasksSummary', class: Google::Apis::DataprocV1::StageAttemptTasksSummary, decorator: Google::Apis::DataprocV1::StageAttemptTasksSummary::Representation
      
        end
      end
      
      class SummarizeSessionSparkApplicationStagesResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :stages_summary, as: 'stagesSummary', class: Google::Apis::DataprocV1::StagesSummary, decorator: Google::Apis::DataprocV1::StagesSummary::Representation
      
        end
      end
      
      class SummarizeSparkApplicationExecutorsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :active_executor_summary, as: 'activeExecutorSummary', class: Google::Apis::DataprocV1::ConsolidatedExecutorSummary, decorator: Google::Apis::DataprocV1::ConsolidatedExecutorSummary::Representation
      
          property :application_id, as: 'applicationId'
          property :dead_executor_summary, as: 'deadExecutorSummary', class: Google::Apis::DataprocV1::ConsolidatedExecutorSummary, decorator: Google::Apis::DataprocV1::ConsolidatedExecutorSummary::Representation
      
          property :total_executor_summary, as: 'totalExecutorSummary', class: Google::Apis::DataprocV1::ConsolidatedExecutorSummary, decorator: Google::Apis::DataprocV1::ConsolidatedExecutorSummary::Representation
      
        end
      end
      
      class SummarizeSparkApplicationJobsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :jobs_summary, as: 'jobsSummary', class: Google::Apis::DataprocV1::JobsSummary, decorator: Google::Apis::DataprocV1::JobsSummary::Representation
      
        end
      end
      
      class SummarizeSparkApplicationStageAttemptTasksResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :stage_attempt_tasks_summary, as: 'stageAttemptTasksSummary', class: Google::Apis::DataprocV1::StageAttemptTasksSummary, decorator: Google::Apis::DataprocV1::StageAttemptTasksSummary::Representation
      
        end
      end
      
      class SummarizeSparkApplicationStagesResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :stages_summary, as: 'stagesSummary', class: Google::Apis::DataprocV1::StagesSummary, decorator: Google::Apis::DataprocV1::StagesSummary::Representation
      
        end
      end
      
      class TaskData
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :accumulator_updates, as: 'accumulatorUpdates', class: Google::Apis::DataprocV1::AccumulableInfo, decorator: Google::Apis::DataprocV1::AccumulableInfo::Representation
      
          property :attempt, as: 'attempt'
          property :duration_millis, :numeric_string => true, as: 'durationMillis'
          property :error_message, as: 'errorMessage'
          property :executor_id, as: 'executorId'
          hash :executor_logs, as: 'executorLogs'
          property :getting_result_time_millis, :numeric_string => true, as: 'gettingResultTimeMillis'
          property :has_metrics, as: 'hasMetrics'
          property :host, as: 'host'
          property :index, as: 'index'
          property :launch_time, as: 'launchTime'
          property :partition_id, as: 'partitionId'
          property :result_fetch_start, as: 'resultFetchStart'
          property :scheduler_delay_millis, :numeric_string => true, as: 'schedulerDelayMillis'
          property :speculative, as: 'speculative'
          property :stage_attempt_id, as: 'stageAttemptId'
          property :stage_id, :numeric_string => true, as: 'stageId'
          property :status, as: 'status'
          property :task_id, :numeric_string => true, as: 'taskId'
          property :task_locality, as: 'taskLocality'
          property :task_metrics, as: 'taskMetrics', class: Google::Apis::DataprocV1::TaskMetrics, decorator: Google::Apis::DataprocV1::TaskMetrics::Representation
      
        end
      end
      
      class TaskMetrics
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :disk_bytes_spilled, :numeric_string => true, as: 'diskBytesSpilled'
          property :executor_cpu_time_nanos, :numeric_string => true, as: 'executorCpuTimeNanos'
          property :executor_deserialize_cpu_time_nanos, :numeric_string => true, as: 'executorDeserializeCpuTimeNanos'
          property :executor_deserialize_time_millis, :numeric_string => true, as: 'executorDeserializeTimeMillis'
          property :executor_run_time_millis, :numeric_string => true, as: 'executorRunTimeMillis'
          property :input_metrics, as: 'inputMetrics', class: Google::Apis::DataprocV1::InputMetrics, decorator: Google::Apis::DataprocV1::InputMetrics::Representation
      
          property :jvm_gc_time_millis, :numeric_string => true, as: 'jvmGcTimeMillis'
          property :memory_bytes_spilled, :numeric_string => true, as: 'memoryBytesSpilled'
          property :output_metrics, as: 'outputMetrics', class: Google::Apis::DataprocV1::OutputMetrics, decorator: Google::Apis::DataprocV1::OutputMetrics::Representation
      
          property :peak_execution_memory_bytes, :numeric_string => true, as: 'peakExecutionMemoryBytes'
          property :result_serialization_time_millis, :numeric_string => true, as: 'resultSerializationTimeMillis'
          property :result_size, :numeric_string => true, as: 'resultSize'
          property :shuffle_read_metrics, as: 'shuffleReadMetrics', class: Google::Apis::DataprocV1::ShuffleReadMetrics, decorator: Google::Apis::DataprocV1::ShuffleReadMetrics::Representation
      
          property :shuffle_write_metrics, as: 'shuffleWriteMetrics', class: Google::Apis::DataprocV1::ShuffleWriteMetrics, decorator: Google::Apis::DataprocV1::ShuffleWriteMetrics::Representation
      
        end
      end
      
      class TaskQuantileMetrics
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :disk_bytes_spilled, as: 'diskBytesSpilled', class: Google::Apis::DataprocV1::Quantiles, decorator: Google::Apis::DataprocV1::Quantiles::Representation
      
          property :duration_millis, as: 'durationMillis', class: Google::Apis::DataprocV1::Quantiles, decorator: Google::Apis::DataprocV1::Quantiles::Representation
      
          property :executor_cpu_time_nanos, as: 'executorCpuTimeNanos', class: Google::Apis::DataprocV1::Quantiles, decorator: Google::Apis::DataprocV1::Quantiles::Representation
      
          property :executor_deserialize_cpu_time_nanos, as: 'executorDeserializeCpuTimeNanos', class: Google::Apis::DataprocV1::Quantiles, decorator: Google::Apis::DataprocV1::Quantiles::Representation
      
          property :executor_deserialize_time_millis, as: 'executorDeserializeTimeMillis', class: Google::Apis::DataprocV1::Quantiles, decorator: Google::Apis::DataprocV1::Quantiles::Representation
      
          property :executor_run_time_millis, as: 'executorRunTimeMillis', class: Google::Apis::DataprocV1::Quantiles, decorator: Google::Apis::DataprocV1::Quantiles::Representation
      
          property :getting_result_time_millis, as: 'gettingResultTimeMillis', class: Google::Apis::DataprocV1::Quantiles, decorator: Google::Apis::DataprocV1::Quantiles::Representation
      
          property :input_metrics, as: 'inputMetrics', class: Google::Apis::DataprocV1::InputQuantileMetrics, decorator: Google::Apis::DataprocV1::InputQuantileMetrics::Representation
      
          property :jvm_gc_time_millis, as: 'jvmGcTimeMillis', class: Google::Apis::DataprocV1::Quantiles, decorator: Google::Apis::DataprocV1::Quantiles::Representation
      
          property :memory_bytes_spilled, as: 'memoryBytesSpilled', class: Google::Apis::DataprocV1::Quantiles, decorator: Google::Apis::DataprocV1::Quantiles::Representation
      
          property :output_metrics, as: 'outputMetrics', class: Google::Apis::DataprocV1::OutputQuantileMetrics, decorator: Google::Apis::DataprocV1::OutputQuantileMetrics::Representation
      
          property :peak_execution_memory_bytes, as: 'peakExecutionMemoryBytes', class: Google::Apis::DataprocV1::Quantiles, decorator: Google::Apis::DataprocV1::Quantiles::Representation
      
          property :result_serialization_time_millis, as: 'resultSerializationTimeMillis', class: Google::Apis::DataprocV1::Quantiles, decorator: Google::Apis::DataprocV1::Quantiles::Representation
      
          property :result_size, as: 'resultSize', class: Google::Apis::DataprocV1::Quantiles, decorator: Google::Apis::DataprocV1::Quantiles::Representation
      
          property :scheduler_delay_millis, as: 'schedulerDelayMillis', class: Google::Apis::DataprocV1::Quantiles, decorator: Google::Apis::DataprocV1::Quantiles::Representation
      
          property :shuffle_read_metrics, as: 'shuffleReadMetrics', class: Google::Apis::DataprocV1::ShuffleReadQuantileMetrics, decorator: Google::Apis::DataprocV1::ShuffleReadQuantileMetrics::Representation
      
          property :shuffle_write_metrics, as: 'shuffleWriteMetrics', class: Google::Apis::DataprocV1::ShuffleWriteQuantileMetrics, decorator: Google::Apis::DataprocV1::ShuffleWriteQuantileMetrics::Representation
      
        end
      end
      
      class TaskResourceRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :amount, as: 'amount'
          property :resource_name, as: 'resourceName'
        end
      end
      
      class TemplateParameter
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :description, as: 'description'
          collection :fields, as: 'fields'
          property :name, as: 'name'
          property :validation, as: 'validation', class: Google::Apis::DataprocV1::ParameterValidation, decorator: Google::Apis::DataprocV1::ParameterValidation::Representation
      
        end
      end
      
      class TerminateSessionRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :request_id, as: 'requestId'
        end
      end
      
      class TestIamPermissionsRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :permissions, as: 'permissions'
        end
      end
      
      class TestIamPermissionsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :permissions, as: 'permissions'
        end
      end
      
      class TrinoJob
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :client_tags, as: 'clientTags'
          property :continue_on_failure, as: 'continueOnFailure'
          property :logging_config, as: 'loggingConfig', class: Google::Apis::DataprocV1::LoggingConfig, decorator: Google::Apis::DataprocV1::LoggingConfig::Representation
      
          property :output_format, as: 'outputFormat'
          hash :properties, as: 'properties'
          property :query_file_uri, as: 'queryFileUri'
          property :query_list, as: 'queryList', class: Google::Apis::DataprocV1::QueryList, decorator: Google::Apis::DataprocV1::QueryList::Representation
      
        end
      end
      
      class UsageMetrics
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :accelerator_type, as: 'acceleratorType'
          property :milli_accelerator_seconds, :numeric_string => true, as: 'milliAcceleratorSeconds'
          property :milli_dcu_seconds, :numeric_string => true, as: 'milliDcuSeconds'
          property :milli_slot_seconds, :numeric_string => true, as: 'milliSlotSeconds'
          property :shuffle_storage_gb_seconds, :numeric_string => true, as: 'shuffleStorageGbSeconds'
          property :update_time, as: 'updateTime'
        end
      end
      
      class UsageSnapshot
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :accelerator_type, as: 'acceleratorType'
          property :milli_accelerator, :numeric_string => true, as: 'milliAccelerator'
          property :milli_dcu, :numeric_string => true, as: 'milliDcu'
          property :milli_dcu_premium, :numeric_string => true, as: 'milliDcuPremium'
          property :milli_slot, :numeric_string => true, as: 'milliSlot'
          property :shuffle_storage_gb, :numeric_string => true, as: 'shuffleStorageGb'
          property :shuffle_storage_gb_premium, :numeric_string => true, as: 'shuffleStorageGbPremium'
          property :snapshot_time, as: 'snapshotTime'
        end
      end
      
      class ValueInfo
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :annotation, as: 'annotation'
          property :overridden_value, as: 'overriddenValue'
          property :value, as: 'value'
        end
      end
      
      class ValueValidation
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :values, as: 'values'
        end
      end
      
      class VirtualClusterConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :auxiliary_services_config, as: 'auxiliaryServicesConfig', class: Google::Apis::DataprocV1::AuxiliaryServicesConfig, decorator: Google::Apis::DataprocV1::AuxiliaryServicesConfig::Representation
      
          property :kubernetes_cluster_config, as: 'kubernetesClusterConfig', class: Google::Apis::DataprocV1::KubernetesClusterConfig, decorator: Google::Apis::DataprocV1::KubernetesClusterConfig::Representation
      
          property :staging_bucket, as: 'stagingBucket'
        end
      end
      
      class WorkflowGraph
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :nodes, as: 'nodes', class: Google::Apis::DataprocV1::WorkflowNode, decorator: Google::Apis::DataprocV1::WorkflowNode::Representation
      
        end
      end
      
      class WorkflowMetadata
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :cluster_name, as: 'clusterName'
          property :cluster_uuid, as: 'clusterUuid'
          property :create_cluster, as: 'createCluster', class: Google::Apis::DataprocV1::ClusterOperation, decorator: Google::Apis::DataprocV1::ClusterOperation::Representation
      
          property :dag_end_time, as: 'dagEndTime'
          property :dag_start_time, as: 'dagStartTime'
          property :dag_timeout, as: 'dagTimeout'
          property :delete_cluster, as: 'deleteCluster', class: Google::Apis::DataprocV1::ClusterOperation, decorator: Google::Apis::DataprocV1::ClusterOperation::Representation
      
          property :end_time, as: 'endTime'
          property :graph, as: 'graph', class: Google::Apis::DataprocV1::WorkflowGraph, decorator: Google::Apis::DataprocV1::WorkflowGraph::Representation
      
          hash :parameters, as: 'parameters'
          property :start_time, as: 'startTime'
          property :state, as: 'state'
          property :template, as: 'template'
          property :version, as: 'version'
        end
      end
      
      class WorkflowNode
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :error, as: 'error'
          property :job_id, as: 'jobId'
          collection :prerequisite_step_ids, as: 'prerequisiteStepIds'
          property :state, as: 'state'
          property :step_id, as: 'stepId'
        end
      end
      
      class WorkflowTemplate
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :create_time, as: 'createTime'
          property :dag_timeout, as: 'dagTimeout'
          property :encryption_config, as: 'encryptionConfig', class: Google::Apis::DataprocV1::GoogleCloudDataprocV1WorkflowTemplateEncryptionConfig, decorator: Google::Apis::DataprocV1::GoogleCloudDataprocV1WorkflowTemplateEncryptionConfig::Representation
      
          property :id, as: 'id'
          collection :jobs, as: 'jobs', class: Google::Apis::DataprocV1::OrderedJob, decorator: Google::Apis::DataprocV1::OrderedJob::Representation
      
          hash :labels, as: 'labels'
          property :name, as: 'name'
          collection :parameters, as: 'parameters', class: Google::Apis::DataprocV1::TemplateParameter, decorator: Google::Apis::DataprocV1::TemplateParameter::Representation
      
          property :placement, as: 'placement', class: Google::Apis::DataprocV1::WorkflowTemplatePlacement, decorator: Google::Apis::DataprocV1::WorkflowTemplatePlacement::Representation
      
          property :update_time, as: 'updateTime'
          property :version, as: 'version'
        end
      end
      
      class WorkflowTemplatePlacement
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :cluster_selector, as: 'clusterSelector', class: Google::Apis::DataprocV1::ClusterSelector, decorator: Google::Apis::DataprocV1::ClusterSelector::Representation
      
          property :managed_cluster, as: 'managedCluster', class: Google::Apis::DataprocV1::ManagedCluster, decorator: Google::Apis::DataprocV1::ManagedCluster::Representation
      
        end
      end
      
      class WriteSessionSparkApplicationContextRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :parent, as: 'parent'
          collection :spark_wrapper_objects, as: 'sparkWrapperObjects', class: Google::Apis::DataprocV1::SparkWrapperObject, decorator: Google::Apis::DataprocV1::SparkWrapperObject::Representation
      
        end
      end
      
      class WriteSessionSparkApplicationContextResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
        end
      end
      
      class WriteSparkApplicationContextRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :parent, as: 'parent'
          collection :spark_wrapper_objects, as: 'sparkWrapperObjects', class: Google::Apis::DataprocV1::SparkWrapperObject, decorator: Google::Apis::DataprocV1::SparkWrapperObject::Representation
      
        end
      end
      
      class WriteSparkApplicationContextResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
        end
      end
      
      class YarnApplication
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :name, as: 'name'
          property :progress, as: 'progress'
          property :state, as: 'state'
          property :tracking_url, as: 'trackingUrl'
        end
      end
    end
  end
end
