API reference
Every public class, method, and event in @codexo/exojs. Generated from source.
interfaceExtension
An ExoJS extension: an immutable descriptor that contributes renderer bindings, asset bindings, serializer bindings and/or app-level systems. Holds no Application, backend, GPU, or loader instances. Pass it to the application that should have it, via ApplicationOptions.extensions - that is the only way an extension takes effect, so what an application can do is readable at its construction rather than inferred from which modules were imported. The descriptor is a shared, frozen singleton: the same object equips any number of Applications. Per-application state therefore never belongs on it - it belongs in the closure Extension.install opens, which is also what the returned ExtensionDisposer closes over.
import { Extension } from '@codexo/exojs/extensions'An ExoJS extension: an immutable descriptor that contributes renderer bindings, asset bindings, serializer bindings and/or app-level systems. Holds no Application, backend, GPU, or loader instances. Pass it to the application that should have it, via ApplicationOptions.extensions - that is the only way an extension takes effect, so what an application can do is readable at its construction rather than inferred from which modules were imported.
The descriptor is a shared, frozen singleton: the same object equips any number of Applications. Per-application state therefore never belongs on it - it belongs in the closure Extension.install opens, which is also what the returned ExtensionDisposer closes over.
install?(app: ApplicationTop-level engine instance. Owns the canvas, render backend, scene-stack controller, the core systems (input, interaction, audio, coroutines, tweens, animations…): ExtensionDisposerUndoes one Extension.install call, for the one Application that call was made against. Returned by `install`, held by that Application, and invoked exactly onc… | voiddependencies?: readonly Extension[]id: stringrenderers?: readonly RendererBindingBinds one or more drawable constructors to a renderer factory. Pure descriptor - no active renderer, no GPU resources, no side effects until `create` is called…<DrawableBase class for every renderable scene object. Extends RenderNode with a per-object tint colour, blend mode, and the normalized `anchor` that derives SceneNode.…>[]serializers?: readonly SerializerBindingBinds a SceneNode type to a NodeSerializer under a stable type name, so an extension's own node types participate in Scene.serialize/Scene.deserialize. Pure de…<SceneNodeTransform-bearing leaf in the scene-graph hierarchy. Carries position, rotation, scale, skew and origin. Implements Collidable so any node can participate dire…>[]