@react-three/fiber 9.0.0-rc.3 → 9.0.0-rc.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -31,20 +31,21 @@ export declare function useFrame(callback: RenderCallback, renderPriority?: numb
31
31
  * @see https://docs.pmnd.rs/react-three-fiber/api/hooks#usegraph
32
32
  */
33
33
  export declare function useGraph(object: THREE.Object3D): ObjectMap;
34
- type LoaderInstance<T extends THREE.Loader<any> | ConstructorRepresentation<THREE.Loader<any>>> = T extends ConstructorRepresentation<THREE.Loader<any>> ? InstanceType<T> : T;
35
- export type LoaderResult<T extends THREE.Loader<any> | ConstructorRepresentation<THREE.Loader<any>>> = Awaited<ReturnType<LoaderInstance<T>['loadAsync']>> extends infer R ? R extends {
34
+ type LoaderLike = THREE.Loader<any, string | string[] | string[][] | Readonly<string | string[] | string[][]>>;
35
+ type LoaderInstance<T extends LoaderLike | ConstructorRepresentation<LoaderLike>> = T extends ConstructorRepresentation<LoaderLike> ? InstanceType<T> : T;
36
+ export type LoaderResult<T extends LoaderLike | ConstructorRepresentation<LoaderLike>> = Awaited<ReturnType<LoaderInstance<T>['loadAsync']>> extends infer R ? R extends {
36
37
  scene: THREE.Object3D;
37
38
  } ? R & ObjectMap : R : never;
38
- export type Extensions<T extends THREE.Loader<any> | ConstructorRepresentation<THREE.Loader<any>>> = (loader: LoaderInstance<T>) => void;
39
+ export type Extensions<T extends LoaderLike | ConstructorRepresentation<LoaderLike>> = (loader: LoaderInstance<T>) => void;
39
40
  /**
40
41
  * Synchronously loads and caches assets with a three loader.
41
42
  *
42
43
  * Note: this hook's caller must be wrapped with `React.Suspense`
43
44
  * @see https://docs.pmnd.rs/react-three-fiber/api/hooks#useloader
44
45
  */
45
- export declare function useLoader<T, U extends string | string[] | string[][], L extends THREE.Loader<any> | ConstructorRepresentation<THREE.Loader<any>>>(loader: L, input: U, extensions?: Extensions<L>, onProgress?: (event: ProgressEvent<EventTarget>) => void): U extends any[] ? LoaderResult<L>[] : LoaderResult<L>;
46
+ export declare function useLoader<T, U extends string | string[] | string[][], L extends LoaderLike | ConstructorRepresentation<LoaderLike>>(loader: L, input: U, extensions?: Extensions<L>, onProgress?: (event: ProgressEvent<EventTarget>) => void): U extends any[] ? LoaderResult<L>[] : LoaderResult<L>;
46
47
  export declare namespace useLoader {
47
- var preload: <T, U extends string | string[] | string[][], L extends THREE.Loader<any, string> | ConstructorRepresentation<THREE.Loader<any, string>>>(loader: L, input: U, extensions?: Extensions<L> | undefined) => void;
48
- var clear: <T, U extends string | string[] | string[][], L extends THREE.Loader<any, string> | ConstructorRepresentation<THREE.Loader<any, string>>>(loader: L, input: U) => void;
48
+ var preload: <T, U extends string | string[] | string[][], L extends LoaderLike | ConstructorRepresentation<LoaderLike>>(loader: L, input: U, extensions?: Extensions<L> | undefined) => void;
49
+ var clear: <T, U extends string | string[] | string[][], L extends LoaderLike | ConstructorRepresentation<LoaderLike>>(loader: L, input: U) => void;
49
50
  }
50
51
  export {};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@react-three/fiber",
3
- "version": "9.0.0-rc.3",
3
+ "version": "9.0.0-rc.4",
4
4
  "description": "A React renderer for Threejs",
5
5
  "keywords": [
6
6
  "react",
@@ -62,7 +62,7 @@
62
62
  "expo-file-system": ">=11.0",
63
63
  "react": "^19.0.0",
64
64
  "react-dom": "^19.0.0",
65
- "react-native": ">=0.69",
65
+ "react-native": ">=0.78",
66
66
  "three": ">=0.156"
67
67
  },
68
68
  "peerDependenciesMeta": {