// AUTO-GENERATED by scripts/gen-sdk-typings.mjs (npm run gen-typings) from src/apps/AppContext.js. // Structural inference only (AppContext.js has no formal @param/@returns JSDoc blocks yet, so // parameter/return types are mostly 'any') -- NOT a drop-in replacement for the hand-curated // client/editor/sdk-typings.d.ts Monaco typings. Regenerate: npm run gen-typings. // DO NOT EDIT BY HAND. import { CliDebugger } from '../debug/CliDebugger.js'; export declare class AppContext { _entity: any; _runtime: any; _state: any; _entityProxy: { readonly id: any; readonly model: any; position: any; rotation: any; scale: any; velocity: any; custom: any; readonly parent: any; readonly children: any[]; readonly worldTransform: any; destroy: () => any; }; _debugger: CliDebugger; _busScope: any; _physicsAPI: { setInteractable: (radius?: number) => void; setStatic: (v: any) => void; setDynamic: (v: any) => void; setKinematic: (v: any) => void; setMass: (v: any) => void; setLinearDamping: (v: any) => void; setAngularDamping: (v: any) => void; addBoxCollider: (s: any) => void; addSphereCollider: (r: any) => void; addCapsuleCollider: (r: any, h: any) => void; addTrimeshCollider: () => Promise; addConvexCollider: (points: any) => void; addConvexFromModel: (meshIndex?: number) => void; addConvexFromModelAsync: (meshIndex?: number) => Promise; addColliderFromConfig: (cfg?: {}) => Promise | undefined; addForce: (f: any) => void; setVelocity: (v: any) => void; getVelocity: () => any; getAngularVelocity: () => any; getRotation: () => any; isAtRest: (eps?: number) => boolean; tiltFromUpright: () => number; setFriction: (f: any) => boolean; setRestitution: (r: any) => boolean; } | undefined; _configListeners: Set | undefined; constructor(entity: any, runtime: any); _buildEntityProxy(): { readonly id: any; readonly model: any; position: any; rotation: any; scale: any; velocity: any; custom: any; readonly parent: any; readonly children: any[]; readonly worldTransform: any; destroy: () => any; }; get entity(): { readonly id: any; readonly model: any; position: any; rotation: any; scale: any; velocity: any; custom: any; readonly parent: any; readonly children: any[]; readonly worldTransform: any; destroy: () => any; }; get physics(): { setInteractable: (radius?: number) => void; setStatic: (v: any) => void; setDynamic: (v: any) => void; setKinematic: (v: any) => void; setMass: (v: any) => void; setLinearDamping: (v: any) => void; setAngularDamping: (v: any) => void; addBoxCollider: (s: any) => void; addSphereCollider: (r: any) => void; addCapsuleCollider: (r: any, h: any) => void; addTrimeshCollider: () => Promise; addConvexCollider: (points: any) => void; addConvexFromModel: (meshIndex?: number) => void; addConvexFromModelAsync: (meshIndex?: number) => Promise; addColliderFromConfig: (cfg?: {}) => Promise | undefined; addForce: (f: any) => void; setVelocity: (v: any) => void; getVelocity: () => any; getAngularVelocity: () => any; getRotation: () => any; isAtRest: (eps?: number) => boolean; tiltFromUpright: () => number; setFriction: (f: any) => boolean; setRestitution: (r: any) => boolean; }; get world(): { spawn: (id: any, cfg: any) => any; spawnChild: (id: any, cfg: any) => any; destroy: (id: any) => void; attach: (eid: any, app: any) => any; detach: (eid: any) => any; reparent: (eid: any, parentId: any) => any; query: (filter: any) => any; getEntity: (id: any) => any; nearby: (pos: any, radius: any) => any; sendToEntity: (entityId: any, msg: any) => any; applyImpulse: (entityId: any, impulse: any, worldPoint: any) => any; setVelocity: (entityId: any, velocity: any) => any; setGravityFactor: (entityId: any, factor: any) => any; setPosition: (entityId: any, position: any, rotation: any) => any; weld: (entityA: any, entityB: any, opts: any) => any; joint: (entityA: any, entityB: any, opts: any) => any; removeConstraint: (constraintId: any) => any; readonly gravity: any; }; get players(): { getAll: () => any; getById: (id: any) => any; getNearest: (pos: any, r: any) => any; send: (pid: any, msg: any) => any; broadcast: (msg: any) => any; broadcastNearby: (pos: any, radius: any, msg: any) => void; setPosition: (pid: any, pos: any) => any; setName: (pid: any, name: any) => any; setAppearance: (pid: any, appearance: any) => any; setModel: (pid: any, url: any) => any; setMovementOverride: (pid: any, overrides: any) => any; setLifecycle: (pid: any, state: any, opts: any) => any; playAnimation: (pid: any, clip: any, opts: any) => any; attachEntity: (pid: any, entityId: any, offset: any) => any; detachEntity: (entityId: any) => any; onPlayerContact: (radius: any, cb: any) => any; nearestOtherPlayer: (playerId: any, radius: any) => any; }; get time(): { readonly tick: any; readonly deltaTime: any; readonly elapsed: any; readonly serverTime: number; after: (seconds: any, fn: any) => any; every: (seconds: any, fn: any) => any; }; get config(): any; onConfigChange(cb: any): () => boolean; _fireConfigChange(): void; get state(): any; set state(v: any); get network(): { broadcast: (msg: any) => any; sendTo: (id: any, msg: any) => any; }; get lagCompensator(): any; get bus(): any; get storage(): { get: (key: any) => any; set: (key: any, value: any) => any; delete: (key: any) => any; list: (prefix?: string) => any; has: (key: any) => any; } | null; get debug(): CliDebugger; interactable(config?: {}): void; onPlayerProximity(radius: any, callback: any): any; _teardownChildren(): void; defineGameFSM(spec: any): { readonly context: any; readonly state: any; readonly timeInState: number; is(s: any): any; matches(s: any): any; can(evt: any): any; send(type: any, payload: any): void; onTransition(fn: any): () => void; tick(dt: any): void; stop(): void; }; defineBuffStack(spec: any): { apply(playerId: any, buffKey: any, delta: any): any; set(playerId: any, buffKey: any, value: any): any; get(playerId: any, buffKey: any): any; getAll(playerId: any): { [k: string]: any; }; clear(playerId: any, buffKey: any): void; clearAll(): void; tick(dt: any): void; }; defineShrinkingZone(spec: any): { readonly radius: any; readonly center: any[]; readonly elapsed: number; readonly phaseIndex: number; readonly completed: boolean; readonly ringEntityId: any; isOutside(pos: any): boolean; setCenter(pos: any): void; tick(dt: any): void; destroy(): void; reset(): void; }; defineHealth(spec: any): { readonly hp: any; readonly max: any; readonly alive: boolean; readonly fraction: number; damage(amount: any, source?: null): any; heal(amount: any): any; kill(source?: null): void; respawn(hp: any): any; setMax(m: any): any; }; defineSteering(spec: any): { step(from: any, target: any, dt: any, peers: any): { position: any[]; velocity: number[]; arrived: boolean; }; followPath(from: any, waypoints: any, dt: any, state: any, peers: any): { position: any[]; velocity: number[]; done: boolean; state: any; }; }; defineCheckpoint(spec: any): { checkpointOf(pid: any): any; setCheckpoint(pid: any, pos: any): void; reset(): void; tick(_dt: any): void; }; definePickup(spec: any): { readonly collected: boolean; reset(): void; tick(dt: any): void; }; defineDestructible(spec: any): { readonly destroyed: boolean; readonly damageTaken: number; readonly health: any; readonly debrisIds: any[]; damage(amount: any): boolean; impact(velocity: any): boolean; destroy(): boolean; respawn(): boolean; reset(): void; tick(dt: any): void; }; defineTeams(spec: any): { assignPlayer(playerId: any, team: any): string | null; removePlayer(playerId: any): boolean; getTeam(playerId: any): any; getMembers(team: any): any[]; addScore(team: any, delta?: number): number | undefined; setScore(team: any, n: any): number | undefined; getScore(team: any): number; getScores(): { id: any; label: any; color: any; score: number; members: any[]; }[]; getTeams(): any[]; smallestTeam(): any; leader(): any; reset(): void; broadcast(): void; }; defineWeapon(spec: any): { readonly ammo: any; readonly magazine: any; readonly reloading: boolean; canFire(): boolean; fire(shooterId: any, origin: any, dir: any, opts?: {}): { fired: boolean; reason: string; } | { fired: boolean; hit: boolean; targetPlayerId: null; killed: boolean; ammo: any; }; reload(shooterId: any): boolean; setAmmo(n: any): any; }; definePlayerInventory(spec: any): { add(pid: any, item: any, n?: number): any; remove(pid: any, item: any, n?: number): any; count(pid: any, item: any): any; has(pid: any, item: any, n?: number): boolean; items(pid: any): { [k: string]: any; }; currency(pid: any): any; earn(pid: any, amount: any): any; canAfford(pid: any, amount: any): boolean; spend(pid: any, amount: any): boolean; buy(pid: any, item: any): { ok: boolean; reason: string; currency?: undefined; } | { reason?: undefined; ok: boolean; currency: any; }; reset(pid: any): void; clearAll(): void; push(pid: any): void; }; definePath(points: any): { length: any; count: number; pointAt: (distance: any) => any[]; progressAt: (pos: any) => number; nearestIndex: (pos: any) => number; segmentAt: (distance: any) => { index: number; t: number; }; directionAt: (distance: any) => number[]; }; raycast(origin: any, direction: any, maxDistance?: number, excludeBodyId?: null): any; canSee(fromPos: any, toPos: any, opts?: {}): boolean; get terrainBodyId(): any; terrainHeightAt(x: any, z: any): any; get terrain(): { startStreaming: (tcfg: any) => Promise<{ start: (initialGrid: any) => Promise; stop(): void; readonly center: any; readonly bodyId: any; readonly rebuildCount: number; _rebuild: (cx: any, cz: any) => Promise; } | null>; }; }