---@meta ---@class cc.Director local Director={ } cc.Director=Director ---* Pauses the running scene.
---* The running scene will be _drawed_ but all scheduled timers will be paused.
---* While paused, the draw rate will be 4 FPS to reduce CPU consumption. ---@return self function Director:pause () end ---* Sets the EventDispatcher associated with this director.
---* since v3.0
---* js NA ---@param dispatcher cc.EventDispatcher ---@return self function Director:setEventDispatcher (dispatcher) end ---* The size in pixels of the surface. It could be different than the screen size.
---* High-res devices might have a higher surface size than the screen size.
---* Only available when compiled using SDK >= 4.0.
---* since v0.99.4 ---@param scaleFactor float ---@return self function Director:setContentScaleFactor (scaleFactor) end ---* ---@return float function Director:getDeltaTime () end ---* Gets content scale factor.
---* see Director::setContentScaleFactor() ---@return float function Director:getContentScaleFactor () end ---* Returns the size of the OpenGL view in pixels. ---@return size_table function Director:getWinSizeInPixels () end ---* Returns safe area rectangle of the OpenGL view in points. ---@return rect_table function Director:getSafeAreaRect () end ---* Sets the OpenGL default values.
---* It will enable alpha blending, disable depth test.
---* js NA ---@return self function Director:setGLDefaultValues () end ---* Sets the ActionManager associated with this director.
---* since v2.0 ---@param actionManager cc.ActionManager ---@return self function Director:setActionManager (actionManager) end ---* Pops out all scenes from the stack until the root scene in the queue.
---* This scene will replace the running one.
---* Internally it will call `popToSceneStackLevel(1)`. ---@return self function Director:popToRootScene () end ---* Adds a matrix to the top of specified type of matrix stack.
---* param type Matrix type.
---* param mat The matrix that to be added.
---* js NA ---@param type int ---@param mat mat4_table ---@return self function Director:loadMatrix (type,mat) end ---* This object will be visited after the main scene is visited.
---* This object MUST implement the "visit" function.
---* Useful to hook a notification object, like Notifications (http:github.com/manucorporat/CCNotifications)
---* since v0.99.5 ---@return cc.Node function Director:getNotificationNode () end ---* Returns the size of the OpenGL view in points. ---@return size_table function Director:getWinSize () end ---* ---@return cc.TextureCache function Director:getTextureCache () end ---* Whether or not the replaced scene will receive the cleanup message.
---* If the new scene is pushed, then the old scene won't receive the "cleanup" message.
---* If the new scene replaces the old one, the it will receive the "cleanup" message.
---* since v0.99.0 ---@return boolean function Director:isSendCleanupToScene () end ---* Returns visible origin coordinate of the OpenGL view in points. ---@return vec2_table function Director:getVisibleOrigin () end ---@overload fun(float:float):self ---@overload fun():self ---@param dt float ---@return self function Director:mainLoop (dt) end ---* Gets Frame Rate.
---* js NA ---@return float function Director:getFrameRate () end ---* Get seconds per frame. ---@return float function Director:getSecondsPerFrame () end ---* Clear all types of matrix stack, and add identity matrix to these matrix stacks.
---* js NA ---@return self function Director:resetMatrixStack () end ---* Converts an OpenGL coordinate to a screen coordinate.
---* Useful to convert node points to window points for calls such as glScissor. ---@param point vec2_table ---@return vec2_table function Director:convertToUI (point) end ---* Clones a specified type matrix and put it to the top of specified type of matrix stack.
---* js NA ---@param type int ---@return self function Director:pushMatrix (type) end ---* Sets the default values based on the Configuration info. ---@return self function Director:setDefaultValues () end ---* ---@return boolean function Director:init () end ---* Sets the Scheduler associated with this director.
---* since v2.0 ---@param scheduler cc.Scheduler ---@return self function Director:setScheduler (scheduler) end ---* Gets the top matrix of specified type of matrix stack.
---* js NA ---@param type int ---@return mat4_table function Director:getMatrix (type) end ---* returns whether or not the Director is in a valid state ---@return boolean function Director:isValid () end ---* The main loop is triggered again.
---* Call this function only if [stopAnimation] was called earlier.
---* warning Don't call this function to start the main loop. To run the main loop call runWithScene. ---@return self function Director:startAnimation () end ---* Returns the Renderer associated with this director.
---* since v3.0 ---@return cc.Renderer function Director:getRenderer () end ---* Get the GLView.
---* lua NA ---@return cc.GLView function Director:getOpenGLView () end ---* Gets current running Scene. Director can only run one Scene at a time. ---@return cc.Scene function Director:getRunningScene () end ---* Sets the glViewport. ---@return self function Director:setViewport () end ---* Stops the animation. Nothing will be drawn. The main loop won't be triggered anymore.
---* If you don't want to pause your animation call [pause] instead. ---@return self function Director:stopAnimation () end ---* Pops out all scenes from the stack until it reaches `level`.
---* If level is 0, it will end the director.
---* If level is 1, it will pop all scenes until it reaches to root scene.
---* If level is <= than the current stack level, it won't do anything. ---@param level int ---@return self function Director:popToSceneStackLevel (level) end ---* Resumes the paused scene.
---* The scheduled timers will be activated again.
---* The "delta time" will be 0 (as if the game wasn't paused). ---@return self function Director:resume () end ---* Whether or not `_nextDeltaTimeZero` is set to 0. ---@return boolean function Director:isNextDeltaTimeZero () end ---* Sets clear values for the color buffers,
---* value range of each element is [0.0, 1.0].
---* js NA ---@param clearColor color4f_table ---@return self function Director:setClearColor (clearColor) end ---* Ends the execution, releases the running scene.
---* lua endToLua ---@return self function Director:endToLua () end ---* Sets the GLView.
---* lua NA ---@param openGLView cc.GLView ---@return self function Director:setOpenGLView (openGLView) end ---* Converts a screen coordinate to an OpenGL coordinate.
---* Useful to convert (multi) touch coordinates to the current layout (portrait or landscape). ---@param point vec2_table ---@return vec2_table function Director:convertToGL (point) end ---* Removes all cocos2d cached data.
---* It will purge the TextureCache, SpriteFrameCache, LabelBMFont cache
---* since v0.99.3 ---@return self function Director:purgeCachedData () end ---* How many frames were called since the director started ---@return unsigned_int function Director:getTotalFrames () end ---* Enters the Director's main loop with the given Scene.
---* Call it to run only your FIRST scene.
---* Don't call it if there is already a running scene.
---* It will call pushScene: and then it will call startAnimation
---* js NA ---@param scene cc.Scene ---@return self function Director:runWithScene (scene) end ---* Sets the notification node.
---* see Director::getNotificationNode() ---@param node cc.Node ---@return self function Director:setNotificationNode (node) end ---* Draw the scene.
---* This method is called every frame. Don't call it manually. ---@return self function Director:drawScene () end ---* ---@return self function Director:restart () end ---* Pops out a scene from the stack.
---* This scene will replace the running one.
---* The running scene will be deleted. If there are no more scenes in the stack the execution is terminated.
---* ONLY call it if there is a running scene. ---@return self function Director:popScene () end ---* Adds an identity matrix to the top of specified type of matrix stack.
---* js NA ---@param type int ---@return self function Director:loadIdentityMatrix (type) end ---* Whether or not displaying the FPS on the bottom-left corner of the screen. ---@return boolean function Director:isDisplayStats () end ---* Sets OpenGL projection. ---@param projection int ---@return self function Director:setProjection (projection) end ---* Returns the Console associated with this director.
---* since v3.0
---* js NA ---@return cc.Console function Director:getConsole () end ---* Multiplies a matrix to the top of specified type of matrix stack.
---* param type Matrix type.
---* param mat The matrix that to be multiplied.
---* js NA ---@param type int ---@param mat mat4_table ---@return self function Director:multiplyMatrix (type,mat) end ---* Gets the distance between camera and near clipping frame.
---* It is correct for default camera that near clipping frame is same as the screen. ---@return float function Director:getZEye () end ---* Sets the delta time between current frame and next frame is 0.
---* This value will be used in Schedule, and will affect all functions that are using frame delta time, such as Actions.
---* This value will take effect only one time. ---@param nextDeltaTimeZero boolean ---@return self function Director:setNextDeltaTimeZero (nextDeltaTimeZero) end ---* Pops the top matrix of the specified type of matrix stack.
---* js NA ---@param type int ---@return self function Director:popMatrix (type) end ---* Returns visible size of the OpenGL view in points.
---* The value is equal to `Director::getWinSize()` if don't invoke `GLView::setDesignResolutionSize()`. ---@return size_table function Director:getVisibleSize () end ---* Gets the Scheduler associated with this director.
---* since v2.0 ---@return cc.Scheduler function Director:getScheduler () end ---* Suspends the execution of the running scene, pushing it on the stack of suspended scenes.
---* The new scene will be executed.
---* Try to avoid big stacks of pushed scenes to reduce memory allocation.
---* ONLY call it if there is a running scene. ---@param scene cc.Scene ---@return self function Director:pushScene (scene) end ---* Gets the FPS value. ---@return float function Director:getAnimationInterval () end ---* Whether or not the Director is paused. ---@return boolean function Director:isPaused () end ---* Display the FPS on the bottom-left corner of the screen. ---@param displayStats boolean ---@return self function Director:setDisplayStats (displayStats) end ---* Gets the EventDispatcher associated with this director.
---* since v3.0
---* js NA ---@return cc.EventDispatcher function Director:getEventDispatcher () end ---* Replaces the running scene with a new one. The running scene is terminated.
---* ONLY call it if there is a running scene.
---* js NA ---@param scene cc.Scene ---@return self function Director:replaceScene (scene) end ---* Sets the FPS value. FPS = 1/interval. ---@param interval float ---@return self function Director:setAnimationInterval (interval) end ---* Gets the ActionManager associated with this director.
---* since v2.0 ---@return cc.ActionManager function Director:getActionManager () end ---* Returns a shared instance of the director.
---* js _getInstance ---@return self function Director:getInstance () end