34 lines
726 B
TypeScript
34 lines
726 B
TypeScript
/**
|
|
* Copyright (c) 2026 Dominic Masters
|
|
*
|
|
* This software is released under the MIT License.
|
|
* https://opensource.org/licenses/MIT
|
|
*/
|
|
|
|
/**
|
|
* Controls over the engine main loop.
|
|
*/
|
|
interface EngineNamespace {
|
|
/**
|
|
* Whether the engine main loop is still running (read-only).
|
|
* Becomes `false` after `Engine.exit()` is called.
|
|
*
|
|
* @example
|
|
* while (Engine.running) { ... }
|
|
*/
|
|
readonly running: boolean;
|
|
|
|
/**
|
|
* Requests an orderly shutdown of the engine.
|
|
* Sets the internal running flag to `false`; the main loop exits at the end
|
|
* of the current tick.
|
|
*
|
|
* @example
|
|
* Engine.exit();
|
|
*/
|
|
exit(): void;
|
|
}
|
|
|
|
/** Engine lifecycle controls. */
|
|
declare var Engine: EngineNamespace;
|