import type { SocketClient } from './socketClient'; import { HitCheckResult, VimStatus } from './marshal'; import { Box3, RGBA, RGBA32, Segment, Vector2, Vector3 } from '../utils/math3d'; export type MaterialHandle = 4294967295 | 6 | 2 | 0 | 1 | 3 | 4 | 5 | 7 | 8; export declare class MaterialHandles { static readonly Invalid: MaterialHandle; static readonly Wireframe: MaterialHandle; static readonly FlatShaded: MaterialHandle; static readonly StandardOpaque: MaterialHandle; static readonly StandardGlass: MaterialHandle; static readonly GhostOutline: MaterialHandle; static readonly GhostFill: MaterialHandle; static readonly GhostBoth: MaterialHandle; static readonly Highlight: MaterialHandle; static readonly Invisible: MaterialHandle; } export declare const materialHandles: MaterialHandle[]; export declare class RpcClient { private readonly _messenger; constructor(_messenger: SocketClient); readonly API_VERSION = "4.0.0"; RPCClearMaterialOverrides(componentHandle: number): void; RPCClearScene(): void; RPCCreateMaterialInstances(materialHandle: number, smoothness: number, colors: RGBA32[]): Promise; RPCCreateText(position: Vector3, color: RGBA32, text: string): Promise; RPCDestroyMaterialInstances(materialInstanceHandle: number[]): void; RPCDestroyText(componentHandle: number): void; RPCEnableSectionBox(enable: boolean): void; RPCFrameAll(blendTime: number): Promise; RPCFrameBox(box: Box3, blendTime: number): Promise; RPCFrameInstances(componentHandle: number, nodes: number[], blendTime: number): Promise; RPCFrameVim(componentHandle: number, blendTime: number): Promise; RPCGetAPIVersion(): Promise; RPCGetBoundingBox(componentHandle: number, nodes: number[]): Promise; RPCGetCameraPosition(): Promise; RPCGetLastError(): Promise; RPCGetVimLoadingState(componentHandle: number): Promise; RPCGhost(componentHandle: number, nodes: number[]): void; RPCGhostAll(componentHandle: number): void; RPCHide(componentHandle: number, nodes: number[]): void; RPCHideAABBs(componentHandle: number, nodes: number[]): void; RPCHideAll(componentHandle: number): void; RPCHideAllAABBs(componentHandle: number): void; RPCHighlight(componentHandle: number, nodes: number[]): void; RPCHighlightAll(componentHandle: number): void; RPCKeyEvent(keyCode: number, down: boolean): void; RPCLoadVim(fileName: string): Promise; RPCLoadVimURL(url: string, authToken: string): Promise; RPCLockIblRotation(lock: boolean): void; RPCMouseButtonEvent(mousePos: Vector2, mouseButton: number, down: boolean): void; RPCMouseDoubleClickEvent(mousePos: Vector2, mouseButton: number): void; RPCMouseMoveEvent(mousePos: Vector2): void; RPCMouseScrollEvent(scrollValue: number): void; RPCMouseSelectEvent(mousePos: Vector2, mouseButton: number): void; RPCMoveCameraTo(usePosition: boolean, useTarget: boolean, position: Vector3, target: Vector3, blendTime: number): void; RPCPauseRendering(pause: boolean): void; RPCPerformHitTest(pos: Vector2): Promise; RPCSetAspectRatio(width: number, height: number): void; RPCSetCameraMode(orbit: boolean): void; RPCSetCameraPosition(state: Segment, blendTime: number): void; RPCSetGhostColor(ghostColor: RGBA): void; RPCSetLighting(toneMappingWhitePoint: number, hdrScale: number, hdrBackgroundScale: number, hdrBackgroundSaturation: number, backgroundBlur: number, backgroundColor: RGBA): void; RPCSetMaterialOverrides(componentHandle: number, nodes: number[], materialInstanceHandles: number[]): void; RPCSetMoveSpeed(speed: number): void; RPCSetSectionBox(aabb: Box3): void; RPCShow(componentHandle: number, nodes: number[]): void; RPCShowAABBs(componentHandle: number, nodes: number[], colors: RGBA32[]): void; RPCShowAll(componentHandle: number): void; RPCStartScene(toneMappingWhitePoint: number, hdrScale: number, hdrBackgroundScale: number, hdrBackgroundSaturation: number, backgroundBlur: number, backgroundColor: RGBA): void; RPCTriggerRenderDocCapture(): void; RPCUnloadVim(componentHandle: number): void; }