#ifndef CHROME_BROWSER_UI_AUTOFILL_AUTOFILL_DIALOG_I18N_INPUT_H_
#define CHROME_BROWSER_UI_AUTOFILL_AUTOFILL_DIALOG_I18N_INPUT_H_
#include <string>
#include "base/callback.h"
#include "base/strings/string16.h"
#include "chrome/browser/ui/autofill/autofill_dialog_common.h"
#include "chrome/browser/ui/autofill/autofill_dialog_types.h"
#include "components/autofill/core/browser/autofill_type.h"
#include "third_party/libaddressinput/chromium/cpp/include/libaddressinput/address_field.h"
namespace i18n {
namespace addressinput {
struct AddressData;
}
}
namespace autofill {
class AutofillProfile;
class CreditCard;
namespace i18ninput {
void BuildAddressInputs(common::AddressType address_type,
const std::string& country_code,
DetailInputs* inputs);
bool CardHasCompleteAndVerifiedData(const CreditCard& card);
bool AddressHasCompleteAndVerifiedData(const AutofillProfile& profile);
ServerFieldType TypeForField(::i18n::addressinput::AddressField field,
common::AddressType address_type);
bool FieldForType(ServerFieldType server_type,
::i18n::addressinput::AddressField* field);
void CreateAddressData(
const base::Callback<base::string16(const AutofillType&)>& get_info,
::i18n::addressinput::AddressData* address_data);
bool CountryIsFullySupported(const std::string& country_code);
}
}
#endif