// This Header is auto generated by BDSLiteLoader Toolchain
#pragma once
#define AUTO_GENERATED
#include "../Global.h"
#include "Item.hpp"

#define BEFORE_EXTRA

#undef BEFORE_EXTRA

class WrittenBookItem : public Item {

#define AFTER_EXTRA

#undef AFTER_EXTRA
#ifndef DISABLE_CONSTRUCTOR_PREVENTION_WRITTENBOOKITEM
public:
    class WrittenBookItem& operator=(class WrittenBookItem const &) = delete;
    WrittenBookItem(class WrittenBookItem const &) = delete;
    WrittenBookItem() = delete;
#endif

public:
    /*0*/ virtual ~WrittenBookItem();
    /*5*/ virtual void __unk_vfn_5();
    /*26*/ virtual void __unk_vfn_26();
    /*27*/ virtual void __unk_vfn_27();
    /*29*/ virtual bool isGlint(class ItemStackBase const &) const;
    /*31*/ virtual void __unk_vfn_31();
    /*32*/ virtual void __unk_vfn_32();
    /*34*/ virtual void __unk_vfn_34();
    /*37*/ virtual void __unk_vfn_37();
    /*38*/ virtual void appendFormattedHovertext(class ItemStackBase const &, class Level &, std::string &, bool) const;
    /*43*/ virtual void __unk_vfn_43();
    /*46*/ virtual void __unk_vfn_46();
    /*47*/ virtual void __unk_vfn_47();
    /*49*/ virtual void __unk_vfn_49();
    /*50*/ virtual void __unk_vfn_50();
    /*56*/ virtual class ItemStack & use(class ItemStack &, class Player &) const;
    /*65*/ virtual std::string buildDescriptionId(class ItemDescriptor const &, class CompoundTag const *) const;
    /*79*/ virtual void __unk_vfn_79();
    /*80*/ virtual void __unk_vfn_80();
    /*82*/ virtual std::string getInteractText(class Player const &) const;
    /*90*/ virtual void __unk_vfn_90();
    /*97*/ virtual void __unk_vfn_97();
#ifdef ENABLE_VIRTUAL_FAKESYMBOL_WRITTENBOOKITEM
    MCVAPI bool requiresInteract() const;
#endif
    MCAPI static int const MAX_PAGES;
    MCAPI static int const MAX_PAGE_LENGTH;
    MCAPI static int const MAX_TITLE_LENGTH;
    MCAPI static class gsl::basic_string_span<char const, -1> const TAG_AUTHOR;
    MCAPI static class gsl::basic_string_span<char const, -1> const TAG_GENERATION;
    MCAPI static class gsl::basic_string_span<char const, -1> const TAG_ID;
    MCAPI static class gsl::basic_string_span<char const, -1> const TAG_PAGES;
    MCAPI static class gsl::basic_string_span<char const, -1> const TAG_PAGE_PHOTO_NAME;
    MCAPI static class gsl::basic_string_span<char const, -1> const TAG_PAGE_TEXT;
    MCAPI static class gsl::basic_string_span<char const, -1> const TAG_RESOLVED;
    MCAPI static class gsl::basic_string_span<char const, -1> const TAG_TITLE;
    MCAPI static class gsl::basic_string_span<char const, -1> const TAG_XUID;
    MCAPI static int getGeneration(class CompoundTag const *);
    MCAPI static int getPageCount(class ItemStack const &);
    MCAPI static std::vector<struct PageContent> getPages(class ItemStack const &);

};