// Copyright (c) 2023 Tencent. All rights reserved.
// Author: felixyyan

#pragma once

#include <string>
#include "../include/tmg_sdk.h"
#include "bindings/sebind/sebind.h"

class TMGDelegateBindings : public ITMGDelegate {
 public:
  virtual ~TMGDelegateBindings() {}
  void setJsTMGDelegate(const se::Value& callback);
  virtual void OnEvent(ITMG_MAIN_EVENT_TYPE type, const char* data);

 private:
  std::shared_ptr<se::Value> delegate_js_callback_;
};
