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

// fidl_experiment = no_optional_structs
// fidl_experiment = output_index_json
// fidl_experiment = simple_empty_response_syntax
// fidl_experiment = unknown_interactions
// fidl_experiment = unknown_interactions_mandate

#pragma once

#include "lib/fidl/cpp/internal/header.h"

namespace test {
namespace driverhandle {

//
// Domain objects declarations
//

}  // namespace driverhandle
}  // namespace test
namespace fidl {

//
// Proxies and stubs declarations
//
}  // namespace fidl
