41 std::shared_ptr<detail::ScreenSessionImpl> impl;
44 using Result = Expected<ScreenCloseReason>;
47 LLAPI ScreenSession()
noexcept;
48 LLNDAPI ScreenSession(
Player& player, std::string screenId);
49 LLNDAPI ScreenSession(
Player& player, std::string screenId, uint instanceId);
51 LLAPI ~ScreenSession();
53 LLAPI ScreenSession(ScreenSession
const&);
54 LLAPI ScreenSession& operator=(ScreenSession
const&);
55 LLAPI ScreenSession(ScreenSession&&)
noexcept;
56 LLAPI ScreenSession& operator=(ScreenSession&&)
noexcept;
58 LLNDAPI ScreenSessionState getState()
const noexcept;
59 LLNDAPI std::optional<uint> getInstanceId()
const noexcept;
60 LLNDAPI std::optional<uint> getFormId()
const noexcept;
62 LLNDAPI Expected<Property>
63 createProperty(std::string datastore, std::string property,
cereal::DynamicValue const& value)
const;
64 LLNDAPI Expected<Property>
65 createProperty(std::string datastore, std::string property, std::string
const& json)
const;
67 LLNDAPI Expected<Property> borrowProperty(std::string datastore, std::string property)
const;
70 LLNDAPI Expected<> show(Callback callback = {})
const;
75 LLNDAPI Expected<> close()
const;
77 [[nodiscard]] LLAPI
explicit operator bool()
const noexcept;