LeviLamina
Loading...
Searching...
No Matches
IDataDrivenUIRepository.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/utility/EnableNonOwnerReferences.h"
7
8// auto generated forward declare list
9// clang-format off
11namespace Bedrock::PubSub { class Subscription; }
12namespace SharedTypes::v1_21_130::DataDrivenUI { struct ContainerFixedGridLayout; }
13namespace SharedTypes::v1_21_130::DataDrivenUI { struct ContainerLayout; }
14namespace SharedTypes::v1_21_130::DataDrivenUI { struct ContainerTextField; }
15namespace SharedTypes::v1_21_130::DataDrivenUI { struct Context; }
16namespace SharedTypes::v1_21_130::DataDrivenUI { struct ContextList; }
17namespace SharedTypes::v1_21_130::DataDrivenUI { struct ExtensionPoint; }
18namespace SharedTypes::v1_21_130::DataDrivenUI { struct FormButton; }
19namespace SharedTypes::v1_21_130::DataDrivenUI { struct FormDivider; }
20namespace SharedTypes::v1_21_130::DataDrivenUI { struct FormDropdown; }
21namespace SharedTypes::v1_21_130::DataDrivenUI { struct FormImage; }
22namespace SharedTypes::v1_21_130::DataDrivenUI { struct FormScrollView; }
23namespace SharedTypes::v1_21_130::DataDrivenUI { struct FormSlider; }
24namespace SharedTypes::v1_21_130::DataDrivenUI { struct FormSwitch; }
25namespace SharedTypes::v1_21_130::DataDrivenUI { struct FormTextField; }
26namespace SharedTypes::v1_21_130::DataDrivenUI { struct Panel; }
27namespace SharedTypes::v1_21_130::DataDrivenUI { struct PanelCloseButton; }
28namespace SharedTypes::v1_21_130::DataDrivenUI { struct PanelDecoration; }
29namespace SharedTypes::v1_21_130::DataDrivenUI { struct PanelSpacing; }
30namespace SharedTypes::v1_21_130::DataDrivenUI { struct PanelText; }
31namespace SharedTypes::v1_21_130::DataDrivenUI { struct ScrollableGridLayout; }
32namespace SharedTypes::v1_21_130::DataDrivenUI { struct Visibility; }
33namespace mce { class UUID; }
34// clang-format on
35
37public:
38 // virtual functions
39 // NOLINTBEGIN
40 virtual ~IDataDrivenUIRepository() /*override*/ = default;
41
42 virtual void load(::ResourcePackManager const& resourcePackManager) = 0;
43
44 virtual ::std::vector<::std::variant<
45 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::ContainerFixedGridLayout>,
46 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::ContainerTextField>,
47 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::ExtensionPoint>,
48 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::FormButton>,
49 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::FormDivider>,
50 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::FormDropdown>,
51 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::FormImage>,
52 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::FormScrollView>,
53 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::FormSlider>,
54 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::FormSwitch>,
55 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::FormTextField>,
56 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::PanelCloseButton>,
57 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::PanelDecoration>,
58 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::PanelSpacing>,
59 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::ContextList>,
60 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::ScrollableGridLayout>,
61 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::PanelText>,
62 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::Visibility>>> const&
63 getComposition(::std::string const& identifier) const = 0;
64
65 virtual ::mce::UUID const& getCompositionPackId(::std::string const& identifier) const = 0;
66
67 virtual ::std::vector<::std::variant<
68 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::ContainerLayout>,
69 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::Context>,
70 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::Panel>>> const&
71 getRoot(::std::string const& identifier) const = 0;
72
73 virtual ::mce::UUID const& getRootPackId(::std::string const& identifier) const = 0;
74
75 virtual ::std::vector<::std::variant<
76 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::ContainerFixedGridLayout>,
77 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::ContainerTextField>,
78 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::ExtensionPoint>,
79 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::FormButton>,
80 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::FormDivider>,
81 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::FormDropdown>,
82 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::FormImage>,
83 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::FormScrollView>,
84 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::FormSlider>,
85 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::FormSwitch>,
86 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::FormTextField>,
87 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::PanelCloseButton>,
88 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::PanelDecoration>,
89 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::PanelSpacing>,
90 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::ContextList>,
91 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::ScrollableGridLayout>,
92 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::PanelText>,
93 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::Visibility>>>
94 getExtensionPointContents(::std::string const& name) const = 0;
95
96 virtual ::Bedrock::PubSub::Subscription
97 subscribeToOnCompositionsReloadedAsync(::std::function<void()>&& onCompositionsReloadedAsyncCallback) = 0;
98 // NOLINTEND
99};
Definition EnableNonOwnerReferences.h:7
Definition Subscription.h:10
Definition IDataDrivenUIRepository.h:36
Definition ResourcePackManager.h:38
Definition UUID.h:7