#ifndef COMPONENTS_AUTOFILL_CORE_BROWSER_PAYMENTS_PAYMENTS_NETWORK_INTERFACE_H_
#define COMPONENTS_AUTOFILL_CORE_BROWSER_PAYMENTS_PAYMENTS_NETWORK_INTERFACE_H_
#include <memory>
#include <optional>
#include <set>
#include <string>
#include <unordered_map>
#include <utility>
#include <vector>
#include "base/memory/raw_ptr.h"
#include "base/memory/ref_counted.h"
#include "base/memory/scoped_refptr.h"
#include "base/memory/weak_ptr.h"
#include "base/values.h"
#include "build/build_config.h"
#include "components/autofill/core/browser/data_model/autofill_profile.h"
#include "components/autofill/core/browser/data_model/credit_card.h"
#include "components/autofill/core/browser/payments/autofill_error_dialog_context.h"
#include "components/autofill/core/browser/payments/card_unmask_challenge_option.h"
#include "components/autofill/core/browser/payments/card_unmask_delegate.h"
#include "components/autofill/core/browser/payments/client_behavior_constants.h"
#include "components/autofill/core/browser/payments/payments_autofill_client.h"
#include "components/autofill/core/browser/payments/payments_network_interface_base.h"
#include "components/autofill/core/browser/payments/payments_window_manager.h"
#include "components/autofill/core/browser/payments/virtual_card_enrollment_flow.h"
#include "google_apis/gaia/google_service_auth_error.h"
#include "url/origin.h"
namespace signin {
class IdentityManager;
}
namespace network {
class SharedURLLoaderFactory;
}
namespace autofill {
class AccountInfoGetter;
#if !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_IOS)
class MigratableCreditCard;
#endif
namespace payments {
GetCardUploadDetailsCallback;
#if !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_IOS)
MigrateCardsCallback;
#endif
inline constexpr int kUnmaskPaymentMethodBillableServiceNumber = …;
inline constexpr int kUploadPaymentMethodBillableServiceNumber = …;
inline constexpr int kMigrateCardsBillableServiceNumber = …;
class PaymentsNetworkInterface : public PaymentsNetworkInterfaceBase { … };
}
}
#endif