--[=[
	Constructs a new value object
	@param observable Observable<T>
	@return ValueObject<T>
]=]

function ValueObject.fromObservable(observable)
	local result = ValueObject.new()

	result._maid:GiveTask(observable:Subscribe(function(value)
		result.Value = value
	end))

	return result
end
