#ifndef COMPONENTS_PASSWORD_MANAGER_CORE_BROWSER_PASSWORD_MANAGER_DRIVER_H_
#define COMPONENTS_PASSWORD_MANAGER_CORE_BROWSER_PASSWORD_MANAGER_DRIVER_H_
#include <vector>
class PasswordGenerationManager;
class PasswordManager;
namespace autofill {
class AutofillManager;
struct FormData;
struct PasswordForm;
struct PasswordFormFillData;
}
class PasswordManagerDriver {
public:
PasswordManagerDriver() {}
virtual ~PasswordManagerDriver() {}
virtual void FillPasswordForm(
const autofill::PasswordFormFillData& form_data) = 0;
virtual bool DidLastPageLoadEncounterSSLErrors() = 0;
virtual bool IsOffTheRecord() = 0;
virtual PasswordGenerationManager* GetPasswordGenerationManager() = 0;
virtual PasswordManager* GetPasswordManager() = 0;
virtual autofill::AutofillManager* GetAutofillManager() = 0;
virtual void AllowPasswordGenerationForForm(autofill::PasswordForm* form) = 0;
virtual void AccountCreationFormsFound(
const std::vector<autofill::FormData>& forms) = 0;
private:
DISALLOW_COPY_AND_ASSIGN(PasswordManagerDriver);
};
#endif