local c=import("\046\047\066\097\115\101\073\110\115\116\097\110\099\101")local s=import("\046\046\047\073\110\115\116\097\110\099\101\080\114\111\112\101\114\116\121")local O=import("\046\046\047\116\121\112\101\115\047\086\101\099\116\111\114\050")local Z=import("\046\046\047\069\110\117\109\047\090\073\110\100\101\120\066\101\104\097\118\105\111\114")local u=c:extend("\083\099\114\101\101\110\071\117\105",{creatable=true})u.properties.AbsolutePosition=s.readOnly({get=function(c)return O.new(0,0)end})u.properties.AbsoluteSize=s.readOnly({get=function(c)return O.new(800,600)end})u.properties.DisplayOrder=s.typed("\110\117\109\098\101\114",{getDefault=function()return 0 end})u.properties.AutoLocalize=s.typed("\098\111\111\108\101\097\110",{getDefault=function()return true end})u.properties.IgnoreGuiInset=s.typed("\098\111\111\108\101\097\110",{getDefault=function()return false end})u.properties.ZIndexBehavior=s.enum(Z,{getDefault=function()return Z.Global end})u.properties.Enabled=s.typed("\098\111\111\108\101\097\110",{getDefault=function()return true end})u.properties.OnTopOfCoreBlur=s.typed("\098\111\111\108\101\097\110",{getDefault=function()return false end})return u
local BaseInstance = import("./BaseInstance")
local InstanceProperty = import("../InstanceProperty")
local Vector2 = import("../types/Vector2")
local ZIndexBehavior = import("../Enum/ZIndexBehavior")

local ScreenGui = BaseInstance:extend("ScreenGui", {
	creatable = true,
})

ScreenGui.properties.AbsolutePosition = InstanceProperty.readOnly({
	get = function(self)
		return Vector2.new(0, 0)
	end,
})

ScreenGui.properties.AbsoluteSize = InstanceProperty.readOnly({
	get = function(self)
		return Vector2.new(800, 600)
	end,
})

ScreenGui.properties.DisplayOrder = InstanceProperty.typed("number", {
	getDefault = function()
		return 0
	end,
})

ScreenGui.properties.AutoLocalize = InstanceProperty.typed("boolean", {
	getDefault = function()
		return true
	end,
})

ScreenGui.properties.IgnoreGuiInset = InstanceProperty.typed("boolean", {
	getDefault = function()
		return false
	end,
})

ScreenGui.properties.ZIndexBehavior = InstanceProperty.enum(ZIndexBehavior, {
	getDefault = function()
		return ZIndexBehavior.Global
	end,
})

ScreenGui.properties.Enabled = InstanceProperty.typed("boolean", {
	getDefault = function()
		return true
	end,
})

ScreenGui.properties.OnTopOfCoreBlur = InstanceProperty.typed("boolean", {
	getDefault = function()
		return false
	end,
})

return ScreenGui
