/// /// /// declare namespace Phaser.Loader { interface LoaderPlugin extends Phaser.Events.EventEmitter { spine(key: string | Phaser.Loader.FileTypes.SpineFileConfig | Phaser.Loader.FileTypes.SpineFileConfig[], jsonURL: string, atlasURL: string | string[], preMultipliedAlpha?: boolean, textureXhrSettings?: Phaser.Types.Loader.XHRSettingsObject, atlasXhrSettings?: Phaser.Types.Loader.XHRSettingsObject): LoaderPlugin; } } declare namespace Phaser.GameObjects { interface GameObjectFactory { spine(x: number, y: number, key?: string, aimationName?: string, loop?: boolean): SpineGameObject; } interface GameObjectCreator { spine(config: SpineGameObjectConfig, addToScene?: boolean): SpineGameObject; } } declare class SpinePlugin extends Phaser.Plugins.ScenePlugin { constructor(scene: Phaser.Scene, pluginManager: Phaser.Plugins.PluginManager); readonly isWebGL: boolean; cache: Phaser.Cache.BaseCache; spineTextures: Phaser.Cache.BaseCache; json: Phaser.Cache.BaseCache; textures: Phaser.Textures.TextureManager; drawDebug: boolean; gl: WebGLRenderingContext; renderer: Phaser.Renderer.Canvas.CanvasRenderer | Phaser.Renderer.WebGL.WebGLRenderer; sceneRenderer: spine.webgl.SceneRenderer; skeletonRenderer: spine.canvas.SkeletonRenderer | spine.webgl.SkeletonRenderer; skeletonDebugRenderer: spine.webgl.SkeletonDebugRenderer; plugin: typeof spine; getAtlasCanvas(key: string): spine.TextureAtlas; getAtlasWebGL(key: string): spine.TextureAtlas; worldToLocal(x: number, y: number, skeleton: spine.Skeleton, bone?: spine.Bone): spine.Vector2; getVector2(x: number, y: number): spine.Vector2; getVector3(x: number, y: number, z: number): spine.Vector2; setDebugBones(value?: boolean): SpinePlugin; setDebugRegionAttachments(value?: boolean): SpinePlugin; setDebugBoundingBoxes(value?: boolean): SpinePlugin; setDebugMeshHull(value?: boolean): SpinePlugin; setDebugMeshTriangles(value?: boolean): SpinePlugin; setDebugPaths(value?: boolean): SpinePlugin; setDebugSkeletonXY(value?: boolean): SpinePlugin; setDebugClipping(value?: boolean): SpinePlugin; setEffect(effect?: spine.VertexEffect): SpinePlugin; createSkeleton(key: string, skeletonJSON?: object): any | null; createAnimationState(skeleton: spine.Skeleton): any; getBounds(skeleton: spine.Skeleton): any; onResize(): void; add(x: number, y: number, key?: string, animationName?: string, loop?: boolean): SpineGameObject; make(config: SpineGameObjectConfig, addToScene?: boolean): SpineGameObject; }