chromium/components/autofill/core/browser/autofill_trigger_details.h

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

#ifndef COMPONENTS_AUTOFILL_CORE_BROWSER_AUTOFILL_TRIGGER_DETAILS_H_
#define COMPONENTS_AUTOFILL_CORE_BROWSER_AUTOFILL_TRIGGER_DETAILS_H_

#include "components/autofill/core/browser/autofill_type.h"

namespace autofill {

// Specifies the source that triggered autofilling a form. Differently from
// `AutofillSuggestionTriggerSource` this enum does not mean the action that
// triggered autofill (for example
// AutofillSuggestionTriggerSource::kFormControlElementClicked) but only the
// internal surface that provided the autofill experience (like `kPopup`) or
// internal mechanisms/business logic (like kSelectOptionsChanged). For example
// AutofillSuggestionTriggerSource::kFormControlElementClicked "action" can lead
// autofill to be "surfaced" from `kPopup` or `kFastCheckout`.
enum class AutofillTriggerSource {};

// Holds the details about a filling operation. The `trigger_source` field
// defines what triggered the autofill experience, i.e kFastCheckout or kPopup.
// The `field_types_to_fill` specifies which fields Autofill is going to take
// into account when filling the form.
struct AutofillTriggerDetails {};

}  // namespace autofill

#endif  // COMPONENTS_AUTOFILL_CORE_BROWSER_AUTOFILL_TRIGGER_DETAILS_H_