// Copyright 2020 The Fuchsia 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 SRC_LIB_FUZZING_CPP_FUZZER_TEST_H_
#define SRC_LIB_FUZZING_CPP_FUZZER_TEST_H_

#include <string>
#include <vector>

namespace fuzzing {

// This function is generated by //build/fuzzing/add_corpus.py and returns the filenames to the seed
// corpus elements for a fuzzer.
std::vector<std::string> GetCorpus();

}  // namespace fuzzing

#endif  // SRC_LIB_FUZZING_CPP_FUZZER_TEST_H_
