Skip to content

Commit ab8d5e1

Browse files
authored
🤖 Merge PR DefinitelyTyped#74199 [three] r182 by @Methuselah96
1 parent 7f5f100 commit ab8d5e1

File tree

77 files changed

+666
-192
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

77 files changed

+666
-192
lines changed

types/three/examples/jsm/controls/ArcballControls.d.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -130,7 +130,7 @@ declare class ArcballControls extends Controls<ArcballControlsEventMap> {
130130
* @param domElement The HTML element used for event listeners. (optional)
131131
* @param scene The scene rendered by the camera. If not given, gizmos cannot be shown. (optional)
132132
*/
133-
constructor(camera: Camera, domElement?: HTMLElement | null, scene?: Scene | null);
133+
constructor(camera: Camera, domElement?: HTMLElement | SVGElement | null, scene?: Scene | null);
134134

135135
/**
136136
* Set a new mouse action by specifying the operation to be performed and a mouse/key combination. In case of

types/three/examples/jsm/controls/DragControls.d.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@ declare class DragControls extends Controls<DragControlsEventMap> {
7575
* @param camera The camera of the rendered scene.
7676
* @param domElement The HTML element used for event listeners. (optional)
7777
*/
78-
constructor(objects: Object3D[], camera: Camera, domElement?: HTMLElement | null);
78+
constructor(objects: Object3D[], camera: Camera, domElement?: HTMLElement | SVGElement | null);
7979
}
8080

8181
export { DragControls };

types/three/examples/jsm/controls/FirstPersonControls.d.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,7 @@ declare class FirstPersonControls extends Controls<{}> {
7676
* @param object The camera to be controlled.
7777
* @param domElement The HTML element used for event listeners. (optional)
7878
*/
79-
constructor(object: Camera, domElement?: HTMLElement);
79+
constructor(object: Camera, domElement?: HTMLElement | SVGElement);
8080

8181
/**
8282
* Should be called if the application window is resized.

types/three/examples/jsm/controls/FlyControls.d.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ declare class FlyControls extends Controls<FlyControlsEventMap> {
3838
* @param object The camera to be controlled.
3939
* @param domElement The HTML element used for event listeners. (optional)
4040
*/
41-
constructor(object: Camera, domElement?: HTMLElement | null);
41+
constructor(object: Camera, domElement?: HTMLElement | SVGElement | null);
4242
}
4343

4444
export { FlyControls };

types/three/examples/jsm/controls/OrbitControls.d.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -206,7 +206,7 @@ declare class OrbitControls extends Controls<OrbitControlsEventMap> {
206206
* is the scene itself.
207207
* @param domElement The HTML element used for event listeners. (optional)
208208
*/
209-
constructor(object: Camera, domElement?: HTMLElement | null);
209+
constructor(object: Camera, domElement?: HTMLElement | SVGElement | null);
210210

211211
/**
212212
* Get the current vertical rotation, in radians.

types/three/examples/jsm/controls/PointerLockControls.d.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ declare class PointerLockControls extends Controls<PointerLockControlsEventMap>
4747
* @param camera The camera of the rendered scene.
4848
* @param domElement The HTML element used for event listeners.
4949
*/
50-
constructor(camera: Camera, domElement?: HTMLElement | null);
50+
constructor(camera: Camera, domElement?: HTMLElement | SVGElement | null);
5151

5252
/**
5353
* Returns the look direction of the camera.

types/three/examples/jsm/controls/TrackballControls.d.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -124,7 +124,7 @@ declare class TrackballControls extends Controls<TrackballControlsEventMap> {
124124
* @param camera The camera of the rendered scene.
125125
* @param domElement The HTML element used for event listeners. (optional)
126126
*/
127-
constructor(camera: Camera, domElement?: HTMLElement | null);
127+
constructor(camera: Camera, domElement?: HTMLElement | SVGElement | null);
128128

129129
/**
130130
* Should be called if the application window is resized.

types/three/examples/jsm/controls/TransformControls.d.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -163,7 +163,7 @@ declare class TransformControls extends Controls<TransformControlsEventMap> {
163163
* @param camera The camera of the rendered scene.
164164
* @param domElement The HTML element used for event listeners. (optional)
165165
*/
166-
constructor(camera: Camera, domElement?: HTMLElement);
166+
constructor(camera: Camera, domElement?: HTMLElement | SVGElement | null);
167167

168168
/**
169169
* Returns the visual representation of the controls. Add the helper to your scene to visually transform the

types/three/examples/jsm/loaders/UltraHDRLoader.d.ts

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,13 @@ declare class UltraHDRLoader extends Loader<DataTexture> {
1616
setDataType(value: TextureDataType): this;
1717

1818
parse(buffer: ArrayBuffer, onLoad: (texData: UltraHDRLoaderTextureData) => void): void;
19+
20+
load(
21+
url: string,
22+
onLoad: (data: DataTexture) => void,
23+
onProgress?: (event: ProgressEvent) => void,
24+
onError?: (err: unknown) => void,
25+
): DataTexture;
1926
}
2027

2128
export { UltraHDRLoader };
Lines changed: 22 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,38 @@
1-
import { Data3DTexture, Loader, LoadingManager, Mesh } from "three";
1+
import { BufferGeometry, Data3DTexture, Loader, LoadingManager, Mesh, MeshStandardMaterial, Object3D } from "three";
22

33
export interface Chunk {
44
palette: number[];
55
size: { x: number; y: number; z: number };
66
data: Uint8Array;
77
}
88

9-
export class VOXLoader extends Loader<Chunk[]> {
9+
export interface VOXLoaderResult {
10+
chunks: Chunk[];
11+
scene: Object3D;
12+
}
13+
14+
declare class VOXLoader extends Loader<VOXLoaderResult> {
1015
constructor(manager?: LoadingManager);
1116

12-
parse(data: ArrayBuffer): object[];
17+
parse(data: ArrayBuffer): VOXLoaderResult;
1318
}
1419

15-
export class VOXMesh extends Mesh {
20+
declare function buildMesh(chunk: Chunk): Mesh<BufferGeometry, MeshStandardMaterial>;
21+
22+
declare function buildData3DTexture(chunk: Chunk): Data3DTexture;
23+
24+
/**
25+
* @deprecated Use buildMesh() instead.
26+
*/
27+
declare class VOXMesh extends Mesh {
1628
constructor(chunk: Chunk);
1729
}
1830

19-
export class VOXData3DTexture extends Data3DTexture {
31+
/**
32+
* @deprecated Use buildData3DTexture() instead.
33+
*/
34+
declare class VOXData3DTexture extends Data3DTexture {
2035
constructor(chunk: Chunk);
2136
}
37+
38+
export { buildData3DTexture, buildMesh, VOXData3DTexture, VOXLoader, VOXMesh };

0 commit comments

Comments
 (0)