export declare const GLOBAL_MODULE = "\nimport type React from \"react\";\nimport type * as THREE_IMPORT from \"three\";\nimport type * as DREI_IMPORT from \"@react-three/drei\";\nimport type * as R3F_IMPORT from \"@react-three/fiber\";\nimport type * as UIKIT_IMPORT from \"@react-three/uikit\";\nimport type { UseBoundStore, StoreApi } from \"zustand\";\n\ndeclare global {\n const THREE: typeof THREE_IMPORT;\n const DREI: typeof DREI_IMPORT;\n const R3F: typeof R3F_IMPORT;\n const UIKIT: typeof UIKIT_IMPORT;\n\n namespace PHI {\n type Transform = {\n position: THREE_IMPORT.Vector3;\n rotation: THREE_IMPORT.Euler;\n scale: THREE_IMPORT.Vector3;\n };\n\n type PropertyType = string;\n\n type Property = {\n name: string;\n type: PropertyType;\n value: unknown;\n };\n\n type EntityData = {\n name: string;\n engineId: number;\n threeId?: number;\n parentId?: number;\n childrenIds: number[];\n transform: Transform;\n properties: Property[];\n };\n\n type GamepadInfo = {\n connected: boolean;\n buttonA: boolean;\n buttonB: boolean;\n buttonX: boolean;\n buttonY: boolean;\n joystick: [number, number];\n joystickRight: [number, number];\n RB: boolean;\n LB: boolean;\n RT: boolean;\n LT: boolean;\n start: boolean;\n select: boolean;\n up: boolean;\n down: boolean;\n left: boolean;\n right: boolean;\n };\n\n type EngineMode = {\n editMode: boolean;\n playMode: boolean;\n };\n\n type SceneScriptState = {\n sceneProperties: Record;\n };\n\n type GlobalStoreState = {\n globalStore: Record;\n setGlobalStore: (v: Record) => void;\n addToGlobalStore: (key: string, value: unknown) => void;\n removeFromGlobalStore: (key: string) => void;\n clearGlobalStore: () => void;\n };\n\n type EntityRenderRegistry = Record<\n string,\n React.FC<{ entityData: EntityData }>\n >;\n }\n\n const PHI: {\n PROPERTY_TYPES: ReadonlyArray<{\n type: PHI.PropertyType;\n defaultValue: unknown;\n }>;\n\n phibelleResetSelectedEntityIds(): void;\n\n useEntityThreeObject(\n entityData: PHI.EntityData,\n threeScene: THREE_IMPORT.Scene\n ): THREE_IMPORT.Object3D | null;\n\n useGamepad(): PHI.GamepadInfo;\n\n usePlayModeFrame(\n callback: (state: R3F_IMPORT.RootState, delta: number) => void\n ): void;\n\n useEngineMode(): PHI.EngineMode;\n\n useGlobalStore: UseBoundStore>;\n\n useSceneScriptStore(): PHI.SceneScriptState;\n useSceneScriptStore(\n selector: (state: PHI.SceneScriptState) => T\n ): T;\n\n editEntities(\n edits: Array<{ id: number; newData: Partial }>\n ): void;\n\n useEntity(entityId: number): { entityData: PHI.EntityData };\n\n PhibelleRoot: React.FC<{\n entityRenderRegistry: PHI.EntityRenderRegistry;\n }>;\n };\n}\n\nexport {};\n";