local N=require(script.Parent.Parent.Symbol)local R={Init=N("\105\110\105\116"),Render=N("\114\101\110\100\101\114");ShouldUpdate=N("\115\104\111\117\108\100\085\112\100\097\116\101");WillUpdate=N("\119\105\108\108\085\112\100\097\116\101"),DidMount=N("\100\105\100\077\111\117\110\116"),DidUpdate=N("\100\105\100\085\112\100\097\116\101"),WillUnmount=N("\119\105\108\108\085\110\109\111\117\110\116"),ReconcileChildren=N("\114\101\099\111\110\099\105\108\101\067\104\105\108\100\114\101\110"),Idle=N("\105\100\108\101")}table.freeze(R)return R
local Symbol = require(script.Parent.Parent.Symbol)

local ComponentLifecyclePhase = {
	-- Component methods
	Init = Symbol("init"),
	Render = Symbol("render"),
	ShouldUpdate = Symbol("shouldUpdate"),
	WillUpdate = Symbol("willUpdate"),
	DidMount = Symbol("didMount"),
	DidUpdate = Symbol("didUpdate"),
	WillUnmount = Symbol("willUnmount"),

	-- Phases describing reconciliation status
	ReconcileChildren = Symbol("reconcileChildren"),
	Idle = Symbol("idle"),
}

table.freeze(ComponentLifecyclePhase)

return ComponentLifecyclePhase
