@woosh/meep-engine
Version:
Pure JavaScript game engine. Fully featured and production ready.
81 lines • 1.89 kB
TypeScript
export class PluginReferenceContext {
/**
*
* @param {EnginePlugin} instance
* @param {Class<T>} klass
*/
constructor(instance: EnginePlugin, klass: Class<T>);
/**
*
* @type {Class<T>}
* @private
*/
private __klass;
/**
*
* @type {EnginePlugin}
* @private
*/
private __instance;
/**
*
* @type {List<Reference> }
* @private
*/
private __references;
/**
*
* @type {List<Reference<EnginePlugin>>}
*/
dependency_references: List<Reference<EnginePlugin>>;
on: {
lastReleased: Signal<any, any, any, any, any, any, any, any>;
};
/**
*
* @type {Promise<void>}
* @private
*/
private __transition;
/**
* Returns promise to the latest transition, useful to synchronization
* @example await ctx.synchronize();
* @returns {Promise<void>}
*/
synchronize(): Promise<void>;
/**
*
* @param {ProcessState} target_state
* @param {Engine} engine
* @returns {Promise<unknown>}
*/
transition(target_state: ProcessState, engine: Engine): Promise<unknown>;
dispose(): Promise<void>;
/**
*
* @param {Reference} ref
* @private
*/
private __handle_reference_released;
getKlass(): Class<T>;
/**
*
* @returns {Reference}
*/
getReference(): Reference<any>;
/**
*
* @returns {number}
*/
get referenceCount(): number;
/**
*
* @returns {EnginePlugin}
*/
get instance(): EnginePlugin;
}
import List from "../../core/collection/list/List.js";
import { Reference } from "../reference/v2/Reference.js";
import Signal from "../../core/events/signal/Signal.js";
import { ProcessState } from "../../core/process/ProcessState.js";
//# sourceMappingURL=PluginReferenceContext.d.ts.map