local h=require(script.Parent["\083\121\109\098\111\108\046\114\111\098\108\111\120"])local k=newproxy(true)local W={}local function w(k)W[k]=h.named("\082\111\097\099\116"..k)end w("\072\111\115\116\067\104\097\110\103\101\069\118\101\110\116")w("\072\111\115\116\069\118\101\110\116")function W.of(h)if typeof(h)~="\116\097\098\108\101"then return nil end return h[k]end;(getmetatable(k)).__index=W;(getmetatable(k)).__tostring=function()return"\082\111\097\099\116\084\121\112\101"end return k


local Symbol = require(script.Parent["Symbol.roblox"])

local Type = newproxy(true)

local TypeInternal = {}

local function addType(name)
	TypeInternal[name] = Symbol.named("Roact" .. name)
end

addType("HostChangeEvent")
addType("HostEvent")

function TypeInternal.of(value)
	if typeof(value) ~= "table" then
		return nil
	end

	return value[Type]
end

getmetatable(Type).__index = TypeInternal

getmetatable(Type).__tostring = function()
	return "RoactType"
end

return Type
