// Copyright 2026 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

edition = "2023";

package optimization_guide.proto;

import "components/optimization_guide/proto/model_quality_metadata.proto";

option optimize_for = LITE_RUNTIME;
option java_package = "org.chromium.components.optimization_guide.features.proto";

option java_outer_classname = "GeminiAntiscamProtectionProto";

// DO NOT EDIT THIS FILE DIRECTLY!
//
// This file is generated in g3 and then synced to Chrome. Instead, please refer to
// http://go/chrome-mqls-onboarding (Google-internal link), and then changes will
// be synced with Chrome automatically.

message GeminiAntiscamProtectionLoggingData {
  GeminiAntiscamProtectionRequest request = 1 [features = { field_presence: EXPLICIT }];

  GeminiAntiscamProtectionResponse response = 2 [features = { field_presence: EXPLICIT }];

  ModelExecutionInfo model_execution_info = 3 [features = { field_presence: EXPLICIT }];

  GeminiAntiscamProtectionMetadata metadata = 4 [features = { field_presence: EXPLICIT }];
}

message GeminiAntiscamProtectionRequest {
  string url = 1 [features = { field_presence: EXPLICIT }];

  string page_content = 2 [features = { field_presence: EXPLICIT }];
}

message GeminiAntiscamProtectionResponse {
  float scam_score = 1 [features = { field_presence: EXPLICIT }];

  string content_category = 2 [features = { field_presence: EXPLICIT }];

  string justification = 3 [features = { field_presence: EXPLICIT }];
}

message GeminiAntiscamProtectionMetadata {
  bool page_contains_financial_fields = 1 [features = { field_presence: EXPLICIT }];

  bool page_contains_password_field = 2 [features = { field_presence: EXPLICIT }];

  bool page_contains_identity_fields = 3 [features = { field_presence: EXPLICIT }];
}
