notebooks.projects.locations.environments.create

valid {
    input.Body.containerImage.repository == STRING
    input.Body.containerImage.tag == STRING
    input.Body.description == STRING
    input.Body.displayName == STRING
    input.Body.postStartupScript == STRING
    input.Body.vmImage.imageFamily == STRING
    input.Body.vmImage.imageName == STRING
    input.Body.vmImage.project == STRING
    input.ReqMap.parent == STRING
    input.Qs.environmentId == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.environments.delete

valid {
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.environments.get

valid {
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.environments.list

valid {
    input.ReqMap.parent == STRING
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.executions.create

enum_ExecutionTemplateJobType := [ "JOB_TYPE_UNSPECIFIED", "VERTEX_AI", "DATAPROC" ]
enum_ExecutionTemplateScaleTier := [ "SCALE_TIER_UNSPECIFIED", "BASIC", "STANDARD_1", "PREMIUM_1", "BASIC_GPU", "BASIC_TPU", "CUSTOM" ]
enum_SchedulerAcceleratorConfigType := [ "SCHEDULER_ACCELERATOR_TYPE_UNSPECIFIED", "NVIDIA_TESLA_K80", "NVIDIA_TESLA_P100", "NVIDIA_TESLA_V100", "NVIDIA_TESLA_P4", "NVIDIA_TESLA_T4", "NVIDIA_TESLA_A100", "TPU_V2", "TPU_V3" ]

valid {
    input.Body.description == STRING
    input.Body.executionTemplate.acceleratorConfig.coreCount == STRING
    input.Body.executionTemplate.acceleratorConfig.type == enum_SchedulerAcceleratorConfigType[_]
    input.Body.executionTemplate.containerImageUri == STRING
    input.Body.executionTemplate.dataprocParameters.cluster == STRING
    input.Body.executionTemplate.inputNotebookFile == STRING
    input.Body.executionTemplate.jobType == enum_ExecutionTemplateJobType[_]
    input.Body.executionTemplate.kernelSpec == STRING
    input.Body.executionTemplate.labels.STRING == STRING
    input.Body.executionTemplate.masterType == STRING
    input.Body.executionTemplate.outputNotebookFolder == STRING
    input.Body.executionTemplate.parameters == STRING
    input.Body.executionTemplate.paramsYamlFile == STRING
    input.Body.executionTemplate.scaleTier == enum_ExecutionTemplateScaleTier[_]
    input.Body.executionTemplate.serviceAccount == STRING
    input.Body.executionTemplate.tensorboard == STRING
    input.Body.executionTemplate.vertexAiParameters.env.STRING == STRING
    input.Body.executionTemplate.vertexAiParameters.network == STRING
    input.Body.outputNotebookFile == STRING
    input.ReqMap.parent == STRING
    input.Qs.executionId == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.executions.delete

valid {
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.executions.get

valid {
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.executions.list

valid {
    input.ReqMap.parent == STRING
    input.Qs.filter == STRING
    input.Qs.orderBy == STRING
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.get

valid {
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.instances.checkUpgradability

valid {
    input.ReqMap.notebookInstance == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.instances.create

enum_AcceleratorConfigType := [ "ACCELERATOR_TYPE_UNSPECIFIED", "NVIDIA_TESLA_P100", "NVIDIA_TESLA_V100", "NVIDIA_TESLA_P4", "NVIDIA_TESLA_T4", "NVIDIA_TESLA_A100", "NVIDIA_A100_80GB", "NVIDIA_L4", "NVIDIA_TESLA_T4_VWS", "NVIDIA_TESLA_P100_VWS", "NVIDIA_TESLA_P4_VWS" ]
enum_BootDiskDiskEncryption := [ "DISK_ENCRYPTION_UNSPECIFIED", "GMEK", "CMEK" ]
enum_BootDiskDiskType := [ "DISK_TYPE_UNSPECIFIED", "PD_STANDARD", "PD_SSD", "PD_BALANCED", "PD_EXTREME" ]
enum_DataDiskDiskEncryption := [ "DISK_ENCRYPTION_UNSPECIFIED", "GMEK", "CMEK" ]
enum_DataDiskDiskType := [ "DISK_TYPE_UNSPECIFIED", "PD_STANDARD", "PD_SSD", "PD_BALANCED", "PD_EXTREME" ]
enum_NetworkInterfaceNicType := [ "NIC_TYPE_UNSPECIFIED", "VIRTIO_NET", "GVNIC" ]

valid {
    input.Body.disableProxyAccess == BOOLEAN
    input.Body.enableThirdPartyIdentity == BOOLEAN
    input.Body.gceSetup.acceleratorConfigs[_].coreCount == STRING
    input.Body.gceSetup.acceleratorConfigs[_].type == enum_AcceleratorConfigType[_]
    input.Body.gceSetup.bootDisk.diskEncryption == enum_BootDiskDiskEncryption[_]
    input.Body.gceSetup.bootDisk.diskSizeGb == STRING
    input.Body.gceSetup.bootDisk.diskType == enum_BootDiskDiskType[_]
    input.Body.gceSetup.bootDisk.kmsKey == STRING
    input.Body.gceSetup.containerImage.repository == STRING
    input.Body.gceSetup.containerImage.tag == STRING
    input.Body.gceSetup.dataDisks[_].diskEncryption == enum_DataDiskDiskEncryption[_]
    input.Body.gceSetup.dataDisks[_].diskSizeGb == STRING
    input.Body.gceSetup.dataDisks[_].diskType == enum_DataDiskDiskType[_]
    input.Body.gceSetup.dataDisks[_].kmsKey == STRING
    input.Body.gceSetup.disablePublicIp == BOOLEAN
    input.Body.gceSetup.enableIpForwarding == BOOLEAN
    input.Body.gceSetup.gpuDriverConfig.customGpuDriverPath == STRING
    input.Body.gceSetup.gpuDriverConfig.enableGpuDriver == BOOLEAN
    input.Body.gceSetup.machineType == STRING
    input.Body.gceSetup.metadata.STRING == STRING
    input.Body.gceSetup.minCpuPlatform == STRING
    input.Body.gceSetup.networkInterfaces[_].accessConfigs[_].externalIp == STRING
    input.Body.gceSetup.networkInterfaces[_].network == STRING
    input.Body.gceSetup.networkInterfaces[_].nicType == enum_NetworkInterfaceNicType[_]
    input.Body.gceSetup.networkInterfaces[_].subnet == STRING
    input.Body.gceSetup.serviceAccounts[_].email == STRING
    input.Body.gceSetup.shieldedInstanceConfig.enableIntegrityMonitoring == BOOLEAN
    input.Body.gceSetup.shieldedInstanceConfig.enableSecureBoot == BOOLEAN
    input.Body.gceSetup.shieldedInstanceConfig.enableVtpm == BOOLEAN
    input.Body.gceSetup.tags[_] == STRING
    input.Body.gceSetup.vmImage.family == STRING
    input.Body.gceSetup.vmImage.name == STRING
    input.Body.gceSetup.vmImage.project == STRING
    input.Body.instanceOwners[_] == STRING
    input.Body.labels.STRING == STRING
    input.ReqMap.parent == STRING
    input.Qs.instanceId == STRING
    input.Qs.requestId == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.instances.delete

valid {
    input.ReqMap.name == STRING
    input.Qs.requestId == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.instances.diagnose

valid {
    input.Body.diagnosticConfig.enableCopyHomeFilesFlag == BOOLEAN
    input.Body.diagnosticConfig.enablePacketCaptureFlag == BOOLEAN
    input.Body.diagnosticConfig.enableRepairFlag == BOOLEAN
    input.Body.diagnosticConfig.gcsBucket == STRING
    input.Body.diagnosticConfig.relativePath == STRING
    input.Body.timeoutMinutes == INTEGER
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.instances.get

valid {
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.instances.getConfig

valid {
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.instances.getIamPolicy

valid {
    input.ReqMap.resource == STRING
    input.Qs.options.requestedPolicyVersion == INTEGER
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.instances.getInstanceHealth

valid {
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.instances.isUpgradeable

enum_TypeParameter := [ "UPGRADE_TYPE_UNSPECIFIED", "UPGRADE_FRAMEWORK", "UPGRADE_OS", "UPGRADE_CUDA", "UPGRADE_ALL" ]

valid {
    input.ReqMap.notebookInstance == STRING
    input.Qs.type == enum_TypeParameter[_]
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.instances.list

valid {
    input.ReqMap.parent == STRING
    input.Qs.filter == STRING
    input.Qs.orderBy == STRING
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.instances.migrate

enum_MigrateInstanceRequestPostStartupScriptOption := [ "POST_STARTUP_SCRIPT_OPTION_UNSPECIFIED", "POST_STARTUP_SCRIPT_OPTION_SKIP", "POST_STARTUP_SCRIPT_OPTION_RERUN" ]

valid {
    input.Body.postStartupScriptOption == enum_MigrateInstanceRequestPostStartupScriptOption[_]
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.instances.patch

enum_AcceleratorConfigType := [ "ACCELERATOR_TYPE_UNSPECIFIED", "NVIDIA_TESLA_P100", "NVIDIA_TESLA_V100", "NVIDIA_TESLA_P4", "NVIDIA_TESLA_T4", "NVIDIA_TESLA_A100", "NVIDIA_A100_80GB", "NVIDIA_L4", "NVIDIA_TESLA_T4_VWS", "NVIDIA_TESLA_P100_VWS", "NVIDIA_TESLA_P4_VWS" ]
enum_BootDiskDiskEncryption := [ "DISK_ENCRYPTION_UNSPECIFIED", "GMEK", "CMEK" ]
enum_BootDiskDiskType := [ "DISK_TYPE_UNSPECIFIED", "PD_STANDARD", "PD_SSD", "PD_BALANCED", "PD_EXTREME" ]
enum_DataDiskDiskEncryption := [ "DISK_ENCRYPTION_UNSPECIFIED", "GMEK", "CMEK" ]
enum_DataDiskDiskType := [ "DISK_TYPE_UNSPECIFIED", "PD_STANDARD", "PD_SSD", "PD_BALANCED", "PD_EXTREME" ]
enum_NetworkInterfaceNicType := [ "NIC_TYPE_UNSPECIFIED", "VIRTIO_NET", "GVNIC" ]

valid {
    input.Body.disableProxyAccess == BOOLEAN
    input.Body.enableThirdPartyIdentity == BOOLEAN
    input.Body.gceSetup.acceleratorConfigs[_].coreCount == STRING
    input.Body.gceSetup.acceleratorConfigs[_].type == enum_AcceleratorConfigType[_]
    input.Body.gceSetup.bootDisk.diskEncryption == enum_BootDiskDiskEncryption[_]
    input.Body.gceSetup.bootDisk.diskSizeGb == STRING
    input.Body.gceSetup.bootDisk.diskType == enum_BootDiskDiskType[_]
    input.Body.gceSetup.bootDisk.kmsKey == STRING
    input.Body.gceSetup.containerImage.repository == STRING
    input.Body.gceSetup.containerImage.tag == STRING
    input.Body.gceSetup.dataDisks[_].diskEncryption == enum_DataDiskDiskEncryption[_]
    input.Body.gceSetup.dataDisks[_].diskSizeGb == STRING
    input.Body.gceSetup.dataDisks[_].diskType == enum_DataDiskDiskType[_]
    input.Body.gceSetup.dataDisks[_].kmsKey == STRING
    input.Body.gceSetup.disablePublicIp == BOOLEAN
    input.Body.gceSetup.enableIpForwarding == BOOLEAN
    input.Body.gceSetup.gpuDriverConfig.customGpuDriverPath == STRING
    input.Body.gceSetup.gpuDriverConfig.enableGpuDriver == BOOLEAN
    input.Body.gceSetup.machineType == STRING
    input.Body.gceSetup.metadata.STRING == STRING
    input.Body.gceSetup.minCpuPlatform == STRING
    input.Body.gceSetup.networkInterfaces[_].accessConfigs[_].externalIp == STRING
    input.Body.gceSetup.networkInterfaces[_].network == STRING
    input.Body.gceSetup.networkInterfaces[_].nicType == enum_NetworkInterfaceNicType[_]
    input.Body.gceSetup.networkInterfaces[_].subnet == STRING
    input.Body.gceSetup.serviceAccounts[_].email == STRING
    input.Body.gceSetup.shieldedInstanceConfig.enableIntegrityMonitoring == BOOLEAN
    input.Body.gceSetup.shieldedInstanceConfig.enableSecureBoot == BOOLEAN
    input.Body.gceSetup.shieldedInstanceConfig.enableVtpm == BOOLEAN
    input.Body.gceSetup.tags[_] == STRING
    input.Body.gceSetup.vmImage.family == STRING
    input.Body.gceSetup.vmImage.name == STRING
    input.Body.gceSetup.vmImage.project == STRING
    input.Body.instanceOwners[_] == STRING
    input.Body.labels.STRING == STRING
    input.ReqMap.name == STRING
    input.Qs.requestId == STRING
    input.Qs.updateMask == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.instances.register

valid {
    input.Body.instanceId == STRING
    input.ReqMap.parent == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.instances.report

valid {
    input.Body.metadata.STRING == STRING
    input.Body.vmId == STRING
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.instances.reportEvent

enum_EventType := [ "EVENT_TYPE_UNSPECIFIED", "IDLE", "HEARTBEAT", "HEALTH", "MAINTENANCE" ]

valid {
    input.Body.event.details.STRING == STRING
    input.Body.event.reportTime == STRING
    input.Body.event.type == enum_EventType[_]
    input.Body.vmId == STRING
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.instances.reportInfoSystem

enum_EventType := [ "EVENT_TYPE_UNSPECIFIED", "IDLE", "HEARTBEAT", "HEALTH", "MAINTENANCE", "METADATA_CHANGE" ]

valid {
    input.Body.event.details.STRING == STRING
    input.Body.event.reportTime == STRING
    input.Body.event.type == enum_EventType[_]
    input.Body.vmId == STRING
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.instances.reset

valid {
    input.Body.STRING == STRING
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.instances.resizeDisk

enum_BootDiskDiskEncryption := [ "DISK_ENCRYPTION_UNSPECIFIED", "GMEK", "CMEK" ]
enum_BootDiskDiskType := [ "DISK_TYPE_UNSPECIFIED", "PD_STANDARD", "PD_SSD", "PD_BALANCED", "PD_EXTREME" ]
enum_DataDiskDiskEncryption := [ "DISK_ENCRYPTION_UNSPECIFIED", "GMEK", "CMEK" ]
enum_DataDiskDiskType := [ "DISK_TYPE_UNSPECIFIED", "PD_STANDARD", "PD_SSD", "PD_BALANCED", "PD_EXTREME" ]

valid {
    input.Body.bootDisk.diskEncryption == enum_BootDiskDiskEncryption[_]
    input.Body.bootDisk.diskSizeGb == STRING
    input.Body.bootDisk.diskType == enum_BootDiskDiskType[_]
    input.Body.bootDisk.kmsKey == STRING
    input.Body.dataDisk.diskEncryption == enum_DataDiskDiskEncryption[_]
    input.Body.dataDisk.diskSizeGb == STRING
    input.Body.dataDisk.diskType == enum_DataDiskDiskType[_]
    input.Body.dataDisk.kmsKey == STRING
    input.ReqMap.notebookInstance == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.instances.restore

valid {
    input.Body.snapshot.projectId == STRING
    input.Body.snapshot.snapshotId == STRING
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.instances.rollback

valid {
    input.Body.targetSnapshot == STRING
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.instances.setAccelerator

enum_SetInstanceAcceleratorRequestType := [ "ACCELERATOR_TYPE_UNSPECIFIED", "NVIDIA_TESLA_K80", "NVIDIA_TESLA_P100", "NVIDIA_TESLA_V100", "NVIDIA_TESLA_P4", "NVIDIA_TESLA_T4", "NVIDIA_TESLA_A100", "NVIDIA_L4", "NVIDIA_A100_80GB", "NVIDIA_TESLA_T4_VWS", "NVIDIA_TESLA_P100_VWS", "NVIDIA_TESLA_P4_VWS", "NVIDIA_H100_80GB", "NVIDIA_H100_MEGA_80GB", "TPU_V2", "TPU_V3" ]

valid {
    input.Body.coreCount == STRING
    input.Body.type == enum_SetInstanceAcceleratorRequestType[_]
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.instances.setIamPolicy

valid {
    input.Body.policy.bindings[_].condition.description == STRING
    input.Body.policy.bindings[_].condition.expression == STRING
    input.Body.policy.bindings[_].condition.location == STRING
    input.Body.policy.bindings[_].condition.title == STRING
    input.Body.policy.bindings[_].members[_] == STRING
    input.Body.policy.bindings[_].role == STRING
    input.Body.policy.etag == STRING
    input.Body.policy.version == INTEGER
    input.ReqMap.resource == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.instances.setLabels

valid {
    input.Body.labels.STRING == STRING
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.instances.setMachineType

valid {
    input.Body.machineType == STRING
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.instances.start

valid {
    input.Body.STRING == STRING
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.instances.stop

valid {
    input.Body.STRING == STRING
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.instances.testIamPermissions

valid {
    input.Body.permissions[_] == STRING
    input.ReqMap.resource == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.instances.updateConfig

valid {
    input.Body.config.enableHealthMonitoring == BOOLEAN
    input.Body.config.notebookUpgradeSchedule == STRING
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.instances.updateMetadataItems

valid {
    input.Body.items.STRING == STRING
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.instances.updateShieldedInstanceConfig

valid {
    input.Body.shieldedInstanceConfig.enableIntegrityMonitoring == BOOLEAN
    input.Body.shieldedInstanceConfig.enableSecureBoot == BOOLEAN
    input.Body.shieldedInstanceConfig.enableVtpm == BOOLEAN
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.instances.upgrade

valid {
    input.Body.STRING == STRING
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.instances.upgradeInternal

enum_UpgradeInstanceInternalRequestType := [ "UPGRADE_TYPE_UNSPECIFIED", "UPGRADE_FRAMEWORK", "UPGRADE_OS", "UPGRADE_CUDA", "UPGRADE_ALL" ]

valid {
    input.Body.type == enum_UpgradeInstanceInternalRequestType[_]
    input.Body.vmId == STRING
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.instances.upgradeSystem

valid {
    input.Body.vmId == STRING
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.list

valid {
    input.ReqMap.name == STRING
    input.Qs.filter == STRING
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.operations.cancel

valid {
    input.Body.STRING == STRING
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.operations.delete

valid {
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.operations.get

valid {
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.operations.list

valid {
    input.ReqMap.name == STRING
    input.Qs.filter == STRING
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.runtimes.create

enum_LocalDiskInitializeParamsDiskType := [ "DISK_TYPE_UNSPECIFIED", "PD_STANDARD", "PD_SSD", "PD_BALANCED", "PD_EXTREME" ]
enum_RuntimeAcceleratorConfigType := [ "ACCELERATOR_TYPE_UNSPECIFIED", "NVIDIA_TESLA_K80", "NVIDIA_TESLA_P100", "NVIDIA_TESLA_V100", "NVIDIA_TESLA_P4", "NVIDIA_TESLA_T4", "NVIDIA_TESLA_A100", "NVIDIA_L4", "TPU_V2", "TPU_V3", "NVIDIA_TESLA_T4_VWS", "NVIDIA_TESLA_P100_VWS", "NVIDIA_TESLA_P4_VWS" ]
enum_RuntimeAccessConfigAccessType := [ "RUNTIME_ACCESS_TYPE_UNSPECIFIED", "SINGLE_USER", "SERVICE_ACCOUNT" ]
enum_RuntimeSoftwareConfigPostStartupScriptBehavior := [ "POST_STARTUP_SCRIPT_BEHAVIOR_UNSPECIFIED", "RUN_EVERY_START", "DOWNLOAD_AND_RUN_EVERY_START" ]
enum_VirtualMachineConfigNicType := [ "UNSPECIFIED_NIC_TYPE", "VIRTIO_NET", "GVNIC" ]

valid {
    input.Body.accessConfig.accessType == enum_RuntimeAccessConfigAccessType[_]
    input.Body.accessConfig.runtimeOwner == STRING
    input.Body.labels.STRING == STRING
    input.Body.softwareConfig.customGpuDriverPath == STRING
    input.Body.softwareConfig.disableTerminal == BOOLEAN
    input.Body.softwareConfig.enableHealthMonitoring == BOOLEAN
    input.Body.softwareConfig.idleShutdown == BOOLEAN
    input.Body.softwareConfig.idleShutdownTimeout == INTEGER
    input.Body.softwareConfig.installGpuDriver == BOOLEAN
    input.Body.softwareConfig.kernels[_].repository == STRING
    input.Body.softwareConfig.kernels[_].tag == STRING
    input.Body.softwareConfig.mixerDisabled == BOOLEAN
    input.Body.softwareConfig.notebookUpgradeSchedule == STRING
    input.Body.softwareConfig.postStartupScript == STRING
    input.Body.softwareConfig.postStartupScriptBehavior == enum_RuntimeSoftwareConfigPostStartupScriptBehavior[_]
    input.Body.virtualMachine.virtualMachineConfig.acceleratorConfig.coreCount == STRING
    input.Body.virtualMachine.virtualMachineConfig.acceleratorConfig.type == enum_RuntimeAcceleratorConfigType[_]
    input.Body.virtualMachine.virtualMachineConfig.bootImage.STRING == STRING
    input.Body.virtualMachine.virtualMachineConfig.containerImages[_].repository == STRING
    input.Body.virtualMachine.virtualMachineConfig.containerImages[_].tag == STRING
    input.Body.virtualMachine.virtualMachineConfig.dataDisk.initializeParams.description == STRING
    input.Body.virtualMachine.virtualMachineConfig.dataDisk.initializeParams.diskName == STRING
    input.Body.virtualMachine.virtualMachineConfig.dataDisk.initializeParams.diskSizeGb == STRING
    input.Body.virtualMachine.virtualMachineConfig.dataDisk.initializeParams.diskType == enum_LocalDiskInitializeParamsDiskType[_]
    input.Body.virtualMachine.virtualMachineConfig.dataDisk.initializeParams.labels.STRING == STRING
    input.Body.virtualMachine.virtualMachineConfig.dataDisk.interface == STRING
    input.Body.virtualMachine.virtualMachineConfig.dataDisk.mode == STRING
    input.Body.virtualMachine.virtualMachineConfig.dataDisk.source == STRING
    input.Body.virtualMachine.virtualMachineConfig.dataDisk.type == STRING
    input.Body.virtualMachine.virtualMachineConfig.encryptionConfig.kmsKey == STRING
    input.Body.virtualMachine.virtualMachineConfig.internalIpOnly == BOOLEAN
    input.Body.virtualMachine.virtualMachineConfig.labels.STRING == STRING
    input.Body.virtualMachine.virtualMachineConfig.machineType == STRING
    input.Body.virtualMachine.virtualMachineConfig.metadata.STRING == STRING
    input.Body.virtualMachine.virtualMachineConfig.network == STRING
    input.Body.virtualMachine.virtualMachineConfig.nicType == enum_VirtualMachineConfigNicType[_]
    input.Body.virtualMachine.virtualMachineConfig.reservedIpRange == STRING
    input.Body.virtualMachine.virtualMachineConfig.shieldedInstanceConfig.enableIntegrityMonitoring == BOOLEAN
    input.Body.virtualMachine.virtualMachineConfig.shieldedInstanceConfig.enableSecureBoot == BOOLEAN
    input.Body.virtualMachine.virtualMachineConfig.shieldedInstanceConfig.enableVtpm == BOOLEAN
    input.Body.virtualMachine.virtualMachineConfig.subnet == STRING
    input.Body.virtualMachine.virtualMachineConfig.tags[_] == STRING
    input.ReqMap.parent == STRING
    input.Qs.requestId == STRING
    input.Qs.runtimeId == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.runtimes.delete

valid {
    input.ReqMap.name == STRING
    input.Qs.requestId == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.runtimes.diagnose

valid {
    input.Body.diagnosticConfig.copyHomeFilesFlagEnabled == BOOLEAN
    input.Body.diagnosticConfig.gcsBucket == STRING
    input.Body.diagnosticConfig.packetCaptureFlagEnabled == BOOLEAN
    input.Body.diagnosticConfig.relativePath == STRING
    input.Body.diagnosticConfig.repairFlagEnabled == BOOLEAN
    input.Body.timeoutMinutes == INTEGER
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.runtimes.get

valid {
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.runtimes.getIamPolicy

valid {
    input.ReqMap.resource == STRING
    input.Qs.options.requestedPolicyVersion == INTEGER
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.runtimes.list

valid {
    input.ReqMap.parent == STRING
    input.Qs.filter == STRING
    input.Qs.orderBy == STRING
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.runtimes.migrate

enum_MigrateRuntimeRequestPostStartupScriptOption := [ "POST_STARTUP_SCRIPT_OPTION_UNSPECIFIED", "POST_STARTUP_SCRIPT_OPTION_SKIP", "POST_STARTUP_SCRIPT_OPTION_RERUN" ]

valid {
    input.Body.network == STRING
    input.Body.postStartupScriptOption == enum_MigrateRuntimeRequestPostStartupScriptOption[_]
    input.Body.requestId == STRING
    input.Body.serviceAccount == STRING
    input.Body.subnet == STRING
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.runtimes.patch

enum_LocalDiskInitializeParamsDiskType := [ "DISK_TYPE_UNSPECIFIED", "PD_STANDARD", "PD_SSD", "PD_BALANCED", "PD_EXTREME" ]
enum_RuntimeAcceleratorConfigType := [ "ACCELERATOR_TYPE_UNSPECIFIED", "NVIDIA_TESLA_K80", "NVIDIA_TESLA_P100", "NVIDIA_TESLA_V100", "NVIDIA_TESLA_P4", "NVIDIA_TESLA_T4", "NVIDIA_TESLA_A100", "NVIDIA_L4", "TPU_V2", "TPU_V3", "NVIDIA_TESLA_T4_VWS", "NVIDIA_TESLA_P100_VWS", "NVIDIA_TESLA_P4_VWS" ]
enum_RuntimeAccessConfigAccessType := [ "RUNTIME_ACCESS_TYPE_UNSPECIFIED", "SINGLE_USER", "SERVICE_ACCOUNT" ]
enum_RuntimeSoftwareConfigPostStartupScriptBehavior := [ "POST_STARTUP_SCRIPT_BEHAVIOR_UNSPECIFIED", "RUN_EVERY_START", "DOWNLOAD_AND_RUN_EVERY_START" ]
enum_VirtualMachineConfigNicType := [ "UNSPECIFIED_NIC_TYPE", "VIRTIO_NET", "GVNIC" ]

valid {
    input.Body.accessConfig.accessType == enum_RuntimeAccessConfigAccessType[_]
    input.Body.accessConfig.runtimeOwner == STRING
    input.Body.labels.STRING == STRING
    input.Body.softwareConfig.customGpuDriverPath == STRING
    input.Body.softwareConfig.disableTerminal == BOOLEAN
    input.Body.softwareConfig.enableHealthMonitoring == BOOLEAN
    input.Body.softwareConfig.idleShutdown == BOOLEAN
    input.Body.softwareConfig.idleShutdownTimeout == INTEGER
    input.Body.softwareConfig.installGpuDriver == BOOLEAN
    input.Body.softwareConfig.kernels[_].repository == STRING
    input.Body.softwareConfig.kernels[_].tag == STRING
    input.Body.softwareConfig.mixerDisabled == BOOLEAN
    input.Body.softwareConfig.notebookUpgradeSchedule == STRING
    input.Body.softwareConfig.postStartupScript == STRING
    input.Body.softwareConfig.postStartupScriptBehavior == enum_RuntimeSoftwareConfigPostStartupScriptBehavior[_]
    input.Body.virtualMachine.virtualMachineConfig.acceleratorConfig.coreCount == STRING
    input.Body.virtualMachine.virtualMachineConfig.acceleratorConfig.type == enum_RuntimeAcceleratorConfigType[_]
    input.Body.virtualMachine.virtualMachineConfig.bootImage.STRING == STRING
    input.Body.virtualMachine.virtualMachineConfig.containerImages[_].repository == STRING
    input.Body.virtualMachine.virtualMachineConfig.containerImages[_].tag == STRING
    input.Body.virtualMachine.virtualMachineConfig.dataDisk.initializeParams.description == STRING
    input.Body.virtualMachine.virtualMachineConfig.dataDisk.initializeParams.diskName == STRING
    input.Body.virtualMachine.virtualMachineConfig.dataDisk.initializeParams.diskSizeGb == STRING
    input.Body.virtualMachine.virtualMachineConfig.dataDisk.initializeParams.diskType == enum_LocalDiskInitializeParamsDiskType[_]
    input.Body.virtualMachine.virtualMachineConfig.dataDisk.initializeParams.labels.STRING == STRING
    input.Body.virtualMachine.virtualMachineConfig.dataDisk.interface == STRING
    input.Body.virtualMachine.virtualMachineConfig.dataDisk.mode == STRING
    input.Body.virtualMachine.virtualMachineConfig.dataDisk.source == STRING
    input.Body.virtualMachine.virtualMachineConfig.dataDisk.type == STRING
    input.Body.virtualMachine.virtualMachineConfig.encryptionConfig.kmsKey == STRING
    input.Body.virtualMachine.virtualMachineConfig.internalIpOnly == BOOLEAN
    input.Body.virtualMachine.virtualMachineConfig.labels.STRING == STRING
    input.Body.virtualMachine.virtualMachineConfig.machineType == STRING
    input.Body.virtualMachine.virtualMachineConfig.metadata.STRING == STRING
    input.Body.virtualMachine.virtualMachineConfig.network == STRING
    input.Body.virtualMachine.virtualMachineConfig.nicType == enum_VirtualMachineConfigNicType[_]
    input.Body.virtualMachine.virtualMachineConfig.reservedIpRange == STRING
    input.Body.virtualMachine.virtualMachineConfig.shieldedInstanceConfig.enableIntegrityMonitoring == BOOLEAN
    input.Body.virtualMachine.virtualMachineConfig.shieldedInstanceConfig.enableSecureBoot == BOOLEAN
    input.Body.virtualMachine.virtualMachineConfig.shieldedInstanceConfig.enableVtpm == BOOLEAN
    input.Body.virtualMachine.virtualMachineConfig.subnet == STRING
    input.Body.virtualMachine.virtualMachineConfig.tags[_] == STRING
    input.ReqMap.name == STRING
    input.Qs.requestId == STRING
    input.Qs.updateMask == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.runtimes.refreshRuntimeTokenInternal

valid {
    input.Body.vmId == STRING
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.runtimes.reportEvent

enum_EventType := [ "EVENT_TYPE_UNSPECIFIED", "IDLE", "HEARTBEAT", "HEALTH", "MAINTENANCE" ]

valid {
    input.Body.event.details.STRING == STRING
    input.Body.event.reportTime == STRING
    input.Body.event.type == enum_EventType[_]
    input.Body.vmId == STRING
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.runtimes.reset

valid {
    input.Body.requestId == STRING
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.runtimes.setIamPolicy

valid {
    input.Body.policy.bindings[_].condition.description == STRING
    input.Body.policy.bindings[_].condition.expression == STRING
    input.Body.policy.bindings[_].condition.location == STRING
    input.Body.policy.bindings[_].condition.title == STRING
    input.Body.policy.bindings[_].members[_] == STRING
    input.Body.policy.bindings[_].role == STRING
    input.Body.policy.etag == STRING
    input.Body.policy.version == INTEGER
    input.ReqMap.resource == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.runtimes.start

valid {
    input.Body.requestId == STRING
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.runtimes.stop

valid {
    input.Body.requestId == STRING
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.runtimes.switch

enum_RuntimeAcceleratorConfigType := [ "ACCELERATOR_TYPE_UNSPECIFIED", "NVIDIA_TESLA_K80", "NVIDIA_TESLA_P100", "NVIDIA_TESLA_V100", "NVIDIA_TESLA_P4", "NVIDIA_TESLA_T4", "NVIDIA_TESLA_A100", "NVIDIA_L4", "TPU_V2", "TPU_V3", "NVIDIA_TESLA_T4_VWS", "NVIDIA_TESLA_P100_VWS", "NVIDIA_TESLA_P4_VWS" ]

valid {
    input.Body.acceleratorConfig.coreCount == STRING
    input.Body.acceleratorConfig.type == enum_RuntimeAcceleratorConfigType[_]
    input.Body.machineType == STRING
    input.Body.requestId == STRING
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.runtimes.testIamPermissions

valid {
    input.Body.permissions[_] == STRING
    input.ReqMap.resource == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.runtimes.upgrade

valid {
    input.Body.requestId == STRING
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.schedules.create

enum_ExecutionTemplateJobType := [ "JOB_TYPE_UNSPECIFIED", "VERTEX_AI", "DATAPROC" ]
enum_ExecutionTemplateScaleTier := [ "SCALE_TIER_UNSPECIFIED", "BASIC", "STANDARD_1", "PREMIUM_1", "BASIC_GPU", "BASIC_TPU", "CUSTOM" ]
enum_ScheduleState := [ "STATE_UNSPECIFIED", "ENABLED", "PAUSED", "DISABLED", "UPDATE_FAILED", "INITIALIZING", "DELETING" ]
enum_SchedulerAcceleratorConfigType := [ "SCHEDULER_ACCELERATOR_TYPE_UNSPECIFIED", "NVIDIA_TESLA_K80", "NVIDIA_TESLA_P100", "NVIDIA_TESLA_V100", "NVIDIA_TESLA_P4", "NVIDIA_TESLA_T4", "NVIDIA_TESLA_A100", "TPU_V2", "TPU_V3" ]

valid {
    input.Body.cronSchedule == STRING
    input.Body.description == STRING
    input.Body.executionTemplate.acceleratorConfig.coreCount == STRING
    input.Body.executionTemplate.acceleratorConfig.type == enum_SchedulerAcceleratorConfigType[_]
    input.Body.executionTemplate.containerImageUri == STRING
    input.Body.executionTemplate.dataprocParameters.cluster == STRING
    input.Body.executionTemplate.inputNotebookFile == STRING
    input.Body.executionTemplate.jobType == enum_ExecutionTemplateJobType[_]
    input.Body.executionTemplate.kernelSpec == STRING
    input.Body.executionTemplate.labels.STRING == STRING
    input.Body.executionTemplate.masterType == STRING
    input.Body.executionTemplate.outputNotebookFolder == STRING
    input.Body.executionTemplate.parameters == STRING
    input.Body.executionTemplate.paramsYamlFile == STRING
    input.Body.executionTemplate.scaleTier == enum_ExecutionTemplateScaleTier[_]
    input.Body.executionTemplate.serviceAccount == STRING
    input.Body.executionTemplate.tensorboard == STRING
    input.Body.executionTemplate.vertexAiParameters.env.STRING == STRING
    input.Body.executionTemplate.vertexAiParameters.network == STRING
    input.Body.state == enum_ScheduleState[_]
    input.Body.timeZone == STRING
    input.ReqMap.parent == STRING
    input.Qs.scheduleId == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.schedules.delete

valid {
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.schedules.get

valid {
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.schedules.list

valid {
    input.ReqMap.parent == STRING
    input.Qs.filter == STRING
    input.Qs.orderBy == STRING
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.ProviderMetadata.Region == STRING
}

notebooks.projects.locations.schedules.trigger

valid {
    input.Body.STRING == STRING
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}