import {z} from 'zod' export type GetApiV1NamespacesTenantMetaNamespaceFindingsArgs = {'tenant_meta.namespace': string, 'list_parameters.filter'?: string | undefined, 'list_parameters.page_token'?: number | undefined, 'list_parameters.page_size'?: number | undefined, 'list_parameters.action'?: string | undefined, 'list_parameters.mask'?: string | undefined, 'list_parameters.traverse'?: boolean | undefined, 'list_parameters.sort.path'?: string | undefined, 'list_parameters.sort.order'?: ('SORT_ENTRY_ORDER_UNSPECIFIED' | 'SORT_ENTRY_ORDER_ASC' | 'SORT_ENTRY_ORDER_DESC') | undefined, 'list_parameters.count'?: boolean | undefined, 'list_parameters.group.aggregation_paths'?: string | undefined, 'list_parameters.group.show_aggregation_uuids'?: boolean | undefined, 'list_parameters.group.unique_count_paths'?: string | undefined, 'list_parameters.group.unique_value_paths'?: string | undefined, 'list_parameters.ci_run_uuid'?: string | undefined, 'list_parameters.page_id'?: string | undefined, 'list_parameters.group_by_time.aggregation_paths'?: string | undefined, 'list_parameters.group_by_time.show_aggregation_uuids'?: boolean | undefined, 'list_parameters.group_by_time.interval'?: ('GROUP_BY_TIME_INTERVAL_UNSPECIFIED' | 'GROUP_BY_TIME_INTERVAL_YEAR' | 'GROUP_BY_TIME_INTERVAL_QUARTER' | 'GROUP_BY_TIME_INTERVAL_MONTH' | 'GROUP_BY_TIME_INTERVAL_WEEK' | 'GROUP_BY_TIME_INTERVAL_DAY' | 'GROUP_BY_TIME_INTERVAL_HOUR' | 'GROUP_BY_TIME_INTERVAL_MINUTE' | 'GROUP_BY_TIME_INTERVAL_SECOND') | undefined, 'list_parameters.group_by_time.group_size'?: number | undefined, 'list_parameters.group_by_time.start_time'?: string | undefined, 'list_parameters.group_by_time.end_time'?: string | undefined, 'list_parameters.group_by_time.mode'?: string | undefined, 'list_parameters.group_by_time.aggregation_value_field'?: string | undefined, 'list_parameters.group_by_time.aggregation_operator'?: string | undefined, 'list_parameters.disable_pagination'?: boolean | undefined}; export type GetApiV1NamespacesTenantMetaNamespaceFindingsOptions = {baseUrl?: string | undefined, fetch?: typeof fetch | undefined}; export const v1CountResponse = z.object({count: z.number().int().optional()}); export const v1GroupAggregationValueResponse = z.object({value: z.number().optional()}); export const groupResponseGroupData = z.object({aggregation_count: v1CountResponse.optional(), aggregation_uuids: z.array(z.string()).optional(), aggregation_value: v1GroupAggregationValueResponse.optional(), unique_counts: z.record(z.string(), v1CountResponse).optional(), unique_values: z.record(z.string(), z.array(z.object({}))).optional()}); export const v1GroupResponse = z.object({groups: z.record(z.string(), groupResponseGroupData).optional()}); export const contextContextType = z.enum(["CONTEXT_TYPE_UNSPECIFIED", "CONTEXT_TYPE_MAIN", "CONTEXT_TYPE_EXTERNAL", "CONTEXT_TYPE_CI_RUN", "CONTEXT_TYPE_SBOM", "CONTEXT_TYPE_REF"]); export const v1Context = z.object({id: z.string(), tags: z.array(z.string()).optional(), type: contextContextType, will_be_deleted_at: z.string().optional()}); export const v1IndexData = z.object({data: z.array(z.string()).optional(), search_score: z.number().optional(), tenant: z.string().optional(), will_be_deleted_at: z.string().optional()}); export const googleprotobufAny = z.object({"@type": z.string().optional()}).and(z.record(z.string(), z.unknown())); export const v1Meta = z.object({annotations: z.record(z.string(), z.string()).optional(), create_time: z.string().optional(), created_by: z.string().optional(), description: z.string().optional(), index_data: v1IndexData.optional(), kind: z.string().optional(), name: z.string(), parent_kind: z.string().optional(), parent_uuid: z.string().optional(), references: z.record(z.string(), googleprotobufAny).optional(), tags: z.array(z.string()).optional(), update_time: z.string().optional(), updated_by: z.string().optional(), upsert_time: z.string().optional(), version: z.string().optional()}); export const v1Actions = z.object({ci_blocker_since: z.string().optional(), ci_warning_since: z.string().optional(), policy_uuids: z.array(z.string()).optional()}); export const v1CallGraphAnalysisType = z.enum(["CALL_GRAPH_ANALYSIS_TYPE_UNSPECIFIED", "CALL_GRAPH_ANALYSIS_TYPE_FULL", "CALL_GRAPH_ANALYSIS_TYPE_PRECOMPUTED"]); export const v1CodeOwnerData = z.object({labels: z.array(z.string()).optional(), owners: z.array(z.string()).optional()}); export const v1Ecosystem = z.enum(["ECOSYSTEM_UNSPECIFIED", "ECOSYSTEM_GO", "ECOSYSTEM_MAVEN", "ECOSYSTEM_PYPI", "ECOSYSTEM_CARGO", "ECOSYSTEM_NPM", "ECOSYSTEM_GEM", "ECOSYSTEM_NUGET", "ECOSYSTEM_PACKAGIST", "ECOSYSTEM_SBOM", "ECOSYSTEM_RPM", "ECOSYSTEM_DEBIAN", "ECOSYSTEM_GITHUB_ACTION", "ECOSYSTEM_COCOAPOD", "ECOSYSTEM_APK", "ECOSYSTEM_CONTAINER", "ECOSYSTEM_HUGGING_FACE", "ECOSYSTEM_C", "ECOSYSTEM_GIT", "ECOSYSTEM_AI_MODEL", "ECOSYSTEM_SWIFT", "ECOSYSTEM_CONAN", "ECOSYSTEM_VSCODE"]); export const v1Exceptions = z.object({policy_uuids: z.array(z.string()).optional(), tags: z.array(z.string()).optional()}); export const v1FindingCategory = z.enum(["FINDING_CATEGORY_UNSPECIFIED", "FINDING_CATEGORY_VULNERABILITY", "FINDING_CATEGORY_SUPPLY_CHAIN", "FINDING_CATEGORY_LICENSE_RISK", "FINDING_CATEGORY_SCPM", "FINDING_CATEGORY_SECURITY", "FINDING_CATEGORY_OPERATIONAL", "FINDING_CATEGORY_SECRETS", "FINDING_CATEGORY_MALWARE", "FINDING_CATEGORY_CICD", "FINDING_CATEGORY_TOOLS", "FINDING_CATEGORY_GHACTIONS", "FINDING_CATEGORY_CONTAINER", "FINDING_CATEGORY_SAST", "FINDING_CATEGORY_AI_MODELS", "FINDING_CATEGORY_SECURITY_REVIEW", "FINDING_CATEGORY_SCA"]); export const v1FindingClassification = z.enum(["FINDING_CLASSIFICATION_UNSPECIFIED", "FINDING_CLASSIFICATION_SECURITY_VULNERABILITY", "FINDING_CLASSIFICATION_LOGICAL_BUG"]); export const v1LocationType = z.enum(["LOCATION_TYPE_UNSPECIFIED", "LOCATION_TYPE_SOURCE", "LOCATION_TYPE_SINK", "LOCATION_TYPE_INTERMEDIATE", "LOCATION_TYPE_LOGICAL_BUG"]); export const v1SourceLocation = z.object({description: z.string().optional(), end_column: z.number().int().optional(), end_line: z.number().int().optional(), function_name: z.string().optional(), relative_path: z.string().optional(), scm_link: z.string().optional(), snippet: z.string().optional(), start_column: z.number().int().optional(), start_line: z.number().int().optional(), type: v1LocationType.optional()}); export const v1AISASTContextRegion = z.object({content_hash: z.string().optional(), location: v1SourceLocation.optional()}); export const v1AISASTContext = z.object({callees: z.array(v1AISASTContextRegion).optional(), callers: z.array(v1AISASTContextRegion).optional(), dataflow: z.array(v1AISASTContextRegion).optional(), fp_summary_hash: z.string().optional(), hash: z.string().optional(), segment: v1AISASTContextRegion.optional(), validation_context_hash: z.string().optional()}); export const sASTEntryPoint = z.object({http_method: z.string().optional(), path: z.string().optional()}); export const v1ValidationVerdict = z.enum(["VALIDATION_VERDICT_UNSPECIFIED", "VALIDATION_VERDICT_TRUE_POSITIVE", "VALIDATION_VERDICT_FALSE_POSITIVE", "VALIDATION_VERDICT_UNKNOWN"]); export const aIResultSAST = z.object({attack_vector: z.string().optional(), classification: v1FindingClassification.optional(), context: v1AISASTContext.optional(), cwes: z.array(z.string()).optional(), dataflow: z.array(v1SourceLocation).optional(), entry_points: z.array(sASTEntryPoint).optional(), exploit_reproduction: z.string().optional(), fixed_strikes: z.number().int().optional(), language: z.string().optional(), last_scan: z.string().optional(), location: v1SourceLocation.optional(), refresh_attempts: z.number().int().optional(), remediation: z.string().optional(), security_controls: z.string().optional(), severity_scoring: z.string().optional(), summary: z.string().optional(), validation_outcome: z.string().optional(), validation_verdict: v1ValidationVerdict.optional(), verification_scorecard: z.string().optional()}); export const findingPolicyInfoPolicyResult = z.object({fields: z.record(z.string(), z.string()).optional()}); export const v1FindingPolicyInfo = z.object({description: z.string().optional(), finding_name: z.string().optional(), name: z.string().optional(), results: z.array(findingPolicyInfoPolicyResult).optional(), tags: z.array(z.string()).optional(), total_num_results: z.number().int().optional(), uuid: z.string().optional()}); export const v1FindingContainerData = z.object({base_image: z.string().optional(), has_base_layer: z.boolean().optional(), layer_digests: z.array(z.string()).optional()}); export const specCVSSVersion = z.enum(["CVSS_VERSION_UNSPECIFIED", "CVSS_VERSION_V2", "CVSS_VERSION_V3", "CVSS_VERSION_V4"]); export const checksumHashAlgorithm = z.enum(["HASH_ALGORITHM_UNSPECIFIED", "HASH_ALGORITHM_MD5", "HASH_ALGORITHM_SHA1", "HASH_ALGORITHM_SHA224", "HASH_ALGORITHM_SHA256", "HASH_ALGORITHM_SHA384", "HASH_ALGORITHM_SHA512"]); export const v1Checksum = z.object({algorithm: checksumHashAlgorithm, value: z.string()}); export const v1ContributorContact = z.object({email: z.string().optional(), name: z.string().optional()}); export const v1ContributorDetails = z.object({authors: z.array(v1ContributorContact).optional(), maintainers: z.array(v1ContributorContact).optional(), suppliers: z.array(v1ContributorContact).optional()}); export const v1LicenseMappingInfo = z.enum(["LICENSE_MAPPING_INFO_UNSPECIFIED", "LICENSE_MAPPING_INFO_NOT_OSS", "LICENSE_MAPPING_INFO_IN_CODE", "LICENSE_MAPPING_INFO_UNKNOWN", "LICENSE_MAPPING_INFO_NOT_INCOMPLETE", "LICENSE_MAPPING_INFO_PRIVATE", "LICENSE_MAPPING_INFO_EXACT", "LICENSE_MAPPING_INFO_UNLICENSED"]); export const v1LicenseInfo = z.object({file: z.string().optional(), file_location: z.number().int().optional(), mapping_info: v1LicenseMappingInfo.optional(), matched_text: z.string().optional(), name: z.string(), spdxid: z.string().optional(), type: z.string().optional(), url: z.string().optional()}); export const v1PlatformSource = z.enum(["PLATFORM_SOURCE_UNSPECIFIED", "PLATFORM_SOURCE_GITHUB", "PLATFORM_SOURCE_GITLAB", "PLATFORM_SOURCE_GITSERVER", "PLATFORM_SOURCE_BITBUCKET", "PLATFORM_SOURCE_BINARY", "PLATFORM_SOURCE_HUGGING_FACE", "PLATFORM_SOURCE_AZURE", "PLATFORM_SOURCE_ARCHIVE", "PLATFORM_SOURCE_EXTERNAL_AI_SERVICE", "PLATFORM_SOURCE_GITHUB_ENTERPRISE"]); export const endorv1VersionMetadata = z.object({checksums: z.array(v1Checksum).optional(), consumed: z.boolean().optional(), contributor_details: v1ContributorDetails.optional(), eol_timestamp: z.string().optional(), last_package_info_attempt: z.string().optional(), last_updated: z.string().optional(), license: z.array(z.string()), license_info: z.array(v1LicenseInfo).optional(), lts: z.boolean().optional(), platform_source: v1PlatformSource.optional(), release_time: z.string(), source_code_ref: z.string().optional(), source_code_url: z.string().optional(), version: z.string()}); export const v1PackageVersionMetadataSpec = z.object({ecosystem: v1Ecosystem, last_updated: z.string().optional(), versions: z.array(endorv1VersionMetadata)}); export const v1TenantMeta = z.object({namespace: z.string()}); export const v1PackageVersionMetadata = z.object({meta: v1Meta, spec: v1PackageVersionMetadataSpec, tenant_meta: v1TenantMeta.optional(), uuid: z.string().optional()}); export const v1ScoreCategory = z.enum(["SCORE_CATEGORY_UNSPECIFIED", "SCORE_CATEGORY_POPULARITY", "SCORE_CATEGORY_ACTIVITY", "SCORE_CATEGORY_BEST_PRACTICES", "SCORE_CATEGORY_SUSPICIOUS_ACTIVITY", "SCORE_CATEGORY_DEPENDENCIES", "SCORE_CATEGORY_SECURITY", "SCORE_CATEGORY_CODE_QUALITY", "SCORE_CATEGORY_OPERATIONAL_RISK"]); export const v1CategoryScore = z.object({category: v1ScoreCategory.optional(), centered_score: z.number().optional(), description: z.string().optional(), raw_score: z.number().optional(), score: z.number().int().optional()}); export const v1ScoreCard = z.object({analysis_scope_description: z.string().optional(), category_scores: z.array(v1CategoryScore).optional(), overall_score: z.number().optional()}); export const v1ScoreFactor = z.object({category: v1ScoreCategory.optional(), description: z.string().optional(), evidence: z.string().optional(), id: z.string().optional(), name: z.string().optional(), score: z.number().int().optional(), score_float: z.number().optional()}); export const v1ScoreFactorList = z.object({score_factors: z.array(v1ScoreFactor).optional()}); export const specMalwareSource = z.enum(["MALWARE_SOURCE_UNSPECIFIED", "MALWARE_SOURCE_ENDOR", "MALWARE_SOURCE_OSV", "MALWARE_SOURCE_AMF", "MALWARE_SOURCE_INTERNAL"]); export const v1IOCType = z.enum(["IOC_TYPE_UNSPECIFIED", "IOC_TYPE_URL", "IOC_TYPE_IP", "IOC_TYPE_DOMAIN", "IOC_TYPE_FILENAME", "IOC_TYPE_FILEPATH", "IOC_TYPE_DIGEST_SHA1", "IOC_TYPE_DIGEST_SHA256", "IOC_TYPE_DIGEST_SHA512", "IOC_TYPE_DIGEST_MD5", "IOC_TYPE_WALLET_ADDRESS", "IOC_TYPE_REGISTRY_ACCOUNT_NAME", "IOC_TYPE_REGISTRY_ACCOUNT_EMAIL", "IOC_TYPE_DEPENDENCY"]); export const v1MalwareIOCAttribute = z.object({type: v1IOCType, value: z.string()}); export const v1ProcessingStatusMetadata = z.object({full_history_scan_time: z.string().optional()}); export const v1ScanState = z.enum(["SCAN_STATE_UNSPECIFIED", "SCAN_STATE_NOT_PROCESSED", "SCAN_STATE_IDLE", "SCAN_STATE_INGESTING", "SCAN_STATE_ANALYTIC", "SCAN_STATE_UNREACHABLE", "SCAN_STATE_REQUEST_FULL_RESCAN", "SCAN_STATE_REQUEST_INCREMENTAL_RESCAN", "SCAN_STATE_QUEUED", "SCAN_STATE_QUARANTINED"]); export const v1ProcessingStatus = z.object({analytic_time: z.string().optional(), deactivated: z.boolean().optional(), disable_automated_scan: z.boolean().optional(), metadata: v1ProcessingStatusMetadata.optional(), queue_time: z.string().optional(), scan_state: v1ScanState.optional(), scan_time: z.string().optional()}); export const v1BazelMetadata = z.object({build_path: z.string().optional()}); export const v1ContainerArchitecture = z.enum(["CONTAINER_ARCHITECTURE_UNSPECIFIED", "CONTAINER_ARCHITECTURE_UNKNOWN", "CONTAINER_ARCHITECTURE_AMD64", "CONTAINER_ARCHITECTURE_386", "CONTAINER_ARCHITECTURE_ARM", "CONTAINER_ARCHITECTURE_ARM64", "CONTAINER_ARCHITECTURE_PPC64LE", "CONTAINER_ARCHITECTURE_PPC64", "CONTAINER_ARCHITECTURE_MIPS64LE", "CONTAINER_ARCHITECTURE_MIPS64", "CONTAINER_ARCHITECTURE_MIPSLE", "CONTAINER_ARCHITECTURE_MIPS", "CONTAINER_ARCHITECTURE_S390X", "CONTAINER_ARCHITECTURE_WASM"]); export const v1ContainerImageUpdateOption = z.object({chain_id: z.string().optional(), digest: z.string().optional(), name: z.string().optional(), package_version_uuid: z.string().optional()}); export const v1ContainerImageUpdateOptions = z.object({latest_version: v1ContainerImageUpdateOption.optional(), next_version: v1ContainerImageUpdateOption.optional(), refreshed: v1ContainerImageUpdateOption.optional(), update_time: z.string().optional()}); export const v1ContainerBaseImage = z.object({chain_id: z.string().optional(), digest: z.string().optional(), name: z.string().optional(), package_version_uuid: z.string().optional(), update_options: v1ContainerImageUpdateOptions.optional()}); export const containerContextDiffRecordScope = z.enum(["RECORD_SCOPE_UNSPECIFIED", "RECORD_SCOPE_ALL", "RECORD_SCOPE_VULNERABILITY"]); export const v1ContainerContextDiff = z.object({baseline_package_version_uuid: z.string().optional(), last_reconcile_time: z.string().optional(), record_scope: containerContextDiffRecordScope.optional(), suppress_baseline_findings: z.boolean().optional()}); export const v1ContainerLayer = z.object({base_layer: z.boolean().optional(), command: z.string().optional(), digest: z.string()}); export const containerProfileDetailsApplicationType = z.enum(["APPLICATION_TYPE_UNSPECIFIED", "APPLICATION_TYPE_CLI", "APPLICATION_TYPE_SERVER"]); export const containerProfileDetailsProfileType = z.enum(["PROFILE_TYPE_UNSPECIFIED", "PROFILE_TYPE_BASIC", "PROFILE_TYPE_INSTRUMENTED"]); export const v1ContainerProfileDetails = z.object({application_type: containerProfileDetailsApplicationType.optional(), detected_as_base_image: z.boolean().optional(), duration_ms: z.string().optional(), entry_point_package_version_name: z.string().optional(), profile_type: containerProfileDetailsProfileType.optional()}); export const containerProfileErrorContainerProfileStatus = z.enum(["CONTAINER_PROFILE_STATUS_UNSPECIFIED", "CONTAINER_PROFILE_STATUS_PLUGIN_NOT_FOUND", "CONTAINER_PROFILE_STATUS_TIMEOUT", "CONTAINER_PROFILE_STATUS_IMAGE_TOO_LARGE", "CONTAINER_PROFILE_STATUS_IMAGE_NOT_RUNNABLE", "CONTAINER_PROFILE_STATUS_MINT_PLUGIN_ERROR", "CONTAINER_PROFILE_STATUS_ARTIFACTS_NOT_FOUND", "CONTAINER_PROFILE_STATUS_INTERNAL_ERROR", "CONTAINER_PROFILE_STATUS_PLUGIN_SETUP", "CONTAINER_PROFILE_STATUS_PROFILE_LOAD", "CONTAINER_PROFILE_STATUS_MINT_VERSION_INCOMPATIBLE", "CONTAINER_PROFILE_STATUS_IMAGE_TYPE_BASE"]); export const v1ContainerProfileError = z.object({description: z.string().optional(), status: containerProfileErrorContainerProfileStatus.optional()}); export const v1ContainerAsBase = z.object({first_seen: z.string().optional(), last_seen: z.string().optional(), update_options: v1ContainerImageUpdateOptions.optional(), use_count: z.string().optional(), used: z.boolean().optional()}); export const v1ContainerMetadata = z.object({architecture: v1ContainerArchitecture.optional(), base_image: v1ContainerBaseImage.optional(), chain_id: z.string().optional(), command: z.array(z.string()).optional(), context_diff: v1ContainerContextDiff.optional(), digest: z.string().optional(), distribution: z.string().optional(), entrypoint: z.array(z.string()).optional(), environment: z.array(z.string()).optional(), exposed_ports: z.array(z.string()).optional(), labels: z.record(z.string(), z.string()).optional(), layers: z.array(v1ContainerLayer).optional(), previous_base_image: v1ContainerBaseImage.optional(), profile_details: v1ContainerProfileDetails.optional(), profile_error: v1ContainerProfileError.optional(), profiled: z.boolean().optional(), repo_digest: z.string().optional(), used_as_base: v1ContainerAsBase.optional(), version: z.string().optional(), working_directory: z.string().optional()}); export const v1Language = z.enum(["LANGUAGE_UNSPECIFIED", "LANGUAGE_GO", "LANGUAGE_JAVA", "LANGUAGE_SCALA", "LANGUAGE_PYTHON", "LANGUAGE_RUST", "LANGUAGE_JS", "LANGUAGE_RUBY", "LANGUAGE_CSHARP", "LANGUAGE_PHP", "LANGUAGE_TYPESCRIPT", "LANGUAGE_KOTLIN", "LANGUAGE_SWIFT", "LANGUAGE_OBJECTIVEC", "LANGUAGE_C", "LANGUAGE_CPP", "LANGUAGE_SWIFTURL", "LANGUAGE_CONAN", "LANGUAGE_GOSU"]); export const v1PrecomputedState = z.enum(["PRECOMPUTED_STATE_UNSPECIFIED", "PRECOMPUTED_STATE_SUCCESS", "PRECOMPUTED_STATE_FAILURE"]); export const specErrorCategory = z.enum(["ERROR_CATEGORY_UNSPECIFIED", "ERROR_CATEGORY_PRIVATE_REGISTRY", "ERROR_CATEGORY_TOOLCHAIN", "ERROR_CATEGORY_REPOSITORY", "ERROR_CATEGORY_OTHER"]); export const resolutionStatusErrorAnalysis = z.object({error_category: specErrorCategory.optional(), explanation: z.string().optional(), fixable: z.boolean().optional(), fixable_notes: z.string().optional(), matching_rule: z.string().optional(), matching_snippet: z.string().optional()}); export const resolutionStatusStatusError = z.enum(["STATUS_ERROR_UNSPECIFIED", "STATUS_ERROR_MANIFEST_LOAD", "STATUS_ERROR_MANIFEST_PARSE", "STATUS_ERROR_MANIFEST_EMPTY", "STATUS_ERROR_DEPENDENCY", "STATUS_ERROR_CALL_GRAPH", "STATUS_ERROR_MISSING_ARTIFACT", "STATUS_ERROR_BUILD", "STATUS_ERROR_PACKAGE_VERSION_UNAVAILABLE", "STATUS_ERROR_NO_CODE_ARTIFACT", "STATUS_ERROR_VENV", "STATUS_ERROR_INTERNAL", "STATUS_ERROR_UNSUPPORTED"]); export const v1ResolutionStatus = z.object({description: z.string().optional(), error_analysis: z.array(resolutionStatusErrorAnalysis).optional(), error_analysis_best_match: resolutionStatusErrorAnalysis.optional(), operation: z.string().optional(), status_error: resolutionStatusStatusError.optional(), target: z.string().optional(), target_files: z.record(z.string(), z.string()).optional()}); export const packageVersionResolutionErrors = z.object({call_graph: v1ResolutionStatus.optional(), resolved: v1ResolutionStatus.optional(), unresolved: v1ResolutionStatus.optional()}); export const v1DependencyScope = z.enum(["DEPENDENCY_SCOPE_UNSPECIFIED", "DEPENDENCY_SCOPE_TEST", "DEPENDENCY_SCOPE_BUILD", "DEPENDENCY_SCOPE_NORMAL"]); export const v1ContainerPackageType = z.enum(["CONTAINER_PACKAGE_TYPE_UNSPECIFIED", "CONTAINER_PACKAGE_TYPE_LIBRARY", "CONTAINER_PACKAGE_TYPE_APPLICATION", "CONTAINER_PACKAGE_TYPE_APPLICATION_LIBRARY", "CONTAINER_PACKAGE_TYPE_OS_LIBRARY", "CONTAINER_PACKAGE_TYPE_OS_APPLICATION", "CONTAINER_PACKAGE_TYPE_OS_APPLICATION_LIBRARY"]); export const v1ContainerCompositionMetadata = z.object({package_type: v1ContainerPackageType.optional()}); export const v1ContainerDependencyLayer = z.object({digest: z.string(), file_locations: z.array(z.string()).optional()}); export const packageVersionDependencyGemDependencySpecScope = z.enum(["SCOPE_UNSPECIFIED", "SCOPE_NORMAL", "SCOPE_DEVELOPMENT"]); export const packageVersionDependencyGitHubActionDependencySpecScope = z.enum(["SCOPE_UNSPECIFIED", "SCOPE_NORMAL", "SCOPE_TEST"]); export const packageVersionDependencyGoDependencySpecScope = z.enum(["SCOPE_UNSPECIFIED", "SCOPE_NORMAL", "SCOPE_TEST"]); export const dependencyImportedType = z.enum(["IMPORTED_TYPE_UNSPECIFIED", "IMPORTED_TYPE_IN_SOURCE", "IMPORTED_TYPE_NOT_IN_SOURCE", "IMPORTED_TYPE_PHANTOM", "IMPORTED_TYPE_SEGMENT_MATCH", "IMPORTED_TYPE_INSTALLED_IN_USE"]); export const packageVersionDependencyNpmDependencySpecScope = z.enum(["SCOPE_UNSPECIFIED", "SCOPE_DEPENDENCY", "SCOPE_DEV_DEPENDENCY", "SCOPE_OPTIONAL_DEPENDENCY", "SCOPE_PEER_DEPENDENCY"]); export const packageVersionDependencyMavenDependencySpecScope = z.enum(["SCOPE_UNSPECIFIED", "SCOPE_COMPILE", "SCOPE_PROVIDED", "SCOPE_RUNTIME", "SCOPE_TEST", "SCOPE_SYSTEM", "SCOPE_CUSTOM", "SCOPE_VENDORED_CODE", "SCOPE_IMPORT"]); export const packageVersionDependencyPackagistDependencySpecScope = z.enum(["SCOPE_UNSPECIFIED", "SCOPE_NORMAL", "SCOPE_DEVELOPMENT"]); export const packageVersionDependencyPypiDependencySpecScope = z.enum(["SCOPE_UNSPECIFIED", "SCOPE_NORMAL", "SCOPE_OPTIONAL"]); export const v1DigestType = z.enum(["DIGEST_TYPE_UNSPECIFIED", "DIGEST_TYPE_SHA1", "DIGEST_TYPE_SHA256", "DIGEST_TYPE_SHA512", "DIGEST_TYPE_MD5"]); export const v1Digest = z.object({algorithm: v1DigestType, value: z.string()}); export const v1FileType = z.enum(["FILE_TYPE_UNSPECIFIED", "FILE_TYPE_FILE", "FILE_TYPE_SYMLINK"]); export const v1ContainerRuntimeDependencyFile = z.object({digests: z.array(v1Digest).optional(), file_type: v1FileType.optional(), path: z.string().optional(), real_path: z.string().optional()}); export const cargoDependencySpecDependencyKind = z.enum(["DEPENDENCY_KIND_UNSPECIFIED", "DEPENDENCY_KIND_NORMAL", "DEPENDENCY_KIND_DEVELOPMENT", "DEPENDENCY_KIND_BUILD"]); export const targetTargetType = z.enum(["TARGET_TYPE_UNSPECIFIED", "TARGET_TYPE_LANGUAGE", "TARGET_TYPE_FRAMEWORK", "TARGET_TYPE_OS", "TARGET_TYPE_CPU_ARCH"]); export const v1Target = z.object({exclude: z.boolean(), name: z.string(), type: targetTargetType, version: z.string().optional()}); export const bomDependency = z.object({abstract: z.boolean().optional(), cocoapod_dependency_scope: v1DependencyScope.optional(), composition_metadata: v1ContainerCompositionMetadata.optional(), conan_dependency_scope: v1DependencyScope.optional(), container_layers: z.array(v1ContainerDependencyLayer).optional(), dependency_scope: v1DependencyScope.optional(), eol_timestamp: z.string().optional(), file_location_remote_paths: z.record(z.string(), z.string()).optional(), file_locations: z.array(z.string()).optional(), gem_dependency_scope: packageVersionDependencyGemDependencySpecScope.optional(), github_action_kind: packageVersionDependencyGitHubActionDependencySpecScope.optional(), golang_dependency_scope: packageVersionDependencyGoDependencySpecScope.optional(), hugging_face_dependency_scope: v1DependencyScope.optional(), import_path: z.string().optional(), imported_type: dependencyImportedType.optional(), js_dependency_scope: packageVersionDependencyNpmDependencySpecScope.optional(), locked: z.boolean().optional(), maven_dependency_scope: packageVersionDependencyMavenDependencySpecScope.optional(), name: z.string(), nuget_dependency_scope: v1DependencyScope.optional(), packagist_dependency_scope: packageVersionDependencyPackagistDependencySpecScope.optional(), patched: z.boolean().optional(), pinned: z.boolean().optional(), platform_source: v1PlatformSource.optional(), public: z.boolean().optional(), purl: z.string().optional(), pypi_dependency_scope: packageVersionDependencyPypiDependencySpecScope.optional(), release_date: z.string().optional(), runtime_files: z.array(v1ContainerRuntimeDependencyFile).optional(), rust_dependency_kind: cargoDependencySpecDependencyKind.optional(), source_repository_http_clone_url: z.string().optional(), source_repository_ref: z.string().optional(), swift_dependency_scope: v1DependencyScope.optional(), targets: z.array(v1Target).optional(), user_app_dep: z.boolean().optional(), vendored: z.boolean().optional()}); export const bomDependencyFile = z.object({path: z.string().optional()}); export const v1Bom = z.object({dependencies: z.array(bomDependency).optional(), dependency_files: z.array(bomDependencyFile).optional(), dependency_graph: z.record(z.string(), z.array(z.object({}))).optional(), resolution_timestamp: z.string()}); export const v1Version = z.object({metadata: z.record(z.string(), z.string()).optional(), ref: z.string(), sha: z.string().optional()}); export const packageVersionSourceCodeReference = z.object({http_clone_url: z.string().optional(), platform_source: v1PlatformSource.optional(), version: v1Version.optional()}); export const packageVersionDependencyUnresolvedDependencySpec = z.object({name: z.string(), scope: v1DependencyScope.optional(), targets: z.array(v1Target).optional(), version_constraints: z.string().optional()}); export const cfgAll = z.object({expr: z.array(z.lazy(() => cfgCfgExpr)).optional()}); export const cargoDependencySpecCfgAny = z.object({expr: z.array(z.lazy(() => cfgCfgExpr)).optional()}); export const cfgNot = z.object({expr: z.lazy(() => cfgCfgExpr)}); export const cfgKeyPair = z.object({key: z.string(), value: z.string()}); export const cargoDependencySpecCfgValue = z.object({name: z.string().optional(), pair: cfgKeyPair.optional()}); export const cfgCfgExpr: z.ZodType = z.object({all: cfgAll.optional(), any: cargoDependencySpecCfgAny.optional(), not: cfgNot.optional(), value: cargoDependencySpecCfgValue.optional()}); export const cargoDependencySpecCfg = z.object({expr: cfgCfgExpr}); export const cargoDependencySpecNamedPlatform = z.object({name: z.string()}); export const cargoVersionReqOp = z.enum(["OP_UNSPECIFIED", "OP_EXACT", "OP_GREATER", "OP_GREATEREQ", "OP_LESS", "OP_LESSEQ", "OP_TILDE", "OP_CARET", "OP_WILDCARD"]); export const cargoDependencySpecCargoVersionReq = z.object({major: z.string(), minor: z.string().optional(), op: cargoVersionReqOp, patch: z.string().optional(), pre: z.string().optional()}); export const packageVersionDependencyCargoDependencySpec = z.object({cfg: cargoDependencySpecCfg.optional(), features: z.array(z.string()).optional(), kind: cargoDependencySpecDependencyKind, name: z.string(), named: cargoDependencySpecNamedPlatform.optional(), optional: z.boolean(), path: z.string().optional(), registry: z.string().optional(), rename: z.string().optional(), req: z.array(cargoDependencySpecCargoVersionReq).optional(), source: z.string().optional(), targets: z.array(v1Target).optional(), uses_default_features: z.boolean(), version_constraints: z.string()}); export const packageVersionDependencyCocoapodDependencySpec = z.object({name: z.string(), scope: v1DependencyScope.optional(), targets: z.array(v1Target).optional(), version_constraints: z.string().optional()}); export const packageVersionDependencyConanDependencySpec = z.object({name: z.string(), scope: v1DependencyScope.optional(), targets: z.array(v1Target).optional(), version_constraints: z.string().optional()}); export const packageVersionDependencyGemDependencySpec = z.object({name: z.string(), scope_type: packageVersionDependencyGemDependencySpecScope.optional(), targets: z.array(v1Target).optional(), version_constraints: z.string()}); export const gitHubActionDependencySpecGHActionType = z.enum(["GH_ACTION_TYPE_UNSPECIFIED", "GH_ACTION_TYPE_GITHUB_REPO", "GH_ACTION_TYPE_DOCKER", "GH_ACTION_TYPE_INTERNAL"]); export const packageVersionDependencyGitHubActionDependencySpec = z.object({action_type: gitHubActionDependencySpecGHActionType.optional(), name: z.string(), scope: packageVersionDependencyGitHubActionDependencySpecScope.optional(), version: z.string().optional()}); export const packageVersionDependencyGoDependencySpec = z.object({package: z.string(), ref: z.string(), scope_type: packageVersionDependencyGoDependencySpecScope.optional(), targets: z.array(v1Target).optional()}); export const packageVersionDependencyHuggingFaceDependencySpec = z.object({name: z.string(), version: z.string().optional()}); export const packageVersionDependencyMavenDependencySpec = z.object({artifact_id: z.string(), classifier: z.string().optional(), exclusions: z.string().optional(), group_id: z.string(), optional: z.boolean().optional(), scope: z.string().optional(), scope_type: packageVersionDependencyMavenDependencySpecScope.optional(), targets: z.array(v1Target).optional(), type: z.string().optional(), version_constraints: z.string()}); export const packageVersionDependencyNpmDependencySpec = z.object({name: z.string(), scope: packageVersionDependencyNpmDependencySpecScope.optional(), targets: z.array(v1Target).optional(), version: z.string().optional(), version_constraint: z.string().optional()}); export const packageVersionDependencyNugetDependencySpec = z.object({name: z.string(), scope: v1DependencyScope.optional(), targets: z.array(v1Target).optional(), version_constraints: z.string().optional()}); export const packageVersionDependencyPackagistDependencySpec = z.object({name: z.string(), scope_type: packageVersionDependencyPackagistDependencySpecScope.optional(), targets: z.array(v1Target).optional(), version_constraints: z.string()}); export const packageVersionDependencyPypiDependencySpecPackageManagerType = z.enum(["PACKAGE_MANAGER_TYPE_UNSPECIFIED", "PACKAGE_MANAGER_TYPE_PIP", "PACKAGE_MANAGER_TYPE_PIPENV", "PACKAGE_MANAGER_TYPE_POETRY", "PACKAGE_MANAGER_TYPE_PDM", "PACKAGE_MANAGER_TYPE_UV"]); export const packageVersionDependencyPypiDependencySpec = z.object({name: z.string(), package_manager_type: packageVersionDependencyPypiDependencySpecPackageManagerType.optional(), scope_type: packageVersionDependencyPypiDependencySpecScope.optional(), targets: z.array(v1Target).optional(), version_constraints: z.string()}); export const packageVersionDependencySwiftDependencySpecRange = z.object({lower_bound: z.string().min(1), upper_bound: z.string().min(1)}); export const packageVersionDependencySwiftDependencySpec = z.object({branch: z.string().min(1), exact: z.string().min(1), name: z.string().min(1), range: packageVersionDependencySwiftDependencySpecRange, revision: z.string().min(1), scope: v1DependencyScope.optional(), targets: z.array(v1Target).optional()}); export const v1PackageVersionDependency = z.object({c: packageVersionDependencyUnresolvedDependencySpec.optional(), cargo: packageVersionDependencyCargoDependencySpec.optional(), cocoapod: packageVersionDependencyCocoapodDependencySpec.optional(), conan: packageVersionDependencyConanDependencySpec.optional(), gem: packageVersionDependencyGemDependencySpec.optional(), githubaction: packageVersionDependencyGitHubActionDependencySpec.optional(), go: packageVersionDependencyGoDependencySpec.optional(), hugging_face: packageVersionDependencyHuggingFaceDependencySpec.optional(), maven: packageVersionDependencyMavenDependencySpec.optional(), npm: packageVersionDependencyNpmDependencySpec.optional(), nuget: packageVersionDependencyNugetDependencySpec.optional(), packagist: packageVersionDependencyPackagistDependencySpec.optional(), pypi: packageVersionDependencyPypiDependencySpec.optional(), swift: packageVersionDependencySwiftDependencySpec.optional()}); export const v1PackageVersionSpec = z.object({bazel_metadata: v1BazelMetadata.optional(), call_graph_available: z.boolean().optional(), code_owners: v1CodeOwnerData.optional(), container_metadata: v1ContainerMetadata.optional(), ecosystem: v1Ecosystem.optional(), internal_reference_key: z.string().optional(), language: v1Language.optional(), package_name: z.string().optional(), precomputed_call_graph_state: v1PrecomputedState.optional(), project_uuid: z.string(), relative_path: z.string().optional(), release_timestamp: z.string().optional(), resolution_errors: packageVersionResolutionErrors.optional(), resolved_dependencies: v1Bom.optional(), source_code_reference: packageVersionSourceCodeReference.optional(), unresolved_dependencies: z.array(v1PackageVersionDependency).optional(), upstream_reference: z.string().optional(), upstream_resolver_version: z.number().int().optional()}); export const v1PackageVersion = z.object({context: v1Context, meta: v1Meta, processing_status: v1ProcessingStatus.optional(), spec: v1PackageVersionSpec, tenant_meta: v1TenantMeta.optional(), uuid: z.string().optional()}); export const malwareRangeMalwareRangeType = z.enum(["MALWARE_RANGE_TYPE_UNSPECIFIED", "MALWARE_RANGE_TYPE_GIT", "MALWARE_RANGE_TYPE_SEMVER", "MALWARE_RANGE_TYPE_ECOSYSTEM"]); export const specMalwareRange = z.object({fixed: z.string().optional(), introduced: z.string().optional(), last_affected: z.string().optional(), osv_id: z.string().optional(), repo: z.string().optional(), type: malwareRangeMalwareRangeType.optional()}); export const specMalwareRanges = z.object({ranges: z.array(specMalwareRange).optional()}); export const specAMFRecord = z.object({detected_on: z.string().optional(), ecosystem: z.string().optional(), id: z.string().optional(), last_updated: z.string().optional(), package_name: z.string().optional(), reasons: z.array(z.string()).optional(), release_date: z.string().optional(), status: z.string().optional(), version: z.string().optional()}); export const v1MalwareAssessmentResultType = z.enum(["MALWARE_ASSESSMENT_RESULT_TYPE_UNSPECIFIED", "MALWARE_ASSESSMENT_RESULT_TYPE_MALICIOUS", "MALWARE_ASSESSMENT_RESULT_TYPE_BENIGN", "MALWARE_ASSESSMENT_RESULT_TYPE_TELEMETRY"]); export const specInternalRecord = z.object({ecosystem: v1Ecosystem.optional(), human_reviewed: z.boolean().optional(), package_name: z.string().optional(), reasons: z.array(z.string()).optional(), result: v1MalwareAssessmentResultType.optional(), version: z.string().optional()}); export const osvPackage = z.object({ecosystem: z.string().optional(), name: z.string().optional(), purl: z.string().optional()}); export const osvEvent = z.object({fixed: z.string().optional(), introduced: z.string().optional(), limit: z.string().optional()}); export const osvRangeType = z.enum(["UNSPECIFIED", "GIT", "SEMVER", "ECOSYSTEM"]); export const osvRange = z.object({events: z.array(osvEvent).optional(), repo: z.string().optional(), type: osvRangeType.optional()}); export const osvAffected = z.object({database_specific: z.object({}).optional(), ecosystem_specific: z.object({}).optional(), package: osvPackage.optional(), ranges: z.array(osvRange).optional(), versions: z.array(z.string()).optional()}); export const osvCredit = z.object({contact: z.array(z.string()).optional(), name: z.string().optional()}); export const osvReferenceType = z.enum(["NONE", "WEB", "ADVISORY", "REPORT", "FIX", "PACKAGE", "ARTICLE"]); export const osvReference = z.object({type: osvReferenceType.optional(), url: z.string().optional()}); export const osvSeverityType = z.enum(["UNSPECIFIED", "CVSS_V3"]); export const osvSeverity = z.object({score: z.string().optional(), type: osvSeverityType.optional()}); export const osvVulnerability = z.object({affected: z.array(osvAffected).optional(), aliases: z.array(z.string()).optional(), credits: z.array(osvCredit).optional(), database_specific: z.object({}).optional(), details: z.string().optional(), id: z.string().optional(), modified: z.string().optional(), package: osvPackage.optional(), published: z.string().optional(), references: z.array(osvReference).optional(), related: z.array(z.string()).optional(), schema_version: z.string().optional(), severity: z.array(osvSeverity).optional(), summary: z.string().optional(), withdrawn: z.string().optional()}); export const specRawMalware = z.object({amf: specAMFRecord.optional(), internal: specInternalRecord.optional(), osv: osvVulnerability.optional()}); export const referenceReferenceType = z.enum(["REFERENCE_TYPE_UNSPECIFIED", "REFERENCE_TYPE_WEB", "REFERENCE_TYPE_ADVISORY", "REFERENCE_TYPE_REPORT", "REFERENCE_TYPE_FIX", "REFERENCE_TYPE_PACKAGE", "REFERENCE_TYPE_ARTICLE"]); export const vulnSpecReference = z.object({type: referenceReferenceType, url: z.string()}); export const specMalwareVersion = z.object({osv_id: z.string().optional(), version: z.string().optional()}); export const v1MalwareSpec = z.object({additional_notes: z.array(z.string()).optional(), advisory_last_updated: z.string().optional(), advisory_published: z.string().optional(), aliases: z.array(z.string()).optional(), auto_promoted: z.boolean().optional(), contested: z.boolean().optional(), contested_date: z.string().optional(), contested_reason: z.string().optional(), contributing_feeds: z.array(specMalwareSource).optional(), cwe_id: z.string().optional(), deletion_exempt: z.boolean().optional(), ecosystem: v1Ecosystem, iocs: z.array(v1MalwareIOCAttribute).optional(), malware_detected_on: z.string().optional(), package_name: z.string(), package_version: v1PackageVersion.optional(), pkg_release_date: z.string().optional(), purl: z.string().optional(), ranges: specMalwareRanges.optional(), raw: specRawMalware.optional(), reasons: z.array(z.string()).optional(), references: z.array(vulnSpecReference).optional(), source: specMalwareSource.optional(), status: z.string().optional(), summary: z.string().optional(), upsert_key: z.string().optional(), version: specMalwareVersion.optional()}); export const v1Malware = z.object({meta: v1Meta, spec: v1MalwareSpec, tenant_meta: v1TenantMeta.optional(), uuid: z.string().optional()}); export const v1CorrectnessAnalyzer = z.enum(["CORRECTNESS_ANALYZER_UNSPECIFIED", "CORRECTNESS_ANALYZER_AI_GEMINI_FLASH_2_5", "CORRECTNESS_ANALYZER_AI_GEMINI_FLASH_2_5_LITE", "CORRECTNESS_ANALYZER_AI_GEMINI_FLASH_LATEST", "CORRECTNESS_ANALYZER_AI_GEMINI_FLASH_LITE_LATEST"]); export const linterCorrectnessAnalysisCodeFix = z.object({file_path: z.string(), line_end: z.number().int(), line_start: z.number().int(), patch: z.string()}); export const v1AIMetaConfidenceLevel = z.enum(["CONFIDENCE_LEVEL_UNSPECIFIED", "CONFIDENCE_LEVEL_CRITICAL", "CONFIDENCE_LEVEL_HIGH", "CONFIDENCE_LEVEL_MEDIUM", "CONFIDENCE_LEVEL_LOW"]); export const v1Correctness = z.enum(["CORRECTNESS_UNSPECIFIED", "CORRECTNESS_TRUE_POSITIVE", "CORRECTNESS_FALSE_POSITIVE", "CORRECTNESS_FALSE_NEGATIVE", "CORRECTNESS_UNKNOWN"]); export const linterCorrectnessAnalysisDataFlowNode = z.object({code_line_num: z.number().int().optional(), code_snippet: z.string().optional(), type: z.string().optional()}); export const v1LinterCorrectnessAnalysis = z.object({analysis_summary: z.string().optional(), analyzer: v1CorrectnessAnalyzer, code_fixes: z.array(linterCorrectnessAnalysisCodeFix).optional(), code_references: z.string().optional(), confidence_level: v1AIMetaConfidenceLevel, content_hash: z.string().optional(), correctness: v1Correctness, data_flow: z.array(linterCorrectnessAnalysisDataFlowNode).optional(), description: z.string().optional(), risk_assessment: z.string().optional(), sanitizers: z.array(z.string()).optional(), security_control: z.string().optional(), security_impact: z.string().optional(), symbols: z.string().optional(), technical_detail: z.string().optional(), version: z.string()}); export const v1SastData = z.object({ai_analyses: z.array(v1LinterCorrectnessAnalysis).optional(), classification: v1FindingClassification.optional(), confidence: z.string().optional(), cwes: z.array(z.string()).optional(), impact: z.string().optional(), languages: z.array(z.string()).optional(), likelihood: z.string().optional(), location: v1SourceLocation.optional(), message: z.string().optional(), references: z.array(z.string()).optional(), rule_id: z.string().optional(), rule_name: z.string().optional(), rule_uuid: z.string().optional(), rule_version: z.string().optional(), tags: z.array(z.string()).optional(), title: z.string().optional()}); export const lLMContextStructuredContent = z.object({data: z.string().optional(), schema: z.object({}).optional()}); export const v1LLMContext = z.object({structured_content: lLMContextStructuredContent.optional(), unstructured_content: z.string().optional()}); export const v1AIMeta = z.object({confidence_justification: z.string().optional(), confidence_level: v1AIMetaConfidenceLevel.optional(), llm_context: v1LLMContext.optional()}); export const pullRequestSecurityReviewResultInfoSecurityReviewCategory = z.enum(["SECURITY_REVIEW_CATEGORY_UNSPECIFIED", "SECURITY_REVIEW_CATEGORY_DEPENDENCY", "SECURITY_REVIEW_CATEGORY_ACCESS_CONTROL", "SECURITY_REVIEW_CATEGORY_API_ENDPOINT", "SECURITY_REVIEW_CATEGORY_DATABASE", "SECURITY_REVIEW_CATEGORY_CRYPTOGRAPHIC", "SECURITY_REVIEW_CATEGORY_PAYMENT_PROCESSING", "SECURITY_REVIEW_CATEGORY_MEMORY_PROTECTION", "SECURITY_REVIEW_CATEGORY_PII_DATA_HANDLING", "SECURITY_REVIEW_CATEGORY_INPUT_VALIDATION", "SECURITY_REVIEW_CATEGORY_INFRASTRUCTURE", "SECURITY_REVIEW_CATEGORY_CI_CD", "SECURITY_REVIEW_CATEGORY_CONFIGURATION", "SECURITY_REVIEW_CATEGORY_NETWORK", "SECURITY_REVIEW_CATEGORY_AI", "SECURITY_REVIEW_CATEGORY_IMPROVEMENT", "SECURITY_REVIEW_CATEGORY_VULNERABILITY", "SECURITY_REVIEW_CATEGORY_BUG"]); export const pullRequestSecurityReviewResultInfoChangeKind = z.enum(["CHANGE_KIND_UNSPECIFIED", "CHANGE_KIND_NEW", "CHANGE_KIND_MODIFIED", "CHANGE_KIND_REMOVED"]); export const pullRequestSecurityReviewResultInfoCodeSnippet = z.object({change_kind: pullRequestSecurityReviewResultInfoChangeKind.optional(), description: z.string().optional(), file: z.string(), impact: z.string().optional(), language: z.string().optional(), line: z.number().int(), line_end: z.number().int().optional(), snippet: z.string().optional()}); export const securityAspectMetricSecurityImpactType = z.enum(["SECURITY_IMPACT_TYPE_UNSPECIFIED", "SECURITY_IMPACT_TYPE_IMPROVEMENT", "SECURITY_IMPACT_TYPE_REGRESSION", "SECURITY_IMPACT_TYPE_NEUTRAL"]); export const v1SecurityReviewFindingData = z.object({ai_meta: v1AIMeta.optional(), category: pullRequestSecurityReviewResultInfoSecurityReviewCategory.optional(), code_snippet: pullRequestSecurityReviewResultInfoCodeSnippet.optional(), justification: z.string().optional(), security_impact_type: securityAspectMetricSecurityImpactType.optional()}); export const specCVSSSeverityLevel = z.enum(["CVSS_SEVERITY_LEVEL_UNSPECIFIED", "CVSS_SEVERITY_LEVEL_NONE", "CVSS_SEVERITY_LEVEL_LOW", "CVSS_SEVERITY_LEVEL_MEDIUM", "CVSS_SEVERITY_LEVEL_HIGH", "CVSS_SEVERITY_LEVEL_CRITICAL"]); export const cVSSV3SeverityLevel = z.enum(["LEVEL_UNSPECIFIED", "LEVEL_NONE", "LEVEL_LOW", "LEVEL_MEDIUM", "LEVEL_HIGH", "LEVEL_CRITICAL"]); export const specAffectedPackage = z.object({cpe: z.string().optional(), cpes: z.array(z.string()).optional(), ecosystem: v1Ecosystem, name: z.string(), purl: z.string().optional()}); export const rangeRangeType = z.enum(["RANGE_TYPE_UNSPECIFIED", "RANGE_TYPE_GIT", "RANGE_TYPE_SEMVER", "RANGE_TYPE_ECOSYSTEM"]); export const specAffectedRange = z.object({fixed: z.string().optional(), introduced: z.string().optional(), last_affected: z.string().optional(), repo: z.string().optional(), type: rangeRangeType.optional()}); export const affectedSource = z.enum(["SOURCE_UNSPECIFIED", "SOURCE_OSV", "SOURCE_ENDOR", "SOURCE_OVAL", "SOURCE_NVD"]); export const vulnSpecAffected = z.object({affected_callpath_uris: z.array(z.string()).optional(), affected_filepaths: z.array(z.string()).optional(), database_specific: z.object({}).optional(), ecosystem_specific: z.object({}).optional(), fix_commits: z.array(z.string()).optional(), has_been_fixed: z.boolean().optional(), maintainer_cvss_level: specCVSSSeverityLevel.optional(), maintainer_severity: cVSSV3SeverityLevel.optional(), package: specAffectedPackage.optional(), ranges: z.array(specAffectedRange).optional(), reachable_by_inclusion: z.boolean().optional(), source: affectedSource.optional(), versions: z.array(z.string()).optional()}); export const vulnSpecCredit = z.object({contact: z.array(z.string()).optional(), name: z.string().optional()}); export const specCVSSV3Severity = z.object({level: cVSSV3SeverityLevel.optional(), score: z.number().optional(), temporal_level: cVSSV3SeverityLevel.optional(), temporal_score: z.number().optional(), temporal_vector: z.string().optional(), vector: z.string().optional()}); export const cVSSV4SeverityV4Level = z.enum(["V4_LEVEL_UNSPECIFIED", "V4_LEVEL_NONE", "V4_LEVEL_LOW", "V4_LEVEL_MEDIUM", "V4_LEVEL_HIGH", "V4_LEVEL_CRITICAL"]); export const specCVSSV4Severity = z.object({base_level: cVSSV4SeverityV4Level.optional(), base_score: z.number().optional(), environmental_level: cVSSV4SeverityV4Level.optional(), environmental_score: z.number().optional(), threat_level: cVSSV4SeverityV4Level.optional(), threat_score: z.number().optional(), vector: z.string().optional()}); export const specEPSSScore = z.object({percentile_score: z.number().optional(), probability_score: z.number().optional()}); export const vulnerabilityComponent = z.object({artifact_id: z.string(), endor_uri: z.array(z.string()).optional(), fixed_versions: z.array(z.string()).optional(), group_id: z.string(), reachable_by_inclusion: z.boolean().optional(), versions_range: z.array(z.string()).optional(), vulnerable_filepath: z.array(z.string()).optional(), vulnerable_versions: z.array(z.string()).optional()}); export const endorv1Vulnerability = z.object({additional_notes: z.string().optional(), component: z.array(vulnerabilityComponent).optional(), cve_description: z.string(), cve_id: z.string(), cve_references: z.array(z.string()).optional(), cvss_score: z.number().optional(), cvss_vector: z.string().optional(), cwe: z.string().optional(), deepdive: z.boolean().optional(), disputed: z.boolean().optional(), ecosystem: z.string(), fix_commit: z.array(z.string()).optional(), last_updated: z.string().optional(), malicious: z.boolean().optional(), nofix: z.boolean().optional(), package_name: z.string(), schema_version: z.string(), withdrawn: z.string().optional()}); export const specEPSSRecord = z.object({cve_id: z.string().optional(), ingestion_time: z.string().optional(), percentile: z.number().optional(), probability: z.number().optional()}); export const specKEVRecord = z.object({cve_id: z.string().optional(), date_added: z.string().optional(), due_date: z.string().optional(), known_ransomware_campaign_use: z.string().optional(), notes: z.string().optional(), product: z.string().optional(), required_action: z.string().optional(), short_description: z.string().optional(), vendor_project: z.string().optional(), vulnerability_name: z.string().optional()}); export const cVSSNodeCpeMatch = z.object({criteria: z.string(), match_criteria_id: z.string(), version_end_excluding: z.string().optional(), version_end_including: z.string().optional(), version_start_excluding: z.string().optional(), version_start_including: z.string().optional(), vulnerable: z.boolean()}); export const configOperator = z.enum(["OPERATOR_UNSPECIFIED", "OPERATOR_AND", "OPERATOR_OR"]); export const configCVSSNode = z.object({cpe_match: z.array(cVSSNodeCpeMatch), negate: z.boolean().optional(), operator: configOperator}); export const rootCveConfig = z.object({negate: z.boolean().optional(), nodes: z.array(configCVSSNode).optional(), operator: configOperator.optional()}); export const rootCveLangString = z.object({lang: z.string(), value: z.string()}); export const cvssDataV2AccessComplexity = z.enum(["ACCESS_COMPLEXITY_UNSPECIFIED", "ACCESS_COMPLEXITY_HIGH", "ACCESS_COMPLEXITY_MEDIUM", "ACCESS_COMPLEXITY_LOW"]); export const v1NVDAttackVector = z.enum(["NVD_ATTACK_VECTOR_UNSPECIFIED", "NVD_ATTACK_VECTOR_NETWORK", "NVD_ATTACK_VECTOR_ADJACENT_NETWORK", "NVD_ATTACK_VECTOR_LOCAL", "NVD_ATTACK_VECTOR_PHYSICAL"]); export const cvssDataV2Auth = z.enum(["AUTH_UNSPECIFIED", "AUTH_MULTIPLE", "AUTH_SINGLE", "AUTH_NONE"]); export const cvssDataV2V2Impact = z.enum(["V2_IMPACT_IMPACT_UNSPECIFIED", "V2_IMPACT_IMPACT_NONE", "V2_IMPACT_IMPACT_PARTIAL", "V2_IMPACT_IMPACT_COMPLETE"]); export const v1NVDRequirement = z.enum(["NVD_REQUIREMENT_UNSPECIFIED", "NVD_REQUIREMENT_LOW", "NVD_REQUIREMENT_MEDIUM", "NVD_REQUIREMENT_HIGH", "NVD_REQUIREMENT_NOT_DEFINED"]); export const cvssDataV2CollateralDamagePotential = z.enum(["COLLATERAL_DAMAGE_POTENTIAL_UNSPECIFIED", "COLLATERAL_DAMAGE_POTENTIAL_NONE", "COLLATERAL_DAMAGE_POTENTIAL_LOW", "COLLATERAL_DAMAGE_POTENTIAL_LOW_MEDIUM", "COLLATERAL_DAMAGE_POTENTIAL_MEDIUM_HIGH", "COLLATERAL_DAMAGE_POTENTIAL_HIGH", "COLLATERAL_DAMAGE_POTENTIAL_NOT_DEFINED"]); export const cvssDataV2Exploitability = z.enum(["EXPLOITABILITY_UNSPECIFIED", "EXPLOITABILITY_UNPROVEN", "EXPLOITABILITY_PROOF_OF_CONCEPT", "EXPLOITABILITY_FUNCTIONAL", "EXPLOITABILITY_HIGH", "EXPLOITABILITY_NOT_DEFINED"]); export const v1NVDRemediationLevel = z.enum(["NVD_REMEDIATION_LEVEL_UNSPECIFIED", "NVD_REMEDIATION_LEVEL_OFFICIAL_FIX", "NVD_REMEDIATION_LEVEL_TEMPORARY_FIX", "NVD_REMEDIATION_LEVEL_WORKAROUND", "NVD_REMEDIATION_LEVEL_UNAVAILABLE", "NVD_REMEDIATION_LEVEL_NOT_DEFINED"]); export const cvssDataV2ReportConfidence = z.enum(["REPORT_CONFIDENCE_UNSPECIFIED", "REPORT_CONFIDENCE_UNCONFIRMED", "REPORT_CONFIDENCE_UNCORROBORATED", "REPORT_CONFIDENCE_CONFIRMED", "REPORT_CONFIDENCE_NOT_DEFINED"]); export const cvssDataV2TargetDistribution = z.enum(["TARGET_DISTRIBUTION_UNSPECIFIED", "TARGET_DISTRIBUTION_NONE", "TARGET_DISTRIBUTION_LOW", "TARGET_DISTRIBUTION_MEDIUM", "TARGET_DISTRIBUTION_HIGH", "TARGET_DISTRIBUTION_NOT_DEFINED"]); export const v1CvssDataV2 = z.object({access_complexity: cvssDataV2AccessComplexity.optional(), access_vector: v1NVDAttackVector.optional(), authentication: cvssDataV2Auth.optional(), availability_impact: cvssDataV2V2Impact.optional(), availability_requirement: v1NVDRequirement.optional(), base_score: z.number(), collateral_damage_potential: cvssDataV2CollateralDamagePotential.optional(), confidentiality_impact: cvssDataV2V2Impact.optional(), confidentiality_requirement: v1NVDRequirement.optional(), environmental_score: z.number().optional(), exploitability: cvssDataV2Exploitability.optional(), integrity_impact: cvssDataV2V2Impact.optional(), integrity_requirement: v1NVDRequirement.optional(), remediation_level: v1NVDRemediationLevel.optional(), report_confidence: cvssDataV2ReportConfidence.optional(), target_distribution: cvssDataV2TargetDistribution.optional(), temporal_score: z.number().optional(), vector_string: z.string(), version: z.string()}); export const v1NVDMetricType = z.enum(["NVD_METRIC_TYPE_UNSPECIFIED", "NVD_METRIC_TYPE_PRIMARY", "NVD_METRIC_TYPE_SECONDARY"]); export const nVDVulnerabilityCvssMetricV2 = z.object({ac_insuf_info: z.boolean().optional(), base_severity: z.string().optional(), cvss_data: v1CvssDataV2, exploitability_score: z.number().optional(), impact_score: z.number().optional(), obtain_all_privilege: z.boolean().optional(), obtain_other_privilege: z.boolean().optional(), obtain_user_privilege: z.boolean().optional(), source: z.string(), type: v1NVDMetricType, user_interaction_required: z.boolean().optional()}); export const v1NVDAttackComplexity = z.enum(["NVD_ATTACK_COMPLEXITY_UNSPECIFIED", "NVD_ATTACK_COMPLEXITY_HIGH", "NVD_ATTACK_COMPLEXITY_LOW"]); export const v1NVDImpact = z.enum(["NVD_IMPACT_UNSPECIFIED", "NVD_IMPACT_NONE", "NVD_IMPACT_LOW", "NVD_IMPACT_HIGH"]); export const v1NVDSeverity = z.enum(["NVD_SEVERITY_UNSPECIFIED", "NVD_SEVERITY_NONE", "NVD_SEVERITY_LOW", "NVD_SEVERITY_MEDIUM", "NVD_SEVERITY_HIGH", "NVD_SEVERITY_CRITICAL"]); export const v1NVDExploitCodeMaturity = z.enum(["NVD_EXPLOIT_CODE_MATURITY_UNSPECIFIED", "NVD_EXPLOIT_CODE_MATURITY_UNPROVEN", "NVD_EXPLOIT_CODE_MATURITY_PROOF_OF_CONCEPT", "NVD_EXPLOIT_CODE_MATURITY_FUNCTIONAL", "NVD_EXPLOIT_CODE_MATURITY_HIGH", "NVD_EXPLOIT_CODE_MATURITY_NOT_DEFINED"]); export const v1NVDModifiedAttackComplexity = z.enum(["NVD_MODIFIED_ATTACK_COMPLEXITY_UNSPECIFIED", "NVD_MODIFIED_ATTACK_COMPLEXITY_HIGH", "NVD_MODIFIED_ATTACK_COMPLEXITY_LOW", "NVD_MODIFIED_ATTACK_COMPLEXITY_NOT_DEFINED"]); export const v1NVDModifiedAttackVector = z.enum(["NVD_MODIFIED_ATTACK_VECTOR_UNSPECIFIED", "NVD_MODIFIED_ATTACK_VECTOR_NETWORK", "NVD_MODIFIED_ATTACK_VECTOR_ADJACENT_NETWORK", "NVD_MODIFIED_ATTACK_VECTOR_LOCAL", "NVD_MODIFIED_ATTACK_VECTOR_PHYSICAL", "NVD_MODIFIED_ATTACK_VECTOR_NOT_DEFINED"]); export const v1NVDModifiedImpact = z.enum(["NVD_MODIFIED_IMPACT_UNSPECIFIED", "NVD_MODIFIED_IMPACT_NONE", "NVD_MODIFIED_IMPACT_LOW", "NVD_MODIFIED_IMPACT_HIGH", "NVD_MODIFIED_IMPACT_NOT_DEFINED"]); export const v1NVDModifiedPrivilegesRequired = z.enum(["NVD_MODIFIED_PRIVILEGES_REQUIRED_UNSPECIFIED", "NVD_MODIFIED_PRIVILEGES_REQUIRED_HIGH", "NVD_MODIFIED_PRIVILEGES_REQUIRED_LOW", "NVD_MODIFIED_PRIVILEGES_REQUIRED_NONE", "NVD_MODIFIED_PRIVILEGES_REQUIRED_NOT_DEFINED"]); export const v1NVDModifiedScope = z.enum(["NVD_MODIFIED_SCOPE_UNSPECIFIED", "NVD_MODIFIED_SCOPE_UNCHANGED", "NVD_MODIFIED_SCOPE_CHANGED", "NVD_MODIFIED_SCOPE_NOT_DEFINED"]); export const v1NVDModifiedUserInteraction = z.enum(["NVD_MODIFIED_USER_INTERACTION_UNSPECIFIED", "NVD_MODIFIED_USER_INTERACTION_NONE", "NVD_MODIFIED_USER_INTERACTION_REQUIRED", "NVD_MODIFIED_USER_INTERACTION_NOT_DEFINED"]); export const v1NVDPrivilegesRequired = z.enum(["NVD_PRIVILEGES_REQUIRED_UNSPECIFIED", "NVD_PRIVILEGES_REQUIRED_HIGH", "NVD_PRIVILEGES_REQUIRED_LOW", "NVD_PRIVILEGES_REQUIRED_NONE"]); export const v1NVDReportConfidence = z.enum(["NVD_REPORT_CONFIDENCE_UNSPECIFIED", "NVD_REPORT_CONFIDENCE_UNKNOWN", "NVD_REPORT_CONFIDENCE_REASONABLE", "NVD_REPORT_CONFIDENCE_CONFIRMED", "NVD_REPORT_CONFIDENCE_NOT_DEFINED"]); export const v1NVDScope = z.enum(["NVD_SCOPE_UNSPECIFIED", "NVD_SCOPE_UNCHANGED", "NVD_SCOPE_CHANGED"]); export const v1NVDUserInteraction = z.enum(["NVD_USER_INTERACTION_UNSPECIFIED", "NVD_USER_INTERACTION_NONE", "NVD_USER_INTERACTION_REQUIRED"]); export const v1CvssDataV30 = z.object({attack_complexity: v1NVDAttackComplexity.optional(), attack_vector: v1NVDAttackVector.optional(), availability_impact: v1NVDImpact.optional(), availability_requirement: v1NVDRequirement.optional(), base_score: z.number(), base_severity: v1NVDSeverity, confidentiality_impact: v1NVDImpact.optional(), confidentiality_requirement: v1NVDRequirement.optional(), environmental_score: z.number().optional(), environmental_severity: v1NVDSeverity.optional(), exploit_code_maturity: v1NVDExploitCodeMaturity.optional(), integrity_impact: v1NVDImpact.optional(), integrity_requirement: v1NVDRequirement.optional(), modified_attack_complexity: v1NVDModifiedAttackComplexity.optional(), modified_attack_vector: v1NVDModifiedAttackVector.optional(), modified_availability_impact: v1NVDModifiedImpact.optional(), modified_confidentiality_impact: v1NVDModifiedImpact.optional(), modified_integrity_impact: v1NVDModifiedImpact.optional(), modified_privileges_required: v1NVDModifiedPrivilegesRequired.optional(), modified_scope: v1NVDModifiedScope.optional(), modified_user_interaction: v1NVDModifiedUserInteraction.optional(), privileges_required: v1NVDPrivilegesRequired.optional(), remediation_level: v1NVDRemediationLevel.optional(), report_confidence: v1NVDReportConfidence.optional(), scope: v1NVDScope.optional(), temporal_score: z.number().optional(), temporal_severity: v1NVDSeverity.optional(), user_interaction: v1NVDUserInteraction.optional(), vector_string: z.string(), version: z.string()}); export const nVDVulnerabilityCvssMetricV30 = z.object({cvss_data: v1CvssDataV30, exploitability_score: z.number().optional(), impact_score: z.number().optional(), source: z.string(), type: v1NVDMetricType}); export const v1CvssDataV31 = z.object({attack_complexity: v1NVDAttackComplexity.optional(), attack_vector: v1NVDAttackVector.optional(), availability_impact: v1NVDImpact.optional(), availability_requirement: v1NVDRequirement.optional(), base_score: z.number(), base_severity: v1NVDSeverity, confidentiality_impact: v1NVDImpact.optional(), confidentiality_requirement: v1NVDRequirement.optional(), environmental_score: z.number().optional(), environmental_severity: v1NVDSeverity.optional(), exploit_code_maturity: v1NVDExploitCodeMaturity.optional(), integrity_impact: v1NVDImpact.optional(), integrity_requirement: v1NVDRequirement.optional(), modified_attack_complexity: v1NVDModifiedAttackComplexity.optional(), modified_attack_vector: v1NVDModifiedAttackVector.optional(), modified_availability_impact: v1NVDModifiedImpact.optional(), modified_confidentiality_impact: v1NVDModifiedScope.optional(), modified_integrity_impact: v1NVDModifiedImpact.optional(), modified_privileges_required: v1NVDModifiedPrivilegesRequired.optional(), modified_scope: v1NVDModifiedScope.optional(), modified_user_interaction: v1NVDModifiedUserInteraction.optional(), privileges_required: v1NVDPrivilegesRequired.optional(), remediation_level: v1NVDRemediationLevel.optional(), report_confidence: v1NVDReportConfidence.optional(), scope: v1NVDScope.optional(), temporal_score: z.number().optional(), temporal_severity: v1NVDSeverity.optional(), user_interaction: v1NVDUserInteraction.optional(), vector_string: z.string(), version: z.string()}); export const nVDVulnerabilityCvssMetricV31 = z.object({cvss_data: v1CvssDataV31, exploitability_score: z.number().optional(), impact_score: z.number().optional(), source: z.string(), type: v1NVDMetricType}); export const v1NVDV40AttackComplexity = z.enum(["NVDV40_ATTACK_COMPLEXITY_UNSPECIFIED", "NVDV40_ATTACK_COMPLEXITY_HIGH", "NVDV40_ATTACK_COMPLEXITY_LOW"]); export const v1NVDV40AttackRequirements = z.enum(["NVDV40_ATTACK_REQUIREMENTS_UNSPECIFIED", "NVDV40_ATTACK_REQUIREMENTS_NONE", "NVDV40_ATTACK_REQUIREMENTS_PRESENT"]); export const v1NVDV40AttackVector = z.enum(["NVDV40_ATTACK_VECTOR_UNSPECIFIED", "NVDV40_ATTACK_VECTOR_NETWORK", "NVDV40_ATTACK_VECTOR_ADJACENT", "NVDV40_ATTACK_VECTOR_LOCAL", "NVDV40_ATTACK_VECTOR_PHYSICAL"]); export const v1NVDV40Automatable = z.enum(["NVDV40_AUTOMATABLE_UNSPECIFIED", "NVDV40_AUTOMATABLE_NO", "NVDV40_AUTOMATABLE_YES", "NVDV40_AUTOMATABLE_NOT_DEFINED"]); export const v1NVDV40Requirement = z.enum(["NVDV40_REQUIREMENT_UNSPECIFIED", "NVDV40_REQUIREMENT_LOW", "NVDV40_REQUIREMENT_MEDIUM", "NVDV40_REQUIREMENT_HIGH", "NVDV40_REQUIREMENT_NOT_DEFINED"]); export const v1NVDV40ExploitMaturity = z.enum(["NVDV40_EXPLOIT_MATURITY_UNSPECIFIED", "NVDV40_EXPLOIT_MATURITY_UNREPORTED", "NVDV40_EXPLOIT_MATURITY_PROOF_OF_CONCEPT", "NVDV40_EXPLOIT_MATURITY_ATTACKED", "NVDV40_EXPLOIT_MATURITY_NOT_DEFINED"]); export const v1NVDV40ModifiedAttackComplexity = z.enum(["NVDV40_MODIFIED_ATTACK_COMPLEXITY_UNSPECIFIED", "NVDV40_MODIFIED_ATTACK_COMPLEXITY_HIGH", "NVDV40_MODIFIED_ATTACK_COMPLEXITY_LOW", "NVDV40_MODIFIED_ATTACK_COMPLEXITY_NOT_DEFINED"]); export const v1NVDV40ModifiedAttackRequirements = z.enum(["NVDV40_MODIFIED_ATTACK_REQUIREMENTS_UNSPECIFIED", "NVDV40_MODIFIED_ATTACK_REQUIREMENTS_NONE", "NVDV40_MODIFIED_ATTACK_REQUIREMENTS_PRESENT", "NVDV40_MODIFIED_ATTACK_REQUIREMENTS_NOT_DEFINED"]); export const v1NVDV40ModifiedAttackVector = z.enum(["NVDV40_MODIFIED_ATTACK_VECTOR_UNSPECIFIED", "NVDV40_MODIFIED_ATTACK_VECTOR_NETWORK", "NVDV40_MODIFIED_ATTACK_VECTOR_ADJACENT", "NVDV40_MODIFIED_ATTACK_VECTOR_LOCAL", "NVDV40_MODIFIED_ATTACK_VECTOR_PHYSICAL", "NVDV40_MODIFIED_ATTACK_VECTOR_NOT_DEFINED"]); export const v1NVDV40ModifiedPrivilegesRequired = z.enum(["NVDV40_MODIFIED_PRIVILEGES_REQUIRED_UNSPECIFIED", "NVDV40_MODIFIED_PRIVILEGES_REQUIRED_HIGH", "NVDV40_MODIFIED_PRIVILEGES_REQUIRED_LOW", "NVDV40_MODIFIED_PRIVILEGES_REQUIRED_NONE", "NVDV40_MODIFIED_PRIVILEGES_REQUIRED_NOT_DEFINED"]); export const v1NVDV40ModifiedSubImpact = z.enum(["NVDV40_MODIFIED_SUB_IMPACT_UNSPECIFIED", "NVDV40_MODIFIED_SUB_IMPACT_NEGLIGIBLE", "NVDV40_MODIFIED_SUB_IMPACT_LOW", "NVDV40_MODIFIED_SUB_IMPACT_HIGH", "NVDV40_MODIFIED_SUB_IMPACT_SAFETY", "NVDV40_MODIFIED_SUB_IMPACT_NOT_DEFINED"]); export const v1NVDV40ModifiedUserInteraction = z.enum(["NVDV40_MODIFIED_USER_INTERACTION_UNSPECIFIED", "NVDV40_MODIFIED_USER_INTERACTION_NONE", "NVDV40_MODIFIED_USER_INTERACTION_PASSIVE", "NVDV40_MODIFIED_USER_INTERACTION_ACTIVE", "NVDV40_MODIFIED_USER_INTERACTION_NOT_DEFINED"]); export const v1NVDV40ModifiedImpact = z.enum(["NVDV40_MODIFIED_IMPACT_UNSPECIFIED", "NVDV40_MODIFIED_IMPACT_NONE", "NVDV40_MODIFIED_IMPACT_LOW", "NVDV40_MODIFIED_IMPACT_HIGH", "NVDV40_MODIFIED_IMPACT_NOT_DEFINED"]); export const v1NVDV40PrivilegesRequired = z.enum(["NVDV40_PRIVILEGES_REQUIRED_UNSPECIFIED", "NVDV40_PRIVILEGES_REQUIRED_HIGH", "NVDV40_PRIVILEGES_REQUIRED_LOW", "NVDV40_PRIVILEGES_REQUIRED_NONE"]); export const v1NVDV40ProviderUrgency = z.enum(["NVDV40_PROVIDER_URGENCY_UNSPECIFIED", "NVDV40_PROVIDER_URGENCY_CLEAR", "NVDV40_PROVIDER_URGENCY_GREEN", "NVDV40_PROVIDER_URGENCY_AMBER", "NVDV40_PROVIDER_URGENCY_RED", "NVDV40_PROVIDER_URGENCY_NOT_DEFINED"]); export const v1NVDV40Recovery = z.enum(["NVDV40_RECOVERY_UNSPECIFIED", "NVDV40_RECOVERY_AUTOMATIC", "NVDV40_RECOVERY_USER", "NVDV40_RECOVERY_IRRECOVERABLE", "NVDV40_RECOVERY_NOT_DEFINED"]); export const v1NVDV40Safety = z.enum(["NVDV40_SAFETY_UNSPECIFIED", "NVDV40_SAFETY_NEGLIGIBLE", "NVDV40_SAFETY_PRESENT", "NVDV40_SAFETY_NOT_DEFINED"]); export const v1NVDV40Impact = z.enum(["NVDV40_IMPACT_UNSPECIFIED", "NVDV40_IMPACT_NONE", "NVDV40_IMPACT_LOW", "NVDV40_IMPACT_HIGH"]); export const v1NVDV40UserInteraction = z.enum(["NVDV40_USER_INTERACTION_UNSPECIFIED", "NVDV40_USER_INTERACTION_NONE", "NVDV40_USER_INTERACTION_PASSIVE", "NVDV40_USER_INTERACTION_ACTIVE"]); export const v1NVDV40ValueDensity = z.enum(["NVDV40_VALUE_DENSITY_UNSPECIFIED", "NVDV40_VALUE_DENSITY_DIFFUSE", "NVDV40_VALUE_DENSITY_CONCENTRATED", "NVDV40_VALUE_DENSITY_NOT_DEFINED"]); export const v1NVDV40VulnerabilityResponseEffort = z.enum(["NVDV40_VULNERABILITY_RESPONSE_EFFORT_UNSPECIFIED", "NVDV40_VULNERABILITY_RESPONSE_EFFORT_LOW", "NVDV40_VULNERABILITY_RESPONSE_EFFORT_MODERATE", "NVDV40_VULNERABILITY_RESPONSE_EFFORT_HIGH", "NVDV40_VULNERABILITY_RESPONSE_EFFORT_NOT_DEFINED"]); export const v1CvssDataV40 = z.object({attack_complexity: v1NVDV40AttackComplexity.optional(), attack_requirements: v1NVDV40AttackRequirements.optional(), attack_vector: v1NVDV40AttackVector.optional(), automatable: v1NVDV40Automatable.optional(), availability_requirement: v1NVDV40Requirement.optional(), base_score: z.number(), base_severity: v1NVDSeverity, confidentiality_requirement: v1NVDV40Requirement.optional(), environmental_score: z.number().optional(), environmental_severity: v1NVDSeverity.optional(), exploit_maturity: v1NVDV40ExploitMaturity.optional(), integrity_requirement: v1NVDV40Requirement.optional(), modified_attack_complexity: v1NVDV40ModifiedAttackComplexity.optional(), modified_attack_requirements: v1NVDV40ModifiedAttackRequirements.optional(), modified_attack_vector: v1NVDV40ModifiedAttackVector.optional(), modified_privileges_required: v1NVDV40ModifiedPrivilegesRequired.optional(), modified_sub_availability_impact: v1NVDV40ModifiedSubImpact.optional(), modified_sub_confidentiality_impact: v1NVDV40ModifiedSubImpact.optional(), modified_sub_integrity_impact: v1NVDV40ModifiedSubImpact.optional(), modified_user_interaction: v1NVDV40ModifiedUserInteraction.optional(), modified_vuln_availability_impact: v1NVDV40ModifiedImpact.optional(), modified_vuln_confidentiality_impact: v1NVDV40ModifiedImpact.optional(), modified_vuln_integrity_impact: v1NVDV40ModifiedImpact.optional(), privileges_required: v1NVDV40PrivilegesRequired.optional(), provider_urgency: v1NVDV40ProviderUrgency.optional(), recovery: v1NVDV40Recovery.optional(), safety: v1NVDV40Safety.optional(), sub_availability_impact: v1NVDV40Impact.optional(), sub_confidentiality_impact: v1NVDV40Impact.optional(), sub_integrity_impact: v1NVDV40Impact.optional(), threat_score: z.number().optional(), threat_severity: v1NVDSeverity.optional(), user_interaction: v1NVDV40UserInteraction.optional(), value_density: v1NVDV40ValueDensity.optional(), vector_string: z.string(), version: z.string(), vuln_availability_impact: v1NVDV40Impact.optional(), vuln_confidentiality_impact: v1NVDV40Impact.optional(), vuln_integrity_impact: v1NVDV40Impact.optional(), vulnerability_response_effort: v1NVDV40VulnerabilityResponseEffort.optional()}); export const nVDVulnerabilityCvssMetricV40 = z.object({cvss_data: v1CvssDataV40, exploitability_score: z.number().optional(), impact_score: z.number().optional(), source: z.string(), type: v1NVDMetricType}); export const rootCveCVSSMetric = z.object({cvss_metric_v2: z.array(nVDVulnerabilityCvssMetricV2).optional(), cvss_metric_v30: z.array(nVDVulnerabilityCvssMetricV30).optional(), cvss_metric_v31: z.array(nVDVulnerabilityCvssMetricV31).optional(), cvss_metric_v40: z.array(nVDVulnerabilityCvssMetricV40).optional()}); export const nVDVulnerabilityRootCveReference = z.object({source: z.string().optional(), tags: z.array(z.string()).optional(), url: z.string()}); export const rootCveVendorComment = z.object({comment: z.string(), last_modified: z.string(), organization: z.string()}); export const v1NVDStatus = z.enum(["NVD_STATUS_UNSPECIFIED", "NVD_STATUS_RECEIVED", "NVD_STATUS_AWAITING_ANALYSIS", "NVD_STATUS_UNDERGOING_ANALYSIS", "NVD_STATUS_ANALYZED", "NVD_STATUS_MODIFIED", "NVD_STATUS_DEFERRED", "NVD_STATUS_REJECTED"]); export const rootCveWeakness = z.object({description: z.array(rootCveLangString), source: z.string(), type: z.string()}); export const nVDVulnerabilityRootCve = z.object({cisa_action_due: z.string().optional(), cisa_exploit_add: z.string().optional(), cisa_required_action: z.string().optional(), cisa_vulnerability_name: z.string().optional(), configurations: z.array(rootCveConfig).optional(), descriptions: z.array(rootCveLangString), evaluator_comment: z.string().optional(), evaluator_impact: z.string().optional(), evaluator_solution: z.string().optional(), id: z.string(), last_modified: z.string(), metrics: rootCveCVSSMetric.optional(), published: z.string(), references: z.array(nVDVulnerabilityRootCveReference), source_identifier: z.string().optional(), vendor_comments: z.array(rootCveVendorComment).optional(), vuln_status: z.string().optional(), vuln_typed_status: v1NVDStatus.optional(), weaknesses: z.array(rootCveWeakness).optional()}); export const v1NVDVulnerability = z.object({cve: nVDVulnerabilityRootCve.optional()}); export const specRaw = z.object({endor_vulnerability: endorv1Vulnerability.optional(), epss_record: specEPSSRecord.optional(), kev_record: specKEVRecord.optional(), nvd_vulnerability: v1NVDVulnerability.optional(), osv_vulnerability: osvVulnerability.optional()}); export const v1VulnSpec = z.object({additional_endor_notes: z.array(z.string()).optional(), additional_notes: z.array(z.string()).optional(), affected: z.array(vulnSpecAffected).optional(), aliases: z.array(z.string()).optional(), credits: z.array(vulnSpecCredit).optional(), cvss_v3_severity: specCVSSV3Severity.optional(), cvss_v4_severity: specCVSSV4Severity.optional(), database_specific: z.object({}).optional(), deepdive: z.boolean().optional(), disputed: z.boolean().optional(), epss_score: specEPSSScore.optional(), malicious: z.boolean().optional(), modified: z.string().optional(), published: z.string().optional(), raw: specRaw.optional(), references: z.array(vulnSpecReference).optional(), related: z.array(z.string()).optional(), summary: z.string().optional(), upstream: z.array(z.string()).optional(), withdrawn: z.string().optional()}); export const v1Vuln = z.object({meta: v1Meta, spec: v1VulnSpec.optional(), tenant_meta: v1TenantMeta.optional(), uuid: z.string().optional()}); export const v1FindingMetadata = z.object({ai_sast_data: aIResultSAST.optional(), ci_blocking_policy_info: v1FindingPolicyInfo.optional(), container_data: v1FindingContainerData.optional(), custom: z.unknown(), cvss_version: specCVSSVersion.optional(), dependency_package_version_metadata: v1PackageVersionMetadata.optional(), dependency_score_card: v1ScoreCard.optional(), dependency_score_factor_list: v1ScoreFactorList.optional(), malware: v1Malware.optional(), root_package_resolved_dependencies: v1Bom.optional(), root_package_score_card: v1ScoreCard.optional(), root_package_score_factor_list: v1ScoreFactorList.optional(), root_package_version_metadata: v1PackageVersionMetadata.optional(), sast_data: v1SastData.optional(), security_review_data: v1SecurityReviewFindingData.optional(), source_policy_info: v1FindingPolicyInfo.optional(), typosquatted_dependency_version_metadata: v1PackageVersionMetadata.optional(), vulnerability: v1Vuln.optional()}); export const v1FindingTags = z.enum(["FINDING_TAGS_UNSPECIFIED", "FINDING_TAGS_DIRECT", "FINDING_TAGS_TRANSITIVE", "FINDING_TAGS_PROJECT_INTERNAL", "FINDING_TAGS_NAMESPACE_INTERNAL", "FINDING_TAGS_REACHABLE_DEPENDENCY", "FINDING_TAGS_UNREACHABLE_DEPENDENCY", "FINDING_TAGS_POTENTIALLY_REACHABLE_DEPENDENCY", "FINDING_TAGS_REACHABLE_FUNCTION", "FINDING_TAGS_UNREACHABLE_FUNCTION", "FINDING_TAGS_POTENTIALLY_REACHABLE_FUNCTION", "FINDING_TAGS_FIXABLE", "FINDING_TAGS_UNFIXABLE", "FINDING_TAGS_PRODUCTION", "FINDING_TAGS_TEST", "FINDING_TAGS_NORMAL", "FINDING_TAGS_FIX_AVAILABLE", "FINDING_TAGS_SELF", "FINDING_TAGS_POLICY", "FINDING_TAGS_CI_BLOCKER", "FINDING_TAGS_VALID_SECRET", "FINDING_TAGS_INVALID_SECRET", "FINDING_TAGS_PATH_EXTERNAL", "FINDING_TAGS_MALWARE", "FINDING_TAGS_UNDER_REVIEW", "FINDING_TAGS_PHANTOM", "FINDING_TAGS_EXCEPTION", "FINDING_TAGS_CI_WARNING", "FINDING_TAGS_NOTIFICATION", "FINDING_TAGS_EXPLOITED", "FINDING_TAGS_DISPUTED", "FINDING_TAGS_WITHDRAWN", "FINDING_TAGS_FALSE_POSITIVE", "FINDING_TAGS_TRUE_POSITIVE", "FINDING_TAGS_SNOOZED", "FINDING_TAGS_AI", "FINDING_TAGS_IGNORED", "FINDING_TAGS_SEGMENT_MATCH", "FINDING_TAGS_REACHABLE_BY_INCLUSION", "FINDING_TAGS_POTENTIALLY_VALID_SECRET", "FINDING_TAGS_INFERRED"]); export const v1FindingFixingPatch = z.object({endor_patch_available: z.boolean().optional()}); export const findingFixingUpgradesUpgradeInfo = z.object({direct_dependency_name: z.string().optional(), from_version: z.string().optional(), package_name: z.string().optional(), to_version: z.string().optional(), upgrade_risk: z.string().optional()}); export const v1FindingFixingUpgrades = z.object({upgrade_list: z.array(findingFixingUpgradesUpgradeInfo).optional()}); export const v1ExceptionReason = z.enum(["EXCEPTION_REASON_UNSPECIFIED", "EXCEPTION_REASON_FALSE_POSITIVE", "EXCEPTION_REASON_RISK_ACCEPTED", "EXCEPTION_REASON_IN_TRIAGE", "EXCEPTION_REASON_OTHER", "EXCEPTION_REASON_RESOLVED", "EXCEPTION_REASON_PRESENT_IN_BASELINE"]); export const v1DismissSource = z.enum(["DISMISS_SOURCE_UNSPECIFIED", "DISMISS_SOURCE_CONTAINER_DIFF"]); export const v1DismissParams = z.object({comments: z.string().optional(), entry_id: z.string().optional(), expiration_time: z.string().optional(), expire_if_fix_available: z.boolean().optional(), file_name: z.string().optional(), reason: v1ExceptionReason.optional(), source: v1DismissSource.optional(), update_time: z.string().optional(), updated_by: z.string().optional()}); export const specFindingLevel = z.enum(["FINDING_LEVEL_UNSPECIFIED", "FINDING_LEVEL_CRITICAL", "FINDING_LEVEL_HIGH", "FINDING_LEVEL_MEDIUM", "FINDING_LEVEL_LOW"]); export const v1SystemEvaluationMethodDefinition = z.enum(["SYSTEM_EVALUATION_METHOD_DEFINITION_UNSPECIFIED", "SYSTEM_EVALUATION_METHOD_DEFINITION_VULNERABILITIES", "SYSTEM_EVALUATION_METHOD_DEFINITION_SCORES", "SYSTEM_EVALUATION_METHOD_DEFINITION_CONDITIONS", "SYSTEM_EVALUATION_METHOD_DEFINITION_POLICIES", "SYSTEM_EVALUATION_METHOD_DEFINITION_TYPOSQUATTING", "SYSTEM_EVALUATION_METHOD_DEFINITION_CIS", "SYSTEM_EVALUATION_METHOD_DEFINITION_MALWARE", "SYSTEM_EVALUATION_METHOD_DEFINITION_SECURITY_REVIEW", "SYSTEM_EVALUATION_METHOD_DEFINITION_AI_SAST"]); export const nodeFunctionRef = z.object({args: z.array(z.string()).optional(), classname: z.string().optional(), declared_type: z.string().optional(), function_or_attribute_name: z.string().optional(), language: z.string().optional(), language_specific: z.string().optional(), namespace: z.string().optional(), product: z.string().optional(), registry: z.string().optional(), return_type: z.string().optional(), signature: z.string().optional(), version: z.string().optional()}); export const pathNode = z.object({function_ref: nodeFunctionRef.optional(), internal: z.boolean().optional(), package_version: z.string().optional()}); export const findingSpecPath = z.object({nodes: z.array(pathNode).optional()}); export const v1FindingRemediation = z.enum(["FINDING_REMEDIATION_UNSPECIFIED", "FINDING_REMEDIATION_UPGRADE", "FINDING_REMEDIATION_DOWNGRADE", "FINDING_REMEDIATION_REPLACE", "FINDING_REMEDIATION_REMOVE", "FINDING_REMEDIATION_VENDOR", "FINDING_REMEDIATION_IMPROVE", "FINDING_REMEDIATION_REIMPLEMENT", "FINDING_REMEDIATION_REVIEW", "FINDING_REMEDIATION_NOTIFICATION", "FINDING_REMEDIATION_PIN"]); export const v1FindingSpec = z.object({actions: v1Actions.optional(), approximation: z.boolean().optional(), call_graph_analysis_type: v1CallGraphAnalysisType.optional(), code_owners: v1CodeOwnerData.optional(), dependency_file_paths: z.array(z.string()).optional(), dismiss: z.boolean().optional(), ecosystem: v1Ecosystem.optional(), exceptions: v1Exceptions.optional(), explanation: z.string().optional(), extra_key: z.string(), finding_categories: z.array(v1FindingCategory).optional(), finding_metadata: v1FindingMetadata.optional(), finding_tags: z.array(v1FindingTags), fixing_patch: v1FindingFixingPatch.optional(), fixing_upgrades: v1FindingFixingUpgrades.optional(), ignore: v1DismissParams.optional(), last_processed: z.string(), latest_version: z.string().optional(), level: specFindingLevel, location_urls: z.record(z.string(), z.string()).optional(), method: v1SystemEvaluationMethodDefinition.optional(), project_uuid: z.string(), proposed_version: z.string().optional(), reachable_paths: z.array(findingSpecPath).optional(), relationship: z.string().optional(), remediation: z.string().optional(), remediation_action: v1FindingRemediation.optional(), snooze: v1DismissParams.optional(), source_code_version: v1Version.optional(), summary: z.string(), target_dependency_name: z.string().optional(), target_dependency_native_scope: z.string().optional(), target_dependency_package_name: z.string().optional(), target_dependency_version: z.string().optional(), target_uuid: z.string()}); export const v1Finding = z.object({context: v1Context, meta: v1Meta, spec: v1FindingSpec, tenant_meta: v1TenantMeta.optional(), uuid: z.string().optional()}); export const v1ListResponse = z.object({next_page_id: z.string().optional(), next_page_token: z.number().int().optional()}); export const v1ListFindingsResponseList = z.object({objects: z.array(v1Finding).optional(), response: v1ListResponse.optional()}); export const v1ListFindingsResponse = z.object({count_response: v1CountResponse.optional(), group_response: v1GroupResponse.optional(), list: v1ListFindingsResponseList.optional()}); export const validateResponse = async ( schema: { readonly '~standard': { readonly validate: (value: unknown) => ({ readonly value: Output; readonly issues?: undefined } | { readonly issues: ReadonlyArray<{ readonly message: string; readonly path?: ReadonlyArray | undefined }> }) | Promise<{ readonly value: Output; readonly issues?: undefined } | { readonly issues: ReadonlyArray<{ readonly message: string; readonly path?: ReadonlyArray | undefined }> }> } }, value: unknown ): Promise => { const result = await schema['~standard'].validate(value) if (result.issues !== undefined) { const detail = result.issues .map(({ message, path }) => path?.length ? `${path.map((segment) => String(typeof segment === 'object' ? segment.key : segment)).join('.')}: ${message}` : message ) .join('; ') throw new Error(`Response does not match the schema: ${detail}`, { cause: { issues: result.issues } }) } return result.value }; /** * ListFindings * * GET /v1/namespaces/{tenant_meta.namespace}/findings */ export const getApiV1NamespacesTenantMetaNamespaceFindings = async (args: GetApiV1NamespacesTenantMetaNamespaceFindingsArgs, options?: GetApiV1NamespacesTenantMetaNamespaceFindingsOptions) => { const {baseUrl = "https://api.endorlabs.com", fetch: fetchFn = fetch} = options ?? {} const query = new URLSearchParams() const headers = new Headers() headers.set('accept', "application/json") if (args['list_parameters.filter'] != null) query.append("list_parameters.filter", String(args['list_parameters.filter'])) if (args['list_parameters.page_token'] != null) query.append("list_parameters.page_token", String(args['list_parameters.page_token'])) if (args['list_parameters.page_size'] != null) query.append("list_parameters.page_size", String(args['list_parameters.page_size'])) if (args['list_parameters.action'] != null) query.append("list_parameters.action", String(args['list_parameters.action'])) if (args['list_parameters.mask'] != null) query.append("list_parameters.mask", String(args['list_parameters.mask'])) if (args['list_parameters.traverse'] != null) query.append("list_parameters.traverse", String(args['list_parameters.traverse'])) if (args['list_parameters.sort.path'] != null) query.append("list_parameters.sort.path", String(args['list_parameters.sort.path'])) if (args['list_parameters.sort.order'] != null) query.append("list_parameters.sort.order", String(args['list_parameters.sort.order'])) if (args['list_parameters.count'] != null) query.append("list_parameters.count", String(args['list_parameters.count'])) if (args['list_parameters.group.aggregation_paths'] != null) query.append("list_parameters.group.aggregation_paths", String(args['list_parameters.group.aggregation_paths'])) if (args['list_parameters.group.show_aggregation_uuids'] != null) query.append("list_parameters.group.show_aggregation_uuids", String(args['list_parameters.group.show_aggregation_uuids'])) if (args['list_parameters.group.unique_count_paths'] != null) query.append("list_parameters.group.unique_count_paths", String(args['list_parameters.group.unique_count_paths'])) if (args['list_parameters.group.unique_value_paths'] != null) query.append("list_parameters.group.unique_value_paths", String(args['list_parameters.group.unique_value_paths'])) if (args['list_parameters.ci_run_uuid'] != null) query.append("list_parameters.ci_run_uuid", String(args['list_parameters.ci_run_uuid'])) if (args['list_parameters.page_id'] != null) query.append("list_parameters.page_id", String(args['list_parameters.page_id'])) if (args['list_parameters.group_by_time.aggregation_paths'] != null) query.append("list_parameters.group_by_time.aggregation_paths", String(args['list_parameters.group_by_time.aggregation_paths'])) if (args['list_parameters.group_by_time.show_aggregation_uuids'] != null) query.append("list_parameters.group_by_time.show_aggregation_uuids", String(args['list_parameters.group_by_time.show_aggregation_uuids'])) if (args['list_parameters.group_by_time.interval'] != null) query.append("list_parameters.group_by_time.interval", String(args['list_parameters.group_by_time.interval'])) if (args['list_parameters.group_by_time.group_size'] != null) query.append("list_parameters.group_by_time.group_size", String(args['list_parameters.group_by_time.group_size'])) if (args['list_parameters.group_by_time.start_time'] != null) query.append("list_parameters.group_by_time.start_time", String(args['list_parameters.group_by_time.start_time'])) if (args['list_parameters.group_by_time.end_time'] != null) query.append("list_parameters.group_by_time.end_time", String(args['list_parameters.group_by_time.end_time'])) if (args['list_parameters.group_by_time.mode'] != null) query.append("list_parameters.group_by_time.mode", String(args['list_parameters.group_by_time.mode'])) if (args['list_parameters.group_by_time.aggregation_value_field'] != null) query.append("list_parameters.group_by_time.aggregation_value_field", String(args['list_parameters.group_by_time.aggregation_value_field'])) if (args['list_parameters.group_by_time.aggregation_operator'] != null) query.append("list_parameters.group_by_time.aggregation_operator", String(args['list_parameters.group_by_time.aggregation_operator'])) if (args['list_parameters.disable_pagination'] != null) query.append("list_parameters.disable_pagination", String(args['list_parameters.disable_pagination'])) const url = `${baseUrl.replace(/\/+$/, '')}/v1/namespaces/${encodeURIComponent(String(args['tenant_meta.namespace']))}/findings${query.size > 0 ? `?${query}` : ''}` const res = await fetchFn(url, {method: "GET", headers}) if (!res.ok) throw new Error(`Request failed with status ${res.status}`, {cause: {status: res.status, body: await res.text()}}) return validateResponse(v1ListFindingsResponse, await res.json()) };