--------------------------------------------------------------------------------


local Tween = {}

local function GetTweenInfo(tweenInfo)
	if typeof(tweenInfo) == "table" then
		if tweenInfo[2] and typeof(tweenInfo[2]) == "string" then
			tweenInfo[2] = Enum.EasingStyle[tweenInfo[2]]
		end
		if tweenInfo[3] and typeof(tweenInfo[3]) == "string" then
			tweenInfo[3] = Enum.EasingDirection[tweenInfo[3]]
		end
		tweenInfo = TweenInfo.new(unpack(tweenInfo))
	end
	
	return tweenInfo
end

function Tween:Create(Instance: Instance, tweenInfo, Properties)
	return TweenService:Create(Instance, GetTweenInfo(tweenInfo), Properties)
end

function Tween:Play(Instance: Instance, tweenInfo, Properties)
	local Tween = Tween:Create(Instance, tweenInfo, Properties)
	Tween:Play()
	return Tween
end

return Tween
