import * as THREE from 'three'; import { FC } from 'react'; import { OmitByValue } from 'utility-types'; import { ReactThreeFiber } from '../three-types'; declare type Three = typeof import('three'); declare type MissingInThreeRuntimeExports = THREE.AnimationAction | THREE.DirectGeometry | THREE.WebGLClipping | THREE.WebGLInfo | THREE.WebGLProperties | THREE.WebGLRenderList | THREE.WebGLRenderLists | THREE.WebGLColorBuffer | THREE.WebGLDepthBuffer | THREE.WebGLStencilBuffer; declare type InterestingThreeExports = OmitByValue; declare type __ThreeFiberComponents = { [P in keyof InterestingThreeExports]: Three[P] extends new (...args: any) => any ? InstanceType extends InstanceType ? FC, Three[P]>> : InstanceType extends InstanceType ? FC, Three[P]>> : InstanceType extends InstanceType ? FC, Three[P]>> : InstanceType extends InstanceType ? FC, Required>>> : FC, Three[P]>> : never; }; export { OmitByValue }; export interface ThreeFiberComponents extends OmitByValue<__ThreeFiberComponents, never> { }