#ifndef EXTENSIONS_RENDERER_BINDING_GENERATING_NATIVE_HANDLER_H_
#define EXTENSIONS_RENDERER_BINDING_GENERATING_NATIVE_HANDLER_H_
#include <string>
#include "base/compiler_specific.h"
#include "base/memory/raw_ptr.h"
#include "extensions/renderer/native_handler.h"
#include "v8/include/v8-forward.h"
namespace extensions {
class ScriptContext;
class BindingGeneratingNativeHandler : public NativeHandler {
public:
BindingGeneratingNativeHandler(ScriptContext* context,
const std::string& api_name,
const std::string& bind_to);
void Initialize() final;
bool IsInitialized() final;
v8::Local<v8::Object> NewInstance() override;
private:
raw_ptr<ScriptContext> context_;
std::string api_name_;
std::string bind_to_;
};
}
#endif