/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */

#ifndef mozilla_net_uritemplate_glue_h
#define mozilla_net_uritemplate_glue_h

/* Generated with cbindgen:0.29.2 */

/* DO NOT MODIFY THIS MANUALLY! This file was generated using cbindgen.
 */

namespace mozilla {
namespace net {

class UriTemplateWrapper;

}  // namespace net
}  // namespace mozilla
 

#include <cstdarg>
#include <cstdint>
#include <cstdlib>
#include <ostream>
#include <new>
#include "nsString.h"

namespace mozilla {
namespace net {

extern "C" {

void uri_template_addref(const UriTemplateWrapper *builder);

void uri_template_release(const UriTemplateWrapper *builder);

void uri_template_new(const nsACString *input, const UriTemplateWrapper **result);

nsresult uri_template_set(UriTemplateWrapper *builder,
                          const nsACString *name,
                          const nsACString *value);

nsresult uri_template_set_int(UriTemplateWrapper *builder, const nsACString *name, int32_t value);

void uri_template_build(UriTemplateWrapper *builder, nsACString *result);

}  // extern "C"

}  // namespace net
}  // namespace mozilla

#endif  // mozilla_net_uritemplate_glue_h
