Files
DefinitelyTyped/types/wonder.js/index.d.ts
2017-03-24 14:27:52 -07:00

2956 lines
134 KiB
TypeScript

// Type definitions for wonder.js 0.1.0
// Project: https://github.com/yyc-git/Wonder.js
// Definitions by: YYC <https://github.com/yyc-git>
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
/// <reference types="wonder-commonlib" />
/// <reference types="wonder-frp" />
// Generated by dts-bundle v0.7.2
// Dependencies for this module:
// ../../wonder-commonlib/dist/es2015/Hash
// ../../wonder-commonlib/dist/es2015/Collection
// ../../wonder-frp/dist/es2015/stream/FromEventPatternStream
// ../../wonder-commonlib/dist/es2015/utils/ArrayUtils
// ../../wonder-commonlib/dist/es2015/utils/JudgeUtils
// ../../wonder-commonlib/dist/es2015/Log
declare module 'wonder.js/dist/es2015' {
export { Camera } from "wonder.js/dist/es2015/component/camera/Camera";
export { BasicCameraController } from "wonder.js/dist/es2015/component/camera/controller/basic/BasicCameraController";
export { CameraController } from "wonder.js/dist/es2015/component/camera/controller/CameraController";
export { PerspectiveCamera } from "wonder.js/dist/es2015/component/camera/PerspectiveCamera";
export { ComponentInitOrderTable } from "wonder.js/dist/es2015/component/data/ComponentInitOrderTable";
export { BoxGeometry } from "wonder.js/dist/es2015/component/geometry/BoxGeometry";
export { BasicBufferContainer } from "wonder.js/dist/es2015/component/geometry/data/BasicBufferContainer";
export { BasicGeometryData } from "wonder.js/dist/es2015/component/geometry/data/BasicGeometryData";
export { BufferContainer } from "wonder.js/dist/es2015/component/geometry/data/BufferContainer";
export { CommonBufferContainer } from "wonder.js/dist/es2015/component/geometry/data/CommonBufferContainer";
export { GeometryData } from "wonder.js/dist/es2015/component/geometry/data/GeometryData";
export { Geometry } from "wonder.js/dist/es2015/component/geometry/Geometry";
export { GeometryUtils } from "wonder.js/dist/es2015/component/geometry/GeometryUtils";
export { MeshRenderer } from "wonder.js/dist/es2015/component/renderer/MeshRenderer";
export { RendererComponent } from "wonder.js/dist/es2015/component/renderer/RendererComponent";
export { ETransformState } from "wonder.js/dist/es2015/component/transform/ETransformState";
export { ThreeDTransform } from "wonder.js/dist/es2015/component/transform/ThreeDTransform";
export { Transform } from "wonder.js/dist/es2015/component/transform/Transform";
export { DebugConfig } from "wonder.js/dist/es2015/config/DebugConfig";
export { Component } from "wonder.js/dist/es2015/core/Component";
export { Director } from "wonder.js/dist/es2015/core/Director";
export { Entity } from "wonder.js/dist/es2015/core/Entity";
export { EntityObject } from "wonder.js/dist/es2015/core/entityObject/EntityObject";
export { GameObject } from "wonder.js/dist/es2015/core/entityObject/gameObject/GameObject";
export { ComponentManager } from "wonder.js/dist/es2015/core/entityObject/manager/ComponentManager";
export { EntityObjectManager } from "wonder.js/dist/es2015/core/entityObject/manager/EntityObjectManager";
export { BufferTable, BufferTableKey } from "wonder.js/dist/es2015/core/entityObject/scene/cache/BufferTable";
export { ProgramTable } from "wonder.js/dist/es2015/core/entityObject/scene/cache/ProgramTable";
export { GameObjectScene } from "wonder.js/dist/es2015/core/entityObject/scene/gameObjectScene/GameObjectScene";
export { Scene } from "wonder.js/dist/es2015/core/entityObject/scene/Scene";
export { SceneDispatcher } from "wonder.js/dist/es2015/core/entityObject/scene/SceneDispatcher";
export { Main } from "wonder.js/dist/es2015/core/Main";
export { MainData } from "wonder.js/dist/es2015/core/data/MainData";
export { cacheGetter, cache, cacheBufferForBufferContainer, cacheBufferForBufferContainerWithFuncParam } from "wonder.js/dist/es2015/definition/typescript/decorator/cache";
export { cloneAttributeAsBasicType, cloneAttributeAsCloneable, cloneAttributeAsCustomType, CloneUtils, CloneType } from "wonder.js/dist/es2015/definition/typescript/decorator/clone";
export { assert, describe, it, requireCheck, ensure, requireGetterAndSetter, requireGetter, requireSetter, ensureGetterAndSetter, ensureGetter, ensureSetter, invariant } from "wonder.js/dist/es2015/definition/typescript/decorator/contract";
export { execOnlyOnce } from "wonder.js/dist/es2015/definition/typescript/decorator/control";
export { registerClass } from "wonder.js/dist/es2015/definition/typescript/decorator/registerClass";
export { singleton } from "wonder.js/dist/es2015/definition/typescript/decorator/singleton";
export { virtual } from "wonder.js/dist/es2015/definition/typescript/decorator/virtual";
export { root } from "wonder.js/dist/es2015/definition/Variable";
export { DeviceManager, EDepthFunction, ESide, EPolygonOffsetMode, EBlendFunc, EBlendEquation, EBlendType, ECanvasType } from "wonder.js/dist/es2015/device/DeviceManager";
export { EScreenSize } from "wonder.js/dist/es2015/device/EScreenSize";
export { GPUDetector, EGPUPrecision } from "wonder.js/dist/es2015/device/GPUDetector";
export { CustomEventBinder } from "wonder.js/dist/es2015/event/binder/CustomEventBinder";
export { CustomEventRegister } from "wonder.js/dist/es2015/event/binder/CustomEventRegister";
export { DomEventBinder } from "wonder.js/dist/es2015/event/binder/DomEventBinder";
export { DomEventRegister } from "wonder.js/dist/es2015/event/binder/DomEventRegister";
export { EventBinder } from "wonder.js/dist/es2015/event/binder/EventBinder";
export { EventRegister } from "wonder.js/dist/es2015/event/binder/EventRegister";
export { CustomEventDispatcher } from "wonder.js/dist/es2015/event/dispatcher/CustomEventDispatcher";
export { DomEventDispatcher } from "wonder.js/dist/es2015/event/dispatcher/DomEventDispatcher";
export { EventDispatcher } from "wonder.js/dist/es2015/event/dispatcher/EventDispatcher";
export { EEngineEvent } from "wonder.js/dist/es2015/event/EEngineEvent";
export { EventManager } from "wonder.js/dist/es2015/event/EventManager";
export { EventBinderFactory } from "wonder.js/dist/es2015/event/factory/EventBinderFactory";
export { EventDispatcherFactory } from "wonder.js/dist/es2015/event/factory/EventDispatcherFactory";
export { EventHandlerFactory } from "wonder.js/dist/es2015/event/factory/EventHandlerFactory";
export { CustomEventHandler } from "wonder.js/dist/es2015/event/handler/CustomEventHandler";
export { DomEventHandler } from "wonder.js/dist/es2015/event/handler/DomEventHandler";
export { EventHandler } from "wonder.js/dist/es2015/event/handler/EventHandler";
export { KeyboardEventHandler } from "wonder.js/dist/es2015/event/handler/KeyboardEventHandler";
export { MouseEventHandler } from "wonder.js/dist/es2015/event/handler/MouseEventHandler";
export { PointEventHandler } from "wonder.js/dist/es2015/event/handler/PointEventHandler";
export { TouchEventHandler } from "wonder.js/dist/es2015/event/handler/TouchEventHandler";
export { CustomEvent } from "wonder.js/dist/es2015/event/object/CustomEvent";
export { DomEvent } from "wonder.js/dist/es2015/event/object/DomEvent";
export { EEventPhase } from "wonder.js/dist/es2015/event/object/EEventPhase";
export { EEventType } from "wonder.js/dist/es2015/event/object/EEventType";
export { EMouseButton } from "wonder.js/dist/es2015/event/object/EMouseButton";
export { Event } from "wonder.js/dist/es2015/event/object/Event";
export { EEventName, EventNameHandler } from "wonder.js/dist/es2015/event/object/EventNameHandler";
export { EventTable } from "wonder.js/dist/es2015/event/object/EventTable";
export { KeyboardEvent } from "wonder.js/dist/es2015/event/object/KeyboardEvent";
export { MouseEvent } from "wonder.js/dist/es2015/event/object/MouseEvent";
export { MousePointEvent } from "wonder.js/dist/es2015/event/object/MousePointEvent";
export { PointEvent } from "wonder.js/dist/es2015/event/object/PointEvent";
export { TouchEvent } from "wonder.js/dist/es2015/event/object/TouchEvent";
export { TouchPointEvent } from "wonder.js/dist/es2015/event/object/TouchPointEvent";
export { CustomEventListenerMap } from "wonder.js/dist/es2015/event/structure/CustomEventListenerMap";
export { DomEventListenerMap } from "wonder.js/dist/es2015/event/structure/DomEventListenerMap";
export { EventListenerMap } from "wonder.js/dist/es2015/event/structure/EventListenerMap";
export { EventUtils } from "wonder.js/dist/es2015/event/utils/EventUtils";
export { BasicMaterial } from "wonder.js/dist/es2015/material/BasicMaterial";
export { EngineMaterial } from "wonder.js/dist/es2015/material/EngineMaterial";
export { Material } from "wonder.js/dist/es2015/material/Material";
export { ShaderManager } from "wonder.js/dist/es2015/material/ShaderManager";
export { StandardBasicMaterial } from "wonder.js/dist/es2015/material/StandardBasicMaterial";
export { DEG_TO_RAD, RAD_TO_DEG } from "wonder.js/dist/es2015/math/Global";
export { Matrix3 } from "wonder.js/dist/es2015/math/Matrix3";
export { Matrix4 } from "wonder.js/dist/es2015/math/Matrix4";
export { Quaternion } from "wonder.js/dist/es2015/math/Quaternion";
export { Vector2 } from "wonder.js/dist/es2015/math/Vector2";
export { Vector3 } from "wonder.js/dist/es2015/math/Vector3";
export { Vector4 } from "wonder.js/dist/es2015/math/Vector4";
export { ArrayBuffer } from "wonder.js/dist/es2015/renderer/buffer/ArrayBuffer";
export { Buffer } from "wonder.js/dist/es2015/renderer/buffer/Buffer";
export { BufferDataTable } from "wonder.js/dist/es2015/renderer/buffer/BufferDataTable";
export { CommonBuffer } from "wonder.js/dist/es2015/renderer/buffer/CommonBuffer";
export { EBufferDataType } from "wonder.js/dist/es2015/renderer/buffer/EBufferDataType";
export { EBufferType } from "wonder.js/dist/es2015/renderer/buffer/EBufferType";
export { EBufferUsage } from "wonder.js/dist/es2015/renderer/buffer/EBufferUsage";
export { ElementBuffer } from "wonder.js/dist/es2015/renderer/buffer/ElementBuffer";
export { QuadCommand } from "wonder.js/dist/es2015/renderer/command/QuadCommand";
export { RenderCommand } from "wonder.js/dist/es2015/renderer/command/RenderCommand";
export { SingleDrawCommand } from "wonder.js/dist/es2015/renderer/command/SingleDrawCommand";
export { EDrawMode } from "wonder.js/dist/es2015/renderer/EDrawMode";
export { GlUtils } from "wonder.js/dist/es2015/renderer/GlUtils";
export { GLSLDataSender } from "wonder.js/dist/es2015/renderer/program/GLSLDataSender";
export { Program } from "wonder.js/dist/es2015/renderer/program/Program";
export { Renderer } from "wonder.js/dist/es2015/renderer/renderer/Renderer";
export { WebGLRenderer } from "wonder.js/dist/es2015/renderer/renderer/WebGLRenderer";
export { BasicMaterialColorShaderLib } from "wonder.js/dist/es2015/renderer/shader/lib/basic/BasicMaterialColorShaderLib";
export { BasicShaderLib } from "wonder.js/dist/es2015/renderer/shader/lib/basic/BasicShaderLib";
export { EndBasicShaderLib } from "wonder.js/dist/es2015/renderer/shader/lib/basic/EndBasicShaderLib";
export { CommonShaderLib } from "wonder.js/dist/es2015/renderer/shader/lib/common/CommonShaderLib";
export { EndShaderLib } from "wonder.js/dist/es2015/renderer/shader/lib/common/EndShaderLib";
export { VerticeCommonShaderLib } from "wonder.js/dist/es2015/renderer/shader/lib/common/VerticeCommonShaderLib";
export { EngineShaderLib } from "wonder.js/dist/es2015/renderer/shader/lib/EngineShaderLib";
export { ShaderLib } from "wonder.js/dist/es2015/renderer/shader/lib/ShaderLib";
export { CommonShader } from "wonder.js/dist/es2015/renderer/shader/shader/CommonShader";
export { EngineShader } from "wonder.js/dist/es2015/renderer/shader/shader/EngineShader";
export { Shader } from "wonder.js/dist/es2015/renderer/shader/shader/Shader";
export { EngineShaderSourceBuilder } from "wonder.js/dist/es2015/renderer/shader/sourceBuilder/EngineShaderSourceBuilder";
export { ShaderSourceBuilder } from "wonder.js/dist/es2015/renderer/shader/sourceBuilder/ShaderSourceBuilder";
export { EVariableCategory } from "wonder.js/dist/es2015/renderer/shader/variable/EVariableCategory";
export { EVariableSemantic } from "wonder.js/dist/es2015/renderer/shader/variable/EVariableSemantic";
export { EVariableType } from "wonder.js/dist/es2015/renderer/shader/variable/EVariableType";
export { VariableLib } from "wonder.js/dist/es2015/renderer/shader/variable/VariableLib";
export { VariableNameTable } from "wonder.js/dist/es2015/renderer/shader/variable/VariableNameTable";
export { VariableTypeTable } from "wonder.js/dist/es2015/renderer/shader/variable/VariableTypeTable";
export { BasicState } from "wonder.js/dist/es2015/renderer/state/BasicState";
export { WebGLState } from "wonder.js/dist/es2015/renderer/state/WebGLState";
export { Color } from "wonder.js/dist/es2015/structure/Color";
export { Face3 } from "wonder.js/dist/es2015/structure/Face3";
export { Point } from "wonder.js/dist/es2015/structure/Point";
export { RectRegion } from "wonder.js/dist/es2015/structure/RectRegion";
export { ViewWebGL } from "wonder.js/dist/es2015/structure/View";
export { ArrayUtils } from "wonder.js/dist/es2015/utils/ArrayUtils";
export { BufferUtils } from "wonder.js/dist/es2015/utils/BufferUtils";
export { ClassUtils } from "wonder.js/dist/es2015/utils/ClassUtils";
export { JudgeUtils } from "wonder.js/dist/es2015/utils/JudgeUtils";
export { Log } from "wonder.js/dist/es2015/utils/Log";
export { MathUtils } from "wonder.js/dist/es2015/utils/MathUtils";
export { RenderUtils } from "wonder.js/dist/es2015/utils/RenderUtils";
export { ShaderLibUtils } from "wonder.js/dist/es2015/utils/ShaderLibUtils";
export { SortUtils } from "wonder.js/dist/es2015/utils/SortUtils";
export { CommonTimeController } from "wonder.js/dist/es2015/utils/time/CommonTimeController";
export { DirectorTimeController } from "wonder.js/dist/es2015/utils/time/DirectorTimeController";
export { TimeController } from "wonder.js/dist/es2015/utils/time/TimeController";
export { CompileConfig } from "wonder.js/dist/es2015/config/CompileConfig";
}
declare module 'wonder.js/dist/es2015/component/camera/Camera' {
import { Matrix4 } from "wonder.js/dist/es2015/math/Matrix4";
import { GameObject } from "wonder.js/dist/es2015/core/entityObject/gameObject/GameObject";
export abstract class Camera {
readonly cameraToWorldMatrix: Matrix4;
worldToCameraMatrix: Matrix4;
near: number;
far: number;
pMatrix: Matrix4;
entityObject: GameObject;
protected pMatrixDirty: boolean;
init(): void;
dispose(): void;
clone(): this;
update(elapsed: number): void;
protected abstract updateProjectionMatrix(): any;
protected getInvViewProjMat(): Matrix4;
}
}
declare module 'wonder.js/dist/es2015/component/camera/controller/basic/BasicCameraController' {
import { CameraController } from "wonder.js/dist/es2015/component/camera/controller/CameraController";
import { Camera } from "wonder.js/dist/es2015/component/camera/Camera";
export class BasicCameraController extends CameraController {
static create(cameraComponent: Camera): BasicCameraController;
}
}
declare module 'wonder.js/dist/es2015/component/camera/controller/CameraController' {
import "wonder-frp/dist/es2015/stream/MergeAllStream";
import { Component } from "wonder.js/dist/es2015/core/Component";
import { Camera } from "wonder.js/dist/es2015/component/camera/Camera";
import { Matrix4 } from "wonder.js/dist/es2015/math/Matrix4";
import { GameObject } from "wonder.js/dist/es2015/core/entityObject/gameObject/GameObject";
export abstract class CameraController extends Component {
constructor(cameraComponent: Camera);
readonly cameraToWorldMatrix: Matrix4;
readonly worldToCameraMatrix: Matrix4;
pMatrix: Matrix4;
entityObject: GameObject;
camera: Camera;
init(): void;
update(elapsed: number): void;
dispose(): void;
clone(): this;
protected bindClearCacheEvent(): void;
protected disposeClearCacheEvent(): void;
}
}
declare module 'wonder.js/dist/es2015/component/camera/PerspectiveCamera' {
import { Camera } from "wonder.js/dist/es2015/component/camera/Camera";
export class PerspectiveCamera extends Camera {
static create(): PerspectiveCamera;
fovy: number;
aspect: number;
zoomIn(speed: number, min?: number): void;
zoomOut(speed: number, max?: number): void;
protected updateProjectionMatrix(): void;
}
}
declare module 'wonder.js/dist/es2015/component/data/ComponentInitOrderTable' {
import { Component } from "wonder.js/dist/es2015/core/Component";
export class ComponentInitOrderTable {
static getOrder(component: Component): 4 | 5;
}
}
declare module 'wonder.js/dist/es2015/component/geometry/BoxGeometry' {
import { Geometry } from "wonder.js/dist/es2015/component/geometry/Geometry";
import { Face3 } from "wonder.js/dist/es2015/structure/Face3";
export class BoxGeometry extends Geometry {
static create(): BoxGeometry;
width: number;
height: number;
depth: number;
widthSegments: number;
heightSegments: number;
depthSegments: number;
computeData(): {
vertices: any[];
faces: Face3[];
};
}
}
declare module 'wonder.js/dist/es2015/component/geometry/data/BasicBufferContainer' {
import { CommonBufferContainer } from "wonder.js/dist/es2015/component/geometry/data/CommonBufferContainer";
import { GameObject } from "wonder.js/dist/es2015/core/entityObject/gameObject/GameObject";
export class BasicBufferContainer extends CommonBufferContainer {
static create(entityObject: GameObject): BasicBufferContainer;
}
}
declare module 'wonder.js/dist/es2015/component/geometry/data/BasicGeometryData' {
import { GeometryData } from "wonder.js/dist/es2015/component/geometry/data/GeometryData";
import { Geometry } from "wonder.js/dist/es2015/component/geometry/Geometry";
export class BasicGeometryData extends GeometryData {
static create(geometry: Geometry): BasicGeometryData;
}
}
declare module 'wonder.js/dist/es2015/component/geometry/data/BufferContainer' {
import { GameObject } from "wonder.js/dist/es2015/core/entityObject/gameObject/GameObject";
import { GeometryData } from "wonder.js/dist/es2015/component/geometry/data/GeometryData";
import { Hash } from "wonder-commonlib/dist/es2015/Hash";
import { Buffer } from "wonder.js/dist/es2015/renderer/buffer/Buffer";
import { EBufferDataType } from "wonder.js/dist/es2015/renderer/buffer/EBufferDataType";
import { EBufferType } from "wonder.js/dist/es2015/renderer/buffer/EBufferType";
import { EBufferUsage } from "wonder.js/dist/es2015/renderer/buffer/EBufferUsage";
export abstract class BufferContainer {
constructor(entityObject: GameObject);
geometryData: GeometryData;
protected entityObject: GameObject;
protected container: Hash<Buffer>;
createBuffersFromGeometryData(): void;
removeCache(type: EBufferDataType): any;
removeCache(name: string): any;
getChild(type: EBufferDataType): any;
getChild(type: EBufferDataType, dataName: string): any;
init(): void;
dispose(): void;
protected abstract getVertice(type: EBufferDataType): any;
protected createOnlyOnceAndUpdateArrayBuffer(bufferAttriName: string, data: Array<number>, size: number, type?: EBufferType, offset?: number, usage?: EBufferUsage): void;
protected createOnlyOnceAndUpdateElememntBuffer(bufferAttriName: string, data: Array<number>, type?: EBufferType, offset?: number, usage?: EBufferUsage): void;
protected hasData(data: Array<number> | null): boolean;
}
}
declare module 'wonder.js/dist/es2015/component/geometry/data/CommonBufferContainer' {
import { BufferContainer } from "wonder.js/dist/es2015/component/geometry/data/BufferContainer";
import { BasicGeometryData } from "wonder.js/dist/es2015/component/geometry/data/BasicGeometryData";
import { ArrayBuffer } from "wonder.js/dist/es2015/renderer/buffer/ArrayBuffer";
import { EBufferDataType } from "wonder.js/dist/es2015/renderer/buffer/EBufferDataType";
export abstract class CommonBufferContainer extends BufferContainer {
geometryData: BasicGeometryData;
protected getVertice(type: EBufferDataType): ArrayBuffer;
}
}
declare module 'wonder.js/dist/es2015/component/geometry/data/GeometryData' {
import { Geometry } from "wonder.js/dist/es2015/component/geometry/Geometry";
import { Face3 } from "wonder.js/dist/es2015/structure/Face3";
export abstract class GeometryData {
constructor(geometry: Geometry);
vertices: Array<number>;
readonly indices: Array<number>;
faces: Array<Face3>;
protected geometry: Geometry;
dispose(): void;
protected onChangeFace(): void;
}
}
declare module 'wonder.js/dist/es2015/component/geometry/Geometry' {
import { Component } from "wonder.js/dist/es2015/core/Component";
import { Material } from "wonder.js/dist/es2015/material/Material";
import { GameObject } from "wonder.js/dist/es2015/core/entityObject/gameObject/GameObject";
import { BufferContainer } from "wonder.js/dist/es2015/component/geometry/data/BufferContainer";
import { EDrawMode } from "wonder.js/dist/es2015/renderer/EDrawMode";
import { GeometryData } from "wonder.js/dist/es2015/component/geometry/data/GeometryData";
import { BasicGeometryData } from "wonder.js/dist/es2015/component/geometry/data/BasicGeometryData";
import { Face3 } from "wonder.js/dist/es2015/structure/Face3";
export abstract class Geometry extends Component {
material: Material;
readonly geometryData: GeometryData;
entityObject: GameObject;
buffers: BufferContainer;
drawMode: EDrawMode;
abstract computeData(): GeometryDataType;
init(): void;
dispose(): void;
createBuffersFromGeometryData(): void;
protected createBufferContainer(): BufferContainer;
protected createGeometryData(computedData: GeometryDataType): GeometryData;
protected createBasicGeometryData(computedData: GeometryDataType): BasicGeometryData;
}
export type GeometryDataType = {
vertices: Array<number>;
faces?: Array<Face3>;
};
}
declare module 'wonder.js/dist/es2015/component/geometry/GeometryUtils' {
import { Face3 } from "wonder.js/dist/es2015/structure/Face3";
import { Vector3 } from "wonder.js/dist/es2015/math/Vector3";
export class GeometryUtils {
static convertToFaces(indices: Array<number>, normals?: Array<number>): Array<Face3>;
static hasData(data: any): boolean;
static getThreeComponent(sourceData: Array<number>, index: number): Vector3;
static iterateThreeComponent(dataArr: Array<number>, iterator: (v: Vector3) => void): void;
static setThreeComponent(targetData: Array<number>, sourceData: Vector3, index: number): any;
static setThreeComponent(targetData: Array<number>, sourceData: Array<number>, index: number): any;
}
}
declare module 'wonder.js/dist/es2015/component/renderer/MeshRenderer' {
import { RendererComponent } from "wonder.js/dist/es2015/component/renderer/RendererComponent";
import { GameObject } from "wonder.js/dist/es2015/core/entityObject/gameObject/GameObject";
import { Renderer } from "wonder.js/dist/es2015/renderer/renderer/Renderer";
import { Geometry } from "wonder.js/dist/es2015/component/geometry/Geometry";
import { QuadCommand } from "wonder.js/dist/es2015/renderer/command/QuadCommand";
export class MeshRenderer extends RendererComponent {
static create(): MeshRenderer;
entityObject: GameObject;
render(renderer: Renderer, target: GameObject, camera: GameObject): void;
protected createDrawCommand(target: GameObject, geometry: Geometry, camera: GameObject): QuadCommand;
}
}
declare module 'wonder.js/dist/es2015/component/renderer/RendererComponent' {
import { Component } from "wonder.js/dist/es2015/core/Component";
import { Renderer } from "wonder.js/dist/es2015/renderer/renderer/Renderer";
import { EntityObject } from "wonder.js/dist/es2015/core/entityObject/EntityObject";
import { GameObject } from "wonder.js/dist/es2015/core/entityObject/gameObject/GameObject";
export abstract class RendererComponent extends Component {
abstract render(renderer: Renderer, target: EntityObject, camera: GameObject): any;
}
}
declare module 'wonder.js/dist/es2015/component/transform/ETransformState' {
export enum ETransformState {
ISTRANSLATE,
ISROTATE,
ISSCALE,
ISLOCALTRANSLATE,
ISLOCALROTATE,
ISLOCALSCALE,
}
}
declare module 'wonder.js/dist/es2015/component/transform/ThreeDTransform' {
import { Transform } from "wonder.js/dist/es2015/component/transform/Transform";
import { Matrix4 } from "wonder.js/dist/es2015/math/Matrix4";
import { Vector3 } from "wonder.js/dist/es2015/math/Vector3";
import { Quaternion } from "wonder.js/dist/es2015/math/Quaternion";
import { Collection } from "wonder-commonlib/dist/es2015/Collection";
import { Matrix3 } from "wonder.js/dist/es2015/math/Matrix3";
import { ETransformState } from "wonder.js/dist/es2015/component/transform/ETransformState";
export class ThreeDTransform extends Transform {
static create(): ThreeDTransform;
localToWorldMatrix: Matrix4;
readonly normalMatrix: Matrix3;
position: Vector3;
rotation: Quaternion;
scale: Vector3;
eulerAngles: Vector3;
localPosition: Vector3;
localRotation: Quaternion;
localEulerAngles: Vector3;
localScale: Vector3;
readonly up: Vector3;
readonly right: Vector3;
readonly forward: any;
dirtyWorld: boolean;
protected p_parent: ThreeDTransform;
protected children: Collection<ThreeDTransform>;
sync(): void;
translateLocal(translation: Vector3): any;
translateLocal(x: number, y: number, z: number): any;
translate(translation: Vector3): any;
translate(x: number, y: number, z: number): any;
rotate(eulerAngles: Vector3): any;
rotate(x: number, y: number, z: number): any;
rotateLocal(eulerAngles: Vector3): any;
rotateLocal(x: number, y: number, z: number): any;
rotateAround(angle: number, center: Vector3, axis: Vector3): any;
rotateAround(angle: number, centerX: number, centerY: number, centerZ: number, axisX: number, axisY: number, axisZ: number): any;
lookAt(target: Vector3): any;
lookAt(targetX: number, targetY: number, targetZ: number): any;
lookAt(target: Vector3, up: Vector3): any;
lookAt(targetX: number, targetY: number, targetZ: number, upX: number, upY: number, upZ: number): any;
protected clearCache(): void;
protected handleWhenSetTransformState(transformState?: ETransformState): void;
}
}
declare module 'wonder.js/dist/es2015/component/transform/Transform' {
import { Component } from "wonder.js/dist/es2015/core/Component";
import { ETransformState } from "wonder.js/dist/es2015/component/transform/ETransformState";
import { Collection } from "wonder-commonlib/dist/es2015/Collection";
export abstract class Transform extends Component {
protected p_parent: Transform;
parent: Transform;
isTransform: boolean;
isTranslate: boolean;
isRotate: boolean;
isScale: boolean;
isLocalTranslate: boolean;
isLocalRotate: boolean;
isLocalScale: boolean;
dirtyLocal: boolean;
protected children: Collection<Transform>;
init(): void;
dispose(): void;
addChild(child: Transform): void;
removeChild(child: Transform): void;
setChildrenTransformState(state: boolean): any;
setChildrenTransformState(transformState: ETransformState, state: boolean): any;
protected abstract clearCache(): void;
protected handleWhenSetTransformState(transformState?: ETransformState): void;
protected setParent(parent: Transform): void;
protected getMatrix<T>(syncMethod: string, matrixAttriName: string): T;
}
}
declare module 'wonder.js/dist/es2015/config/DebugConfig' {
export var DebugConfig: {
isTest: boolean;
debugCollision: boolean;
showDebugPanel: boolean;
};
}
declare module 'wonder.js/dist/es2015/core/Component' {
import { Entity } from "wonder.js/dist/es2015/core/Entity";
import { Transform } from "wonder.js/dist/es2015/component/transform/Transform";
import { EntityObject } from "wonder.js/dist/es2015/core/entityObject/EntityObject";
export abstract class Component extends Entity {
readonly transform: Transform;
entityObject: EntityObject;
init(): void;
dispose(): void;
clone(): any;
addToObject(entityObject: EntityObject, isShareComponent?: boolean): void;
addToComponentContainer(): void;
removeFromObject(entityObject: EntityObject): void;
removeFromComponentContainer(): void;
}
}
declare module 'wonder.js/dist/es2015/core/Director' {
import "wonder-frp/dist/es2015/stream/ConcatStream";
import "wonder-frp/dist/es2015/stream/IgnoreElementsStream";
import "wonder-frp/dist/es2015/extend/root";
import { SceneDispatcher } from "wonder.js/dist/es2015/core/entityObject/scene/SceneDispatcher";
import { Renderer } from "wonder.js/dist/es2015/renderer/renderer/Renderer";
export class Director {
static getInstance(): any;
readonly gameTime: number;
readonly fps: number;
readonly isNormal: boolean;
readonly isStop: boolean;
readonly isPause: boolean;
readonly isTimeChange: boolean;
readonly elapsed: number;
readonly view: any;
scene: SceneDispatcher;
renderer: Renderer;
initWhenCreate(): void;
start(): void;
stop(): void;
pause(): void;
resume(): void;
getDeltaTime(): number;
}
}
declare module 'wonder.js/dist/es2015/core/Entity' {
import { Collection } from "wonder-commonlib/dist/es2015/Collection";
export abstract class Entity {
constructor();
uid: number;
data: any;
addTag(tag: string): void;
removeTag(tag: string): void;
getTagList(): Collection<string>;
hasTag(tag: string): boolean;
containTag(tag: string): boolean;
}
}
declare module 'wonder.js/dist/es2015/core/entityObject/EntityObject' {
import { Entity } from "wonder.js/dist/es2015/core/Entity";
import { Hash } from "wonder-commonlib/dist/es2015/Hash";
import { Collection } from "wonder-commonlib/dist/es2015/Collection";
import { CustomEventRegisterData } from "wonder.js/dist/es2015/event/binder/CustomEventRegister";
import { ComponentManager } from "wonder.js/dist/es2015/core/entityObject/manager/ComponentManager";
import { Component } from "wonder.js/dist/es2015/core/Component";
import { Geometry } from "wonder.js/dist/es2015/component/geometry/Geometry";
import { Renderer } from "wonder.js/dist/es2015/renderer/renderer/Renderer";
import { GameObject } from "wonder.js/dist/es2015/core/entityObject/gameObject/GameObject";
import { Transform } from "wonder.js/dist/es2015/component/transform/Transform";
export abstract class EntityObject extends Entity {
bubbleParent: EntityObject;
componentDirty: boolean;
readonly transform: Transform;
name: string;
parent: EntityObject;
customEventMap: Hash<Collection<CustomEventRegisterData>>;
protected componentManager: ComponentManager;
initWhenCreate(): void;
clone(config?: CloneEntityObjectConfigData): any;
init(): this;
dispose(): void;
hasChild(child: EntityObject): boolean;
addChild(child: EntityObject): EntityObject;
getChildren(): Collection<any>;
removeChild(child: EntityObject): EntityObject;
forEach(func: (entityObject: EntityObject, index: number) => void): this;
getComponent<T>(_class: any): T;
hasComponent(component: Component): boolean;
hasComponent(_class: Function): boolean;
addComponent(component: Component, isShareComponent?: boolean): this;
removeComponent(component: Component): any;
removeComponent(_class: Function): any;
forEachComponent(func: (component: Component) => void): this;
render(renderer: Renderer, camera: GameObject): void;
update(elapsed: number): void;
clearCache(): void;
getGeometry(): Geometry;
protected abstract createTransform(): Transform;
protected afterInitChildren(): void;
protected getRenderList(): Collection<any>;
}
export type CloneEntityObjectConfigData = {
cloneChildren?: boolean;
shareGeometry?: boolean;
cloneGeometry?: boolean;
};
}
declare module 'wonder.js/dist/es2015/core/entityObject/gameObject/GameObject' {
import { EntityObject } from "wonder.js/dist/es2015/core/entityObject/EntityObject";
import { ThreeDTransform } from "wonder.js/dist/es2015/component/transform/ThreeDTransform";
import { Collection } from "wonder-commonlib/dist/es2015/Collection";
export class GameObject extends EntityObject {
static create(): GameObject;
transform: ThreeDTransform;
parent: GameObject;
renderGroup: number;
renderPriority: number;
isVisible: boolean;
protected children: Collection<GameObject>;
initWhenCreate(): void;
protected createTransform(): ThreeDTransform;
protected getRenderList(): Collection<GameObject>;
}
}
declare module 'wonder.js/dist/es2015/core/entityObject/manager/ComponentManager' {
import { EntityObject } from "wonder.js/dist/es2015/core/entityObject/EntityObject";
import { Transform } from "wonder.js/dist/es2015/component/transform/Transform";
import { Collection } from "wonder-commonlib/dist/es2015/Collection";
import { RendererComponent } from "wonder.js/dist/es2015/component/renderer/RendererComponent";
import { Geometry } from "wonder.js/dist/es2015/component/geometry/Geometry";
import { Component } from "wonder.js/dist/es2015/core/Component";
export class ComponentManager {
static create(entityObject: EntityObject): ComponentManager;
constructor(entityObject: EntityObject);
transform: Transform;
init(): void;
dispose(): void;
removeAllComponent(): Collection<Component>;
getComponent<T>(_class: any): T;
getComponents(): Collection<any>;
findComponentByUid(uid: number): any;
forEachComponent(func: (component: Component) => void): this;
hasComponent(component: Component): boolean;
hasComponent(_class: Function): boolean;
addComponent(component: Component, isShareComponent?: boolean): this;
removeComponent(component: Component): any;
removeComponent(_class: Function): any;
getComponentCount(_class: Function): number;
getGeometry(): Geometry;
getRendererComponent(): RendererComponent;
}
}
declare module 'wonder.js/dist/es2015/core/entityObject/manager/EntityObjectManager' {
import { EntityObject } from "wonder.js/dist/es2015/core/entityObject/EntityObject";
import { Collection } from "wonder-commonlib/dist/es2015/Collection";
export class EntityObjectManager {
static create(entityObject: EntityObject): EntityObjectManager;
constructor(entityObject: EntityObject);
init(): void;
dispose(): void;
hasChild(child: EntityObject): boolean;
addChild(child: EntityObject): this;
addChildren(children: EntityObject): any;
addChildren(children: Array<EntityObject>): any;
addChildren(children: Collection<EntityObject>): any;
forEach(func: (entityObject: EntityObject, index: number) => void): this;
filter(func: (entityObject: EntityObject) => boolean): Collection<any>;
sort(func: (a: EntityObject, b: EntityObject) => any, isSortSelf?: boolean): Collection<any>;
getChildren(): Collection<any>;
getAllChildren(): Collection<EntityObject>;
getChild(index: number): any;
findChildByUid(uid: number): any;
findChildByTag(tag: string): any;
findChildByName(name: string): any;
findChildrenByName(name: string): Collection<EntityObject>;
removeChild(child: EntityObject): this;
removeAllChildren(): void;
}
}
declare module 'wonder.js/dist/es2015/core/entityObject/scene/cache/BufferTable' {
import { ElementBuffer } from "wonder.js/dist/es2015/renderer/buffer/ElementBuffer";
import { Buffer } from "wonder.js/dist/es2015/renderer/buffer/Buffer";
export class BufferTable {
static lastBindedArrayBufferListUidStr: string;
static lastBindedElementBuffer: ElementBuffer;
static bindIndexBuffer(indexBuffer: ElementBuffer): void;
static hasBuffer(key: string): boolean;
static addBuffer(key: string, buffer: Buffer): void;
static getBuffer<T>(key: string): T;
static dispose(): void;
static clearAll(): void;
static resetBindedArrayBuffer(): void;
static resetBindedElementBuffer(): void;
}
export enum BufferTableKey {
PROCEDURAL_VERTEX,
PROCEDURAL_INDEX,
}
}
declare module 'wonder.js/dist/es2015/core/entityObject/scene/cache/ProgramTable' {
import { Program } from "wonder.js/dist/es2015/renderer/program/Program";
export class ProgramTable {
static lastUsedProgram: Program;
static hasProgram(key: string): boolean;
static addProgram(key: string, program: Program): void;
static getProgram(key: string): Program;
static dispose(): void;
static clearAll(): void;
}
}
declare module 'wonder.js/dist/es2015/core/entityObject/scene/gameObjectScene/GameObjectScene' {
import { Scene } from "wonder.js/dist/es2015/core/entityObject/scene/Scene";
import { GameObject } from "wonder.js/dist/es2015/core/entityObject/gameObject/GameObject";
import { Collection } from "wonder-commonlib/dist/es2015/Collection";
import { Renderer } from "wonder.js/dist/es2015/renderer/renderer/Renderer";
export class GameObjectScene extends Scene {
static create(): GameObjectScene;
currentCamera: any;
addChild(child: GameObject): GameObject;
update(elapsed: number): void;
render(renderer: Renderer): void;
protected getRenderList(): Collection<GameObject>;
protected createTransform(): any;
}
}
declare module 'wonder.js/dist/es2015/core/entityObject/scene/Scene' {
import { EntityObject } from "wonder.js/dist/es2015/core/entityObject/EntityObject";
export abstract class Scene extends EntityObject {
}
}
declare module 'wonder.js/dist/es2015/core/entityObject/scene/SceneDispatcher' {
import { EntityObject } from "wonder.js/dist/es2015/core/entityObject/EntityObject";
import { GameObject } from "wonder.js/dist/es2015/core/entityObject/gameObject/GameObject";
import { GameObjectScene } from "wonder.js/dist/es2015/core/entityObject/scene/gameObjectScene/GameObjectScene";
import { Collection } from "wonder-commonlib/dist/es2015/Collection";
export class SceneDispatcher extends EntityObject {
static create(): SceneDispatcher;
currentCamera: GameObject;
name: string;
gameObjectScene: GameObjectScene;
addChild(child: EntityObject): EntityObject;
dispose(): void;
hasChild(child: EntityObject): boolean;
addChildren(children: EntityObject): any;
addChildren(children: Array<EntityObject>): any;
addChildren(children: Collection<EntityObject>): any;
getChildren(): Collection<any>;
protected createTransform(): any;
}
}
declare module 'wonder.js/dist/es2015/core/Main' {
import { EScreenSize } from "wonder.js/dist/es2015/device/EScreenSize";
export class Main {
static setConfig({canvasId, isTest, screenSize, useDevicePixelRatio, contextConfig}: {
canvasId?: null;
isTest?: boolean;
screenSize?: EScreenSize;
useDevicePixelRatio?: boolean;
contextConfig?: {
options: {
alpha: boolean;
depth: boolean;
stencil: boolean;
antialias: boolean;
premultipliedAlpha: boolean;
preserveDrawingBuffer: boolean;
};
};
}): typeof Main;
static init(): typeof Main;
}
}
declare module 'wonder.js/dist/es2015/core/data/MainData' {
import { EScreenSize } from "wonder.js/dist/es2015/device/EScreenSize";
import { RectRegion } from "wonder.js/dist/es2015/structure/RectRegion";
export class MainData {
static isTest: boolean;
static screenSize: EScreenSize & RectRegion;
}
export type ContextConfigData = {
options: {
alpha: boolean;
depth: boolean;
stencil: boolean;
antialias: boolean;
premultipliedAlpha: boolean;
preserveDrawingBuffer: boolean;
};
};
}
declare module 'wonder.js/dist/es2015/definition/typescript/decorator/cache' {
export function cacheGetter(judgeFunc: () => boolean, returnCacheValueFunc: () => any, setCacheFunc: (returnVal: any) => void): (target: any, name: any, descriptor: any) => any;
export function cache(judgeFunc: any, returnCacheValueFunc: any, setCacheFunc: any): (target: any, name: any, descriptor: any) => any;
export function cacheBufferForBufferContainer(): (target: any, name: any, descriptor: any) => any;
export function cacheBufferForBufferContainerWithFuncParam(setDataNameFuncName: string): (target: any, name: any, descriptor: any) => any;
}
declare module 'wonder.js/dist/es2015/definition/typescript/decorator/clone' {
import { EntityObject } from "wonder.js/dist/es2015/core/entityObject/EntityObject";
export function cloneAttributeAsBasicType(configData?: CloneAttributeAsBasicTypeConfigData): (target: any, memberName: string | symbol) => void;
export function cloneAttributeAsCloneable(configData?: CloneAttributeAsCloneableConfigData): (target: any, memberName: string | symbol) => void;
export function cloneAttributeAsCustomType(cloneFunc: (source: any, target: any, memberName: string, cloneData: any) => void, configData?: CloneAttributeAsCustomTypeConfigData): (target: any, memberName: string | symbol) => void;
export class CloneUtils {
static clone<T>(sourceInstance: T, cloneData?: any, createDataArr?: Array<any>, target?: any): T;
static cloneArray(arr: Array<any> | null, isDeep?: boolean): any;
static markNotClone(entityObject: EntityObject): void;
static isNotClone(entityObject: EntityObject): boolean;
}
export type CloneAttributeAsBasicTypeConfigData = {
order?: number;
};
export type CloneAttributeAsCloneableConfigData = {
order?: number;
};
export type CloneAttributeAsCustomTypeConfigData = {
order?: number;
};
export enum CloneType {
CLONEABLE = 0,
BASIC = 1,
CUSTOM = 2,
}
}
declare module 'wonder.js/dist/es2015/definition/typescript/decorator/contract' {
export function assert(cond: boolean, message?: string): void;
export function describe(message: string, func: Function, preCondition?: Function, context?: any): void;
export function it(message: string, func: Function, context?: any): void;
export function requireCheck(inFunc: any): (target: any, name: any, descriptor: any) => any;
export function ensure(outFunc: any): (target: any, name: any, descriptor: any) => any;
export function requireGetterAndSetter(inGetterFunc: any, inSetterFunc: any): (target: any, name: any, descriptor: any) => any;
export function requireGetter(inFunc: any): (target: any, name: any, descriptor: any) => any;
export function requireSetter(inFunc: any): (target: any, name: any, descriptor: any) => any;
export function ensureGetterAndSetter(outGetterFunc: any, outSetterFunc: any): (target: any, name: any, descriptor: any) => any;
export function ensureGetter(outFunc: any): (target: any, name: any, descriptor: any) => any;
export function ensureSetter(outFunc: any): (target: any, name: any, descriptor: any) => any;
export function invariant(func: any): (target: any) => void;
}
declare module 'wonder.js/dist/es2015/definition/typescript/decorator/control' {
export function execOnlyOnce(flagName: string): (target: any, name: any, descriptor: any) => any;
}
declare module 'wonder.js/dist/es2015/definition/typescript/decorator/registerClass' {
export function registerClass(className: string): (_class: any) => void;
}
declare module 'wonder.js/dist/es2015/definition/typescript/decorator/singleton' {
export function singleton(isInitWhenCreate?: boolean): (target: any) => void;
}
declare module 'wonder.js/dist/es2015/definition/typescript/decorator/virtual' {
export function virtual(target: any, name: any, descriptor: any): any;
}
declare module 'wonder.js/dist/es2015/definition/Variable' {
export var root: any;
}
declare module 'wonder.js/dist/es2015/device/DeviceManager' {
import { Vector2 } from "wonder.js/dist/es2015/math/Vector2";
import { IView } from "wonder.js/dist/es2015/structure/View";
import { ContextConfigData } from "wonder.js/dist/es2015/core/data/MainData";
import { RectRegion } from "wonder.js/dist/es2015/structure/RectRegion";
export class DeviceManager {
static getInstance(): any;
scissorTest: boolean;
setScissor(x: number, y: number, width: number, height: number): void;
setViewport(x: number, y: number, width: number, height: number): void;
getViewport(): RectRegion;
depthTest: boolean;
depthFunc: EDepthFunction;
side: ESide;
polygonOffset: Vector2;
polygonOffsetMode: EPolygonOffsetMode;
depthWrite: boolean;
blend: boolean;
alphaToCoverage: boolean;
view: IView;
gl: WebGLRenderingContext;
contextConfig: ContextConfigData;
setBlendFunc(blendSrc: EBlendFunc, blendDst: EBlendFunc): void;
setBlendEquation(blendEquation: EBlendEquation): void;
setBlendFuncSeparate(blendFuncSeparate: Array<EBlendFunc>): void;
setBlendEquationSeparate(blendEquationSeparate: Array<EBlendEquation>): void;
setColorWrite(writeRed: any, writeGreen: any, writeBlue: any, writeAlpha: any): void;
clear(options: any): void;
createGL(canvasId: string, contextConfig: ContextConfigData, useDevicePixelRatio: boolean): void;
setScreen(): void;
setHardwareScaling(level: number): void;
setPixelRatio(pixelRatio: number): void;
getPixelRatio(): number;
}
export enum EDepthFunction {
NEVER,
ALWAYS,
LESS,
LEQUAL,
EQUAL,
GEQUAL,
GREATER,
NOTEQUAL,
}
export enum ESide {
NONE = 0,
BOTH = 1,
BACK = 2,
FRONT = 3,
}
export enum EPolygonOffsetMode {
NONE = 0,
IN = 1,
OUT = 2,
CUSTOM = 3,
}
export enum EBlendFunc {
ZERO,
ONE,
SRC_COLOR,
ONE_MINUS_SRC_COLOR,
DST_COLOR,
ONE_MINUS_DST_COLOR,
SRC_ALPHA,
SRC_ALPHA_SATURATE,
ONE_MINUS_SRC_ALPHA,
DST_ALPHA,
ONE_MINUS_DST_ALPH,
}
export enum EBlendEquation {
ADD,
SUBTRACT,
REVERSE_SUBTRAC,
}
export enum EBlendType {
NONE = 0,
NORMAL = 1,
ADDITIVE = 2,
ADDITIVEALPHA = 3,
MULTIPLICATIVE = 4,
PREMULTIPLIED = 5,
}
export enum ECanvasType {
TwoDUI,
}
export type CanvasMapData = {
canvas: HTMLCanvasElement;
context: CanvasRenderingContext2D;
};
}
declare module 'wonder.js/dist/es2015/device/EScreenSize' {
export enum EScreenSize {
FULL = 0,
}
}
declare module 'wonder.js/dist/es2015/device/GPUDetector' {
export class GPUDetector {
static getInstance(): any;
readonly gl: any;
maxTextureUnit: number;
maxTextureSize: number;
maxCubemapTextureSize: number;
maxAnisotropy: number;
maxBoneCount: number;
extensionCompressedTextureS3TC: any;
extensionTextureFilterAnisotropic: any;
extensionInstancedArrays: any;
extensionUintIndices: boolean;
extensionDepthTexture: boolean;
extensionVAO: any;
extensionStandardDerivatives: boolean;
precision: number;
detect(): void;
}
export enum EGPUPrecision {
HIGHP = 0,
MEDIUMP = 1,
LOWP = 2,
}
}
declare module 'wonder.js/dist/es2015/event/binder/CustomEventBinder' {
import { EventBinder } from "wonder.js/dist/es2015/event/binder/EventBinder";
import { EEventName } from "wonder.js/dist/es2015/event/object/EventNameHandler";
import { EntityObject } from "wonder.js/dist/es2015/core/entityObject/EntityObject";
export class CustomEventBinder extends EventBinder {
static getInstance(): any;
on(eventName: EEventName | string, handler: Function): void;
on(eventName: EEventName | string, handler: Function, priority: number): void;
on(target: EntityObject, eventName: EEventName | string, handler: Function): void;
on(target: EntityObject, eventName: EEventName | string, handler: Function, priority: number): void;
off(): void;
off(eventName: EEventName | string): void;
off(target: EntityObject): void;
off(eventName: EEventName | string, handler: Function): void;
off(target: EntityObject, eventName: EEventName | string): void;
off(target: EntityObject, eventName: EEventName | string, handler: Function): void;
}
}
declare module 'wonder.js/dist/es2015/event/binder/CustomEventRegister' {
import { EventRegister } from "wonder.js/dist/es2015/event/binder/EventRegister";
import { CustomEventListenerMap } from "wonder.js/dist/es2015/event/structure/CustomEventListenerMap";
import { EEventName } from "wonder.js/dist/es2015/event/object/EventNameHandler";
import { EntityObject } from "wonder.js/dist/es2015/core/entityObject/EntityObject";
export class CustomEventRegister extends EventRegister {
static getInstance(): any;
protected listenerMap: CustomEventListenerMap;
register(eventName: EEventName, handler: Function, originHandler: Function, domHandler: Function, priority: number): any;
register(target: EntityObject, eventName: EEventName, handler: Function, originHandler: Function, domHandler: Function, priority: number): any;
remove(eventName: EEventName): any;
remove(target: EntityObject): any;
remove(eventName: EEventName, handler: Function): any;
remove(uid: number, eventName: EEventName): any;
remove(target: EntityObject, eventName: EEventName): any;
remove(target: EntityObject, eventName: EEventName, handler: Function): any;
setBubbleParent(target: EntityObject, parent: EntityObject): void;
}
export type CustomEventRegisterData = {
target: EntityObject;
originHandler: Function;
handler: Function;
domHandler: Function;
priority: number;
};
}
declare module 'wonder.js/dist/es2015/event/binder/DomEventBinder' {
import { EventBinder } from "wonder.js/dist/es2015/event/binder/EventBinder";
import { EEventName } from "wonder.js/dist/es2015/event/object/EventNameHandler";
export class DomEventBinder extends EventBinder {
static getInstance(): any;
on(eventName: EEventName | string, handler: Function): void;
on(eventName: EEventName | string, handler: Function, priority: number): void;
on(dom: HTMLElement, eventName: EEventName | string, handler: Function): void;
on(dom: HTMLElement, eventName: EEventName | string, handler: Function, priority: number): void;
off(): void;
off(eventName: EEventName | string): void;
off(dom: HTMLElement): void;
off(eventName: EEventName | string, handler: Function): void;
off(dom: HTMLElement, eventName: EEventName): void;
off(dom: HTMLElement, eventName: EEventName, handler: Function): void;
}
}
declare module 'wonder.js/dist/es2015/event/binder/DomEventRegister' {
import { EventRegister } from "wonder.js/dist/es2015/event/binder/EventRegister";
import { DomEventListenerMap } from "wonder.js/dist/es2015/event/structure/DomEventListenerMap";
import { EEventName } from "wonder.js/dist/es2015/event/object/EventNameHandler";
import { Hash } from "wonder-commonlib/dist/es2015/Hash";
import { EntityObject } from "wonder.js/dist/es2015/core/entityObject/EntityObject";
export class DomEventRegister extends EventRegister {
static getInstance(): any;
protected listenerMap: DomEventListenerMap;
register(dom: HTMLElement, eventName: EEventName, eventData: Hash<any>, handler: Function, originHandler: Function, domHandler: Function, priority: number): void;
remove(eventName: EEventName): any;
remove(eventName: EEventName, handler: Function): any;
remove(dom: HTMLElement, eventName: EEventName): any;
remove(dom: HTMLElement, eventName: EEventName, handler: Function): any;
isBinded(dom: HTMLElement, eventName: EEventName): boolean;
getDomHandler(dom: HTMLElement, eventName: EEventName): Function;
}
export type DomEventRegisterData = {
dom?: HTMLElement;
target?: EntityObject;
eventData: Hash<any>;
originHandler: Function;
handler: Function;
domHandler: Function;
priority: number;
};
}
declare module 'wonder.js/dist/es2015/event/binder/EventBinder' {
export abstract class EventBinder {
abstract on(...args: any[]): void;
abstract off(...args: any[]): void;
}
}
declare module 'wonder.js/dist/es2015/event/binder/EventRegister' {
import { EventListenerMap } from "wonder.js/dist/es2015/event/structure/EventListenerMap";
import { EEventName } from "wonder.js/dist/es2015/event/object/EventNameHandler";
import { EntityObject } from "wonder.js/dist/es2015/core/entityObject/EntityObject";
import { Collection } from "wonder-commonlib/dist/es2015/Collection";
export abstract class EventRegister {
protected abstract listenerMap: EventListenerMap;
abstract register(...args: any[]): void;
abstract remove(...args: any[]): any;
getEventRegisterDataList(eventName: EEventName): any;
getEventRegisterDataList(currentTarget: EntityObject, eventName: EEventName): any;
getEventRegisterDataList(dom: HTMLElement, eventName: EEventName): any;
forEachAll(func: (list: Collection<any>, eventName: EEventName) => void): void;
forEachEventName(func: (list: Collection<EventRegisterData>, eventName: EEventName) => void): void;
clear(): void;
getChild(target: EntityObject): any;
getChild(dom: HTMLElement): any;
getChild(target: EntityObject, eventName: EEventName): any;
getChild(dom: HTMLElement, eventName: EEventName): any;
}
export type EventRegisterData = {
originHandler: Function;
handler: Function;
domHandler: Function;
priority: number;
};
}
declare module 'wonder.js/dist/es2015/event/dispatcher/CustomEventDispatcher' {
import { EventDispatcher } from "wonder.js/dist/es2015/event/dispatcher/EventDispatcher";
import { Event } from "wonder.js/dist/es2015/event/object/Event";
import { EntityObject } from "wonder.js/dist/es2015/core/entityObject/EntityObject";
export class CustomEventDispatcher extends EventDispatcher {
static getInstance(): any;
trigger(event: Event): boolean;
trigger(event: Event, userData: any): boolean;
trigger(target: EntityObject, event: Event): boolean;
trigger(target: EntityObject, event: Event, notSetTarget: boolean): boolean;
trigger(target: EntityObject, event: Event, userData: any): boolean;
trigger(target: EntityObject, event: Event, userData: any, notSetTarget: boolean): boolean;
emit(target: EntityObject, eventObject: Event, userData?: any): void;
broadcast(target: EntityObject, eventObject: Event, userData?: any): void;
}
}
declare module 'wonder.js/dist/es2015/event/dispatcher/DomEventDispatcher' {
import { EventDispatcher } from "wonder.js/dist/es2015/event/dispatcher/EventDispatcher";
import { Event } from "wonder.js/dist/es2015/event/object/Event";
export class DomEventDispatcher extends EventDispatcher {
static getInstance(): any;
trigger(event: Event): void;
trigger(dom: HTMLElement, event: Event): void;
}
}
declare module 'wonder.js/dist/es2015/event/dispatcher/EventDispatcher' {
export abstract class EventDispatcher {
abstract trigger(...args: any[]): any;
}
}
declare module 'wonder.js/dist/es2015/event/EEngineEvent' {
export enum EEngineEvent {
STARTLOOP,
ENDLOOP,
POINT_TAP,
POINT_DOWN,
POINT_UP,
POINT_MOVE,
POINT_OVER,
POINT_OUT,
POINT_SCALE,
POINT_DRAG,
TRANSFORM_TRANSLATE,
TRANSFORM_ROTATE,
TRANSFORM_SCALE,
}
}
declare module 'wonder.js/dist/es2015/event/EventManager' {
import { EEventName } from "wonder.js/dist/es2015/event/object/EventNameHandler";
import { EEngineEvent } from "wonder.js/dist/es2015/event/EEngineEvent";
import { EntityObject } from "wonder.js/dist/es2015/core/entityObject/EntityObject";
import { Event } from "wonder.js/dist/es2015/event/object/Event";
import { FromEventPatternStream } from "wonder-frp/dist/es2015/stream/FromEventPatternStream";
export class EventManager {
static on(eventName: EEventName | EEngineEvent | string, handler: Function): void;
static on(eventName: EEventName | EEngineEvent | string, handler: Function, priority: number): void;
static on(target: EntityObject, eventName: EEventName | EEngineEvent | string, handler: Function): void;
static on(dom: HTMLElement, eventName: EEventName | EEngineEvent | string, handler: Function): void;
static on(target: EntityObject, eventName: EEventName | EEngineEvent | string, handler: Function, priority: number): void;
static on(dom: HTMLElement, eventName: EEventName | EEngineEvent | string, handler: Function, priority: number): void;
static off(): void;
static off(eventName: EEventName | EEngineEvent | string): void;
static off(target: EntityObject): void;
static off(dom: HTMLElement): void;
static off(eventName: EEventName | EEngineEvent | string, handler: Function): void;
static off(target: EntityObject, eventName: EEventName | EEngineEvent | string): void;
static off(dom: HTMLElement, eventName: EEventName): void;
static off(target: EntityObject, eventName: EEventName | EEngineEvent | string, handler: Function): void;
static off(dom: HTMLElement, eventName: EEventName, handler: Function): void;
static trigger(event: Event): void;
static trigger(event: Event, userData: any): void;
static trigger(target: EntityObject, event: Event): void;
static trigger(dom: HTMLElement, event: Event): void;
static trigger(target: EntityObject, event: Event, userData: any): void;
static trigger(target: EntityObject, event: Event, userData: any, notSetTarget: boolean): void;
static broadcast(target: EntityObject, event: Event): any;
static broadcast(target: EntityObject, event: Event, userData: any): any;
static emit(target: EntityObject, event: Event): any;
static emit(target: EntityObject, event: Event, userData: any): any;
static fromEvent(eventName: EEventName | EEngineEvent | string): FromEventPatternStream;
static fromEvent(eventName: EEventName | EEngineEvent | string, priority: number): FromEventPatternStream;
static fromEvent(target: EntityObject, eventName: EEventName | EEngineEvent | string): FromEventPatternStream;
static fromEvent(dom: HTMLElement, eventName: EEventName | EEngineEvent | string): FromEventPatternStream;
static fromEvent(target: EntityObject, eventName: EEventName | EEngineEvent | string, priority: number): FromEventPatternStream;
static fromEvent(dom: HTMLElement, eventName: EEventName | EEngineEvent | string, priority: number): FromEventPatternStream;
static setBubbleParent(target: EntityObject, parent: any): void;
}
}
declare module 'wonder.js/dist/es2015/event/factory/EventBinderFactory' {
import { EEventName } from "wonder.js/dist/es2015/event/object/EventNameHandler";
export class EventBinderFactory {
static createEventBinder(eventName: EEventName): any;
}
}
declare module 'wonder.js/dist/es2015/event/factory/EventDispatcherFactory' {
import { Event } from "wonder.js/dist/es2015/event/object/Event";
export class EventDispatcherFactory {
static createEventDispatcher(event: Event): any;
}
}
declare module 'wonder.js/dist/es2015/event/factory/EventHandlerFactory' {
import { EEventType } from "wonder.js/dist/es2015/event/object/EEventType";
export class EventHandlerFactory {
static createEventHandler(eventType: EEventType): any;
}
}
declare module 'wonder.js/dist/es2015/event/handler/CustomEventHandler' {
import { EventHandler } from "wonder.js/dist/es2015/event/handler/EventHandler";
import { EntityObject } from "wonder.js/dist/es2015/core/entityObject/EntityObject";
import { Event } from "wonder.js/dist/es2015/event/object/Event";
export class CustomEventHandler extends EventHandler {
static getInstance(): any;
on(eventName: string, handler: Function, priority: number): void;
on(target: EntityObject, eventName: string, handler: Function, priority: number): void;
off(eventName: string): void;
off(uid: number, eventName: string): void;
off(eventName: string, handler: Function): void;
off(target: EntityObject, eventName: string, handler: Function): void;
trigger(event: Event): boolean;
trigger(event: Event, userData: any): boolean;
trigger(target: EntityObject, event: Event, notSetTarget: boolean): boolean;
trigger(target: EntityObject, event: Event, userData: any, notSetTarget: boolean): boolean;
}
}
declare module 'wonder.js/dist/es2015/event/handler/DomEventHandler' {
import { EventHandler } from "wonder.js/dist/es2015/event/handler/EventHandler";
import { EEventName } from "wonder.js/dist/es2015/event/object/EventNameHandler";
import { Event } from "wonder.js/dist/es2015/event/object/Event";
import { IEventData } from "wonder.js/dist/es2015/event/interface/IEventData";
import { Hash } from "wonder-commonlib/dist/es2015/Hash";
export abstract class DomEventHandler extends EventHandler {
off(): void;
off(eventName: EEventName): void;
off(eventName: EEventName, handler: Function): void;
off(dom: HTMLElement, eventName: EEventName): void;
off(dom: HTMLElement, eventName: EEventName, handler: Function): void;
trigger(event: Event): void;
trigger(dom: HTMLElement, event: Event): void;
protected abstract triggerDomEvent(dom: HTMLElement, event: IEventData, eventName: EEventName): any;
protected abstract addEngineHandler(eventName: EEventName, handler: Function): any;
protected abstract getDefaultDom(): HTMLElement;
protected abstract createEventData(): Hash<any>;
protected clearHandler(): void;
protected buildDomHandler(dom: HTMLElement, eventName: EEventName): (event: any) => any;
protected handler(dom: HTMLElement, eventName: EEventName, handler: Function, priority: number): void;
}
}
declare module 'wonder.js/dist/es2015/event/handler/EventHandler' {
export abstract class EventHandler {
abstract on(...args: any[]): any;
abstract off(...args: any[]): any;
abstract trigger(...args: any[]): any;
}
}
declare module 'wonder.js/dist/es2015/event/handler/KeyboardEventHandler' {
import { DomEventHandler } from "wonder.js/dist/es2015/event/handler/DomEventHandler";
import { EEventName } from "wonder.js/dist/es2015/event/object/EventNameHandler";
import { KeyboardEvent } from "wonder.js/dist/es2015/event/object/KeyboardEvent";
import { IKeyboardEventData } from "wonder.js/dist/es2015/event/interface/IEventData";
import { Hash } from "wonder-commonlib/dist/es2015/Hash";
export class KeyboardEventHandler extends DomEventHandler {
static getInstance(): any;
on(eventName: EEventName, handler: (event: KeyboardEvent) => void, priority: number): any;
on(dom: HTMLElement, eventName: EEventName, handler: (event: KeyboardEvent) => void, priority: number): any;
protected triggerDomEvent(dom: HTMLElement, event: IKeyboardEventData, eventName: EEventName): void;
protected getDefaultDom(): HTMLElement;
protected addEngineHandler(eventName: EEventName, handler: (event: KeyboardEvent) => void): any;
protected createEventData(): Hash<any>;
}
}
declare module 'wonder.js/dist/es2015/event/handler/MouseEventHandler' {
import { PointEventHandler } from "wonder.js/dist/es2015/event/handler/PointEventHandler";
import { EEventName } from "wonder.js/dist/es2015/event/object/EventNameHandler";
import { MouseEvent } from "wonder.js/dist/es2015/event/object/MouseEvent";
import { IMouseEventData } from "wonder.js/dist/es2015/event/interface/IEventData";
export class MouseEventHandler extends PointEventHandler {
static getInstance(): any;
protected addEngineHandler(eventName: EEventName, handler: (event: MouseEvent) => void): any;
protected createEventObject(dom: HTMLElement, event: IMouseEventData, eventName: EEventName): MouseEvent;
}
}
declare module 'wonder.js/dist/es2015/event/handler/PointEventHandler' {
import { DomEventHandler } from "wonder.js/dist/es2015/event/handler/DomEventHandler";
import { EEventName } from "wonder.js/dist/es2015/event/object/EventNameHandler";
import { DomEvent } from "wonder.js/dist/es2015/event/object/DomEvent";
import { IEventData } from "wonder.js/dist/es2015/event/interface/IEventData";
import { Hash } from "wonder-commonlib/dist/es2015/Hash";
import { MouseEvent } from "wonder.js/dist/es2015/event/object/MouseEvent";
import { TouchEvent } from "wonder.js/dist/es2015/event/object/TouchEvent";
export abstract class PointEventHandler extends DomEventHandler {
on(eventName: EEventName, handler: (event: DomEvent) => void, priority: number): any;
on(dom: HTMLElement, eventName: EEventName, handler: (event: DomEvent) => void, priority: number): any;
protected abstract createEventObject(dom: HTMLElement, event: IEventData, eventName: EEventName): DomEvent;
protected getDefaultDom(): HTMLElement;
protected triggerDomEvent(dom: HTMLElement, event: IEventData, eventName: EEventName): void;
protected createEventData(): Hash<any>;
protected handleMove(handler: (event: MouseEvent | TouchEvent) => void): (event: MouseEvent | TouchEvent, eventData: Hash<any>) => void;
}
}
declare module 'wonder.js/dist/es2015/event/handler/TouchEventHandler' {
import { PointEventHandler } from "wonder.js/dist/es2015/event/handler/PointEventHandler";
import { EEventName } from "wonder.js/dist/es2015/event/object/EventNameHandler";
import { TouchEvent } from "wonder.js/dist/es2015/event/object/TouchEvent";
import { ITouchEventData } from "wonder.js/dist/es2015/event/interface/IEventData";
export class TouchEventHandler extends PointEventHandler {
static getInstance(): any;
protected addEngineHandler(eventName: EEventName, handler: (event: TouchEvent) => void): any;
protected createEventObject(dom: HTMLElement, event: ITouchEventData, eventName: EEventName): TouchEvent;
}
}
declare module 'wonder.js/dist/es2015/event/object/CustomEvent' {
import { Event } from "wonder.js/dist/es2015/event/object/Event";
import { EEventType } from "wonder.js/dist/es2015/event/object/EEventType";
import { DomEvent } from "wonder.js/dist/es2015/event/object/DomEvent";
export class CustomEvent extends Event {
static create(eventName: string): any;
static create(eventName: string, userData: any): any;
constructor(eventName: string);
constructor(eventName: string, userData: any);
readonly type: EEventType;
userData: any;
copyPublicAttri(destination: any, source: any): any;
clone(): CustomEvent;
getDataFromDomEvent(event: DomEvent): void;
}
}
declare module 'wonder.js/dist/es2015/event/object/DomEvent' {
import { Event } from "wonder.js/dist/es2015/event/object/Event";
import { EEventName } from "wonder.js/dist/es2015/event/object/EventNameHandler";
import { CustomEvent } from "wonder.js/dist/es2015/event/object/CustomEvent";
export abstract class DomEvent extends Event {
constructor(event: any, eventName: EEventName);
event: any;
preventDefault(): void;
getDataFromCustomEvent(event: CustomEvent): void;
}
}
declare module 'wonder.js/dist/es2015/event/object/EEventPhase' {
export enum EEventPhase {
BROADCAST = 0,
EMIT = 1,
}
}
declare module 'wonder.js/dist/es2015/event/object/EEventType' {
export enum EEventType {
MOUSE = 0,
TOUCH = 1,
POINT = 2,
KEYBOARD = 3,
CUSTOM = 4,
}
}
declare module 'wonder.js/dist/es2015/event/object/EMouseButton' {
export enum EMouseButton {
LEFT = 0,
RIGHT = 1,
CENTER = 2,
}
}
declare module 'wonder.js/dist/es2015/event/object/Event' {
import { EEventName } from "wonder.js/dist/es2015/event/object/EventNameHandler";
import { EEventType } from "wonder.js/dist/es2015/event/object/EEventType";
import { EEngineEvent } from "wonder.js/dist/es2015/event/EEngineEvent";
import { EntityObject } from "wonder.js/dist/es2015/core/entityObject/EntityObject";
import { EEventPhase } from "wonder.js/dist/es2015/event/object/EEventPhase";
export abstract class Event {
protected constructor(eventName: EEventName);
readonly abstract type: EEventType;
name: string | EEventName | EEngineEvent;
target: HTMLElement | EntityObject;
currentTarget: HTMLElement | EntityObject;
isStopPropagation: boolean;
phase: EEventPhase;
abstract clone(): any;
stopPropagation(): void;
protected copyMember(destination: Event, source: Event, memberArr: [any]): Event;
}
}
declare module 'wonder.js/dist/es2015/event/object/EventNameHandler' {
export enum EEventName {
CLICK,
MOUSEOVER,
MOUSEUP,
MOUSEOUT,
MOUSEMOVE,
MOUSEDOWN,
MOUSEWHEEL,
MOUSEDRAG,
TOUCHUP,
TOUCHMOVE,
TOUCHDOWN,
KEYDOWN,
KEYUP,
KEYPRESS,
}
export class EventNameHandler {
static handleEventName(domEventName: EEventName): any;
}
}
declare module 'wonder.js/dist/es2015/event/object/EventTable' {
import { EEventType } from "wonder.js/dist/es2015/event/object/EEventType";
import { EEventName } from "wonder.js/dist/es2015/event/object/EventNameHandler";
export class EventTable {
static getEventType(eventName: EEventName): EEventType;
}
}
declare module 'wonder.js/dist/es2015/event/object/KeyboardEvent' {
import { DomEvent } from "wonder.js/dist/es2015/event/object/DomEvent";
import { EEventName } from "wonder.js/dist/es2015/event/object/EventNameHandler";
import { IKeyboardEventData } from "wonder.js/dist/es2015/event/interface/IEventData";
import { EEventType } from "wonder.js/dist/es2015/event/object/EEventType";
export class KeyboardEvent extends DomEvent {
static create(event: any, eventName: EEventName): KeyboardEvent;
event: IKeyboardEventData;
readonly ctrlKey: number;
readonly altKey: number;
readonly shiftKey: number;
readonly metaKey: number;
readonly keyCode: number;
readonly key: any;
readonly type: EEventType;
keyState: any;
clone(): KeyboardEvent;
}
}
declare module 'wonder.js/dist/es2015/event/object/MouseEvent' {
import { DomEvent } from "wonder.js/dist/es2015/event/object/DomEvent";
import { IMouseEventData } from "wonder.js/dist/es2015/event/interface/IEventData";
import { EEventName } from "wonder.js/dist/es2015/event/object/EventNameHandler";
import { Point } from "wonder.js/dist/es2015/structure/Point";
import { EEventType } from "wonder.js/dist/es2015/event/object/EEventType";
export class MouseEvent extends DomEvent {
static create(event: IMouseEventData, eventName: EEventName): MouseEvent;
event: IMouseEventData;
location: Point;
locationInView: Point;
button: number;
readonly wheel: number;
readonly movementDelta: {
x: any;
y: any;
};
readonly type: EEventType;
lastX: number;
lastY: number;
clone(): MouseEvent;
}
}
declare module 'wonder.js/dist/es2015/event/object/MousePointEvent' {
import { PointEvent } from "wonder.js/dist/es2015/event/object/PointEvent";
import { EEventName } from "wonder.js/dist/es2015/event/object/EventNameHandler";
import { MouseEvent } from "wonder.js/dist/es2015/event/object/MouseEvent";
import { Point } from "wonder.js/dist/es2015/structure/Point";
export class MousePointEvent extends PointEvent {
static create(eventName: EEventName): MousePointEvent;
eventObj: MouseEvent;
location: Point;
locationInView: Point;
button: number;
readonly wheel: number;
readonly movementDelta: {
x: any;
y: any;
};
getDataFromEventObj(e: MouseEvent): void;
clone(): any;
}
}
declare module 'wonder.js/dist/es2015/event/object/PointEvent' {
import { DomEvent } from "wonder.js/dist/es2015/event/object/DomEvent";
import { IPointEventData } from "wonder.js/dist/es2015/event/interface/IEventData";
import { Point } from "wonder.js/dist/es2015/structure/Point";
import { EEventType } from "wonder.js/dist/es2015/event/object/EEventType";
import { MouseEvent } from "wonder.js/dist/es2015/event/object/MouseEvent";
import { TouchEvent } from "wonder.js/dist/es2015/event/object/TouchEvent";
export abstract class PointEvent extends DomEvent {
event: IPointEventData;
abstract location: Point;
abstract locationInView: Point;
abstract button: number | null;
readonly abstract wheel: number | null;
readonly abstract movementDelta: Point;
lastX: number;
lastY: number;
readonly type: EEventType;
eventObj: MouseEvent | TouchEvent;
abstract getDataFromEventObj(eventObj: TouchEvent | MouseEvent): void;
protected cloneHelper(eventObj: PointEvent): PointEvent;
}
}
declare module 'wonder.js/dist/es2015/event/object/TouchEvent' {
import { DomEvent } from "wonder.js/dist/es2015/event/object/DomEvent";
import { ITouchEventData, ITouchData } from "wonder.js/dist/es2015/event/interface/IEventData";
import { EEventName } from "wonder.js/dist/es2015/event/object/EventNameHandler";
import { Point } from "wonder.js/dist/es2015/structure/Point";
import { EEventType } from "wonder.js/dist/es2015/event/object/EEventType";
export class TouchEvent extends DomEvent {
static create(event: ITouchEventData, eventName: EEventName): TouchEvent;
event: ITouchEventData;
location: Point;
readonly touchData: ITouchData;
locationInView: Point;
readonly movementDelta: {
x: any;
y: any;
};
readonly type: EEventType;
lastX: number;
lastY: number;
clone(): TouchEvent;
}
}
declare module 'wonder.js/dist/es2015/event/object/TouchPointEvent' {
import { PointEvent } from "wonder.js/dist/es2015/event/object/PointEvent";
import { EEventName } from "wonder.js/dist/es2015/event/object/EventNameHandler";
import { TouchEvent } from "wonder.js/dist/es2015/event/object/TouchEvent";
import { Point } from "wonder.js/dist/es2015/structure/Point";
export class TouchPointEvent extends PointEvent {
static create(eventName: EEventName): TouchPointEvent;
eventObj: TouchEvent;
location: Point;
locationInView: Point;
readonly wheel: any;
readonly movementDelta: {
x: any;
y: any;
};
button: number;
getDataFromEventObj(e: TouchEvent): void;
clone(): any;
}
}
declare module 'wonder.js/dist/es2015/event/structure/CustomEventListenerMap' {
import { EventListenerMap } from "wonder.js/dist/es2015/event/structure/EventListenerMap";
import { Collection } from "wonder-commonlib/dist/es2015/Collection";
import { CustomEventRegisterData } from "wonder.js/dist/es2015/event/binder/CustomEventRegister";
import { EntityObject } from "wonder.js/dist/es2015/core/entityObject/EntityObject";
import { EEventName } from "wonder.js/dist/es2015/event/object/EventNameHandler";
export class CustomEventListenerMap extends EventListenerMap {
static create(): CustomEventListenerMap;
hasChild(target: EntityObject): boolean;
appendChild(eventName: EEventName, data: any): any;
appendChild(target: EntityObject, eventName: EEventName, data: any): any;
forEachAll(func: (list: Collection<CustomEventRegisterData>, eventName: EEventName) => void): void;
forEachEventName(func: (list: Collection<CustomEventRegisterData>, eventName: EEventName) => void): void;
clear(): void;
getChild(eventName: EEventName): Collection<CustomEventRegisterData>;
getChild(target: EntityObject): Collection<CustomEventRegisterData>;
getChild(target: EntityObject, eventName: EEventName): Collection<CustomEventRegisterData>;
removeChild(eventName: EEventName): void;
removeChild(target: EntityObject): void;
removeChild(eventName: EEventName, handler: Function): void;
removeChild(uid: number, eventName: EEventName): void;
removeChild(target: EntityObject, eventName: EEventName): void;
removeChild(target: EntityObject, eventName: EEventName, handler: Function): void;
protected buildFirstLevelKey(target: EntityObject): any;
protected buildFirstLevelKey(uid: number): any;
}
}
declare module 'wonder.js/dist/es2015/event/structure/DomEventListenerMap' {
import { EventListenerMap } from "wonder.js/dist/es2015/event/structure/EventListenerMap";
import { Collection } from "wonder-commonlib/dist/es2015/Collection";
import { DomEventRegisterData } from "wonder.js/dist/es2015/event/binder/DomEventRegister";
import { EEventName } from "wonder.js/dist/es2015/event/object/EventNameHandler";
export class DomEventListenerMap extends EventListenerMap {
static create(): DomEventListenerMap;
hasChild(dom: HTMLElement, eventName: EEventName): boolean;
appendChild(dom: HTMLElement, eventName: EEventName, data: any): void;
forEachAll(func: (list: Collection<DomEventRegisterData>, eventName: EEventName) => void): void;
forEachEventName(func: (list: Collection<DomEventRegisterData>, eventName: EEventName) => void): void;
clear(): void;
getChild(dom: HTMLElement): Collection<DomEventRegisterData>;
getChild(dom: HTMLElement, eventName: EEventName): Collection<DomEventRegisterData>;
removeChild(eventName: EEventName): Collection<DomEventOffData>;
removeChild(eventName: EEventName, handler: Function): Collection<DomEventOffData>;
removeChild(dom: HTMLElement, eventName: EEventName): Collection<DomEventOffData>;
removeChild(dom: HTMLElement, eventName: EEventName, handler: Function): Collection<DomEventOffData>;
protected buildFirstLevelKey(dom: HTMLElement): string;
}
export type DomEventOffData = {
dom: HTMLElement;
eventName: EEventName;
domHandler: Function;
};
}
declare module 'wonder.js/dist/es2015/event/structure/EventListenerMap' {
import { Collection } from "wonder-commonlib/dist/es2015/Collection";
import { EEventName } from "wonder.js/dist/es2015/event/object/EventNameHandler";
import { EntityObject } from "wonder.js/dist/es2015/core/entityObject/EntityObject";
export abstract class EventListenerMap {
abstract getChild(...args: any[]): Collection<any>;
abstract removeChild(...args: any[]): any;
abstract hasChild(...args: any[]): boolean;
abstract appendChild(...args: any[]): void;
abstract forEachAll(func: (list: Collection<any>, eventName: EEventName) => void): void;
abstract forEachEventName(func: (list: Collection<any>, eventName: EEventName) => void): void;
abstract clear(): void;
protected abstract buildFirstLevelKey(target: EntityObject | HTMLElement): string;
protected buildSecondLevelKey(eventName: EEventName): string;
}
}
declare module 'wonder.js/dist/es2015/event/utils/EventUtils' {
import { EntityObject } from "wonder.js/dist/es2015/core/entityObject/EntityObject";
export class EventUtils {
static isEvent(arg: any): boolean;
static isEntityObject(arg: EntityObject): boolean;
}
}
declare module 'wonder.js/dist/es2015/material/BasicMaterial' {
import { StandardBasicMaterial } from "wonder.js/dist/es2015/material/StandardBasicMaterial";
export class BasicMaterial extends StandardBasicMaterial {
static create(): BasicMaterial;
}
}
declare module 'wonder.js/dist/es2015/material/EngineMaterial' {
import { Material } from "wonder.js/dist/es2015/material/Material";
import { Shader } from "wonder.js/dist/es2015/renderer/shader/shader/Shader";
export abstract class EngineMaterial extends Material {
init(): void;
protected addShaderLib(): void;
protected createShader(): Shader;
}
}
declare module 'wonder.js/dist/es2015/material/Material' {
import { Color } from "wonder.js/dist/es2015/structure/Color";
import { Geometry } from "wonder.js/dist/es2015/component/geometry/Geometry";
import { QuadCommand } from "wonder.js/dist/es2015/renderer/command/QuadCommand";
import { Shader } from "wonder.js/dist/es2015/renderer/shader/shader/Shader";
import { Program } from "wonder.js/dist/es2015/renderer/program/Program";
export abstract class Material {
readonly program: Program;
color: Color;
readonly shader: Shader;
geometry: Geometry;
clone(): this;
initWhenCreate(): void;
init(): void;
dispose(): void;
updateShader(quadCmd: QuadCommand): void;
protected abstract createShader(): Shader;
}
}
declare module 'wonder.js/dist/es2015/material/ShaderManager' {
import { Material } from "wonder.js/dist/es2015/material/Material";
import { Shader } from "wonder.js/dist/es2015/renderer/shader/shader/Shader";
import { QuadCommand } from "wonder.js/dist/es2015/renderer/command/QuadCommand";
export class ShaderManager {
static create(material: Material): ShaderManager;
constructor(material: Material);
readonly shader: Shader;
setShader(shader: Shader): void;
init(): void;
dispose(): void;
update(quadCmd: QuadCommand): void;
}
}
declare module 'wonder.js/dist/es2015/material/StandardBasicMaterial' {
import { EngineMaterial } from "wonder.js/dist/es2015/material/EngineMaterial";
export abstract class StandardBasicMaterial extends EngineMaterial {
opacity: number;
alphaTest: number;
protected addExtendShaderLib(): void;
protected addShaderLib(): void;
}
}
declare module 'wonder.js/dist/es2015/math/Global' {
export const DEG_TO_RAD: number;
export const RAD_TO_DEG: number;
}
declare module 'wonder.js/dist/es2015/math/Matrix3' {
import { Vector2 } from "wonder.js/dist/es2015/math/Vector2";
export class Matrix3 {
static create(mat: Float32Array): Matrix3;
static create(): Matrix3;
constructor(mat: Float32Array);
constructor();
a: number;
c: number;
b: number;
d: number;
tx: number;
ty: number;
values: Float32Array;
setIdentity(): Matrix3;
invert(): Matrix3;
multiplyScalar(s: number): this;
multiplyVector2(vector: Vector2): Vector2;
multiplyPoint(vector: Vector2): Vector2;
multiply(matrix: Matrix3): this;
transpose(): Matrix3;
clone(): Matrix3;
cloneToArray(array: Float32Array, offset?: number): Matrix3;
set(matrix: Matrix3): this;
setTS(t: Vector2, s: Vector2): void;
rotate(angle: number): this;
setRotation(angle: number): this;
translate(x: number, y: number): void;
setPosition(x: number, y: number): void;
scale(x: number, y: number): this;
setScale(x: number, y: number): this;
getTranslation(): Vector2;
getScale(): Vector2;
getRotation(): number;
getSkew(): Vector2;
}
}
declare module 'wonder.js/dist/es2015/math/Matrix4' {
import { Matrix3 } from "wonder.js/dist/es2015/math/Matrix3";
import { Vector3 } from "wonder.js/dist/es2015/math/Vector3";
import { Vector4 } from "wonder.js/dist/es2015/math/Vector4";
import { Quaternion } from "wonder.js/dist/es2015/math/Quaternion";
export class Matrix4 {
static create(mat: Float32Array): Matrix4;
static create(): Matrix4;
constructor(mat: Float32Array);
constructor();
values: Float32Array;
push(): void;
pop(): void;
set(initialM11: number, initialM12: number, initialM13: number, initialM14: number, initialM21: number, initialM22: number, initialM23: number, initialM24: number, initialM31: number, initialM32: number, initialM33: number, initialM34: number, initialM41: number, initialM42: number, initialM43: number, initialM44: number): any;
set(matrix: Matrix4): any;
setIdentity(): Matrix4;
invert(): Matrix4;
invertTo3x3(): Matrix3;
transpose(): Matrix4;
setTranslate(x: any, y: any, z: any): Matrix4;
translate(x: any, y: any, z: any): Matrix4;
setRotate(angle: number, x: number, y: number, z: number): Matrix4;
rotate(angle: any, vector3: Vector3): Matrix4;
rotate(angle: any, x: any, y: any, z: any): Matrix4;
setScale(x: any, y: any, z: any): Matrix4;
scale(x: any, y: any, z: any): Matrix4;
setLookAt(eye: Vector3, center: Vector3, up: Vector3): Matrix4;
setLookAt(eyeX: number, eyeY: number, eyeZ: number, centerX: number, centerY: number, centerZ: number, upX: number, upY: number, upZ: number): Matrix4;
lookAt(eye: Vector3, center: Vector3, up: Vector3): Matrix4;
lookAt(eyeX: number, eyeY: number, eyeZ: number, centerX: number, centerY: number, centerZ: number, upX: number, upY: number, upZ: number): Matrix4;
setOrtho(left: number, right: number, bottom: number, top: number, near: number, far: number): Matrix4;
ortho(left: number, right: number, bottom: number, top: number, near: number, far: number): Matrix4;
setPerspective(fovy: number, aspect: number, near: number, far: number): Matrix4;
perspective(fovy: number, aspect: number, near: number, far: number): Matrix4;
applyMatrix(other: Matrix4, notChangeSelf?: boolean): Matrix4;
multiply(matrix: Matrix4): Matrix4;
multiply(matrix1: Matrix4, matrix2: Matrix4): Matrix4;
multiplyVector4(vector: Vector4): Vector4;
multiplyVector3(vector: Vector3): Vector3;
multiplyPoint(vector: Vector3): Vector3;
clone(): Matrix4;
cloneToArray(array: Float32Array, offset?: number): Matrix4;
getX(): Vector3;
getY(): Vector3;
getZ(): Vector3;
getTranslation(): Vector3;
getScale(): Vector3;
getRotation(): Quaternion;
getEulerAngles(): any;
setTRS(t: Vector3, r: Quaternion, s: Vector3): this;
}
}
declare module 'wonder.js/dist/es2015/math/Quaternion' {
import { Vector3 } from "wonder.js/dist/es2015/math/Vector3";
import { Matrix4 } from "wonder.js/dist/es2015/math/Matrix4";
export class Quaternion {
static create(x?: number, y?: number, z?: number, w?: number): Quaternion;
constructor(x?: number, y?: number, z?: number, w?: number);
x: number;
y: number;
z: number;
w: number;
setFromEulerAngles(eulerAngles: Vector3): this;
multiply(rhs: Quaternion): any;
multiply(rhs1: Quaternion, rhs2: Quaternion): any;
setFromMatrix(matrix: Matrix4): this;
setFromAxisAngle(angle: number, axis: Vector3): this;
invert(): this;
conjugate(): this;
clone(): Quaternion;
normalize(): this;
length(): any;
multiplyVector3(vector: Vector3): Vector3;
set(x: number, y: number, z: number, w: number): void;
sub(quat: Quaternion): this;
getEulerAngles(): any;
slerp(left: Quaternion, right: Quaternion, amount: number): Quaternion;
}
}
declare module 'wonder.js/dist/es2015/math/Vector2' {
export class Vector2 {
static create(x: any, y: any): Vector2;
static create(): Vector2;
constructor(x: any, y: any);
constructor();
x: number;
y: number;
values: Float32Array;
set(x: number, y: number): void;
add(v: Vector2): this;
mul(v: Vector2): this;
isEqual(v: Vector2): boolean;
clone(): Vector2;
}
}
declare module 'wonder.js/dist/es2015/math/Vector3' {
import { Vector4 } from "wonder.js/dist/es2015/math/Vector4";
import { Matrix3 } from "wonder.js/dist/es2015/math/Matrix3";
import { Matrix4 } from "wonder.js/dist/es2015/math/Matrix4";
export class Vector3 {
static up: any;
static forward: any;
static right: any;
static create(x: number, y: number, z: number): Vector3;
static create(): Vector3;
constructor(x: number, y: number, z: number);
constructor();
x: number;
y: number;
z: number;
values: Float32Array;
normalize(): Vector3;
isZero(): boolean;
scale(scalar: number): any;
scale(x: number, y: number, z: number): any;
set(v: Vector3): any;
set(x: number, y: number, z: number): any;
sub(v: Vector3): Vector3;
sub2(v1: Vector3, v2: Vector3): this;
add(v: Vector3): this;
add2(v1: Vector3, v2: Vector3): this;
mul(v: Vector3): this;
mul2(v1: Vector3, v2: Vector3): this;
reverse(): Vector3;
clone(): Vector3;
toVector4(): Vector4;
length(): any;
cross(lhs: Vector3, rhs: Vector3): this;
lerp(lhs: Vector3, rhs: Vector3, alpha: number): this;
dot(rhs: any): number;
calAngleCos(v1: Vector3): number;
min(v: Vector3): this;
max(v: Vector3): this;
isEqual(v: Vector3): boolean;
toArray(): number[];
applyMatrix3(m: Matrix3): this;
applyMatrix4(m: Matrix4): this;
distanceTo(v: Vector3): any;
distanceToSquared(v: Vector3): number;
}
}
declare module 'wonder.js/dist/es2015/math/Vector4' {
import { Vector3 } from "wonder.js/dist/es2015/math/Vector3";
export class Vector4 {
static create(x: any, y: any, z: any, w: any): any;
static create(): any;
constructor(x: any, y: any, z: any, w: any);
constructor();
x: number;
y: number;
z: number;
w: number;
values: Float32Array;
normalize(): Vector4;
isEqual(v: Vector4): boolean;
clone(): Vector4;
toVector3(): Vector3;
lengthManhattan(): any;
multiplyScalar(scalar: number): this;
dot(v: Vector4): number;
set(x: number, y: number, z: number, w: number): void;
protected copyHelper(vector4: Vector4): any;
}
}
declare module 'wonder.js/dist/es2015/renderer/buffer/ArrayBuffer' {
import { CommonBuffer } from "wonder.js/dist/es2015/renderer/buffer/CommonBuffer";
import { EBufferType } from "wonder.js/dist/es2015/renderer/buffer/EBufferType";
import { EBufferUsage } from "wonder.js/dist/es2015/renderer/buffer/EBufferUsage";
export class ArrayBuffer extends CommonBuffer {
static create(data: Array<number>, size: number, type?: EBufferType, usage?: EBufferUsage): ArrayBuffer;
size: number;
data: Float32Array;
initWhenCreate(data: Array<number>, size: number, type: EBufferType, usage: EBufferUsage): any;
resetData(data: Array<number>, size?: number, type?: EBufferType, offset?: number): this;
}
}
declare module 'wonder.js/dist/es2015/renderer/buffer/Buffer' {
import { Entity } from "wonder.js/dist/es2015/core/Entity";
export abstract class Buffer extends Entity {
buffer: any;
abstract resetData(data: any, ...args: any[]): void;
dispose(): void;
}
}
declare module 'wonder.js/dist/es2015/renderer/buffer/BufferDataTable' {
import { EBufferDataType } from "wonder.js/dist/es2015/renderer/buffer/EBufferDataType";
export class BufferDataTable {
static getGeometryDataName(type: EBufferDataType): string;
}
}
declare module 'wonder.js/dist/es2015/renderer/buffer/CommonBuffer' {
import { Buffer } from "wonder.js/dist/es2015/renderer/buffer/Buffer";
import { EBufferType } from "wonder.js/dist/es2015/renderer/buffer/EBufferType";
import { EBufferUsage } from "wonder.js/dist/es2015/renderer/buffer/EBufferUsage";
export abstract class CommonBuffer extends Buffer {
type: EBufferType;
count: number;
usage: EBufferUsage;
protected resetBufferData(glBufferTargetStr: string, typedData: any, offset?: number): void;
}
}
declare module 'wonder.js/dist/es2015/renderer/buffer/EBufferDataType' {
export enum EBufferDataType {
VERTICE,
INDICE,
}
}
declare module 'wonder.js/dist/es2015/renderer/buffer/EBufferType' {
export enum EBufferType {
BYTE,
UNSIGNED_BYTE,
SHORT,
UNSIGNED_SHORT,
INT,
UNSIGNED_INT,
FLOAT,
}
}
declare module 'wonder.js/dist/es2015/renderer/buffer/EBufferUsage' {
export enum EBufferUsage {
STREAM_DRAW,
STATIC_DRAW,
DYNAMIC_DRAW,
}
}
declare module 'wonder.js/dist/es2015/renderer/buffer/ElementBuffer' {
import { CommonBuffer } from "wonder.js/dist/es2015/renderer/buffer/CommonBuffer";
import { EBufferType } from "wonder.js/dist/es2015/renderer/buffer/EBufferType";
import { EBufferUsage } from "wonder.js/dist/es2015/renderer/buffer/EBufferUsage";
export class ElementBuffer extends CommonBuffer {
static create(data: Array<number>, type?: EBufferType, usage?: EBufferUsage): ElementBuffer;
readonly typeSize: number;
data: Uint16Array | Uint32Array;
initWhenCreate(data: Array<number>, type: EBufferType, usage: EBufferUsage): any;
resetData(data: Array<number>, type?: EBufferType, offset?: number): this;
}
}
declare module 'wonder.js/dist/es2015/renderer/command/QuadCommand' {
import { RenderCommand } from "wonder.js/dist/es2015/renderer/command/RenderCommand";
import { Matrix4 } from "wonder.js/dist/es2015/math/Matrix4";
import { BufferContainer } from "wonder.js/dist/es2015/component/geometry/data/BufferContainer";
import { Material } from "wonder.js/dist/es2015/material/Material";
import { GameObject } from "wonder.js/dist/es2015/core/entityObject/gameObject/GameObject";
import { Program } from "wonder.js/dist/es2015/renderer/program/Program";
export abstract class QuadCommand extends RenderCommand {
readonly program: Program;
readonly mvpMatrix: Matrix4;
readonly vpMatrix: Matrix4;
mMatrix: Matrix4;
vMatrix: Matrix4;
pMatrix: Matrix4;
buffers: BufferContainer;
material: Material;
target: GameObject;
sortId: number;
execute(): void;
protected abstract draw(material: Material): void;
}
}
declare module 'wonder.js/dist/es2015/renderer/command/RenderCommand' {
import { WebGLState } from "wonder.js/dist/es2015/renderer/state/WebGLState";
import { EDrawMode } from "wonder.js/dist/es2015/renderer/EDrawMode";
import { ElementBuffer } from "wonder.js/dist/es2015/renderer/buffer/ElementBuffer";
import { ArrayBuffer } from "wonder.js/dist/es2015/renderer/buffer/ArrayBuffer";
export abstract class RenderCommand {
webglState: WebGLState;
drawMode: EDrawMode;
abstract execute(): void;
init(): void;
dispose(): void;
protected drawElements(indexBuffer: ElementBuffer): void;
protected drawArray(vertexBuffer: ArrayBuffer): void;
}
}
declare module 'wonder.js/dist/es2015/renderer/command/SingleDrawCommand' {
import { QuadCommand } from "wonder.js/dist/es2015/renderer/command/QuadCommand";
import { Matrix3 } from "wonder.js/dist/es2015/math/Matrix3";
import { Material } from "wonder.js/dist/es2015/material/Material";
export class SingleDrawCommand extends QuadCommand {
static create(): SingleDrawCommand;
normalMatrix: Matrix3;
protected draw(material: Material): void;
}
}
declare module 'wonder.js/dist/es2015/renderer/EDrawMode' {
export enum EDrawMode {
POINTS,
LINES,
LINE_LOOP,
LINE_STRIP,
TRIANGLES,
TRIANGLE_STRIP,
TRANGLE_FAN,
}
}
declare module 'wonder.js/dist/es2015/renderer/GlUtils' {
export class GlUtils {
static drawElements(mode: any, count: number, type: any, offset: number): void;
static drawArrays(mode: any, first: number, count: number): void;
}
}
declare module 'wonder.js/dist/es2015/renderer/program/GLSLDataSender' {
import { Program } from "wonder.js/dist/es2015/renderer/program/Program";
import { ArrayBuffer } from "wonder.js/dist/es2015/renderer/buffer/ArrayBuffer";
import { Color } from "wonder.js/dist/es2015/structure/Color";
import { Matrix3 } from "wonder.js/dist/es2015/math/Matrix3";
import { Matrix4 } from "wonder.js/dist/es2015/math/Matrix4";
export class GLSLDataSender {
static create(program: Program): GLSLDataSender;
constructor(program: Program);
sendFloat1(name: string, data: any): void;
sendFloat2(name: string, data: any): void;
sendFloat3(name: string, data: any): void;
sendFloat4(name: string, data: any): void;
sendVector2(name: string, data: any): void;
sendVector3(name: string, data: any): void;
sendVector4(name: string, data: any): void;
sendColor3(name: string, data: Color): void;
sendNum1(name: string, data: number): void;
sendMatrix3(name: string, data: Matrix3): void;
sendMatrix4(name: string, data: Matrix4): void;
sendMatrix4Array(name: string, data: Array<number> | Float32Array): void;
sendSampleArray(name: string, data: Array<number>): void;
getUniformLocation(name: string): any;
addBufferToToSendList(pos: number, buffer: ArrayBuffer): void;
sendAllBufferData(): void;
clearBufferList(): void;
sendBuffer(pos: number, buffer: ArrayBuffer): void;
disableVertexAttribArray(): void;
clearAllCache(): void;
dispose(): void;
}
}
declare module 'wonder.js/dist/es2015/renderer/program/Program' {
import { Entity } from "wonder.js/dist/es2015/core/Entity";
import { EVariableType } from "wonder.js/dist/es2015/renderer/shader/variable/EVariableType";
import { ArrayBuffer } from "wonder.js/dist/es2015/renderer/buffer/ArrayBuffer";
import { Shader } from "wonder.js/dist/es2015/renderer/shader/shader/Shader";
export class Program extends Entity {
static create(): Program;
glProgram: any;
use(): void;
getAttribLocation(name: string): any;
getUniformLocation(name: string): any;
sendUniformData(name: string, type: EVariableType, data: any): void;
sendAttributeBuffer(name: string, type: EVariableType, buffer: ArrayBuffer): void;
sendStructureData(name: string, type: EVariableType, data: any): void;
sendFloat1(name: string, data: any): void;
sendFloat2(name: string, data: any): void;
sendFloat3(name: string, data: any): void;
sendFloat4(name: string, data: any): void;
sendVector2(name: string, data: any): void;
sendVector3(name: string, data: any): void;
sendVector4(name: string, data: any): void;
sendColor3(name: string, data: any): void;
sendNum1(name: string, data: any): void;
sendMatrix3(name: string, data: any): void;
sendMatrix4(name: string, data: any): void;
sendMatrix4Array(name: string, data: Float32Array): void;
sendSampleArray(name: string, data: any): void;
sendAllBufferData(): void;
initWithShader(shader: Shader): this;
dispose(): void;
}
}
declare module 'wonder.js/dist/es2015/renderer/renderer/Renderer' {
import { WebGLState } from "wonder.js/dist/es2015/renderer/state/WebGLState";
import { RenderCommand } from "wonder.js/dist/es2015/renderer/command/RenderCommand";
export abstract class Renderer {
webglState: WebGLState;
abstract addCommand(command: RenderCommand): void;
abstract hasCommand(): boolean;
abstract render(): void;
abstract clear(): void;
init(): void;
}
}
declare module 'wonder.js/dist/es2015/renderer/renderer/WebGLRenderer' {
import { Renderer } from "wonder.js/dist/es2015/renderer/renderer/Renderer";
import { RenderCommand } from "wonder.js/dist/es2015/renderer/command/RenderCommand";
import { Color } from "wonder.js/dist/es2015/structure/Color";
export class WebGLRenderer extends Renderer {
static create(): WebGLRenderer;
addCommand(command: RenderCommand): void;
hasCommand(): boolean;
clear(): void;
render(): void;
init(): void;
setClearColor(color: Color): void;
}
}
declare module 'wonder.js/dist/es2015/renderer/shader/lib/basic/BasicMaterialColorShaderLib' {
import { EngineShaderLib } from "wonder.js/dist/es2015/renderer/shader/lib/EngineShaderLib";
import { Program } from "wonder.js/dist/es2015/renderer/program/Program";
import { QuadCommand } from "wonder.js/dist/es2015/renderer/command/QuadCommand";
import { BasicMaterial } from "wonder.js/dist/es2015/material/BasicMaterial";
import { GLSLChunk } from "wonder.js/dist/es2015/renderer/shader/chunk/ShaderChunk";
export class BasicMaterialColorShaderLib extends EngineShaderLib {
static create(): BasicMaterialColorShaderLib;
vsChunk: GLSLChunk;
fsChunk: GLSLChunk;
sendShaderVariables(program: Program, cmd: QuadCommand, material: BasicMaterial): void;
setShaderDefinition(cmd: QuadCommand, material: BasicMaterial): void;
}
}
declare module 'wonder.js/dist/es2015/renderer/shader/lib/basic/BasicShaderLib' {
import { EngineShaderLib } from "wonder.js/dist/es2015/renderer/shader/lib/EngineShaderLib";
import { Program } from "wonder.js/dist/es2015/renderer/program/Program";
import { QuadCommand } from "wonder.js/dist/es2015/renderer/command/QuadCommand";
import { BasicMaterial } from "wonder.js/dist/es2015/material/BasicMaterial";
import { GLSLChunk } from "wonder.js/dist/es2015/renderer/shader/chunk/ShaderChunk";
export class BasicShaderLib extends EngineShaderLib {
static create(): BasicShaderLib;
vsChunk: GLSLChunk;
fsChunk: GLSLChunk;
sendShaderVariables(program: Program, cmd: QuadCommand, material: BasicMaterial): void;
setShaderDefinition(cmd: QuadCommand, material: BasicMaterial): void;
}
}
declare module 'wonder.js/dist/es2015/renderer/shader/lib/basic/EndBasicShaderLib' {
import { EngineShaderLib } from "wonder.js/dist/es2015/renderer/shader/lib/EngineShaderLib";
import { QuadCommand } from "wonder.js/dist/es2015/renderer/command/QuadCommand";
import { StandardBasicMaterial } from "wonder.js/dist/es2015/material/StandardBasicMaterial";
import { GLSLChunk } from "wonder.js/dist/es2015/renderer/shader/chunk/ShaderChunk";
export class EndBasicShaderLib extends EngineShaderLib {
static create(): EndBasicShaderLib;
vsChunk: GLSLChunk;
fsChunk: GLSLChunk;
setShaderDefinition(cmd: QuadCommand, material: StandardBasicMaterial): void;
}
}
declare module 'wonder.js/dist/es2015/renderer/shader/lib/common/CommonShaderLib' {
import { EngineShaderLib } from "wonder.js/dist/es2015/renderer/shader/lib/EngineShaderLib";
import { Program } from "wonder.js/dist/es2015/renderer/program/Program";
import { QuadCommand } from "wonder.js/dist/es2015/renderer/command/QuadCommand";
import { EngineMaterial } from "wonder.js/dist/es2015/material/EngineMaterial";
import { GLSLChunk } from "wonder.js/dist/es2015/renderer/shader/chunk/ShaderChunk";
export class CommonShaderLib extends EngineShaderLib {
static create(): CommonShaderLib;
vsChunk: GLSLChunk;
fsChunk: GLSLChunk;
sendShaderVariables(program: Program, cmd: QuadCommand, material: EngineMaterial): void;
setShaderDefinition(cmd: QuadCommand, material: EngineMaterial): void;
}
}
declare module 'wonder.js/dist/es2015/renderer/shader/lib/common/EndShaderLib' {
import { EngineShaderLib } from "wonder.js/dist/es2015/renderer/shader/lib/EngineShaderLib";
import { Program } from "wonder.js/dist/es2015/renderer/program/Program";
import { QuadCommand } from "wonder.js/dist/es2015/renderer/command/QuadCommand";
import { EngineMaterial } from "wonder.js/dist/es2015/material/EngineMaterial";
import { GLSLChunk } from "wonder.js/dist/es2015/renderer/shader/chunk/ShaderChunk";
export class EndShaderLib extends EngineShaderLib {
static create(): EndShaderLib;
vsChunk: GLSLChunk;
fsChunk: GLSLChunk;
sendShaderVariables(program: Program, cmd: QuadCommand, material: EngineMaterial): void;
}
}
declare module 'wonder.js/dist/es2015/renderer/shader/lib/common/VerticeCommonShaderLib' {
import { EngineShaderLib } from "wonder.js/dist/es2015/renderer/shader/lib/EngineShaderLib";
import { Program } from "wonder.js/dist/es2015/renderer/program/Program";
import { QuadCommand } from "wonder.js/dist/es2015/renderer/command/QuadCommand";
import { EngineMaterial } from "wonder.js/dist/es2015/material/EngineMaterial";
import { GLSLChunk } from "wonder.js/dist/es2015/renderer/shader/chunk/ShaderChunk";
export class VerticeCommonShaderLib extends EngineShaderLib {
static create(): VerticeCommonShaderLib;
vsChunk: GLSLChunk;
fsChunk: GLSLChunk;
sendShaderVariables(program: Program, cmd: QuadCommand, material: EngineMaterial): void;
setShaderDefinition(cmd: QuadCommand, material: EngineMaterial): void;
}
}
declare module 'wonder.js/dist/es2015/renderer/shader/lib/EngineShaderLib' {
import { ShaderLib } from "wonder.js/dist/es2015/renderer/shader/lib/ShaderLib";
import { EngineShader } from "wonder.js/dist/es2015/renderer/shader/shader/EngineShader";
import { Hash } from "wonder-commonlib/dist/es2015/Hash";
import { ShaderVariable } from "wonder.js/dist/es2015/renderer/shader/variable/VariableLib";
import { Collection } from "wonder-commonlib/dist/es2015/Collection";
import { RenderCommand } from "wonder.js/dist/es2015/renderer/command/RenderCommand";
import { Material } from "wonder.js/dist/es2015/material/Material";
import { Program } from "wonder.js/dist/es2015/renderer/program/Program";
import { GLSLChunk } from "wonder.js/dist/es2015/renderer/shader/chunk/ShaderChunk";
export abstract class EngineShaderLib extends ShaderLib {
shader: EngineShader;
abstract vsChunk: GLSLChunk;
abstract fsChunk: GLSLChunk;
attributes: Hash<ShaderVariable>;
uniforms: Hash<ShaderVariable>;
vsSourceTop: string;
vsSourceDefine: string;
vsSourceVarDeclare: string;
vsSourceFuncDeclare: string;
vsSourceFuncDefine: string;
vsSourceBody: string;
vsSource: string;
fsSourceTop: string;
fsSourceDefine: string;
fsSourceVarDeclare: string;
fsSourceFuncDeclare: string;
fsSourceFuncDefine: string;
fsSourceBody: string;
fsSource: string;
vsSourceDefineList: Collection<any>;
fsSourceDefineList: Collection<any>;
vsSourceExtensionList: Collection<string>;
fsSourceExtensionList: Collection<string>;
setShaderDefinition(cmd: RenderCommand, material: Material): void;
protected sendAttributeBuffer(program: Program, name: string, data: any): void;
protected sendUniformData(program: Program, name: string, data: any): void;
protected getVsChunk(): any;
protected getVsChunk(chunk: GLSLChunk): any;
protected getFsChunk(): any;
protected getFsChunk(chunk: GLSLChunk): any;
protected setVsSource(vs: GLSLChunk | string, operator?: string): void;
protected setFsSource(fs: GLSLChunk | string, operator?: string): void;
protected addAttributeVariable(variableArr: Array<string>): void;
protected addUniformVariable(variableArr: Array<string>): void;
}
}
declare module 'wonder.js/dist/es2015/renderer/shader/lib/ShaderLib' {
import { Shader } from "wonder.js/dist/es2015/renderer/shader/shader/Shader";
import { Program } from "wonder.js/dist/es2015/renderer/program/Program";
import { RenderCommand } from "wonder.js/dist/es2015/renderer/command/RenderCommand";
import { Material } from "wonder.js/dist/es2015/material/Material";
export abstract class ShaderLib {
shader: Shader;
sendShaderVariables(program: Program, cmd: RenderCommand, material: Material): void;
init(): void;
dispose(): void;
}
}
declare module 'wonder.js/dist/es2015/renderer/shader/shader/CommonShader' {
import { EngineShader } from "wonder.js/dist/es2015/renderer/shader/shader/EngineShader";
import { QuadCommand } from "wonder.js/dist/es2015/renderer/command/QuadCommand";
import { Material } from "wonder.js/dist/es2015/material/Material";
export class CommonShader extends EngineShader {
static create(): CommonShader;
update(cmd: QuadCommand, material: Material): void;
}
}
declare module 'wonder.js/dist/es2015/renderer/shader/shader/EngineShader' {
import { Shader } from "wonder.js/dist/es2015/renderer/shader/shader/Shader";
import { EngineShaderSourceBuilder } from "wonder.js/dist/es2015/renderer/shader/sourceBuilder/EngineShaderSourceBuilder";
import { Collection } from "wonder-commonlib/dist/es2015/Collection";
import { EngineShaderLib } from "wonder.js/dist/es2015/renderer/shader/lib/EngineShaderLib";
import { RenderCommand } from "wonder.js/dist/es2015/renderer/command/RenderCommand";
import { Material } from "wonder.js/dist/es2015/material/Material";
import { ShaderSourceBuilder } from "wonder.js/dist/es2015/renderer/shader/sourceBuilder/ShaderSourceBuilder";
export abstract class EngineShader extends Shader {
protected sourceBuilder: EngineShaderSourceBuilder;
protected libs: Collection<EngineShaderLib>;
protected buildDefinitionData(cmd: RenderCommand, material: Material): void;
protected createShaderSourceBuilder(): ShaderSourceBuilder;
}
}
declare module 'wonder.js/dist/es2015/renderer/shader/shader/Shader' {
import { Hash } from "wonder-commonlib/dist/es2015/Hash";
import { Program } from "wonder.js/dist/es2015/renderer/program/Program";
import { Collection } from "wonder-commonlib/dist/es2015/Collection";
import { ShaderLib } from "wonder.js/dist/es2015/renderer/shader/lib/ShaderLib";
import { ShaderSourceBuilder } from "wonder.js/dist/es2015/renderer/shader/sourceBuilder/ShaderSourceBuilder";
import { RenderCommand } from "wonder.js/dist/es2015/renderer/command/RenderCommand";
import { Material } from "wonder.js/dist/es2015/material/Material";
import { EVariableType } from "wonder.js/dist/es2015/renderer/shader/variable/EVariableType";
export abstract class Shader {
attributes: Hash<ShaderData>;
uniforms: Hash<ShaderData>;
vsSource: string;
fsSource: string;
readonly dirty: boolean;
readonly program: Program;
libDirty: boolean;
definitionDataDirty: boolean;
protected libs: Collection<ShaderLib>;
protected sourceBuilder: ShaderSourceBuilder;
abstract update(cmd: RenderCommand, material: Material): any;
createVsShader(): any;
createFsShader(): any;
init(material: Material): void;
dispose(): void;
hasLib(lib: ShaderLib): any;
hasLib(_class: Function): any;
addLib(lib: ShaderLib): void;
addShaderLibToTop(lib: ShaderLib): void;
getLib(libClass: Function): ShaderLib;
getLibs(): Collection<ShaderLib>;
removeLib(lib: ShaderLib): any;
removeLib(func: Function): any;
removeAllLibs(): void;
sortLib(func: (a: ShaderLib, b: ShaderLib) => any): void;
protected abstract createShaderSourceBuilder(): ShaderSourceBuilder;
protected abstract buildDefinitionData(cmd: RenderCommand, material: Material): void;
protected judgeRefreshShader(cmd: RenderCommand, material: Material): void;
}
export type ShaderData = {
type: EVariableType;
value?: any;
textureId?: string;
};
}
declare module 'wonder.js/dist/es2015/renderer/shader/sourceBuilder/EngineShaderSourceBuilder' {
import { ShaderSourceBuilder, SourceDefine } from "wonder.js/dist/es2015/renderer/shader/sourceBuilder/ShaderSourceBuilder";
import { Collection } from "wonder-commonlib/dist/es2015/Collection";
import { EngineShaderLib } from "wonder.js/dist/es2015/renderer/shader/lib/EngineShaderLib";
export class EngineShaderSourceBuilder extends ShaderSourceBuilder {
static create(): EngineShaderSourceBuilder;
vsSourceTop: string;
vsSourceDefine: string;
vsSourceVarDeclare: string;
vsSourceFuncDeclare: string;
vsSourceFuncDefine: string;
vsSourceBody: string;
fsSourceTop: string;
fsSourceDefine: string;
fsSourceVarDeclare: string;
fsSourceFuncDeclare: string;
fsSourceFuncDefine: string;
fsSourceBody: string;
vsSourceDefineList: Collection<SourceDefine>;
fsSourceDefineList: Collection<SourceDefine>;
vsSourceExtensionList: Collection<string>;
fsSourceExtensionList: Collection<string>;
build(libs: Collection<EngineShaderLib>): void;
clearShaderDefinition(): void;
}
}
declare module 'wonder.js/dist/es2015/renderer/shader/sourceBuilder/ShaderSourceBuilder' {
import { Hash } from "wonder-commonlib/dist/es2015/Hash";
import { ShaderData } from "wonder.js/dist/es2015/renderer/shader/shader/Shader";
export abstract class ShaderSourceBuilder {
attributes: Hash<ShaderData>;
uniforms: Hash<ShaderData>;
vsSource: string;
fsSource: string;
abstract build(...args: any[]): void;
abstract clearShaderDefinition(): void;
dispose(): void;
protected convertAttributesData(): void;
}
export type SourceDefine = {
name: string;
value: any;
};
}
declare module 'wonder.js/dist/es2015/renderer/shader/variable/EVariableCategory' {
export enum EVariableCategory {
ENGINE,
CUSTOM,
}
}
declare module 'wonder.js/dist/es2015/renderer/shader/variable/EVariableSemantic' {
export enum EVariableSemantic {
POSITION,
NORMAL,
TEXCOORD,
TANGENT,
COLOR,
MODEL,
VIEW,
PROJECTION,
MODEL_VIEW,
MODEL_VIEW_PROJECTION,
MODEL_INVERSE,
VIEW_INVERSE,
PROJECTION_INVERSE,
MODEL_VIEW_INVERSE,
MODEL_VIEW_PROJECTION_INVERSE,
MODEL_INVERSE_TRANSPOSE,
MODEL_VIEW_INVERSE_TRANSPOSE,
VIEWPORT,
}
}
declare module 'wonder.js/dist/es2015/renderer/shader/variable/EVariableType' {
export enum EVariableType {
FLOAT_1,
FLOAT_2,
FLOAT_3,
FLOAT_4,
VECTOR_2,
VECTOR_3,
VECTOR_4,
COLOR_3,
FLOAT_MAT3,
FLOAT_MAT4,
BUFFER,
SAMPLER_CUBE,
SAMPLER_2D,
NUMBER_1,
STRUCTURE,
STRUCTURES,
SAMPLER_ARRAY,
FLOAT_MAT4_ARRAY,
}
}
declare module 'wonder.js/dist/es2015/renderer/shader/variable/VariableLib' {
import { EVariableType } from "wonder.js/dist/es2015/renderer/shader/variable/EVariableType";
export class VariableLib {
static a_position: ShaderVariable;
static a_positionVec2: ShaderVariable;
static a_currentFramePosition: ShaderVariable;
static a_nextFramePosition: ShaderVariable;
static a_normal: ShaderVariable;
static a_currentFrameNormal: ShaderVariable;
static a_nextFrameNormal: ShaderVariable;
static a_color: ShaderVariable;
static a_texCoord: ShaderVariable;
static a_tangent: ShaderVariable;
static u_color: ShaderVariable;
static u_mMatrix: ShaderVariable;
static u_vMatrix: ShaderVariable;
static u_pMatrix: ShaderVariable;
static u_mvpMatrix: ShaderVariable;
static u_vpMatrix: ShaderVariable;
static u_normalMatrix: ShaderVariable;
static u_samplerCube0: ShaderVariable;
static u_sampler2D0: ShaderVariable;
static u_sampler2D1: ShaderVariable;
static u_lightMapSampler: ShaderVariable;
static u_diffuseMapSampler: ShaderVariable;
static u_diffuseMap1Sampler: ShaderVariable;
static u_diffuseMap2Sampler: ShaderVariable;
static u_diffuseMap3Sampler: ShaderVariable;
static u_specularMapSampler: ShaderVariable;
static u_emissionMapSampler: ShaderVariable;
static u_normalMapSampler: ShaderVariable;
static u_reflectionMapSampler: ShaderVariable;
static u_refractionMapSampler: ShaderVariable;
static u_cameraPos: ShaderVariable;
static u_refractionRatio: ShaderVariable;
static u_reflectivity: ShaderVariable;
static u_map0SourceRegion: ShaderVariable;
static u_map1SourceRegion: ShaderVariable;
static u_diffuseMapSourceRegion: ShaderVariable;
static u_map0RepeatRegion: ShaderVariable;
static u_map1RepeatRegion: ShaderVariable;
static u_diffuseMapRepeatRegion: ShaderVariable;
static u_combineMode: ShaderVariable;
static u_mixRatio: ShaderVariable;
static u_lightMapIntensity: ShaderVariable;
static u_diffuse: ShaderVariable;
static u_specular: ShaderVariable;
static u_emission: ShaderVariable;
static u_shininess: ShaderVariable;
static u_lightModel: ShaderVariable;
static u_isBothSide: ShaderVariable;
static u_opacity: ShaderVariable;
static u_ambient: ShaderVariable;
static u_directionLights: ShaderVariable;
static u_pointLights: ShaderVariable;
static u_vpMatrixFromLight: ShaderVariable;
static u_lightPos: ShaderVariable;
static u_farPlane: ShaderVariable;
static u_interpolation: ShaderVariable;
static u_tilesHeightNumber: ShaderVariable;
static u_tilesWidthNumber: ShaderVariable;
static u_amplitude: ShaderVariable;
static u_jointColor: ShaderVariable;
static u_time: ShaderVariable;
static u_speed: ShaderVariable;
static u_shift: ShaderVariable;
static u_alphaThreshold: ShaderVariable;
static u_fireColor: ShaderVariable;
static u_layerHeightDatas: ShaderVariable;
static u_layerSampler2Ds: ShaderVariable;
static u_herb1Color: ShaderVariable;
static u_herb2Color: ShaderVariable;
static u_herb3Color: ShaderVariable;
static u_groundColor: ShaderVariable;
static u_ampScale: ShaderVariable;
static u_woodColor: ShaderVariable;
static u_roadColor: ShaderVariable;
static u_skyColor: ShaderVariable;
static u_cloudColor: ShaderVariable;
static u_brickColor: ShaderVariable;
static u_waveData: ShaderVariable;
static u_windMatrix: ShaderVariable;
static u_bumpMapSampler: ShaderVariable;
static u_bumpMap1Sampler: ShaderVariable;
static u_bumpMap2Sampler: ShaderVariable;
static u_bumpMap3Sampler: ShaderVariable;
static u_levelData: ShaderVariable;
static a_mVec4_0: ShaderVariable;
static a_mVec4_1: ShaderVariable;
static a_mVec4_2: ShaderVariable;
static a_mVec4_3: ShaderVariable;
static a_normalVec4_0: ShaderVariable;
static a_normalVec4_1: ShaderVariable;
static a_normalVec4_2: ShaderVariable;
static u_isRenderListEmpty: ShaderVariable;
static u_isReflectionRenderListEmpty: ShaderVariable;
static u_isRefractionRenderListEmpty: ShaderVariable;
static u_bitmapSampler: ShaderVariable;
static a_page: ShaderVariable;
static u_pageSampler2Ds: ShaderVariable;
static u_mixMapSampler: ShaderVariable;
static u_diffuseMap1RepeatRegion: ShaderVariable;
static u_diffuseMap2RepeatRegion: ShaderVariable;
static u_diffuseMap3RepeatRegion: ShaderVariable;
static u_grassMapDatas: ShaderVariable;
static a_quadIndex: ShaderVariable;
static u_grassMapSampler: ShaderVariable;
static u_windData: ShaderVariable;
static a_vertexIndex: ShaderVariable;
static u_grassRangeWidth: ShaderVariable;
static u_grassRangeHeight: ShaderVariable;
static u_terrainRangeWidth: ShaderVariable;
static u_terrainRangeHeight: ShaderVariable;
static u_terrainMinHeight: ShaderVariable;
static u_terrainMaxHeight: ShaderVariable;
static u_terrainSubdivisions: ShaderVariable;
static u_terrainScaleY: ShaderVariable;
static u_terrainPositionY: ShaderVariable;
static u_heightMapSampler: ShaderVariable;
static u_lightColor: ShaderVariable;
static a_jointIndice: ShaderVariable;
static a_jointWeight: ShaderVariable;
static u_jointMatrices: ShaderVariable;
}
export type ShaderVariable = {
type: EVariableType;
value: any;
};
}
declare module 'wonder.js/dist/es2015/renderer/shader/variable/VariableNameTable' {
export class VariableNameTable {
static getVariableName(name: string): string;
}
}
declare module 'wonder.js/dist/es2015/renderer/shader/variable/VariableTypeTable' {
import { EVariableType } from "wonder.js/dist/es2015/renderer/shader/variable/EVariableType";
export class VariableTypeTable {
static getVariableType(type: EVariableType): string;
}
}
declare module 'wonder.js/dist/es2015/renderer/state/BasicState' {
import { WebGLState } from "wonder.js/dist/es2015/renderer/state/WebGLState";
import { Material } from "wonder.js/dist/es2015/material/Material";
export class BasicState extends WebGLState {
static create(): BasicState;
setState(material: Material): void;
}
}
declare module 'wonder.js/dist/es2015/renderer/state/WebGLState' {
import { Material } from "wonder.js/dist/es2015/material/Material";
export abstract class WebGLState {
abstract setState(material: Material): void;
}
}
declare module 'wonder.js/dist/es2015/structure/Color' {
import { Vector3 } from "wonder.js/dist/es2015/math/Vector3";
export class Color {
static create(colorVal?: string): Color;
dirty: boolean;
r: number;
g: number;
b: number;
a: number;
initWhenCreate(colorVal?: string): void;
toVector3(): Vector3;
toVector4(): any;
toString(): string;
clone(): Color;
isEqual(color: Color): boolean;
}
}
declare module 'wonder.js/dist/es2015/structure/Face3' {
import { Vector3 } from "wonder.js/dist/es2015/math/Vector3";
import { Collection } from "wonder-commonlib/dist/es2015/Collection";
export class Face3 {
static create(aIndex: number, bIndex: number, cIndex: number, faceNormal?: Vector3, vertexNormals?: Collection<Vector3>): Face3;
constructor(aIndex: number, bIndex: number, cIndex: number, faceNormal: Vector3, vertexNormals: Collection<Vector3>);
faceNormal: Vector3;
aIndex: number;
bIndex: number;
cIndex: number;
vertexNormals: Collection<Vector3>;
clone(): this;
hasFaceNormal(): boolean;
hasVertexNormal(): boolean;
}
}
declare module 'wonder.js/dist/es2015/structure/Point' {
export class Point {
x: number;
y: number;
constructor(x?: number, y?: number);
static create(x?: number, y?: number): Point;
}
}
declare module 'wonder.js/dist/es2015/structure/RectRegion' {
import { Vector4 } from "wonder.js/dist/es2015/math/Vector4";
export class RectRegion extends Vector4 {
width: number;
height: number;
clone(): RectRegion;
isNotEmpty(): boolean;
}
}
declare module 'wonder.js/dist/es2015/structure/View' {
import { ContextConfigData } from "wonder.js/dist/es2015/core/data/MainData";
export class ViewWebGL implements IView {
static create(view: any): ViewWebGL;
constructor(dom: any);
readonly offset: {
x: any;
y: any;
};
readonly dom: any;
width: number;
height: number;
styleWidth: string;
styleHeight: string;
x: number;
y: number;
initCanvas(): void;
getContext(contextConfig: ContextConfigData): WebGLRenderingContext;
}
export interface IView {
offset: {
x: number;
y: number;
};
x: number;
y: number;
width: number;
height: number;
styleWidth: string;
styleHeight: string;
dom: any;
getContext(contextConfig: ContextConfigData): WebGLRenderingContext;
initCanvas(): void;
}
}
declare module 'wonder.js/dist/es2015/utils/ArrayUtils' {
import { ArrayUtils as ArrayUtils$ } from "wonder-commonlib/dist/es2015/utils/ArrayUtils";
export class ArrayUtils extends ArrayUtils$ {
static hasRepeatItems(arr: Array<any>): boolean;
static contain(arr: Array<any>, item: any): boolean;
}
}
declare module 'wonder.js/dist/es2015/utils/BufferUtils' {
import { EVariableType } from "wonder.js/dist/es2015/renderer/shader/variable/EVariableType";
import { ArrayBuffer } from "wonder.js/dist/es2015/renderer/buffer/ArrayBuffer";
export class BufferUtils {
static convertArrayToArrayBuffer(type: EVariableType, value: Array<any>): ArrayBuffer;
}
}
declare module 'wonder.js/dist/es2015/utils/ClassUtils' {
export class ClassUtils {
static getClassNameByInstance(obj: any): any;
static addClass(className: string, _class: any): void;
static addClassNameAttributeToClass(className: string, _class: any): void;
static getClass(className: string): any;
}
}
declare module 'wonder.js/dist/es2015/utils/JudgeUtils' {
import { JudgeUtils as JudgeUtils$ } from "wonder-commonlib/dist/es2015/utils/JudgeUtils";
import { Entity } from "wonder.js/dist/es2015/core/Entity";
import { Component } from "wonder.js/dist/es2015/core/Component";
import { Collection } from "wonder-commonlib/dist/es2015/Collection";
export class JudgeUtils extends JudgeUtils$ {
static isView(obj: any): boolean;
static isEqual(target1: any, target2: any): boolean;
static isPowerOfTwo(value: number): boolean;
static isFloatArray(data: any): boolean;
static isInterface(target: any, memberOfInterface: string): boolean;
static isSelf(self: Entity, entityObject: Entity): boolean;
static isComponenet(component: Component): boolean;
static isDom(obj: any): boolean;
static isCollection(list: Collection<any>): boolean;
static isClass(objInstance: any, className: string): boolean;
}
}
declare module 'wonder.js/dist/es2015/utils/Log' {
import { Log as Log$ } from "wonder-commonlib/dist/es2015/Log";
export class Log extends Log$ {
}
}
declare module 'wonder.js/dist/es2015/utils/MathUtils' {
export class MathUtils {
static clamp(num: number, below: number, up: number): number;
static bigThan(num: number, below: number): number;
static generateZeroToOne(): number;
static generateMinToMax(min: number, max: number): number;
static generateInteger(min: number, max: number): number;
static mod(a: number, b: number): number;
static maxFloorIntegralMultiple(a: number, b: number): number;
}
}
declare module 'wonder.js/dist/es2015/utils/RenderUtils' {
import { Collection } from "wonder-commonlib/dist/es2015/Collection";
import { GameObject } from "wonder.js/dist/es2015/core/entityObject/gameObject/GameObject";
export class RenderUtils {
static getGameObjectRenderList(sourceList: Collection<GameObject>): Collection<GameObject>;
}
}
declare module 'wonder.js/dist/es2015/utils/ShaderLibUtils' {
import { Geometry } from "wonder.js/dist/es2015/component/geometry/Geometry";
import { Shader } from "wonder.js/dist/es2015/renderer/shader/shader/Shader";
export class ShaderLibUtils {
static addVerticeShaderLib(geometry: Geometry, shader: Shader): void;
}
}
declare module 'wonder.js/dist/es2015/utils/SortUtils' {
export class SortUtils {
static insertSort(targetArr: Array<any>, compareFunc: (a: any, b: any) => boolean, isChangeSelf?: boolean): Array<any>;
static quickSort(targetArr: Array<any>, compareFunc: (a: any, b: any) => boolean, isChangeSelf?: boolean): Array<any>;
}
}
declare module 'wonder.js/dist/es2015/utils/time/CommonTimeController' {
import { TimeController } from "wonder.js/dist/es2015/utils/time/TimeController";
export class CommonTimeController extends TimeController {
static create(): CommonTimeController;
protected getNow(): any;
}
}
declare module 'wonder.js/dist/es2015/utils/time/DirectorTimeController' {
import { TimeController } from "wonder.js/dist/es2015/utils/time/TimeController";
export class DirectorTimeController extends TimeController {
static create(): DirectorTimeController;
gameTime: number;
fps: number;
isTimeChange: boolean;
deltaTime: number;
tick(time: number): void;
start(): void;
resume(): void;
protected getNow(): any;
}
}
declare module 'wonder.js/dist/es2015/utils/time/TimeController' {
export abstract class TimeController {
elapsed: number;
pauseElapsed: number;
pauseTime: number;
startTime: number;
start(): void;
stop(): void;
pause(): void;
resume(): void;
computeElapseTime(time: number): number;
protected abstract getNow(): any;
}
}
declare module 'wonder.js/dist/es2015/config/CompileConfig' {
export var CompileConfig: {
isCompileTest: boolean;
closeContractTest: boolean;
};
}
declare module 'wonder.js/dist/es2015/event/interface/IEventData' {
export interface IEventData {
returnValue: boolean;
preventDefault: () => void;
}
export interface IKeyboardEventData extends IEventData {
ctrlKey: number;
altKey: number;
shiftKey: number;
metaKey: number;
keyCode: number;
}
export interface IMouseEventData extends IEventData {
clientX: number;
clientY: number;
pageX: number;
pageY: number;
button: number;
detail?: number;
wheelDelta?: number;
movementX?: number;
webkitMovementX?: number;
mozMovementX?: number;
movementY?: number;
webkitMovementY?: number;
mozMovementY?: number;
target: HTMLElement;
currentTarget: HTMLElement;
}
export interface ITouchEventData extends IEventData {
touches: Array<ITouchData>;
changedTouches: Array<ITouchData>;
targetTouches: Array<ITouchData>;
target: HTMLElement;
currentTarget: HTMLElement | null;
}
export interface ITouchData {
clientX: number;
clientY: number;
identifier: number;
pageX: number;
pageY: number;
screenX: number;
screenY: number;
radiusX: number;
radiusY: number;
rotationAngle: number;
force: number;
target: HTMLElement;
}
export interface IPointEventData extends IEventData {
clientX: number;
clientY: number;
pageX: number;
pageY: number;
button?: number;
detail?: number;
wheelDelta?: number;
movementX?: number;
webkitMovementX?: number;
mozMovementX?: number;
movementY?: number;
webkitMovementY?: number;
mozMovementY?: number;
target: HTMLElement;
currentTarget: HTMLElement | null;
}
}
declare module 'wonder.js/dist/es2015/renderer/shader/chunk/ShaderChunk' {
export const empty: GLSLChunk;
export const NULL: number;
export const basic_materialColor_fragment: GLSLChunk;
export const end_basic_fragment: GLSLChunk;
export const common_define: GLSLChunk;
export const common_fragment: GLSLChunk;
export const common_function: GLSLChunk;
export const common_vertex: GLSLChunk;
export const highp_fragment: GLSLChunk;
export const lowp_fragment: GLSLChunk;
export const mediump_fragment: GLSLChunk;
export type GLSLChunk = {
top?: string;
define?: string;
varDeclare?: string;
funcDeclare?: string;
funcDefine?: string;
body?: string;
};
}