/** @internal */ let appInstance;
/** @internal */ function setApp(app) {
    appInstance = app;
}
/**
 * Singleton accessor for the current Application instance.
 *
 * @returns The Application singleton.
 *
 * @public
 */ function getApp() {
    return appInstance;
}
/**
 * Singleton accessor for the current Application instance.
 *
 * @returns The Application singleton.
 *
 * @public
 */ function tryGetApp() {
    return appInstance ?? null;
}
/**
 * Singleton accessor for the current engine instance.
 *
 * @returns The engine singleton.
 *
 * @public
 */ function getEngine() {
    return appInstance.engine;
}
/**
 * Singleton accessor for the device instance.
 *
 * @returns The device singleton.
 *
 * @public
 */ function getDevice() {
    return appInstance.device;
}
/**
 * Singleton accessor for the input manager instance.
 *
 * @returns The input manager singleton.
 *
 * @public
 */ function getInput() {
    return appInstance.inputManager;
}

export { appInstance, getApp, getDevice, getEngine, getInput, setApp, tryGetApp };
//# sourceMappingURL=api.js.map
