blob: e73e37d703c9d6f50ed62f09afe858a4625e71e5 [file] [log] [blame]
// Copyright 2018 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef COMPONENTS_AUTOFILL_ASSISTANT_BROWSER_SCRIPT_EXECUTOR_DELEGATE_H_
#define COMPONENTS_AUTOFILL_ASSISTANT_BROWSER_SCRIPT_EXECUTOR_DELEGATE_H_
#include <map>
#include <string>
namespace autofill {
class PersonalDataManager;
} // namespace autofill
namespace content {
class WebContents;
} // namespace content
namespace autofill_assistant {
class Service;
class UiController;
class WebController;
class ClientMemory;
class ScriptExecutorDelegate {
public:
virtual Service* GetService() = 0;
virtual UiController* GetUiController() = 0;
virtual WebController* GetWebController() = 0;
virtual ClientMemory* GetClientMemory() = 0;
virtual const std::map<std::string, std::string>& GetParameters() = 0;
virtual autofill::PersonalDataManager* GetPersonalDataManager() = 0;
virtual content::WebContents* GetWebContents() = 0;
protected:
virtual ~ScriptExecutorDelegate() {}
};
} // namespace autofill_assistant
#endif // COMPONENTS_AUTOFILL_ASSISTANT_BROWSER_SCRIPT_EXECUTOR_DELEGATE_H_