babylon.inspector.d.ts 61 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602
  1. /// <reference types="react" />
  2. declare module INSPECTOR {
  3. export class PropertyChangedEvent {
  4. object: any;
  5. property: string;
  6. value: any;
  7. initialValue: any;
  8. }
  9. }
  10. declare module INSPECTOR {
  11. export class GlobalState {
  12. onSelectionChangedObservable: BABYLON.Observable<any>;
  13. onPropertyChangedObservable: BABYLON.Observable<PropertyChangedEvent>;
  14. onInspectorClosedObservable: BABYLON.Observable<BABYLON.Scene>;
  15. onTabChangedObservable: BABYLON.Observable<number>;
  16. onPluginActivatedObserver: BABYLON.Nullable<BABYLON.Observer<BABYLON.ISceneLoaderPlugin | BABYLON.ISceneLoaderPluginAsync>>;
  17. validationResults: BABYLON.GLTF2.IGLTFValidationResults;
  18. onValidationResultsUpdatedObservable: BABYLON.Observable<BABYLON.GLTF2.IGLTFValidationResults>;
  19. onExtensionLoadedObservable: BABYLON.Observable<BABYLON.IGLTFLoaderExtension>;
  20. glTFLoaderExtensionDefaults: {
  21. [name: string]: {
  22. [key: string]: any;
  23. };
  24. };
  25. glTFLoaderDefaults: {
  26. [key: string]: any;
  27. };
  28. blockMutationUpdates: boolean;
  29. selectedLineContainerTitle: string;
  30. prepareGLTFPlugin(loader: BABYLON.GLTFFileLoader): void;
  31. lightGizmos: Array<BABYLON.LightGizmo>;
  32. enableLightGizmo(light: BABYLON.Light, enable?: boolean): void;
  33. }
  34. }
  35. declare module INSPECTOR {
  36. export interface IPaneComponentProps {
  37. title: string;
  38. scene: BABYLON.Scene;
  39. selectedEntity?: any;
  40. onSelectionChangedObservable?: BABYLON.Observable<any>;
  41. onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
  42. globalState: GlobalState;
  43. }
  44. export class PaneComponent extends React.Component<IPaneComponentProps, {
  45. tag: any;
  46. }> {
  47. constructor(props: IPaneComponentProps);
  48. render(): JSX.Element | null;
  49. }
  50. }
  51. declare module INSPECTOR {
  52. interface ITabsComponentProps {
  53. children: any[];
  54. selectedIndex: number;
  55. onSelectedIndexChange: (value: number) => void;
  56. }
  57. export class TabsComponent extends React.Component<ITabsComponentProps> {
  58. constructor(props: ITabsComponentProps);
  59. onSelect(index: number): void;
  60. renderLabel(child: PaneComponent, index: number): JSX.Element;
  61. render(): JSX.Element;
  62. }
  63. }
  64. declare module INSPECTOR {
  65. interface ITextLineComponentProps {
  66. label: string;
  67. value: string;
  68. color?: string;
  69. underline?: boolean;
  70. onLink?: () => void;
  71. }
  72. export class TextLineComponent extends React.Component<ITextLineComponentProps> {
  73. constructor(props: ITextLineComponentProps);
  74. onLink(): void;
  75. renderContent(): JSX.Element;
  76. render(): JSX.Element;
  77. }
  78. }
  79. declare module INSPECTOR {
  80. interface ILineContainerComponentProps {
  81. globalState: GlobalState;
  82. title: string;
  83. children: any[] | any;
  84. closed?: boolean;
  85. }
  86. export class LineContainerComponent extends React.Component<ILineContainerComponentProps, {
  87. isExpanded: boolean;
  88. isHighlighted: boolean;
  89. }> {
  90. private static _InMemoryStorage;
  91. constructor(props: ILineContainerComponentProps);
  92. switchExpandedState(): void;
  93. componentDidMount(): void;
  94. renderHeader(): JSX.Element;
  95. render(): JSX.Element;
  96. }
  97. }
  98. declare module INSPECTOR {
  99. interface IValueLineComponentProps {
  100. label: string;
  101. value: number;
  102. color?: string;
  103. fractionDigits?: number;
  104. units?: string;
  105. }
  106. export class ValueLineComponent extends React.Component<IValueLineComponentProps> {
  107. constructor(props: IValueLineComponentProps);
  108. render(): JSX.Element;
  109. }
  110. }
  111. declare module INSPECTOR {
  112. export interface IBooleanLineComponentProps {
  113. label: string;
  114. value: boolean;
  115. }
  116. export class BooleanLineComponent extends React.Component<IBooleanLineComponentProps> {
  117. constructor(props: IBooleanLineComponentProps);
  118. render(): JSX.Element;
  119. }
  120. }
  121. declare module INSPECTOR {
  122. export class StatisticsTabComponent extends PaneComponent {
  123. private _sceneInstrumentation;
  124. private _engineInstrumentation;
  125. private _timerIntervalId;
  126. constructor(props: IPaneComponentProps);
  127. componentWillMount(): void;
  128. componentWillUnmount(): void;
  129. render(): JSX.Element | null;
  130. }
  131. }
  132. declare module INSPECTOR {
  133. export interface ICheckBoxLineComponentProps {
  134. label: string;
  135. target?: any;
  136. propertyName?: string;
  137. isSelected?: () => boolean;
  138. onSelect?: (value: boolean) => void;
  139. onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
  140. }
  141. export class CheckBoxLineComponent extends React.Component<ICheckBoxLineComponentProps, {
  142. isSelected: boolean;
  143. }> {
  144. private static _UniqueIdSeed;
  145. private _uniqueId;
  146. private _localChange;
  147. constructor(props: ICheckBoxLineComponentProps);
  148. shouldComponentUpdate(nextProps: ICheckBoxLineComponentProps, nextState: {
  149. isSelected: boolean;
  150. }): boolean;
  151. onChange(): void;
  152. render(): JSX.Element;
  153. }
  154. }
  155. declare module INSPECTOR {
  156. interface IRenderGridPropertyGridComponentProps {
  157. globalState: GlobalState;
  158. scene: BABYLON.Scene;
  159. }
  160. export class RenderGridPropertyGridComponent extends React.Component<IRenderGridPropertyGridComponentProps, {
  161. isEnabled: boolean;
  162. }> {
  163. private _gridMesh;
  164. constructor(props: IRenderGridPropertyGridComponentProps);
  165. componentWillMount(): void;
  166. addOrRemoveGrid(): void;
  167. render(): JSX.Element;
  168. }
  169. }
  170. declare module INSPECTOR {
  171. export class DebugTabComponent extends PaneComponent {
  172. private _skeletonViewersEnabled;
  173. private _physicsViewersEnabled;
  174. private _skeletonViewers;
  175. constructor(props: IPaneComponentProps);
  176. componentWillMount(): void;
  177. componentWillUnmount(): void;
  178. switchSkeletonViewers(): void;
  179. switchPhysicsViewers(): void;
  180. render(): JSX.Element | null;
  181. }
  182. }
  183. declare module INSPECTOR {
  184. interface ISliderLineComponentProps {
  185. label: string;
  186. target?: any;
  187. propertyName?: string;
  188. minimum: number;
  189. maximum: number;
  190. step: number;
  191. directValue?: number;
  192. onChange?: (value: number) => void;
  193. onInput?: (value: number) => void;
  194. onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
  195. decimalCount?: number;
  196. }
  197. export class SliderLineComponent extends React.Component<ISliderLineComponentProps, {
  198. value: number;
  199. }> {
  200. private _localChange;
  201. constructor(props: ISliderLineComponentProps);
  202. shouldComponentUpdate(nextProps: ISliderLineComponentProps, nextState: {
  203. value: number;
  204. }): boolean;
  205. onChange(newValueString: any): void;
  206. onInput(newValueString: any): void;
  207. render(): JSX.Element;
  208. }
  209. }
  210. declare module INSPECTOR {
  211. class ListLineOption {
  212. label: string;
  213. value: number;
  214. }
  215. interface IOptionsLineComponentProps {
  216. label: string;
  217. target: any;
  218. propertyName: string;
  219. options: ListLineOption[];
  220. noDirectUpdate?: boolean;
  221. onSelect?: (value: number) => void;
  222. onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
  223. }
  224. export class OptionsLineComponent extends React.Component<IOptionsLineComponentProps, {
  225. value: number;
  226. }> {
  227. private _localChange;
  228. constructor(props: IOptionsLineComponentProps);
  229. shouldComponentUpdate(nextProps: IOptionsLineComponentProps, nextState: {
  230. value: number;
  231. }): boolean;
  232. raiseOnPropertyChanged(newValue: number, previousValue: number): void;
  233. updateValue(valueString: string): void;
  234. render(): JSX.Element;
  235. }
  236. }
  237. declare module INSPECTOR {
  238. /**
  239. * Class used to provide lock mechanism
  240. */
  241. export class LockObject {
  242. /**
  243. * Gets or set if the lock is engaged
  244. */
  245. lock: boolean;
  246. }
  247. }
  248. declare module INSPECTOR {
  249. interface ICommonMaterialPropertyGridComponentProps {
  250. globalState: GlobalState;
  251. material: BABYLON.Material;
  252. lockObject: LockObject;
  253. onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
  254. }
  255. export class CommonMaterialPropertyGridComponent extends React.Component<ICommonMaterialPropertyGridComponentProps> {
  256. constructor(props: ICommonMaterialPropertyGridComponentProps);
  257. render(): JSX.Element;
  258. }
  259. }
  260. declare module INSPECTOR {
  261. interface IMaterialPropertyGridComponentProps {
  262. globalState: GlobalState;
  263. material: BABYLON.Material;
  264. lockObject: LockObject;
  265. onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
  266. }
  267. export class MaterialPropertyGridComponent extends React.Component<IMaterialPropertyGridComponentProps> {
  268. constructor(props: IMaterialPropertyGridComponentProps);
  269. render(): JSX.Element;
  270. }
  271. }
  272. declare module INSPECTOR {
  273. interface INumericInputComponentProps {
  274. label: string;
  275. value: number;
  276. onChange: (value: number) => void;
  277. }
  278. export class NumericInputComponent extends React.Component<INumericInputComponentProps, {
  279. value: string;
  280. }> {
  281. private _localChange;
  282. constructor(props: INumericInputComponentProps);
  283. shouldComponentUpdate(nextProps: INumericInputComponentProps, nextState: {
  284. value: string;
  285. }): boolean;
  286. updateValue(evt: any): void;
  287. render(): JSX.Element;
  288. }
  289. }
  290. declare module INSPECTOR {
  291. export interface IColor3LineComponentProps {
  292. label: string;
  293. target: any;
  294. propertyName: string;
  295. onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
  296. }
  297. export class Color3LineComponent extends React.Component<IColor3LineComponentProps, {
  298. isExpanded: boolean;
  299. color: BABYLON.Color3;
  300. }> {
  301. private _localChange;
  302. constructor(props: IColor3LineComponentProps);
  303. shouldComponentUpdate(nextProps: IColor3LineComponentProps, nextState: {
  304. color: BABYLON.Color3;
  305. }): boolean;
  306. onChange(newValue: string): void;
  307. switchExpandState(): void;
  308. raiseOnPropertyChanged(previousValue: BABYLON.Color3): void;
  309. updateStateR(value: number): void;
  310. updateStateG(value: number): void;
  311. updateStateB(value: number): void;
  312. copyToClipboard(): void;
  313. render(): JSX.Element;
  314. }
  315. }
  316. declare module INSPECTOR {
  317. export interface ITextureLinkLineComponentProps {
  318. label: string;
  319. texture: BABYLON.Nullable<BABYLON.BaseTexture>;
  320. material?: BABYLON.Material;
  321. onSelectionChangedObservable?: BABYLON.Observable<any>;
  322. onDebugSelectionChangeObservable?: BABYLON.Observable<BABYLON.BaseTexture>;
  323. }
  324. export class TextureLinkLineComponent extends React.Component<ITextureLinkLineComponentProps, {
  325. isDebugSelected: boolean;
  326. }> {
  327. private _onDebugSelectionChangeObserver;
  328. constructor(props: ITextureLinkLineComponentProps);
  329. componentWillMount(): void;
  330. componentWillUnmount(): void;
  331. debugTexture(): void;
  332. onLink(): void;
  333. render(): JSX.Element | null;
  334. }
  335. }
  336. declare module INSPECTOR {
  337. interface IStandardMaterialPropertyGridComponentProps {
  338. globalState: GlobalState;
  339. material: BABYLON.StandardMaterial;
  340. lockObject: LockObject;
  341. onSelectionChangedObservable?: BABYLON.Observable<any>;
  342. onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
  343. }
  344. export class StandardMaterialPropertyGridComponent extends React.Component<IStandardMaterialPropertyGridComponentProps> {
  345. constructor(props: IStandardMaterialPropertyGridComponentProps);
  346. renderTextures(): JSX.Element | null;
  347. render(): JSX.Element;
  348. }
  349. }
  350. declare module INSPECTOR {
  351. interface ITextureLineComponentProps {
  352. texture: BABYLON.BaseTexture;
  353. width: number;
  354. height: number;
  355. globalState: GlobalState;
  356. }
  357. export class TextureLineComponent extends React.Component<ITextureLineComponentProps, {
  358. displayRed: boolean;
  359. displayGreen: boolean;
  360. displayBlue: boolean;
  361. displayAlpha: boolean;
  362. face: number;
  363. }> {
  364. constructor(props: ITextureLineComponentProps);
  365. shouldComponentUpdate(nextProps: ITextureLineComponentProps, nextState: {
  366. displayRed: boolean;
  367. displayGreen: boolean;
  368. displayBlue: boolean;
  369. displayAlpha: boolean;
  370. face: number;
  371. }): boolean;
  372. componentDidMount(): void;
  373. componentDidUpdate(): void;
  374. updatePreview(): void;
  375. render(): JSX.Element;
  376. }
  377. }
  378. declare module INSPECTOR {
  379. interface IFloatLineComponentProps {
  380. label: string;
  381. target: any;
  382. propertyName: string;
  383. lockObject?: LockObject;
  384. onChange?: (newValue: number) => void;
  385. isInteger?: boolean;
  386. onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
  387. additionalClass?: string;
  388. }
  389. export class FloatLineComponent extends React.Component<IFloatLineComponentProps, {
  390. value: string;
  391. }> {
  392. private _localChange;
  393. private _store;
  394. constructor(props: IFloatLineComponentProps);
  395. componentWillUnmount(): void;
  396. shouldComponentUpdate(nextProps: IFloatLineComponentProps, nextState: {
  397. value: string;
  398. }): boolean;
  399. raiseOnPropertyChanged(newValue: number, previousValue: number): void;
  400. updateValue(valueString: string): void;
  401. lock(): void;
  402. unlock(): void;
  403. render(): JSX.Element;
  404. }
  405. }
  406. declare module INSPECTOR {
  407. interface IFileButtonLineComponentProps {
  408. label: string;
  409. onClick: (file: File) => void;
  410. accept: string;
  411. }
  412. export class FileButtonLineComponent extends React.Component<IFileButtonLineComponentProps> {
  413. constructor(props: IFileButtonLineComponentProps);
  414. onChange(evt: any): void;
  415. render(): JSX.Element;
  416. }
  417. }
  418. declare module INSPECTOR {
  419. interface ITexturePropertyGridComponentProps {
  420. texture: BABYLON.BaseTexture;
  421. lockObject: LockObject;
  422. globalState: GlobalState;
  423. onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
  424. }
  425. export class TexturePropertyGridComponent extends React.Component<ITexturePropertyGridComponentProps> {
  426. private _adtInstrumentation;
  427. constructor(props: ITexturePropertyGridComponentProps);
  428. componentWillMount(): void;
  429. componentWillUnmount(): void;
  430. updateTexture(file: File): void;
  431. render(): JSX.Element;
  432. }
  433. }
  434. declare module INSPECTOR {
  435. interface IPBRMaterialPropertyGridComponentProps {
  436. globalState: GlobalState;
  437. material: BABYLON.PBRMaterial;
  438. lockObject: LockObject;
  439. onSelectionChangedObservable?: BABYLON.Observable<any>;
  440. onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
  441. }
  442. export class PBRMaterialPropertyGridComponent extends React.Component<IPBRMaterialPropertyGridComponentProps> {
  443. constructor(props: IPBRMaterialPropertyGridComponentProps);
  444. renderTextures(onDebugSelectionChangeObservable: BABYLON.Observable<BABYLON.BaseTexture>): JSX.Element | null;
  445. render(): JSX.Element;
  446. }
  447. }
  448. declare module INSPECTOR {
  449. interface IRadioButtonLineComponentProps {
  450. onSelectionChangedObservable: BABYLON.Observable<RadioButtonLineComponent>;
  451. label: string;
  452. isSelected: () => boolean;
  453. onSelect: () => void;
  454. }
  455. export class RadioButtonLineComponent extends React.Component<IRadioButtonLineComponentProps, {
  456. isSelected: boolean;
  457. }> {
  458. private _onSelectionChangedObserver;
  459. constructor(props: IRadioButtonLineComponentProps);
  460. componentWillMount(): void;
  461. componentWillUnmount(): void;
  462. onChange(): void;
  463. render(): JSX.Element;
  464. }
  465. }
  466. declare module INSPECTOR {
  467. interface IFogPropertyGridComponentProps {
  468. globalState: GlobalState;
  469. scene: BABYLON.Scene;
  470. lockObject: LockObject;
  471. onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
  472. }
  473. export class FogPropertyGridComponent extends React.Component<IFogPropertyGridComponentProps, {
  474. mode: number;
  475. }> {
  476. constructor(props: IFogPropertyGridComponentProps);
  477. render(): JSX.Element;
  478. }
  479. }
  480. declare module INSPECTOR {
  481. interface IVector3LineComponentProps {
  482. label: string;
  483. target: any;
  484. propertyName: string;
  485. onChange?: (newvalue: BABYLON.Vector3) => void;
  486. onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
  487. }
  488. export class Vector3LineComponent extends React.Component<IVector3LineComponentProps, {
  489. isExpanded: boolean;
  490. value: BABYLON.Vector3;
  491. }> {
  492. private _localChange;
  493. constructor(props: IVector3LineComponentProps);
  494. shouldComponentUpdate(nextProps: IVector3LineComponentProps, nextState: {
  495. isExpanded: boolean;
  496. value: BABYLON.Vector3;
  497. }): boolean;
  498. switchExpandState(): void;
  499. raiseOnPropertyChanged(previousValue: BABYLON.Vector3): void;
  500. updateStateX(value: number): void;
  501. updateStateY(value: number): void;
  502. updateStateZ(value: number): void;
  503. render(): JSX.Element;
  504. }
  505. }
  506. declare module INSPECTOR {
  507. interface IScenePropertyGridComponentProps {
  508. globalState: GlobalState;
  509. scene: BABYLON.Scene;
  510. lockObject: LockObject;
  511. onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
  512. onSelectionChangedObservable?: BABYLON.Observable<any>;
  513. }
  514. export class ScenePropertyGridComponent extends React.Component<IScenePropertyGridComponentProps> {
  515. private _storedEnvironmentTexture;
  516. private _renderingModeGroupObservable;
  517. constructor(props: IScenePropertyGridComponentProps);
  518. setRenderingModes(point: boolean, wireframe: boolean): void;
  519. switchIBL(): void;
  520. updateEnvironmentTexture(file: File): void;
  521. updateGravity(newValue: BABYLON.Vector3): void;
  522. updateTimeStep(newValue: number): void;
  523. render(): JSX.Element;
  524. }
  525. }
  526. declare module INSPECTOR {
  527. interface ICommonLightPropertyGridComponentProps {
  528. globalState: GlobalState;
  529. light: BABYLON.Light;
  530. lockObject: LockObject;
  531. onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
  532. }
  533. export class CommonLightPropertyGridComponent extends React.Component<ICommonLightPropertyGridComponentProps> {
  534. constructor(props: ICommonLightPropertyGridComponentProps);
  535. render(): JSX.Element;
  536. }
  537. }
  538. declare module INSPECTOR {
  539. interface IHemisphericLightPropertyGridComponentProps {
  540. globalState: GlobalState;
  541. light: BABYLON.HemisphericLight;
  542. lockObject: LockObject;
  543. onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
  544. }
  545. export class HemisphericLightPropertyGridComponent extends React.Component<IHemisphericLightPropertyGridComponentProps> {
  546. constructor(props: IHemisphericLightPropertyGridComponentProps);
  547. render(): JSX.Element;
  548. }
  549. }
  550. declare module INSPECTOR {
  551. interface ICommonShadowLightPropertyGridComponentProps {
  552. globalState: GlobalState;
  553. light: BABYLON.IShadowLight;
  554. lockObject: LockObject;
  555. onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
  556. }
  557. export class CommonShadowLightPropertyGridComponent extends React.Component<ICommonShadowLightPropertyGridComponentProps> {
  558. constructor(props: ICommonShadowLightPropertyGridComponentProps);
  559. render(): JSX.Element;
  560. }
  561. }
  562. declare module INSPECTOR {
  563. interface IPointLightPropertyGridComponentProps {
  564. globalState: GlobalState;
  565. light: BABYLON.PointLight;
  566. lockObject: LockObject;
  567. onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
  568. }
  569. export class PointLightPropertyGridComponent extends React.Component<IPointLightPropertyGridComponentProps> {
  570. constructor(props: IPointLightPropertyGridComponentProps);
  571. render(): JSX.Element;
  572. }
  573. }
  574. declare module INSPECTOR {
  575. interface ICommonCameraPropertyGridComponentProps {
  576. globalState: GlobalState;
  577. camera: BABYLON.Camera;
  578. lockObject: LockObject;
  579. onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
  580. }
  581. export class CommonCameraPropertyGridComponent extends React.Component<ICommonCameraPropertyGridComponentProps, {
  582. mode: number;
  583. }> {
  584. constructor(props: ICommonCameraPropertyGridComponentProps);
  585. render(): JSX.Element;
  586. }
  587. }
  588. declare module INSPECTOR {
  589. interface IFreeCameraPropertyGridComponentProps {
  590. globalState: GlobalState;
  591. camera: BABYLON.FreeCamera;
  592. lockObject: LockObject;
  593. onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
  594. }
  595. export class FreeCameraPropertyGridComponent extends React.Component<IFreeCameraPropertyGridComponentProps> {
  596. constructor(props: IFreeCameraPropertyGridComponentProps);
  597. render(): JSX.Element;
  598. }
  599. }
  600. declare module INSPECTOR {
  601. interface IArcRotateCameraPropertyGridComponentProps {
  602. globalState: GlobalState;
  603. camera: BABYLON.ArcRotateCamera;
  604. lockObject: LockObject;
  605. onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
  606. }
  607. export class ArcRotateCameraPropertyGridComponent extends React.Component<IArcRotateCameraPropertyGridComponentProps> {
  608. constructor(props: IArcRotateCameraPropertyGridComponentProps);
  609. render(): JSX.Element;
  610. }
  611. }
  612. declare module INSPECTOR {
  613. interface IQuaternionLineComponentProps {
  614. label: string;
  615. target: any;
  616. propertyName: string;
  617. onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
  618. }
  619. export class QuaternionLineComponent extends React.Component<IQuaternionLineComponentProps, {
  620. isExpanded: boolean;
  621. value: BABYLON.Quaternion;
  622. }> {
  623. private _localChange;
  624. constructor(props: IQuaternionLineComponentProps);
  625. shouldComponentUpdate(nextProps: IQuaternionLineComponentProps, nextState: {
  626. isExpanded: boolean;
  627. value: BABYLON.Quaternion;
  628. }): boolean;
  629. switchExpandState(): void;
  630. raiseOnPropertyChanged(currentValue: BABYLON.Quaternion, previousValue: BABYLON.Quaternion): void;
  631. updateQuaternion(): void;
  632. updateStateX(value: number): void;
  633. updateStateY(value: number): void;
  634. updateStateZ(value: number): void;
  635. updateStateW(value: number): void;
  636. render(): JSX.Element;
  637. }
  638. }
  639. declare module INSPECTOR {
  640. interface IAxisViewerComponentProps {
  641. node: BABYLON.TransformNode;
  642. globalState: GlobalState;
  643. }
  644. export class AxesViewerComponent extends React.Component<IAxisViewerComponentProps, {
  645. displayAxis: boolean;
  646. }> {
  647. constructor(props: IAxisViewerComponentProps);
  648. shouldComponentUpdate(nextProps: IAxisViewerComponentProps, nextState: {
  649. displayAxis: boolean;
  650. }): boolean;
  651. displayAxes(): void;
  652. render(): JSX.Element;
  653. }
  654. }
  655. declare module INSPECTOR {
  656. interface IMeshPropertyGridComponentProps {
  657. globalState: GlobalState;
  658. mesh: BABYLON.Mesh;
  659. lockObject: LockObject;
  660. onSelectionChangedObservable?: BABYLON.Observable<any>;
  661. onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
  662. }
  663. export class MeshPropertyGridComponent extends React.Component<IMeshPropertyGridComponentProps, {
  664. displayNormals: boolean;
  665. renderNormalVectors: boolean;
  666. }> {
  667. constructor(props: IMeshPropertyGridComponentProps);
  668. renderNormalVectors(): void;
  669. displayNormals(): void;
  670. onMaterialLink(): void;
  671. convertPhysicsTypeToString(): string;
  672. render(): JSX.Element;
  673. }
  674. }
  675. declare module INSPECTOR {
  676. interface ITransformNodePropertyGridComponentProps {
  677. globalState: GlobalState;
  678. transformNode: BABYLON.TransformNode;
  679. lockObject: LockObject;
  680. onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
  681. }
  682. export class TransformNodePropertyGridComponent extends React.Component<ITransformNodePropertyGridComponentProps> {
  683. constructor(props: ITransformNodePropertyGridComponentProps);
  684. render(): JSX.Element;
  685. }
  686. }
  687. declare module INSPECTOR {
  688. interface IBackgroundMaterialPropertyGridComponentProps {
  689. globalState: GlobalState;
  690. material: BABYLON.BackgroundMaterial;
  691. lockObject: LockObject;
  692. onSelectionChangedObservable?: BABYLON.Observable<any>;
  693. onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
  694. }
  695. export class BackgroundMaterialPropertyGridComponent extends React.Component<IBackgroundMaterialPropertyGridComponentProps> {
  696. constructor(props: IBackgroundMaterialPropertyGridComponentProps);
  697. renderTextures(): JSX.Element;
  698. render(): JSX.Element;
  699. }
  700. }
  701. declare module INSPECTOR {
  702. interface ITextInputLineComponentProps {
  703. label: string;
  704. lockObject: LockObject;
  705. target?: any;
  706. propertyName?: string;
  707. value?: string;
  708. onChange?: (value: string) => void;
  709. onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
  710. }
  711. export class TextInputLineComponent extends React.Component<ITextInputLineComponentProps, {
  712. value: string;
  713. }> {
  714. private _localChange;
  715. constructor(props: ITextInputLineComponentProps);
  716. componentWillUnmount(): void;
  717. shouldComponentUpdate(nextProps: ITextInputLineComponentProps, nextState: {
  718. value: string;
  719. }): boolean;
  720. raiseOnPropertyChanged(newValue: string, previousValue: string): void;
  721. updateValue(value: string): void;
  722. render(): JSX.Element;
  723. }
  724. }
  725. declare module INSPECTOR {
  726. interface ICommonControlPropertyGridComponentProps {
  727. globalState: GlobalState;
  728. control: BABYLON.GUI.Control;
  729. lockObject: LockObject;
  730. onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
  731. }
  732. export class CommonControlPropertyGridComponent extends React.Component<ICommonControlPropertyGridComponentProps> {
  733. constructor(props: ICommonControlPropertyGridComponentProps);
  734. renderGridInformation(): JSX.Element | null;
  735. render(): JSX.Element;
  736. }
  737. }
  738. declare module INSPECTOR {
  739. interface IControlPropertyGridComponentProps {
  740. globalState: GlobalState;
  741. control: BABYLON.GUI.Control;
  742. lockObject: LockObject;
  743. onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
  744. }
  745. export class ControlPropertyGridComponent extends React.Component<IControlPropertyGridComponentProps> {
  746. constructor(props: IControlPropertyGridComponentProps);
  747. render(): JSX.Element;
  748. }
  749. }
  750. declare module INSPECTOR {
  751. interface ITextBlockPropertyGridComponentProps {
  752. globalState: GlobalState;
  753. textBlock: BABYLON.GUI.TextBlock;
  754. lockObject: LockObject;
  755. onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
  756. }
  757. export class TextBlockPropertyGridComponent extends React.Component<ITextBlockPropertyGridComponentProps> {
  758. constructor(props: ITextBlockPropertyGridComponentProps);
  759. render(): JSX.Element;
  760. }
  761. }
  762. declare module INSPECTOR {
  763. interface IInputTextPropertyGridComponentProps {
  764. globalState: GlobalState;
  765. inputText: BABYLON.GUI.InputText;
  766. lockObject: LockObject;
  767. onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
  768. }
  769. export class InputTextPropertyGridComponent extends React.Component<IInputTextPropertyGridComponentProps> {
  770. constructor(props: IInputTextPropertyGridComponentProps);
  771. render(): JSX.Element;
  772. }
  773. }
  774. declare module INSPECTOR {
  775. interface IColorPickerPropertyGridComponentProps {
  776. globalState: GlobalState;
  777. colorPicker: BABYLON.GUI.ColorPicker;
  778. lockObject: LockObject;
  779. onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
  780. }
  781. export class ColorPickerPropertyGridComponent extends React.Component<IColorPickerPropertyGridComponentProps> {
  782. constructor(props: IColorPickerPropertyGridComponentProps);
  783. render(): JSX.Element;
  784. }
  785. }
  786. declare module INSPECTOR {
  787. export interface IButtonLineComponentProps {
  788. label: string;
  789. onClick: () => void;
  790. }
  791. export class ButtonLineComponent extends React.Component<IButtonLineComponentProps> {
  792. constructor(props: IButtonLineComponentProps);
  793. render(): JSX.Element;
  794. }
  795. }
  796. declare module INSPECTOR {
  797. interface IAnimationGroupGridComponentProps {
  798. globalState: GlobalState;
  799. animationGroup: BABYLON.AnimationGroup;
  800. scene: BABYLON.Scene;
  801. lockObject: LockObject;
  802. onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
  803. }
  804. export class AnimationGroupGridComponent extends React.Component<IAnimationGroupGridComponentProps, {
  805. playButtonText: string;
  806. currentFrame: number;
  807. }> {
  808. private _onAnimationGroupPlayObserver;
  809. private _onAnimationGroupPauseObserver;
  810. private _onBeforeRenderObserver;
  811. constructor(props: IAnimationGroupGridComponentProps);
  812. disconnect(animationGroup: BABYLON.AnimationGroup): void;
  813. connect(animationGroup: BABYLON.AnimationGroup): void;
  814. updateCurrentFrame(animationGroup: BABYLON.AnimationGroup): void;
  815. shouldComponentUpdate(nextProps: IAnimationGroupGridComponentProps): boolean;
  816. componentWillMount(): void;
  817. componentWillUnmount(): void;
  818. playOrPause(): void;
  819. onCurrentFrameChange(value: number): void;
  820. render(): JSX.Element;
  821. }
  822. }
  823. declare module INSPECTOR {
  824. interface IImagePropertyGridComponentProps {
  825. globalState: GlobalState;
  826. image: BABYLON.GUI.Image;
  827. lockObject: LockObject;
  828. onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
  829. }
  830. export class ImagePropertyGridComponent extends React.Component<IImagePropertyGridComponentProps> {
  831. constructor(props: IImagePropertyGridComponentProps);
  832. render(): JSX.Element;
  833. }
  834. }
  835. declare module INSPECTOR {
  836. interface ISliderPropertyGridComponentProps {
  837. globalState: GlobalState;
  838. slider: BABYLON.GUI.Slider;
  839. lockObject: LockObject;
  840. onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
  841. }
  842. export class SliderPropertyGridComponent extends React.Component<ISliderPropertyGridComponentProps> {
  843. constructor(props: ISliderPropertyGridComponentProps);
  844. render(): JSX.Element;
  845. }
  846. }
  847. declare module INSPECTOR {
  848. interface IImageBasedSliderPropertyGridComponentProps {
  849. globalState: GlobalState;
  850. imageBasedSlider: BABYLON.GUI.ImageBasedSlider;
  851. lockObject: LockObject;
  852. onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
  853. }
  854. export class ImageBasedSliderPropertyGridComponent extends React.Component<IImageBasedSliderPropertyGridComponentProps> {
  855. constructor(props: IImageBasedSliderPropertyGridComponentProps);
  856. render(): JSX.Element;
  857. }
  858. }
  859. declare module INSPECTOR {
  860. interface IRectanglePropertyGridComponentProps {
  861. globalState: GlobalState;
  862. rectangle: BABYLON.GUI.Rectangle;
  863. lockObject: LockObject;
  864. onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
  865. }
  866. export class RectanglePropertyGridComponent extends React.Component<IRectanglePropertyGridComponentProps> {
  867. constructor(props: IRectanglePropertyGridComponentProps);
  868. render(): JSX.Element;
  869. }
  870. }
  871. declare module INSPECTOR {
  872. interface IEllipsePropertyGridComponentProps {
  873. globalState: GlobalState;
  874. ellipse: BABYLON.GUI.Ellipse;
  875. lockObject: LockObject;
  876. onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
  877. }
  878. export class EllipsePropertyGridComponent extends React.Component<IEllipsePropertyGridComponentProps> {
  879. constructor(props: IEllipsePropertyGridComponentProps);
  880. render(): JSX.Element;
  881. }
  882. }
  883. declare module INSPECTOR {
  884. interface ICheckboxPropertyGridComponentProps {
  885. globalState: GlobalState;
  886. checkbox: BABYLON.GUI.Checkbox;
  887. lockObject: LockObject;
  888. onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
  889. }
  890. export class CheckboxPropertyGridComponent extends React.Component<ICheckboxPropertyGridComponentProps> {
  891. constructor(props: ICheckboxPropertyGridComponentProps);
  892. render(): JSX.Element;
  893. }
  894. }
  895. declare module INSPECTOR {
  896. interface IRadioButtonPropertyGridComponentProps {
  897. globalState: GlobalState;
  898. radioButton: BABYLON.GUI.RadioButton;
  899. lockObject: LockObject;
  900. onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
  901. }
  902. export class RadioButtonPropertyGridComponent extends React.Component<IRadioButtonPropertyGridComponentProps> {
  903. constructor(props: IRadioButtonPropertyGridComponentProps);
  904. render(): JSX.Element;
  905. }
  906. }
  907. declare module INSPECTOR {
  908. interface ILinePropertyGridComponentProps {
  909. globalState: GlobalState;
  910. line: BABYLON.GUI.Line;
  911. lockObject: LockObject;
  912. onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
  913. }
  914. export class LinePropertyGridComponent extends React.Component<ILinePropertyGridComponentProps> {
  915. constructor(props: ILinePropertyGridComponentProps);
  916. onDashChange(value: string): void;
  917. render(): JSX.Element;
  918. }
  919. }
  920. declare module INSPECTOR {
  921. interface IScrollViewerPropertyGridComponentProps {
  922. globalState: GlobalState;
  923. scrollViewer: BABYLON.GUI.ScrollViewer;
  924. lockObject: LockObject;
  925. onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
  926. }
  927. export class ScrollViewerPropertyGridComponent extends React.Component<IScrollViewerPropertyGridComponentProps> {
  928. constructor(props: IScrollViewerPropertyGridComponentProps);
  929. render(): JSX.Element;
  930. }
  931. }
  932. declare module INSPECTOR {
  933. interface IGridPropertyGridComponentProps {
  934. globalState: GlobalState;
  935. grid: BABYLON.GUI.Grid;
  936. lockObject: LockObject;
  937. onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
  938. }
  939. export class GridPropertyGridComponent extends React.Component<IGridPropertyGridComponentProps> {
  940. constructor(props: IGridPropertyGridComponentProps);
  941. renderRows(): JSX.Element[];
  942. renderColumns(): JSX.Element[];
  943. render(): JSX.Element;
  944. }
  945. }
  946. declare module INSPECTOR {
  947. interface IPBRMetallicRoughnessMaterialPropertyGridComponentProps {
  948. globalState: GlobalState;
  949. material: BABYLON.PBRMetallicRoughnessMaterial;
  950. lockObject: LockObject;
  951. onSelectionChangedObservable?: BABYLON.Observable<any>;
  952. onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
  953. }
  954. export class PBRMetallicRoughnessMaterialPropertyGridComponent extends React.Component<IPBRMetallicRoughnessMaterialPropertyGridComponentProps> {
  955. constructor(props: IPBRMetallicRoughnessMaterialPropertyGridComponentProps);
  956. renderTextures(): JSX.Element | null;
  957. render(): JSX.Element;
  958. }
  959. }
  960. declare module INSPECTOR {
  961. interface IPBRSpecularGlossinessMaterialPropertyGridComponentProps {
  962. globalState: GlobalState;
  963. material: BABYLON.PBRSpecularGlossinessMaterial;
  964. lockObject: LockObject;
  965. onSelectionChangedObservable?: BABYLON.Observable<any>;
  966. onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
  967. }
  968. export class PBRSpecularGlossinessMaterialPropertyGridComponent extends React.Component<IPBRSpecularGlossinessMaterialPropertyGridComponentProps> {
  969. constructor(props: IPBRSpecularGlossinessMaterialPropertyGridComponentProps);
  970. renderTextures(): JSX.Element | null;
  971. render(): JSX.Element;
  972. }
  973. }
  974. declare module INSPECTOR {
  975. interface IStackPanelPropertyGridComponentProps {
  976. globalState: GlobalState;
  977. stackPanel: BABYLON.GUI.StackPanel;
  978. lockObject: LockObject;
  979. onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
  980. }
  981. export class StackPanelPropertyGridComponent extends React.Component<IStackPanelPropertyGridComponentProps> {
  982. constructor(props: IStackPanelPropertyGridComponentProps);
  983. render(): JSX.Element;
  984. }
  985. }
  986. declare module INSPECTOR {
  987. interface ICommonPostProcessPropertyGridComponentProps {
  988. globalState: GlobalState;
  989. postProcess: BABYLON.PostProcess;
  990. lockObject: LockObject;
  991. onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
  992. }
  993. export class CommonPostProcessPropertyGridComponent extends React.Component<ICommonPostProcessPropertyGridComponentProps> {
  994. constructor(props: ICommonPostProcessPropertyGridComponentProps);
  995. render(): JSX.Element;
  996. }
  997. }
  998. declare module INSPECTOR {
  999. interface IPostProcessPropertyGridComponentProps {
  1000. globalState: GlobalState;
  1001. postProcess: BABYLON.PostProcess;
  1002. lockObject: LockObject;
  1003. onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
  1004. }
  1005. export class PostProcessPropertyGridComponent extends React.Component<IPostProcessPropertyGridComponentProps> {
  1006. constructor(props: IPostProcessPropertyGridComponentProps);
  1007. render(): JSX.Element;
  1008. }
  1009. }
  1010. declare module INSPECTOR {
  1011. interface ICommonRenderingPipelinePropertyGridComponentProps {
  1012. globalState: GlobalState;
  1013. renderPipeline: BABYLON.PostProcessRenderPipeline;
  1014. lockObject: LockObject;
  1015. onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
  1016. }
  1017. export class CommonRenderingPipelinePropertyGridComponent extends React.Component<ICommonRenderingPipelinePropertyGridComponentProps> {
  1018. constructor(props: ICommonRenderingPipelinePropertyGridComponentProps);
  1019. render(): JSX.Element;
  1020. }
  1021. }
  1022. declare module INSPECTOR {
  1023. interface IRenderingPipelinePropertyGridComponentProps {
  1024. globalState: GlobalState;
  1025. renderPipeline: BABYLON.PostProcessRenderPipeline;
  1026. lockObject: LockObject;
  1027. onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
  1028. }
  1029. export class RenderingPipelinePropertyGridComponent extends React.Component<IRenderingPipelinePropertyGridComponentProps> {
  1030. constructor(props: IRenderingPipelinePropertyGridComponentProps);
  1031. render(): JSX.Element;
  1032. }
  1033. }
  1034. declare module INSPECTOR {
  1035. interface IVector2LineComponentProps {
  1036. label: string;
  1037. target: any;
  1038. propertyName: string;
  1039. onChange?: (newvalue: BABYLON.Vector2) => void;
  1040. onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
  1041. }
  1042. export class Vector2LineComponent extends React.Component<IVector2LineComponentProps, {
  1043. isExpanded: boolean;
  1044. value: BABYLON.Vector2;
  1045. }> {
  1046. private _localChange;
  1047. constructor(props: IVector2LineComponentProps);
  1048. shouldComponentUpdate(nextProps: IVector2LineComponentProps, nextState: {
  1049. isExpanded: boolean;
  1050. value: BABYLON.Vector2;
  1051. }): boolean;
  1052. switchExpandState(): void;
  1053. raiseOnPropertyChanged(previousValue: BABYLON.Vector2): void;
  1054. updateStateX(value: number): void;
  1055. updateStateY(value: number): void;
  1056. render(): JSX.Element;
  1057. }
  1058. }
  1059. declare module INSPECTOR {
  1060. interface IDefaultRenderingPipelinePropertyGridComponentProps {
  1061. globalState: GlobalState;
  1062. renderPipeline: BABYLON.DefaultRenderingPipeline;
  1063. lockObject: LockObject;
  1064. onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
  1065. }
  1066. export class DefaultRenderingPipelinePropertyGridComponent extends React.Component<IDefaultRenderingPipelinePropertyGridComponentProps> {
  1067. constructor(props: IDefaultRenderingPipelinePropertyGridComponentProps);
  1068. render(): JSX.Element;
  1069. }
  1070. }
  1071. declare module INSPECTOR {
  1072. interface ISSAORenderingPipelinePropertyGridComponentProps {
  1073. globalState: GlobalState;
  1074. renderPipeline: BABYLON.SSAORenderingPipeline;
  1075. lockObject: LockObject;
  1076. onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
  1077. }
  1078. export class SSAORenderingPipelinePropertyGridComponent extends React.Component<ISSAORenderingPipelinePropertyGridComponentProps> {
  1079. constructor(props: ISSAORenderingPipelinePropertyGridComponentProps);
  1080. render(): JSX.Element;
  1081. }
  1082. }
  1083. declare module INSPECTOR {
  1084. interface ISSAO2RenderingPipelinePropertyGridComponentProps {
  1085. globalState: GlobalState;
  1086. renderPipeline: BABYLON.SSAO2RenderingPipeline;
  1087. lockObject: LockObject;
  1088. onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
  1089. }
  1090. export class SSAO2RenderingPipelinePropertyGridComponent extends React.Component<ISSAO2RenderingPipelinePropertyGridComponentProps> {
  1091. constructor(props: ISSAO2RenderingPipelinePropertyGridComponentProps);
  1092. render(): JSX.Element;
  1093. }
  1094. }
  1095. declare module INSPECTOR {
  1096. export class PropertyGridTabComponent extends PaneComponent {
  1097. private _timerIntervalId;
  1098. private _lockObject;
  1099. constructor(props: IPaneComponentProps);
  1100. timerRefresh(): void;
  1101. componentWillMount(): void;
  1102. componentWillUnmount(): void;
  1103. render(): JSX.Element | null;
  1104. }
  1105. }
  1106. declare module INSPECTOR {
  1107. export interface IHeaderComponentProps {
  1108. title: string;
  1109. handleBack?: boolean;
  1110. noExpand?: boolean;
  1111. noClose?: boolean;
  1112. noCommands?: boolean;
  1113. onPopup: () => void;
  1114. onClose: () => void;
  1115. onSelectionChangedObservable?: BABYLON.Observable<any>;
  1116. }
  1117. export class HeaderComponent extends React.Component<IHeaderComponentProps, {
  1118. isBackVisible: boolean;
  1119. }> {
  1120. private _backStack;
  1121. private _onSelectionChangeObserver;
  1122. constructor(props: IHeaderComponentProps);
  1123. componentWillMount(): void;
  1124. componentWillUnmount(): void;
  1125. goBack(): void;
  1126. renderLogo(): JSX.Element | null;
  1127. render(): JSX.Element;
  1128. }
  1129. }
  1130. declare module INSPECTOR {
  1131. interface IMessageLineComponentProps {
  1132. text: string;
  1133. color?: string;
  1134. }
  1135. export class MessageLineComponent extends React.Component<IMessageLineComponentProps> {
  1136. constructor(props: IMessageLineComponentProps);
  1137. render(): JSX.Element;
  1138. }
  1139. }
  1140. declare module INSPECTOR {
  1141. interface IGLTFComponentProps {
  1142. scene: BABYLON.Scene;
  1143. globalState: GlobalState;
  1144. }
  1145. export class GLTFComponent extends React.Component<IGLTFComponentProps> {
  1146. constructor(props: IGLTFComponentProps);
  1147. openValidationDetails(): void;
  1148. prepareText(singularForm: string, count: number): string;
  1149. renderValidation(): JSX.Element;
  1150. render(): JSX.Element;
  1151. }
  1152. }
  1153. declare module INSPECTOR {
  1154. export class ToolsTabComponent extends PaneComponent {
  1155. private _videoRecorder;
  1156. constructor(props: IPaneComponentProps);
  1157. componentWillMount(): void;
  1158. componentWillUnmount(): void;
  1159. captureScreenshot(): void;
  1160. recordVideo(): void;
  1161. shouldExport(node: BABYLON.Node): boolean;
  1162. exportGLTF(): void;
  1163. exportBabylon(): void;
  1164. createEnvTexture(): void;
  1165. render(): JSX.Element | null;
  1166. }
  1167. }
  1168. declare module INSPECTOR {
  1169. interface IActionTabsComponentProps {
  1170. scene: BABYLON.Scene;
  1171. noCommands?: boolean;
  1172. noHeader?: boolean;
  1173. noExpand?: boolean;
  1174. noClose?: boolean;
  1175. popupMode?: boolean;
  1176. onPopup?: () => void;
  1177. onClose?: () => void;
  1178. globalState: GlobalState;
  1179. }
  1180. export class ActionTabsComponent extends React.Component<IActionTabsComponentProps, {
  1181. selectedEntity: any;
  1182. selectedIndex: number;
  1183. }> {
  1184. private _onSelectionChangeObserver;
  1185. private _onTabChangedObserver;
  1186. private _once;
  1187. constructor(props: IActionTabsComponentProps);
  1188. componentWillMount(): void;
  1189. componentWillUnmount(): void;
  1190. changeSelectedTab(index: number): void;
  1191. renderContent(): JSX.Element;
  1192. onClose(): void;
  1193. onPopup(): void;
  1194. render(): JSX.Element;
  1195. }
  1196. }
  1197. declare module INSPECTOR {
  1198. interface ITreeItemLabelComponentProps {
  1199. label: string;
  1200. onClick?: () => void;
  1201. color: string;
  1202. }
  1203. export class TreeItemLabelComponent extends React.Component<ITreeItemLabelComponentProps> {
  1204. constructor(props: ITreeItemLabelComponentProps);
  1205. onClick(): void;
  1206. render(): JSX.Element;
  1207. }
  1208. }
  1209. declare module INSPECTOR {
  1210. interface IExtensionsComponentProps {
  1211. target: any;
  1212. extensibilityGroups?: BABYLON.IExplorerExtensibilityGroup[];
  1213. }
  1214. export class ExtensionsComponent extends React.Component<IExtensionsComponentProps, {
  1215. popupVisible: boolean;
  1216. }> {
  1217. private _popup;
  1218. constructor(props: IExtensionsComponentProps);
  1219. showPopup(): void;
  1220. componentDidMount(): void;
  1221. componentDidUpdate(): void;
  1222. render(): JSX.Element | null;
  1223. }
  1224. }
  1225. declare module INSPECTOR {
  1226. interface IMeshTreeItemComponentProps {
  1227. mesh: BABYLON.AbstractMesh;
  1228. extensibilityGroups?: BABYLON.IExplorerExtensibilityGroup[];
  1229. onClick: () => void;
  1230. }
  1231. export class MeshTreeItemComponent extends React.Component<IMeshTreeItemComponentProps, {
  1232. isGizmoEnabled: boolean;
  1233. isVisible: boolean;
  1234. }> {
  1235. constructor(props: IMeshTreeItemComponentProps);
  1236. showGizmos(): void;
  1237. switchVisibility(): void;
  1238. render(): JSX.Element;
  1239. }
  1240. }
  1241. declare module INSPECTOR {
  1242. interface ICameraTreeItemComponentProps {
  1243. camera: BABYLON.Camera;
  1244. extensibilityGroups?: BABYLON.IExplorerExtensibilityGroup[];
  1245. onClick: () => void;
  1246. }
  1247. export class CameraTreeItemComponent extends React.Component<ICameraTreeItemComponentProps, {
  1248. isActive: boolean;
  1249. }> {
  1250. private _onActiveCameraObserver;
  1251. constructor(props: ICameraTreeItemComponentProps);
  1252. setActive(): void;
  1253. componentWillMount(): void;
  1254. componentWillUnmount(): void;
  1255. render(): JSX.Element;
  1256. }
  1257. }
  1258. declare module INSPECTOR {
  1259. interface ILightTreeItemComponentProps {
  1260. light: BABYLON.Light;
  1261. extensibilityGroups?: BABYLON.IExplorerExtensibilityGroup[];
  1262. onClick: () => void;
  1263. globalState: GlobalState;
  1264. }
  1265. export class LightTreeItemComponent extends React.Component<ILightTreeItemComponentProps, {
  1266. isEnabled: boolean;
  1267. isGizmoEnabled: boolean;
  1268. }> {
  1269. constructor(props: ILightTreeItemComponentProps);
  1270. switchIsEnabled(): void;
  1271. toggleGizmo(): void;
  1272. render(): JSX.Element;
  1273. }
  1274. }
  1275. declare module INSPECTOR {
  1276. interface IMaterialTreeItemComponentProps {
  1277. material: BABYLON.Material;
  1278. extensibilityGroups?: BABYLON.IExplorerExtensibilityGroup[];
  1279. onClick: () => void;
  1280. }
  1281. export class MaterialTreeItemComponent extends React.Component<IMaterialTreeItemComponentProps> {
  1282. constructor(props: IMaterialTreeItemComponentProps);
  1283. render(): JSX.Element;
  1284. }
  1285. }
  1286. declare module INSPECTOR {
  1287. interface ITextureTreeItemComponentProps {
  1288. texture: BABYLON.Texture;
  1289. extensibilityGroups?: BABYLON.IExplorerExtensibilityGroup[];
  1290. onClick: () => void;
  1291. }
  1292. export class TextureTreeItemComponent extends React.Component<ITextureTreeItemComponentProps> {
  1293. constructor(props: ITextureTreeItemComponentProps);
  1294. render(): JSX.Element;
  1295. }
  1296. }
  1297. declare module INSPECTOR {
  1298. interface ITransformNodeItemComponentProps {
  1299. transformNode: BABYLON.TransformNode;
  1300. extensibilityGroups?: BABYLON.IExplorerExtensibilityGroup[];
  1301. onClick: () => void;
  1302. }
  1303. export class TransformNodeItemComponent extends React.Component<ITransformNodeItemComponentProps> {
  1304. constructor(props: ITransformNodeItemComponentProps);
  1305. render(): JSX.Element;
  1306. }
  1307. }
  1308. declare module INSPECTOR {
  1309. interface IControlTreeItemComponentProps {
  1310. control: BABYLON.GUI.Control;
  1311. extensibilityGroups?: BABYLON.IExplorerExtensibilityGroup[];
  1312. onClick: () => void;
  1313. }
  1314. export class ControlTreeItemComponent extends React.Component<IControlTreeItemComponentProps, {
  1315. isActive: boolean;
  1316. isVisible: boolean;
  1317. }> {
  1318. constructor(props: IControlTreeItemComponentProps);
  1319. highlight(): void;
  1320. switchVisibility(): void;
  1321. render(): JSX.Element;
  1322. }
  1323. }
  1324. declare module INSPECTOR {
  1325. interface IAdvancedDynamicTextureTreeItemComponentProps {
  1326. texture: BABYLON.GUI.AdvancedDynamicTexture;
  1327. extensibilityGroups?: BABYLON.IExplorerExtensibilityGroup[];
  1328. onSelectionChangedObservable?: BABYLON.Observable<any>;
  1329. onClick: () => void;
  1330. }
  1331. export class AdvancedDynamicTextureTreeItemComponent extends React.Component<IAdvancedDynamicTextureTreeItemComponentProps, {
  1332. isInPickingMode: boolean;
  1333. }> {
  1334. private _onControlPickedObserver;
  1335. constructor(props: IAdvancedDynamicTextureTreeItemComponentProps);
  1336. componentWillUnmount(): void;
  1337. onPickingMode(): void;
  1338. render(): JSX.Element;
  1339. }
  1340. }
  1341. declare module INSPECTOR {
  1342. interface IAnimationGroupItemComponentProps {
  1343. animationGroup: BABYLON.AnimationGroup;
  1344. extensibilityGroups?: BABYLON.IExplorerExtensibilityGroup[];
  1345. onClick: () => void;
  1346. }
  1347. export class AnimationGroupItemComponent extends React.Component<IAnimationGroupItemComponentProps> {
  1348. constructor(props: IAnimationGroupItemComponentProps);
  1349. render(): JSX.Element;
  1350. }
  1351. }
  1352. declare module INSPECTOR {
  1353. interface IPostProcessItemComponentProps {
  1354. postProcess: BABYLON.PostProcess;
  1355. extensibilityGroups?: BABYLON.IExplorerExtensibilityGroup[];
  1356. onClick: () => void;
  1357. }
  1358. export class PostProcessItemComponent extends React.Component<IPostProcessItemComponentProps> {
  1359. constructor(props: IPostProcessItemComponentProps);
  1360. render(): JSX.Element;
  1361. }
  1362. }
  1363. declare module INSPECTOR {
  1364. interface IRenderPipelineItemComponenttProps {
  1365. renderPipeline: BABYLON.PostProcessRenderPipeline;
  1366. extensibilityGroups?: BABYLON.IExplorerExtensibilityGroup[];
  1367. onClick: () => void;
  1368. }
  1369. export class RenderingPipelineItemComponent extends React.Component<IRenderPipelineItemComponenttProps> {
  1370. constructor(props: IRenderPipelineItemComponenttProps);
  1371. render(): JSX.Element;
  1372. }
  1373. }
  1374. declare module INSPECTOR {
  1375. interface ITreeItemSpecializedComponentProps {
  1376. label: string;
  1377. entity?: any;
  1378. extensibilityGroups?: BABYLON.IExplorerExtensibilityGroup[];
  1379. globalState: GlobalState;
  1380. onClick?: () => void;
  1381. }
  1382. export class TreeItemSpecializedComponent extends React.Component<ITreeItemSpecializedComponentProps> {
  1383. constructor(props: ITreeItemSpecializedComponentProps);
  1384. onClick(): void;
  1385. render(): JSX.Element;
  1386. }
  1387. }
  1388. declare module INSPECTOR {
  1389. export class Tools {
  1390. static LookForItem(item: any, selectedEntity: any): boolean;
  1391. private static _RecursiveRemoveHiddenMeshesAndHoistChildren;
  1392. static SortAndFilter(parent: any, items: any[]): any[];
  1393. }
  1394. }
  1395. declare module INSPECTOR {
  1396. export interface ITreeItemSelectableComponentProps {
  1397. entity: any;
  1398. selectedEntity?: any;
  1399. mustExpand?: boolean;
  1400. offset: number;
  1401. globalState: GlobalState;
  1402. extensibilityGroups?: BABYLON.IExplorerExtensibilityGroup[];
  1403. filter: BABYLON.Nullable<string>;
  1404. }
  1405. export class TreeItemSelectableComponent extends React.Component<ITreeItemSelectableComponentProps, {
  1406. isExpanded: boolean;
  1407. isSelected: boolean;
  1408. }> {
  1409. private _wasSelected;
  1410. constructor(props: ITreeItemSelectableComponentProps);
  1411. switchExpandedState(): void;
  1412. shouldComponentUpdate(nextProps: ITreeItemSelectableComponentProps, nextState: {
  1413. isExpanded: boolean;
  1414. isSelected: boolean;
  1415. }): boolean;
  1416. scrollIntoView(): void;
  1417. componentDidMount(): void;
  1418. componentDidUpdate(): void;
  1419. onSelect(): void;
  1420. renderChildren(): JSX.Element[] | null;
  1421. render(): JSX.Element | null;
  1422. }
  1423. }
  1424. declare module INSPECTOR {
  1425. export interface ITreeItemComponentProps {
  1426. items?: BABYLON.Nullable<any[]>;
  1427. label: string;
  1428. offset: number;
  1429. filter: BABYLON.Nullable<string>;
  1430. globalState: GlobalState;
  1431. entity?: any;
  1432. selectedEntity: any;
  1433. extensibilityGroups?: BABYLON.IExplorerExtensibilityGroup[];
  1434. contextMenuItems?: {
  1435. label: string;
  1436. action: () => void;
  1437. }[];
  1438. }
  1439. export class TreeItemComponent extends React.Component<ITreeItemComponentProps, {
  1440. isExpanded: boolean;
  1441. mustExpand: boolean;
  1442. }> {
  1443. static _ContextMenuUniqueIdGenerator: number;
  1444. constructor(props: ITreeItemComponentProps);
  1445. switchExpandedState(): void;
  1446. shouldComponentUpdate(nextProps: ITreeItemComponentProps, nextState: {
  1447. isExpanded: boolean;
  1448. }): boolean;
  1449. expandAll(expand: boolean): void;
  1450. renderContextMenu(): JSX.Element | null;
  1451. render(): JSX.Element;
  1452. }
  1453. }
  1454. declare module INSPECTOR {
  1455. interface ISceneTreeItemComponentProps {
  1456. scene: BABYLON.Scene;
  1457. onRefresh: () => void;
  1458. selectedEntity?: any;
  1459. extensibilityGroups?: BABYLON.IExplorerExtensibilityGroup[];
  1460. onSelectionChangedObservable?: BABYLON.Observable<any>;
  1461. globalState: GlobalState;
  1462. }
  1463. export class SceneTreeItemComponent extends React.Component<ISceneTreeItemComponentProps, {
  1464. isSelected: boolean;
  1465. isInPickingMode: boolean;
  1466. gizmoMode: number;
  1467. }> {
  1468. private _gizmoLayerOnPointerObserver;
  1469. private _onPointerObserver;
  1470. private _onSelectionChangeObserver;
  1471. private _selectedEntity;
  1472. constructor(props: ISceneTreeItemComponentProps);
  1473. shouldComponentUpdate(nextProps: ISceneTreeItemComponentProps, nextState: {
  1474. isSelected: boolean;
  1475. isInPickingMode: boolean;
  1476. }): boolean;
  1477. componentWillMount(): void;
  1478. componentWillUnmount(): void;
  1479. onSelect(): void;
  1480. onPickingMode(): void;
  1481. setGizmoMode(mode: number): void;
  1482. render(): JSX.Element;
  1483. }
  1484. }
  1485. declare module INSPECTOR {
  1486. interface ISceneExplorerFilterComponentProps {
  1487. onFilter: (filter: string) => void;
  1488. }
  1489. export class SceneExplorerFilterComponent extends React.Component<ISceneExplorerFilterComponentProps> {
  1490. constructor(props: ISceneExplorerFilterComponentProps);
  1491. render(): JSX.Element;
  1492. }
  1493. interface ISceneExplorerComponentProps {
  1494. scene: BABYLON.Scene;
  1495. noCommands?: boolean;
  1496. noHeader?: boolean;
  1497. noExpand?: boolean;
  1498. noClose?: boolean;
  1499. extensibilityGroups?: BABYLON.IExplorerExtensibilityGroup[];
  1500. globalState: GlobalState;
  1501. popupMode?: boolean;
  1502. onPopup?: () => void;
  1503. onClose?: () => void;
  1504. }
  1505. export class SceneExplorerComponent extends React.Component<ISceneExplorerComponentProps, {
  1506. filter: BABYLON.Nullable<string>;
  1507. selectedEntity: any;
  1508. scene: BABYLON.Scene;
  1509. }> {
  1510. private _onSelectionChangeObserver;
  1511. private _onNewSceneAddedObserver;
  1512. private _once;
  1513. private sceneMutationFunc;
  1514. constructor(props: ISceneExplorerComponentProps);
  1515. processMutation(): void;
  1516. componentWillMount(): void;
  1517. componentWillUnmount(): void;
  1518. filterContent(filter: string): void;
  1519. findSiblings(parent: any, items: any[], target: any, goNext: boolean, data: {
  1520. previousOne?: any;
  1521. found?: boolean;
  1522. }): boolean;
  1523. processKeys(keyEvent: React.KeyboardEvent<HTMLDivElement>): void;
  1524. renderContent(): JSX.Element | null;
  1525. onClose(): void;
  1526. onPopup(): void;
  1527. render(): JSX.Element;
  1528. }
  1529. }
  1530. declare module INSPECTOR {
  1531. interface IEmbedHostComponentProps {
  1532. scene: BABYLON.Scene;
  1533. globalState: GlobalState;
  1534. popupMode: boolean;
  1535. noClose?: boolean;
  1536. noExpand?: boolean;
  1537. onClose: () => void;
  1538. onPopup: () => void;
  1539. }
  1540. export class EmbedHostComponent extends React.Component<IEmbedHostComponentProps> {
  1541. private _once;
  1542. constructor(props: IEmbedHostComponentProps);
  1543. componentDidMount(): void;
  1544. renderContent(): JSX.Element;
  1545. render(): JSX.Element;
  1546. }
  1547. }
  1548. declare module INSPECTOR {
  1549. export class Inspector {
  1550. private static _SceneExplorerHost;
  1551. private static _ActionTabsHost;
  1552. private static _EmbedHost;
  1553. private static _NewCanvasContainer;
  1554. private static _SceneExplorerWindow;
  1555. private static _ActionTabsWindow;
  1556. private static _EmbedHostWindow;
  1557. private static _Scene;
  1558. private static _OpenedPane;
  1559. private static _OnBeforeRenderObserver;
  1560. static OnSelectionChangeObservable: BABYLON.Observable<any>;
  1561. static OnPropertyChangedObservable: BABYLON.Observable<PropertyChangedEvent>;
  1562. private static _GlobalState;
  1563. static MarkLineContainerTitleForHighlighting(title: string): void;
  1564. private static _CopyStyles;
  1565. private static _CreateSceneExplorer;
  1566. private static _CreateActionTabs;
  1567. private static _CreateEmbedHost;
  1568. private static _CreatePopup;
  1569. static readonly IsVisible: boolean;
  1570. static EarlyAttachToLoader(): void;
  1571. static Show(scene: BABYLON.Scene, userOptions: Partial<BABYLON.IInspectorOptions>): void;
  1572. private static _CreateCanvasContainer;
  1573. private static _DestroyCanvasContainer;
  1574. private static _Cleanup;
  1575. private static _RemoveElementFromDOM;
  1576. static Hide(): void;
  1577. }
  1578. }
  1579. declare module INSPECTOR {
  1580. interface IDirectionalLightPropertyGridComponentProps {
  1581. globalState: GlobalState;
  1582. light: BABYLON.DirectionalLight;
  1583. lockObject: LockObject;
  1584. onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
  1585. }
  1586. export class DirectionalLightPropertyGridComponent extends React.Component<IDirectionalLightPropertyGridComponentProps> {
  1587. constructor(props: IDirectionalLightPropertyGridComponentProps);
  1588. render(): JSX.Element;
  1589. }
  1590. }
  1591. declare module INSPECTOR {
  1592. interface ISpotLightPropertyGridComponentProps {
  1593. globalState: GlobalState;
  1594. light: BABYLON.SpotLight;
  1595. lockObject: LockObject;
  1596. onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
  1597. }
  1598. export class SpotLightPropertyGridComponent extends React.Component<ISpotLightPropertyGridComponentProps> {
  1599. constructor(props: ISpotLightPropertyGridComponentProps);
  1600. render(): JSX.Element;
  1601. }
  1602. }