#ifndef MltEncoderOptions_D_HPP
#define MltEncoderOptions_D_HPP
#include "diplomat_runtime.hpp"
#include <cstdlib>
#include <functional>
#include <memory>
#include <optional>
#include <stdbool.h>
#include <stddef.h>
#include <stdint.h>
#include <stdio.h>
namespace diplomat {
namespace capi {
struct MltEncoderOptions;
} }
class MltEncoderOptions {
public:
inline static std::unique_ptr<MltEncoderOptions> new_();
inline void set_tessellate(bool enabled);
inline void set_attempt_spatial_morton_sort(bool enabled);
inline void set_attempt_spatial_hilbert_sort(bool enabled);
inline void set_attempt_id_sort(bool enabled);
inline void set_allow_fsst(bool enabled);
inline void set_allow_fastpfor(bool enabled);
inline void set_allow_shared_dict(bool enabled);
inline const diplomat::capi::MltEncoderOptions* AsFFI() const;
inline diplomat::capi::MltEncoderOptions* AsFFI();
inline static const MltEncoderOptions* FromFFI(const diplomat::capi::MltEncoderOptions* ptr);
inline static MltEncoderOptions* FromFFI(diplomat::capi::MltEncoderOptions* ptr);
inline static void operator delete(void* ptr);
private:
MltEncoderOptions() = delete;
MltEncoderOptions(const MltEncoderOptions&) = delete;
MltEncoderOptions(MltEncoderOptions&&) noexcept = delete;
MltEncoderOptions operator=(const MltEncoderOptions&) = delete;
MltEncoderOptions operator=(MltEncoderOptions&&) noexcept = delete;
static void operator delete[](void*, size_t) = delete;
};
#endif