// WARNING: This file is machine generated by fidlgen.

#pragma once

#include <test/bottom/cpp/fidl.h>
#include <test/foreigntypeinresponseusedthroughcompose/cpp/fidl.h>
#include <test/middle/cpp/fidl.h>
namespace test {
namespace foreigntypeinresponseusedthroughcompose {
namespace testing {
class Top_TestBase : public ::test::foreigntypeinresponseusedthroughcompose::Top {
 public:
  virtual ~Top_TestBase() {}
  virtual void NotImplemented_(const std::string& name) = 0;
  void GetFoo(GetFooCallback callback) override {
    NotImplemented_("GetFoo");
  }
};
}  // namespace testing
}  // namespace foreigntypeinresponseusedthroughcompose
}  // namespace test
