LeviLamina
Loading...
Searching...
No Matches
DataStoreServiceProvider.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/script_core/runtime/scripting/Result_deprecated.h"
7#include "mc/editor/datastore/EventType.h"
8
9// auto generated forward declare list
10// clang-format off
11class HashedString;
12namespace Bedrock::PubSub { class Subscription; }
13namespace Editor::DataStore { class IContentBadgeContainer; }
14namespace Editor::DataStore { struct PayloadDescription; }
15namespace Json { class Value; }
16// clang-format on
17
18namespace Editor::Services {
19
21public:
22 // virtual functions
23 // NOLINTBEGIN
24 virtual ~DataStoreServiceProvider() = default;
25
26 virtual ::Editor::DataStore::IContentBadgeContainer& getContentBadgeContainer() = 0;
27
28 virtual ::Scripting::Result_deprecated<void> dispatchEvent(
29 ::HashedString const& dataTag,
30 ::Editor::DataStore::EventType eventType,
31 ::Json::Value const& payload,
33 ) = 0;
34
35 virtual ::Json::Value
36 getPayload(::HashedString const& dataTag, ::Editor::DataStore::PayloadDescription const& desc) const = 0;
37
38 virtual ::Bedrock::PubSub::Subscription listenForEvent(
39 ::std::function<void(
40 ::HashedString const&,
41 ::Editor::DataStore::EventType,
42 ::Json::Value const&,
44 )> callback
45 ) = 0;
46 // NOLINTEND
47};
48
49} // namespace Editor::Services
Definition Subscription.h:10
Definition IContentBadgeContainer.h:16
Definition DataStoreServiceProvider.h:20
Definition HashedString.h:5
Definition Value.h:16
Definition PayloadDescription.h:7