#ifndef CHROME_BROWSER_EXTENSIONS_API_AUTOFILL_PRIVATE_AUTOFILL_UTIL_H_
#define CHROME_BROWSER_EXTENSIONS_API_AUTOFILL_PRIVATE_AUTOFILL_UTIL_H_
#include <map>
#include <memory>
#include <optional>
#include "base/functional/callback_forward.h"
#include "chrome/common/extensions/api/autofill_private.h"
#include "components/autofill/core/browser/personal_data_manager.h"
#include "components/device_reauth/device_authenticator.h"
namespace extensions {
namespace autofill_util {
AddressEntryList;
CountryEntryList;
CreditCardEntryList;
IbanEntryList;
CallbackAfterSuccessfulUserAuth;
AddressEntryList GenerateAddressList(
const autofill::PersonalDataManager& personal_data);
CountryEntryList GenerateCountryList(
const autofill::PersonalDataManager& personal_data,
bool for_account_address_profile);
CreditCardEntryList GenerateCreditCardList(
const autofill::PersonalDataManager& personal_data);
IbanEntryList GenerateIbanList(
const autofill::PersonalDataManager& personal_data);
std::optional<api::autofill_private::AccountInfo> GetAccountInfo(
const autofill::PersonalDataManager& personal_data);
api::autofill_private::CreditCardEntry CreditCardToCreditCardEntry(
const autofill::CreditCard& credit_card,
const autofill::PersonalDataManager& personal_data,
bool mask_local_cards);
}
}
#endif