{
  "metadata": {
    "toolPackage": "@microsoft/api-extractor",
    "toolVersion": "7.52.5",
    "schemaVersion": 1011,
    "oldestForwardsCompatibleVersion": 1001,
    "tsdocConfig": {
      "$schema": "https://developer.microsoft.com/json-schemas/tsdoc/v0/tsdoc.schema.json",
      "noStandardTags": true,
      "tagDefinitions": [
        {
          "tagName": "@alpha",
          "syntaxKind": "modifier"
        },
        {
          "tagName": "@beta",
          "syntaxKind": "modifier"
        },
        {
          "tagName": "@defaultValue",
          "syntaxKind": "block"
        },
        {
          "tagName": "@decorator",
          "syntaxKind": "block",
          "allowMultiple": true
        },
        {
          "tagName": "@deprecated",
          "syntaxKind": "block"
        },
        {
          "tagName": "@eventProperty",
          "syntaxKind": "modifier"
        },
        {
          "tagName": "@example",
          "syntaxKind": "block",
          "allowMultiple": true
        },
        {
          "tagName": "@experimental",
          "syntaxKind": "modifier"
        },
        {
          "tagName": "@inheritDoc",
          "syntaxKind": "inline"
        },
        {
          "tagName": "@internal",
          "syntaxKind": "modifier"
        },
        {
          "tagName": "@label",
          "syntaxKind": "inline"
        },
        {
          "tagName": "@link",
          "syntaxKind": "inline",
          "allowMultiple": true
        },
        {
          "tagName": "@override",
          "syntaxKind": "modifier"
        },
        {
          "tagName": "@packageDocumentation",
          "syntaxKind": "modifier"
        },
        {
          "tagName": "@param",
          "syntaxKind": "block",
          "allowMultiple": true
        },
        {
          "tagName": "@privateRemarks",
          "syntaxKind": "block"
        },
        {
          "tagName": "@public",
          "syntaxKind": "modifier"
        },
        {
          "tagName": "@readonly",
          "syntaxKind": "modifier"
        },
        {
          "tagName": "@remarks",
          "syntaxKind": "block"
        },
        {
          "tagName": "@returns",
          "syntaxKind": "block"
        },
        {
          "tagName": "@sealed",
          "syntaxKind": "modifier"
        },
        {
          "tagName": "@see",
          "syntaxKind": "block"
        },
        {
          "tagName": "@throws",
          "syntaxKind": "block",
          "allowMultiple": true
        },
        {
          "tagName": "@typeParam",
          "syntaxKind": "block",
          "allowMultiple": true
        },
        {
          "tagName": "@virtual",
          "syntaxKind": "modifier"
        },
        {
          "tagName": "@betaDocumentation",
          "syntaxKind": "modifier"
        },
        {
          "tagName": "@internalRemarks",
          "syntaxKind": "block"
        },
        {
          "tagName": "@preapproved",
          "syntaxKind": "modifier"
        }
      ],
      "supportForTags": {
        "@alpha": true,
        "@beta": true,
        "@defaultValue": true,
        "@decorator": true,
        "@deprecated": true,
        "@eventProperty": true,
        "@example": true,
        "@experimental": true,
        "@inheritDoc": true,
        "@internal": true,
        "@label": true,
        "@link": true,
        "@override": true,
        "@packageDocumentation": true,
        "@param": true,
        "@privateRemarks": true,
        "@public": true,
        "@readonly": true,
        "@remarks": true,
        "@returns": true,
        "@sealed": true,
        "@see": true,
        "@throws": true,
        "@typeParam": true,
        "@virtual": true,
        "@betaDocumentation": true,
        "@internalRemarks": true,
        "@preapproved": true
      },
      "reportUnsupportedHtmlElements": false
    }
  },
  "projectFolderUrl": "https://github.com/hytopiagg/sdk",
  "kind": "Package",
  "canonicalReference": "server!",
  "docComment": "",
  "name": "server",
  "preserveMemberOrder": false,
  "members": [
    {
      "kind": "EntryPoint",
      "canonicalReference": "server!",
      "name": "",
      "preserveMemberOrder": false,
      "members": [
        {
          "kind": "Class",
          "canonicalReference": "server!Audio:class",
          "docComment": "/**\n * Represents a audio playback in a world.\n *\n * @remarks\n *\n * Audio instances are created directly as instances. They support a variety of configuration options through the {@link AudioOptions} constructor argument.\n *\n * <h2>Events</h2>\n *\n * This class is an EventRouter, and instances of it emit events with payloads listed under {@link AudioEventPayloads}\n *\n * @example\n * ```typescript\n * (new Audio({\n *   uri: 'music/song.mp3', // relative to the server's assets directory in the project root, resolves to assets/music/song.mp3\n *   loop: true,\n *   volume: 0.5,\n * })).play(world);\n * ```\n *\n * @eventProperty @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export default class Audio extends "
            },
            {
              "kind": "Reference",
              "text": "EventRouter",
              "canonicalReference": "server!EventRouter:class"
            },
            {
              "kind": "Content",
              "text": " implements "
            },
            {
              "kind": "Reference",
              "text": "protocol.Serializable",
              "canonicalReference": "@hytopia.com/server-protocol!Serializable:interface"
            },
            {
              "kind": "Content",
              "text": " "
            }
          ],
          "fileUrlPath": "src/worlds/audios/Audio.ts",
          "releaseTag": "Public",
          "isAbstract": false,
          "name": "Audio",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "Constructor",
              "canonicalReference": "server!Audio:constructor(1)",
              "docComment": "/**\n * Constructs a new instance of the `Audio` class\n *\n * @param options - The options for the Audio instance.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "constructor(options: "
                },
                {
                  "kind": "Reference",
                  "text": "AudioOptions",
                  "canonicalReference": "server!AudioOptions:interface"
                },
                {
                  "kind": "Content",
                  "text": ");"
                }
              ],
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "options",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ]
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Audio#attachedToEntity:member",
              "docComment": "/**\n * The entity to which the audio is attached if explicitly set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get attachedToEntity(): "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "attachedToEntity",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Audio#cutoffDistance:member",
              "docComment": "/**\n * The cutoff distance where the audio will be reduced to 0 volume.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get cutoffDistance(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "cutoffDistance",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Audio#detune:member",
              "docComment": "/**\n * The detune of the audio in cents if explicitly set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get detune(): "
                },
                {
                  "kind": "Content",
                  "text": "number | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "detune",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Audio#distortion:member",
              "docComment": "/**\n * The amount of distortion to apply to the audio if explicitly set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get distortion(): "
                },
                {
                  "kind": "Content",
                  "text": "number | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "distortion",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Audio#duration:member",
              "docComment": "/**\n * The duration of the audio in seconds if explicitly set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get duration(): "
                },
                {
                  "kind": "Content",
                  "text": "number | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "duration",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Audio#id:member",
              "docComment": "/**\n * The unique identifier for the audio.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get id(): "
                },
                {
                  "kind": "Content",
                  "text": "number | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "id",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Audio#isLoaded:member",
              "docComment": "/**\n * Whether the audio has loaded into the world. Audio is loaded the first time play() is called.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get isLoaded(): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "isLoaded",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Audio#isPlaying:member",
              "docComment": "/**\n * Whether the audio is currently playing.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get isPlaying(): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "isPlaying",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Audio#isPositional:member",
              "docComment": "/**\n * Whether the audio is positional (Entity or position attached).\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get isPositional(): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "isPositional",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Audio#loop:member",
              "docComment": "/**\n * Whether the audio is looped.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get loop(): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "loop",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Audio#offset:member",
              "docComment": "/**\n * The offset time in seconds from which the audio should start playing if explicitly set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get offset(): "
                },
                {
                  "kind": "Content",
                  "text": "number | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "offset",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Audio#pause:member(1)",
              "docComment": "/**\n * Pauses the audio.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "pause(): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "pause"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Audio#play:member(1)",
              "docComment": "/**\n * Plays or resumes the audio.\n *\n * @param world - The world to play the audio in.\n *\n * @param restart - If true, the audio will restart from the beginning if it is already playing.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "play(world: "
                },
                {
                  "kind": "Reference",
                  "text": "World",
                  "canonicalReference": "server!World:class"
                },
                {
                  "kind": "Content",
                  "text": ", restart?: "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 5,
                "endIndex": 6
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "world",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "restart",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": true
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "play"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Audio#playbackRate:member",
              "docComment": "/**\n * The playback rate of the audio if explicitly set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get playbackRate(): "
                },
                {
                  "kind": "Content",
                  "text": "number | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "playbackRate",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Audio#position:member",
              "docComment": "/**\n * The position of the audio in the world if explicitly set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get position(): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "position",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Audio#referenceDistance:member",
              "docComment": "/**\n * The reference distance of the audio if explicitly set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get referenceDistance(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "referenceDistance",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Audio#setAttachedToEntity:member(1)",
              "docComment": "/**\n * Sets the entity to which the audio is attached, following its position.\n *\n * @param entity - The entity to attach the Audio to.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setAttachedToEntity(entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "entity",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setAttachedToEntity"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Audio#setCutoffDistance:member(1)",
              "docComment": "/**\n * Sets the cutoff distance of the audio.\n *\n * @remarks\n *\n * The cutoff distance defines the maximum range at which the audio can be heard. Beyond this distance, the audio volume becomes zero. As the listener moves from the reference distance toward the cutoff distance, the volume decreases linearly, providing a natural spatial audio experience with smooth volume falloff based on distance.\n *\n * @param cutoffDistance - The cutoff distance.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setCutoffDistance(cutoffDistance: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "cutoffDistance",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setCutoffDistance"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Audio#setDetune:member(1)",
              "docComment": "/**\n * Sets the detune of the audio.\n *\n * @param detune - The detune in cents.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setDetune(detune: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "detune",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setDetune"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Audio#setDistortion:member(1)",
              "docComment": "/**\n * Sets the distortion of the audio.\n *\n * @param distortion - The distortion amount.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setDistortion(distortion: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "distortion",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setDistortion"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Audio#setPlaybackRate:member(1)",
              "docComment": "/**\n * Sets the playback rate of the audio.\n *\n * @param playbackRate - The playback rate.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setPlaybackRate(playbackRate: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "playbackRate",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setPlaybackRate"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Audio#setPosition:member(1)",
              "docComment": "/**\n * Sets the position of the audio. Will detach from entity if attached.\n *\n * @param position - The position in the world.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setPosition(position: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "position",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setPosition"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Audio#setReferenceDistance:member(1)",
              "docComment": "/**\n * Sets the reference distance of the audio.\n *\n * @remarks\n *\n * The reference distance defines the range within which the audio plays at full volume. When a listener is within this distance from the audio source, they will hear the sound at its maximum volume. Beyond this distance, the volume decreases linearly until reaching the cutoff distance, where the sound becomes inaudible. This creates a natural spatial audio experience with smooth volume falloff based on distance.\n *\n * @param referenceDistance - The reference distance.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setReferenceDistance(referenceDistance: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "referenceDistance",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setReferenceDistance"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Audio#setVolume:member(1)",
              "docComment": "/**\n * Sets the volume of the audio.\n *\n * @param volume - The volume level.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setVolume(volume: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "volume",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setVolume"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Audio#startTick:member",
              "docComment": "/**\n * The server tick at which the audio started playing.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get startTick(): "
                },
                {
                  "kind": "Content",
                  "text": "number | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "startTick",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Audio#uri:member",
              "docComment": "/**\n * The URI of the audio asset.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get uri(): "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "uri",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Audio#volume:member",
              "docComment": "/**\n * The volume of the audio if explicitly set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get volume(): "
                },
                {
                  "kind": "Content",
                  "text": "number | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "volume",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Audio#world:member",
              "docComment": "/**\n * The world the audio is in if already loaded.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get world(): "
                },
                {
                  "kind": "Reference",
                  "text": "World",
                  "canonicalReference": "server!World:class"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "world",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            }
          ],
          "extendsTokenRange": {
            "startIndex": 1,
            "endIndex": 2
          },
          "implementsTokenRanges": [
            {
              "startIndex": 3,
              "endIndex": 4
            }
          ]
        },
        {
          "kind": "Enum",
          "canonicalReference": "server!AudioEvent:enum",
          "docComment": "/**\n * Event types an Audio instance can emit. See {@link AudioEventPayloads} for the payloads.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export declare enum AudioEvent "
            }
          ],
          "fileUrlPath": "src/worlds/audios/Audio.ts",
          "releaseTag": "Public",
          "name": "AudioEvent",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "EnumMember",
              "canonicalReference": "server!AudioEvent.PAUSE:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "PAUSE = "
                },
                {
                  "kind": "Content",
                  "text": "\"AUDIO.PAUSE\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "PAUSE"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!AudioEvent.PLAY:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "PLAY = "
                },
                {
                  "kind": "Content",
                  "text": "\"AUDIO.PLAY\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "PLAY"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!AudioEvent.PLAY_RESTART:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "PLAY_RESTART = "
                },
                {
                  "kind": "Content",
                  "text": "\"AUDIO.PLAY_RESTART\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "PLAY_RESTART"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!AudioEvent.SET_ATTACHED_TO_ENTITY:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_ATTACHED_TO_ENTITY = "
                },
                {
                  "kind": "Content",
                  "text": "\"AUDIO.SET_ATTACHED_TO_ENTITY\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_ATTACHED_TO_ENTITY"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!AudioEvent.SET_CUTOFF_DISTANCE:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_CUTOFF_DISTANCE = "
                },
                {
                  "kind": "Content",
                  "text": "\"AUDIO.SET_CUTOFF_DISTANCE\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_CUTOFF_DISTANCE"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!AudioEvent.SET_DETUNE:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_DETUNE = "
                },
                {
                  "kind": "Content",
                  "text": "\"AUDIO.SET_DETUNE\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_DETUNE"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!AudioEvent.SET_DISTORTION:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_DISTORTION = "
                },
                {
                  "kind": "Content",
                  "text": "\"AUDIO.SET_DISTORTION\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_DISTORTION"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!AudioEvent.SET_PLAYBACK_RATE:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_PLAYBACK_RATE = "
                },
                {
                  "kind": "Content",
                  "text": "\"AUDIO.SET_PLAYBACK_RATE\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_PLAYBACK_RATE"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!AudioEvent.SET_POSITION:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_POSITION = "
                },
                {
                  "kind": "Content",
                  "text": "\"AUDIO.SET_POSITION\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_POSITION"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!AudioEvent.SET_REFERENCE_DISTANCE:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_REFERENCE_DISTANCE = "
                },
                {
                  "kind": "Content",
                  "text": "\"AUDIO.SET_REFERENCE_DISTANCE\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_REFERENCE_DISTANCE"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!AudioEvent.SET_VOLUME:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_VOLUME = "
                },
                {
                  "kind": "Content",
                  "text": "\"AUDIO.SET_VOLUME\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_VOLUME"
            }
          ]
        },
        {
          "kind": "Interface",
          "canonicalReference": "server!AudioEventPayloads:interface",
          "docComment": "/**\n * Event payloads for Audio emitted events.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export interface AudioEventPayloads "
            }
          ],
          "fileUrlPath": "src/worlds/audios/Audio.ts",
          "releaseTag": "Public",
          "name": "AudioEventPayloads",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!AudioEventPayloads#\"AUDIO.PAUSE\":member",
              "docComment": "/**\n * Emitted when the audio is paused.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "AudioEvent.PAUSE",
                  "canonicalReference": "server!AudioEvent.PAUSE:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        audio: "
                },
                {
                  "kind": "Reference",
                  "text": "Audio",
                  "canonicalReference": "server!Audio:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"AUDIO.PAUSE\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!AudioEventPayloads#\"AUDIO.PLAY_RESTART\":member",
              "docComment": "/**\n * Emitted when the audio is restarted.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "AudioEvent.PLAY_RESTART",
                  "canonicalReference": "server!AudioEvent.PLAY_RESTART:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        audio: "
                },
                {
                  "kind": "Reference",
                  "text": "Audio",
                  "canonicalReference": "server!Audio:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"AUDIO.PLAY_RESTART\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!AudioEventPayloads#\"AUDIO.PLAY\":member",
              "docComment": "/**\n * Emitted when the audio is played.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "AudioEvent.PLAY",
                  "canonicalReference": "server!AudioEvent.PLAY:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        audio: "
                },
                {
                  "kind": "Reference",
                  "text": "Audio",
                  "canonicalReference": "server!Audio:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"AUDIO.PLAY\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!AudioEventPayloads#\"AUDIO.SET_ATTACHED_TO_ENTITY\":member",
              "docComment": "/**\n * Emitted when the audio is attached to an entity.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "AudioEvent.SET_ATTACHED_TO_ENTITY",
                  "canonicalReference": "server!AudioEvent.SET_ATTACHED_TO_ENTITY:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        audio: "
                },
                {
                  "kind": "Reference",
                  "text": "Audio",
                  "canonicalReference": "server!Audio:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": " | undefined;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"AUDIO.SET_ATTACHED_TO_ENTITY\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 8
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!AudioEventPayloads#\"AUDIO.SET_CUTOFF_DISTANCE\":member",
              "docComment": "/**\n * Emitted when the audio's cutoff distance is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "AudioEvent.SET_CUTOFF_DISTANCE",
                  "canonicalReference": "server!AudioEvent.SET_CUTOFF_DISTANCE:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        audio: "
                },
                {
                  "kind": "Reference",
                  "text": "Audio",
                  "canonicalReference": "server!Audio:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        cutoffDistance: number;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"AUDIO.SET_CUTOFF_DISTANCE\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!AudioEventPayloads#\"AUDIO.SET_DETUNE\":member",
              "docComment": "/**\n * Emitted when the audio's detune is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "AudioEvent.SET_DETUNE",
                  "canonicalReference": "server!AudioEvent.SET_DETUNE:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        audio: "
                },
                {
                  "kind": "Reference",
                  "text": "Audio",
                  "canonicalReference": "server!Audio:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        detune: number;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"AUDIO.SET_DETUNE\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!AudioEventPayloads#\"AUDIO.SET_DISTORTION\":member",
              "docComment": "/**\n * Emitted when the audio's distortion is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "AudioEvent.SET_DISTORTION",
                  "canonicalReference": "server!AudioEvent.SET_DISTORTION:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        audio: "
                },
                {
                  "kind": "Reference",
                  "text": "Audio",
                  "canonicalReference": "server!Audio:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        distortion: number;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"AUDIO.SET_DISTORTION\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!AudioEventPayloads#\"AUDIO.SET_PLAYBACK_RATE\":member",
              "docComment": "/**\n * Emitted when the audio's playback rate is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "AudioEvent.SET_PLAYBACK_RATE",
                  "canonicalReference": "server!AudioEvent.SET_PLAYBACK_RATE:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        audio: "
                },
                {
                  "kind": "Reference",
                  "text": "Audio",
                  "canonicalReference": "server!Audio:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        playbackRate: number;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"AUDIO.SET_PLAYBACK_RATE\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!AudioEventPayloads#\"AUDIO.SET_POSITION\":member",
              "docComment": "/**\n * Emitted when the audio's position is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "AudioEvent.SET_POSITION",
                  "canonicalReference": "server!AudioEvent.SET_POSITION:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        audio: "
                },
                {
                  "kind": "Reference",
                  "text": "Audio",
                  "canonicalReference": "server!Audio:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        position: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"AUDIO.SET_POSITION\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 8
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!AudioEventPayloads#\"AUDIO.SET_REFERENCE_DISTANCE\":member",
              "docComment": "/**\n * Emitted when the audio's reference distance is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "AudioEvent.SET_REFERENCE_DISTANCE",
                  "canonicalReference": "server!AudioEvent.SET_REFERENCE_DISTANCE:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        audio: "
                },
                {
                  "kind": "Reference",
                  "text": "Audio",
                  "canonicalReference": "server!Audio:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        referenceDistance: number;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"AUDIO.SET_REFERENCE_DISTANCE\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!AudioEventPayloads#\"AUDIO.SET_VOLUME\":member",
              "docComment": "/**\n * Emitted when the audio's volume is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "AudioEvent.SET_VOLUME",
                  "canonicalReference": "server!AudioEvent.SET_VOLUME:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        audio: "
                },
                {
                  "kind": "Reference",
                  "text": "Audio",
                  "canonicalReference": "server!Audio:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        volume: number;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"AUDIO.SET_VOLUME\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            }
          ],
          "extendsTokenRanges": []
        },
        {
          "kind": "Class",
          "canonicalReference": "server!AudioManager:class",
          "docComment": "/**\n * Manages audio instances in a world.\n *\n * @remarks\n *\n * The AudioManager is created internally as a singleton for each {@link World} instance in a game server. It allows retrieval of all loaded audio, entity attached audio, looped audio, and more.\n *\n * The constructor for this class is marked as internal. Third-party code should not call the constructor directly or create subclasses that extend the `AudioManager` class.\n *\n * @example\n * ```typescript\n * // Stop all audio in the world\n * const audioManager = world.audioManager;\n * audioManager.getAllAudios().map(audio => audio.pause());\n * ```\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export default class AudioManager "
            }
          ],
          "fileUrlPath": "src/worlds/audios/AudioManager.ts",
          "releaseTag": "Public",
          "isAbstract": false,
          "name": "AudioManager",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "Method",
              "canonicalReference": "server!AudioManager#getAllAudios:member(1)",
              "docComment": "/**\n * Retrieves all loaded audio instances for the world.\n *\n * @returns An array of audio instances.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "getAllAudios(): "
                },
                {
                  "kind": "Reference",
                  "text": "Audio",
                  "canonicalReference": "server!Audio:class"
                },
                {
                  "kind": "Content",
                  "text": "[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "getAllAudios"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!AudioManager#getAllEntityAttachedAudios:member(1)",
              "docComment": "/**\n * Retrieves all loaded audio instances attached to a specific entity.\n *\n * @param entity - The entity to get attached audio instances for.\n *\n * @returns An array of audio instances.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "getAllEntityAttachedAudios(entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Audio",
                  "canonicalReference": "server!Audio:class"
                },
                {
                  "kind": "Content",
                  "text": "[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 5
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "entity",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "getAllEntityAttachedAudios"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!AudioManager#getAllLoopedAudios:member(1)",
              "docComment": "/**\n * Retrieves all looped audio instances for the world.\n *\n * @returns An array of audio instances.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "getAllLoopedAudios(): "
                },
                {
                  "kind": "Reference",
                  "text": "Audio",
                  "canonicalReference": "server!Audio:class"
                },
                {
                  "kind": "Content",
                  "text": "[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "getAllLoopedAudios"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!AudioManager#getAllOneshotAudios:member(1)",
              "docComment": "/**\n * Retrieves all oneshot (non-looped) audio instances for the world.\n *\n * @returns An array of audio instances.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "getAllOneshotAudios(): "
                },
                {
                  "kind": "Reference",
                  "text": "Audio",
                  "canonicalReference": "server!Audio:class"
                },
                {
                  "kind": "Content",
                  "text": "[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "getAllOneshotAudios"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!AudioManager#unregisterAudio:member(1)",
              "docComment": "/**\n * Unregisters and stops an audio instance from the audio manager.\n *\n * @param audio - The audio instance to pause and unregister.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "unregisterAudio(audio: "
                },
                {
                  "kind": "Reference",
                  "text": "Audio",
                  "canonicalReference": "server!Audio:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "audio",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "unregisterAudio"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!AudioManager#unregisterEntityAttachedAudios:member(1)",
              "docComment": "/**\n * Unregisters and stops all audio instances attached to a specific entity.\n *\n * @param entity - The entity to pause and unregister audio instances for.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "unregisterEntityAttachedAudios(entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "entity",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "unregisterEntityAttachedAudios"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!AudioManager#world:member",
              "docComment": "/**\n * The world the audio manager is for.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get world(): "
                },
                {
                  "kind": "Reference",
                  "text": "World",
                  "canonicalReference": "server!World:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "world",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            }
          ],
          "implementsTokenRanges": []
        },
        {
          "kind": "Interface",
          "canonicalReference": "server!AudioOptions:interface",
          "docComment": "/**\n * Options for creating an Audio instance.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export interface AudioOptions "
            }
          ],
          "fileUrlPath": "src/worlds/audios/Audio.ts",
          "releaseTag": "Public",
          "name": "AudioOptions",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!AudioOptions#attachedToEntity:member",
              "docComment": "/**\n * If set, audio playback will follow the entity's position.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "attachedToEntity?: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "attachedToEntity",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!AudioOptions#cutoffDistance:member",
              "docComment": "/**\n * The cutoff distance between the audio source and the listener where the audio will be reduced to 0 volume. Must be greater than reference distance. Defaults to reference distance + 10.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "cutoffDistance?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "cutoffDistance",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!AudioOptions#detune:member",
              "docComment": "/**\n * The detuning of the audio in cents.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "detune?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "detune",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!AudioOptions#distortion:member",
              "docComment": "/**\n * The amount of distortion to apply to the audio.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "distortion?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "distortion",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!AudioOptions#duration:member",
              "docComment": "/**\n * The duration of the audio in seconds. Defaults to full duration.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "duration?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "duration",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!AudioOptions#loop:member",
              "docComment": "/**\n * Whether the audio should loop when it reaches the end. Defaults to false.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "loop?: "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "loop",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!AudioOptions#offset:member",
              "docComment": "/**\n * The offset time in seconds from which the audio should start playing.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "offset?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "offset",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!AudioOptions#playbackRate:member",
              "docComment": "/**\n * The playback speed of the audio. Defaults to 1.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "playbackRate?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "playbackRate",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!AudioOptions#position:member",
              "docComment": "/**\n * The position in the world where the audio is played.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "position?: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "position",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!AudioOptions#referenceDistance:member",
              "docComment": "/**\n * The maximum reference distance between the audio source and the listener where the audio will still be max volume. Defaults to 10.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "referenceDistance?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "referenceDistance",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!AudioOptions#uri:member",
              "docComment": "/**\n * The URI or path to the audio asset to be played.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "uri: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "uri",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!AudioOptions#volume:member",
              "docComment": "/**\n * The volume level of the audio. Defaults to 0.5.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "volume?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "volume",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            }
          ],
          "extendsTokenRanges": []
        },
        {
          "kind": "Interface",
          "canonicalReference": "server!BallColliderOptions:interface",
          "docComment": "/**\n * The options for a ball collider.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export interface BallColliderOptions extends "
            },
            {
              "kind": "Reference",
              "text": "BaseColliderOptions",
              "canonicalReference": "server!BaseColliderOptions:interface"
            },
            {
              "kind": "Content",
              "text": " "
            }
          ],
          "fileUrlPath": "src/worlds/physics/Collider.ts",
          "releaseTag": "Public",
          "name": "BallColliderOptions",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!BallColliderOptions#radius:member",
              "docComment": "/**\n * The radius of the ball collider.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "radius?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "radius",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!BallColliderOptions#shape:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "shape: "
                },
                {
                  "kind": "Reference",
                  "text": "ColliderShape.BALL",
                  "canonicalReference": "server!ColliderShape.BALL:member"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "shape",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            }
          ],
          "extendsTokenRanges": [
            {
              "startIndex": 1,
              "endIndex": 2
            }
          ]
        },
        {
          "kind": "Interface",
          "canonicalReference": "server!BaseColliderOptions:interface",
          "docComment": "/**\n * The base options for a collider.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export interface BaseColliderOptions "
            }
          ],
          "fileUrlPath": "src/worlds/physics/Collider.ts",
          "releaseTag": "Public",
          "name": "BaseColliderOptions",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!BaseColliderOptions#bounciness:member",
              "docComment": "/**\n * The bounciness of the collider.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "bounciness?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "bounciness",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!BaseColliderOptions#bouncinessCombineRule:member",
              "docComment": "/**\n * The bounciness combine rule of the collider.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "bouncinessCombineRule?: "
                },
                {
                  "kind": "Reference",
                  "text": "CoefficientCombineRule",
                  "canonicalReference": "server!CoefficientCombineRule:enum"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "bouncinessCombineRule",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!BaseColliderOptions#collisionGroups:member",
              "docComment": "/**\n * The collision groups the collider belongs to.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "collisionGroups?: "
                },
                {
                  "kind": "Reference",
                  "text": "CollisionGroups",
                  "canonicalReference": "server!CollisionGroups:type"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "collisionGroups",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!BaseColliderOptions#enabled:member",
              "docComment": "/**\n * Whether the collider is enabled.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "enabled?: "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "enabled",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!BaseColliderOptions#flags:member",
              "docComment": "/**\n * The flags of the collider if the shape is a trimesh\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "flags?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "flags",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!BaseColliderOptions#friction:member",
              "docComment": "/**\n * The friction of the collider.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "friction?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "friction",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!BaseColliderOptions#frictionCombineRule:member",
              "docComment": "/**\n * The friction combine rule of the collider.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "frictionCombineRule?: "
                },
                {
                  "kind": "Reference",
                  "text": "CoefficientCombineRule",
                  "canonicalReference": "server!CoefficientCombineRule:enum"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "frictionCombineRule",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!BaseColliderOptions#isSensor:member",
              "docComment": "/**\n * Whether the collider is a sensor.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "isSensor?: "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "isSensor",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!BaseColliderOptions#mass:member",
              "docComment": "/**\n * The mass of the collider.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "mass?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "mass",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!BaseColliderOptions#onCollision:member",
              "docComment": "/**\n * The on collision callback for the collider.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "onCollision?: "
                },
                {
                  "kind": "Reference",
                  "text": "CollisionCallback",
                  "canonicalReference": "server!CollisionCallback:type"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "onCollision",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!BaseColliderOptions#parentRigidBody:member",
              "docComment": "/**\n * The parent rigid body of the collider.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "parentRigidBody?: "
                },
                {
                  "kind": "Reference",
                  "text": "RigidBody",
                  "canonicalReference": "server!RigidBody:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "parentRigidBody",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!BaseColliderOptions#relativePosition:member",
              "docComment": "/**\n * The relative position of the collider. Relative to parent rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "relativePosition?: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "relativePosition",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!BaseColliderOptions#relativeRotation:member",
              "docComment": "/**\n * The relative rotation of the collider. Relative to parent rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "relativeRotation?: "
                },
                {
                  "kind": "Reference",
                  "text": "QuaternionLike",
                  "canonicalReference": "server!QuaternionLike:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "relativeRotation",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!BaseColliderOptions#shape:member",
              "docComment": "/**\n * The shape of the collider.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "shape: "
                },
                {
                  "kind": "Reference",
                  "text": "ColliderShape",
                  "canonicalReference": "server!ColliderShape:enum"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "shape",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!BaseColliderOptions#simulation:member",
              "docComment": "/**\n * The simulation the collider is in, if provided the collider will automatically be added to the simulation.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "simulation?: "
                },
                {
                  "kind": "Reference",
                  "text": "Simulation",
                  "canonicalReference": "server!Simulation:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "simulation",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!BaseColliderOptions#tag:member",
              "docComment": "/**\n * An arbitrary identifier tag of the collider. Useful for your own logic.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "tag?: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "tag",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            }
          ],
          "extendsTokenRanges": []
        },
        {
          "kind": "Class",
          "canonicalReference": "server!BaseEntityController:class",
          "docComment": "/**\n * A base class for entity controller implementations.\n *\n * @remarks\n *\n * The BaseEntityController should be extended by a more specific entity controller that you or a plugin implements. Entity controllers are intended to be used as one controller instance per entity, but are flexible enough for edge cases such as if you want to create niche behavior of one controller for many entities that behave in unison.\n *\n * <h2>Events</h2>\n *\n * This class is an EventRouter, and instances of it emit events with payloads listed under {@link BaseEntityControllerEventPayloads}\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export default abstract class BaseEntityController extends "
            },
            {
              "kind": "Reference",
              "text": "EventRouter",
              "canonicalReference": "server!EventRouter:class"
            },
            {
              "kind": "Content",
              "text": " "
            }
          ],
          "fileUrlPath": "src/worlds/entities/controllers/BaseEntityController.ts",
          "releaseTag": "Public",
          "isAbstract": true,
          "name": "BaseEntityController",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "Method",
              "canonicalReference": "server!BaseEntityController#attach:member(1)",
              "docComment": "/**\n * Override this method to handle the attachment of an entity to your entity controller.\n *\n * @param entity - The entity to attach the controller to.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "attach(entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "entity",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "attach"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!BaseEntityController#despawn:member(1)",
              "docComment": "/**\n * Override this method to handle the despawn of an entity from your entity controller.\n *\n * @param entity - The entity to despawn.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "despawn(entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "entity",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "despawn"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!BaseEntityController#detach:member(1)",
              "docComment": "/**\n * Override this method to handle the detachment of an entity from your entity controller.\n *\n * @param entity - The entity to detach.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "detach(entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "entity",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "detach"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!BaseEntityController#spawn:member(1)",
              "docComment": "/**\n * Override this method to handle the spawning of an entity to your entity controller.\n *\n * @param entity - The entity to spawn.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "spawn(entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "entity",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "spawn"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!BaseEntityController#tick:member(1)",
              "docComment": "/**\n * Override this method to handle entity movements based on your entity controller.\n *\n * @param deltaTimeMs - The delta time in milliseconds since the last tick.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "tick(entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": ", deltaTimeMs: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 5,
                "endIndex": 6
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "entity",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "deltaTimeMs",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "tick"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!BaseEntityController#tickWithPlayerInput:member(1)",
              "docComment": "/**\n * Override this method to handle entity movements based on player input for your entity controller. This is called every tick by a PlayerEntity with a entity controller.\n *\n * @param entity - The entity to tick.\n *\n * @param input - The current input state of the player.\n *\n * @param cameraOrientation - The current camera orientation state of the player.\n *\n * @param deltaTimeMs - The delta time in milliseconds since the last tick.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "tickWithPlayerInput(entity: "
                },
                {
                  "kind": "Reference",
                  "text": "PlayerEntity",
                  "canonicalReference": "server!PlayerEntity:class"
                },
                {
                  "kind": "Content",
                  "text": ", input: "
                },
                {
                  "kind": "Reference",
                  "text": "PlayerInput",
                  "canonicalReference": "server!PlayerInput:type"
                },
                {
                  "kind": "Content",
                  "text": ", cameraOrientation: "
                },
                {
                  "kind": "Reference",
                  "text": "PlayerCameraOrientation",
                  "canonicalReference": "server!PlayerCameraOrientation:type"
                },
                {
                  "kind": "Content",
                  "text": ", deltaTimeMs: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 9,
                "endIndex": 10
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "entity",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "input",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "cameraOrientation",
                  "parameterTypeTokenRange": {
                    "startIndex": 5,
                    "endIndex": 6
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "deltaTimeMs",
                  "parameterTypeTokenRange": {
                    "startIndex": 7,
                    "endIndex": 8
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "tickWithPlayerInput"
            }
          ],
          "extendsTokenRange": {
            "startIndex": 1,
            "endIndex": 2
          },
          "implementsTokenRanges": []
        },
        {
          "kind": "Enum",
          "canonicalReference": "server!BaseEntityControllerEvent:enum",
          "docComment": "/**\n * Event types a BaseEntityController instance can emit. See {@link BaseEntityControllerEventPayloads} for the payloads.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export declare enum BaseEntityControllerEvent "
            }
          ],
          "fileUrlPath": "src/worlds/entities/controllers/BaseEntityController.ts",
          "releaseTag": "Public",
          "name": "BaseEntityControllerEvent",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "EnumMember",
              "canonicalReference": "server!BaseEntityControllerEvent.ATTACH:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "ATTACH = "
                },
                {
                  "kind": "Content",
                  "text": "\"BASE_ENTITY_CONTROLLER.ATTACH\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "ATTACH"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!BaseEntityControllerEvent.DESPAWN:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "DESPAWN = "
                },
                {
                  "kind": "Content",
                  "text": "\"BASE_ENTITY_CONTROLLER.DESPAWN\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "DESPAWN"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!BaseEntityControllerEvent.DETACH:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "DETACH = "
                },
                {
                  "kind": "Content",
                  "text": "\"BASE_ENTITY_CONTROLLER.DETACH\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "DETACH"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!BaseEntityControllerEvent.SPAWN:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SPAWN = "
                },
                {
                  "kind": "Content",
                  "text": "\"BASE_ENTITY_CONTROLLER.SPAWN\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SPAWN"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!BaseEntityControllerEvent.TICK:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "TICK = "
                },
                {
                  "kind": "Content",
                  "text": "\"BASE_ENTITY_CONTROLLER.TICK\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "TICK"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!BaseEntityControllerEvent.TICK_WITH_PLAYER_INPUT:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "TICK_WITH_PLAYER_INPUT = "
                },
                {
                  "kind": "Content",
                  "text": "\"BASE_ENTITY_CONTROLLER.TICK_WITH_PLAYER_INPUT\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "TICK_WITH_PLAYER_INPUT"
            }
          ]
        },
        {
          "kind": "Interface",
          "canonicalReference": "server!BaseEntityControllerEventPayloads:interface",
          "docComment": "/**\n * Event payloads for BaseEntityController emitted events.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export interface BaseEntityControllerEventPayloads "
            }
          ],
          "fileUrlPath": "src/worlds/entities/controllers/BaseEntityController.ts",
          "releaseTag": "Public",
          "name": "BaseEntityControllerEventPayloads",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!BaseEntityControllerEventPayloads#\"BASE_ENTITY_CONTROLLER.ATTACH\":member",
              "docComment": "/**\n * Emitted when an entity is attached to the controller.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "BaseEntityControllerEvent.ATTACH",
                  "canonicalReference": "server!BaseEntityControllerEvent.ATTACH:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"BASE_ENTITY_CONTROLLER.ATTACH\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!BaseEntityControllerEventPayloads#\"BASE_ENTITY_CONTROLLER.DESPAWN\":member",
              "docComment": "/**\n * Emitted when an entity is despawned.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "BaseEntityControllerEvent.DESPAWN",
                  "canonicalReference": "server!BaseEntityControllerEvent.DESPAWN:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"BASE_ENTITY_CONTROLLER.DESPAWN\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!BaseEntityControllerEventPayloads#\"BASE_ENTITY_CONTROLLER.DETACH\":member",
              "docComment": "/**\n * Emitted when an entity is detached from the controller.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "BaseEntityControllerEvent.DETACH",
                  "canonicalReference": "server!BaseEntityControllerEvent.DETACH:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"BASE_ENTITY_CONTROLLER.DETACH\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!BaseEntityControllerEventPayloads#\"BASE_ENTITY_CONTROLLER.SPAWN\":member",
              "docComment": "/**\n * Emitted when an entity is spawned.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "BaseEntityControllerEvent.SPAWN",
                  "canonicalReference": "server!BaseEntityControllerEvent.SPAWN:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"BASE_ENTITY_CONTROLLER.SPAWN\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!BaseEntityControllerEventPayloads#\"BASE_ENTITY_CONTROLLER.TICK_WITH_PLAYER_INPUT\":member",
              "docComment": "/**\n * Emitted when an entity is ticked with player input.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "BaseEntityControllerEvent.TICK_WITH_PLAYER_INPUT",
                  "canonicalReference": "server!BaseEntityControllerEvent.TICK_WITH_PLAYER_INPUT:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        entity: "
                },
                {
                  "kind": "Reference",
                  "text": "PlayerEntity",
                  "canonicalReference": "server!PlayerEntity:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        input: "
                },
                {
                  "kind": "Reference",
                  "text": "PlayerInput",
                  "canonicalReference": "server!PlayerInput:type"
                },
                {
                  "kind": "Content",
                  "text": ";\n        cameraOrientation: "
                },
                {
                  "kind": "Reference",
                  "text": "PlayerCameraOrientation",
                  "canonicalReference": "server!PlayerCameraOrientation:type"
                },
                {
                  "kind": "Content",
                  "text": ";\n        deltaTimeMs: number;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"BASE_ENTITY_CONTROLLER.TICK_WITH_PLAYER_INPUT\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 10
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!BaseEntityControllerEventPayloads#\"BASE_ENTITY_CONTROLLER.TICK\":member",
              "docComment": "/**\n * Emitted when an entity is ticked.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "BaseEntityControllerEvent.TICK",
                  "canonicalReference": "server!BaseEntityControllerEvent.TICK:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        deltaTimeMs: number;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"BASE_ENTITY_CONTROLLER.TICK\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            }
          ],
          "extendsTokenRanges": []
        },
        {
          "kind": "Interface",
          "canonicalReference": "server!BaseEntityOptions:interface",
          "docComment": "/**\n * The base options for an entity.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export interface BaseEntityOptions "
            }
          ],
          "fileUrlPath": "src/worlds/entities/Entity.ts",
          "releaseTag": "Public",
          "name": "BaseEntityOptions",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!BaseEntityOptions#controller:member",
              "docComment": "/**\n * The entity controller to use for the entity.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "controller?: "
                },
                {
                  "kind": "Reference",
                  "text": "BaseEntityController",
                  "canonicalReference": "server!BaseEntityController:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "controller",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!BaseEntityOptions#isEnvironmental:member",
              "docComment": "/**\n * Whether the entity is environmental, if true it will not invoke its tick function or change position. Defaults to false.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "isEnvironmental?: "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "isEnvironmental",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!BaseEntityOptions#name:member",
              "docComment": "/**\n * The name of the entity.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "name?: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "name",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!BaseEntityOptions#opacity:member",
              "docComment": "/**\n * The opacity of the entity between 0 and 1. 0 is fully transparent, 1 is fully opaque.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "opacity?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "opacity",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!BaseEntityOptions#parent:member",
              "docComment": "/**\n * The parent entity of the entity, entities with a parent will ignore creating their own colliders.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "parent?: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "parent",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!BaseEntityOptions#parentNodeName:member",
              "docComment": "/**\n * The name of the parent's node (if parent is a model entity) to attach the entity to.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "parentNodeName?: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "parentNodeName",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!BaseEntityOptions#rigidBodyOptions:member",
              "docComment": "/**\n * The rigid body options for the entity.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "rigidBodyOptions?: "
                },
                {
                  "kind": "Reference",
                  "text": "RigidBodyOptions",
                  "canonicalReference": "server!RigidBodyOptions:type"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "rigidBodyOptions",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!BaseEntityOptions#tag:member",
              "docComment": "/**\n * An arbitrary identifier tag of the entity. Useful for your own logic.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "tag?: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "tag",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!BaseEntityOptions#tintColor:member",
              "docComment": "/**\n * The tint color of the entity as a hex code.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "tintColor?: "
                },
                {
                  "kind": "Reference",
                  "text": "RgbColor",
                  "canonicalReference": "server!RgbColor:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "tintColor",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            }
          ],
          "extendsTokenRanges": []
        },
        {
          "kind": "Interface",
          "canonicalReference": "server!BaseRigidBodyOptions:interface",
          "docComment": "/**\n * The base options for a rigid body.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export interface BaseRigidBodyOptions "
            }
          ],
          "fileUrlPath": "src/worlds/physics/RigidBody.ts",
          "releaseTag": "Public",
          "name": "BaseRigidBodyOptions",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!BaseRigidBodyOptions#colliders:member",
              "docComment": "/**\n * The colliders of the rigid body, provided as {@link ColliderOptions}.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "colliders?: "
                },
                {
                  "kind": "Reference",
                  "text": "ColliderOptions",
                  "canonicalReference": "server!ColliderOptions:type"
                },
                {
                  "kind": "Content",
                  "text": "[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "colliders",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!BaseRigidBodyOptions#enabled:member",
              "docComment": "/**\n * Whether the rigid body is enabled.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "enabled?: "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "enabled",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!BaseRigidBodyOptions#position:member",
              "docComment": "/**\n * The position of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "position?: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "position",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!BaseRigidBodyOptions#rotation:member",
              "docComment": "/**\n * The rotation of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "rotation?: "
                },
                {
                  "kind": "Reference",
                  "text": "QuaternionLike",
                  "canonicalReference": "server!QuaternionLike:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "rotation",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!BaseRigidBodyOptions#simulation:member",
              "docComment": "/**\n * The simulation the rigid body is in. If provided, the rigid body will be automatically added to the simulation.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "simulation?: "
                },
                {
                  "kind": "Reference",
                  "text": "Simulation",
                  "canonicalReference": "server!Simulation:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "simulation",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!BaseRigidBodyOptions#type:member",
              "docComment": "/**\n * The type of the rigid body, defaults to {@link RigidBodyType.DYNAMIC}.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "type?: "
                },
                {
                  "kind": "Reference",
                  "text": "RigidBodyType",
                  "canonicalReference": "server!RigidBodyType:enum"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "type",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            }
          ],
          "extendsTokenRanges": []
        },
        {
          "kind": "Class",
          "canonicalReference": "server!Block:class",
          "docComment": "/**\n * Represents a block in a world.\n *\n * @remarks\n *\n * Instances of this class are created internally but made publicly available through various public facing API methods.\n *\n * The constructor for this class is marked as internal. Third-party code should not call the constructor directly or create subclasses that extend the `Block` class.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export default class Block "
            }
          ],
          "fileUrlPath": "src/worlds/blocks/Block.ts",
          "releaseTag": "Public",
          "isAbstract": false,
          "name": "Block",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "Property",
              "canonicalReference": "server!Block#blockType:member",
              "docComment": "/**\n * The block type of the block.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "readonly blockType: "
                },
                {
                  "kind": "Reference",
                  "text": "BlockType",
                  "canonicalReference": "server!BlockType:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "blockType",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Block#getNeighborGlobalCoordinateFromHitPoint:member(1)",
              "docComment": "/**\n * Gets the most adjacent neighbor global coordinate of this block based on a relative hit point, typically from a raycast.\n *\n * @param hitPoint - The hit point on this block to get the neighbor coordinate from.\n *\n * @returns A neighbor global coordinate of this block based on the hit point.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "getNeighborGlobalCoordinateFromHitPoint(hitPoint: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "hitPoint",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "getNeighborGlobalCoordinateFromHitPoint"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Block#globalCoordinate:member",
              "docComment": "/**\n * The global coordinate of the block.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "readonly globalCoordinate: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "globalCoordinate",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            }
          ],
          "implementsTokenRanges": []
        },
        {
          "kind": "Interface",
          "canonicalReference": "server!BlockColliderOptions:interface",
          "docComment": "/**\n * The options for a block collider.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export interface BlockColliderOptions extends "
            },
            {
              "kind": "Reference",
              "text": "BaseColliderOptions",
              "canonicalReference": "server!BaseColliderOptions:interface"
            },
            {
              "kind": "Content",
              "text": " "
            }
          ],
          "fileUrlPath": "src/worlds/physics/Collider.ts",
          "releaseTag": "Public",
          "name": "BlockColliderOptions",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!BlockColliderOptions#halfExtents:member",
              "docComment": "/**\n * The half extents of the block collider.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "halfExtents?: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "halfExtents",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!BlockColliderOptions#shape:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "shape: "
                },
                {
                  "kind": "Reference",
                  "text": "ColliderShape.BLOCK",
                  "canonicalReference": "server!ColliderShape.BLOCK:member"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "shape",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            }
          ],
          "extendsTokenRanges": [
            {
              "startIndex": 1,
              "endIndex": 2
            }
          ]
        },
        {
          "kind": "Interface",
          "canonicalReference": "server!BlockEntityOptions:interface",
          "docComment": "/**\n * The options for creating a block entity.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export interface BlockEntityOptions extends "
            },
            {
              "kind": "Reference",
              "text": "BaseEntityOptions",
              "canonicalReference": "server!BaseEntityOptions:interface"
            },
            {
              "kind": "Content",
              "text": " "
            }
          ],
          "fileUrlPath": "src/worlds/entities/Entity.ts",
          "releaseTag": "Public",
          "name": "BlockEntityOptions",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!BlockEntityOptions#blockHalfExtents:member",
              "docComment": "/**\n * The half extents of the visual size of the block entity when blockTextureUri is set. If no rigidBodyOptions.colliders are provided, a block collider with the size of the half extents will be created.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "blockHalfExtents?: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "blockHalfExtents",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!BlockEntityOptions#blockTextureUri:member",
              "docComment": "/**\n * The texture uri of a entity if the entity is a block entity, if set rigidBodyOptions collider shape [0] must be a block\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "blockTextureUri?: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "blockTextureUri",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            }
          ],
          "extendsTokenRanges": [
            {
              "startIndex": 1,
              "endIndex": 2
            }
          ]
        },
        {
          "kind": "Class",
          "canonicalReference": "server!BlockType:class",
          "docComment": "/**\n * Represents a block type.\n *\n * @remarks\n *\n * Block types are created directly as instances. They support a variety of configuration options through the {@link BlockTypeOptions} constructor argument. Block types are registered with a {@link BlockTypeRegistry} instance, allowing you to create custom blocks with unique visual representations and behaviors.\n *\n * <h2>Events</h2>\n *\n * This class is an EventRouter, and instances of it emit events with payloads listed under {@link BlockTypeEventPayloads}\n *\n * @example\n * ```typescript\n * const stoneBlockTypeId = 10;\n * world.blockTypeRegistry.registerBlockType(stoneBlockTypeId, new BlockType({\n *   id: stoneBlockTypeId,\n *   textureUri: 'textures/stone.png',\n *   name: 'Stone',\n * }));\n *\n * // Create a stone block at coordinate 0, 1, 0\n * world.chunkLattice.setBlock({ x: 0, y: 1, z: 0 }, stoneBlockTypeId);\n * ```\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export default class BlockType extends "
            },
            {
              "kind": "Reference",
              "text": "EventRouter",
              "canonicalReference": "server!EventRouter:class"
            },
            {
              "kind": "Content",
              "text": " implements "
            },
            {
              "kind": "Reference",
              "text": "protocol.Serializable",
              "canonicalReference": "@hytopia.com/server-protocol!Serializable:interface"
            },
            {
              "kind": "Content",
              "text": " "
            }
          ],
          "fileUrlPath": "src/worlds/blocks/BlockType.ts",
          "releaseTag": "Public",
          "isAbstract": false,
          "name": "BlockType",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "Constructor",
              "canonicalReference": "server!BlockType:constructor(1)",
              "docComment": "/**\n * Creates a new block type instance.\n *\n * @param world - The world the block type is for.\n *\n * @param options - The options for the block type.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "constructor(options?: "
                },
                {
                  "kind": "Reference",
                  "text": "BlockTypeOptions",
                  "canonicalReference": "server!BlockTypeOptions:interface"
                },
                {
                  "kind": "Content",
                  "text": ");"
                }
              ],
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "options",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": true
                }
              ]
            },
            {
              "kind": "Property",
              "canonicalReference": "server!BlockType#colliderOptions:member",
              "docComment": "/**\n * The collider options for the block type.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get colliderOptions(): "
                },
                {
                  "kind": "Reference",
                  "text": "VoxelsColliderOptions",
                  "canonicalReference": "server!VoxelsColliderOptions:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "colliderOptions",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!BlockType#halfExtents:member",
              "docComment": "/**\n * The half extents size of the block type.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get halfExtents(): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "halfExtents",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!BlockType#id:member",
              "docComment": "/**\n * The unique identifier for the block type.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get id(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "id",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!BlockType#isLiquid:member",
              "docComment": "/**\n * Whether the block type is a liquid.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get isLiquid(): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "isLiquid",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!BlockType#isMeshable:member",
              "docComment": "/**\n * Whether the block type is meshable.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get isMeshable(): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "isMeshable",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!BlockType#name:member",
              "docComment": "/**\n * The name of the block type.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get name(): "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "name",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!BlockType#size:member",
              "docComment": "/**\n * The size of the block type.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get size(): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "size",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!BlockType#textureUri:member",
              "docComment": "/**\n * The URI of the texture for the block type.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get textureUri(): "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "textureUri",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            }
          ],
          "extendsTokenRange": {
            "startIndex": 1,
            "endIndex": 2
          },
          "implementsTokenRanges": [
            {
              "startIndex": 3,
              "endIndex": 4
            }
          ]
        },
        {
          "kind": "Enum",
          "canonicalReference": "server!BlockTypeEvent:enum",
          "docComment": "/**\n * Event types a BlockType instance can emit. See {@link BlockTypeEventPayloads} for the payloads.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export declare enum BlockTypeEvent "
            }
          ],
          "fileUrlPath": "src/worlds/blocks/BlockType.ts",
          "releaseTag": "Public",
          "name": "BlockTypeEvent",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "EnumMember",
              "canonicalReference": "server!BlockTypeEvent.ENTITY_COLLISION:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "ENTITY_COLLISION = "
                },
                {
                  "kind": "Content",
                  "text": "\"BLOCK_TYPE.ENTITY_COLLISION\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "ENTITY_COLLISION"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!BlockTypeEvent.ENTITY_CONTACT_FORCE:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "ENTITY_CONTACT_FORCE = "
                },
                {
                  "kind": "Content",
                  "text": "\"BLOCK_TYPE.ENTITY_CONTACT_FORCE\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "ENTITY_CONTACT_FORCE"
            }
          ]
        },
        {
          "kind": "Interface",
          "canonicalReference": "server!BlockTypeEventPayloads:interface",
          "docComment": "/**\n * Event payloads for BlockType emitted events.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export interface BlockTypeEventPayloads "
            }
          ],
          "fileUrlPath": "src/worlds/blocks/BlockType.ts",
          "releaseTag": "Public",
          "name": "BlockTypeEventPayloads",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!BlockTypeEventPayloads#\"BLOCK_TYPE.ENTITY_COLLISION\":member",
              "docComment": "/**\n * Emitted when an entity collides with a block type.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "BlockTypeEvent.ENTITY_COLLISION",
                  "canonicalReference": "server!BlockTypeEvent.ENTITY_COLLISION:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        blockType: "
                },
                {
                  "kind": "Reference",
                  "text": "BlockType",
                  "canonicalReference": "server!BlockType:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        started: boolean;\n        colliderHandleA: number;\n        colliderHandleB: number;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"BLOCK_TYPE.ENTITY_COLLISION\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 8
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!BlockTypeEventPayloads#\"BLOCK_TYPE.ENTITY_CONTACT_FORCE\":member",
              "docComment": "/**\n * Emitted when an entity's contact force is applied to a block type.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "BlockTypeEvent.ENTITY_CONTACT_FORCE",
                  "canonicalReference": "server!BlockTypeEvent.ENTITY_CONTACT_FORCE:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        blockType: "
                },
                {
                  "kind": "Reference",
                  "text": "BlockType",
                  "canonicalReference": "server!BlockType:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        contactForceData: "
                },
                {
                  "kind": "Reference",
                  "text": "ContactForceData",
                  "canonicalReference": "server!ContactForceData:type"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"BLOCK_TYPE.ENTITY_CONTACT_FORCE\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 10
              }
            }
          ],
          "extendsTokenRanges": []
        },
        {
          "kind": "Interface",
          "canonicalReference": "server!BlockTypeOptions:interface",
          "docComment": "/**\n * Options for creating a block type instance.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export interface BlockTypeOptions "
            }
          ],
          "fileUrlPath": "src/worlds/blocks/BlockType.ts",
          "releaseTag": "Public",
          "name": "BlockTypeOptions",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!BlockTypeOptions#customColliderOptions:member",
              "docComment": "/**\n * The custom collider options for the block type.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "customColliderOptions?: "
                },
                {
                  "kind": "Reference",
                  "text": "VoxelsColliderOptions",
                  "canonicalReference": "server!VoxelsColliderOptions:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "customColliderOptions",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!BlockTypeOptions#halfExtents:member",
              "docComment": "/**\n * The half extents size of the block type.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "halfExtents?: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "halfExtents",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!BlockTypeOptions#id:member",
              "docComment": "/**\n * The unique numeric identifier for the block type.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "id: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "id",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!BlockTypeOptions#isLiquid:member",
              "docComment": "/**\n * Whether the block type is a liquid.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "isLiquid?: "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "isLiquid",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!BlockTypeOptions#name:member",
              "docComment": "/**\n * The name of the block type.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "name: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "name",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!BlockTypeOptions#textureUri:member",
              "docComment": "/**\n * The URI of the texture asset for the block type.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "textureUri: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "textureUri",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            }
          ],
          "extendsTokenRanges": []
        },
        {
          "kind": "Class",
          "canonicalReference": "server!BlockTypeRegistry:class",
          "docComment": "/**\n * Manages known block types in a world.\n *\n * @remarks\n *\n * Block type registries are created internally as a singleton for each {@link World} instance in a game server. A block type registry allows you to register and retrieve block types by their unique id for a world.\n *\n * <h2>Events</h2>\n *\n * This class is an EventRouter, and instances of it emit events with payloads listed under {@link BlockTypeRegistryEventPayloads}\n *\n * The constructor for this class is marked as internal. Third-party code should not call the constructor directly or create subclasses that extend the `BlockTypeRegistry` class.\n *\n * @example\n * ```typescript\n * world.blockTypeRegistry.registerGenericBlockType({\n *   id: 15,\n *   textureUri: 'textures/dirt.png',\n *   name: 'Dirt',\n * });\n * ```\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export default class BlockTypeRegistry extends "
            },
            {
              "kind": "Reference",
              "text": "EventRouter",
              "canonicalReference": "server!EventRouter:class"
            },
            {
              "kind": "Content",
              "text": " implements "
            },
            {
              "kind": "Reference",
              "text": "protocol.Serializable",
              "canonicalReference": "@hytopia.com/server-protocol!Serializable:interface"
            },
            {
              "kind": "Content",
              "text": " "
            }
          ],
          "fileUrlPath": "src/worlds/blocks/BlockTypeRegistry.ts",
          "releaseTag": "Public",
          "isAbstract": false,
          "name": "BlockTypeRegistry",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "Method",
              "canonicalReference": "server!BlockTypeRegistry#getAllBlockTypes:member(1)",
              "docComment": "/**\n * Get all registered block types.\n *\n * @returns An array of all registered block types.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "getAllBlockTypes(): "
                },
                {
                  "kind": "Reference",
                  "text": "BlockType",
                  "canonicalReference": "server!BlockType:class"
                },
                {
                  "kind": "Content",
                  "text": "[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "getAllBlockTypes"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!BlockTypeRegistry#getBlockType:member(1)",
              "docComment": "/**\n * Get a registered block type by its id.\n *\n * @param id - The id of the block type to get.\n *\n * @returns The block type with the given id.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "getBlockType(id: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "BlockType",
                  "canonicalReference": "server!BlockType:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "id",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "getBlockType"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!BlockTypeRegistry#registerBlockType:member(1)",
              "docComment": "/**\n * Register a block type.\n *\n * @param blockType - The block type to register.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "registerBlockType(blockType: "
                },
                {
                  "kind": "Reference",
                  "text": "BlockType",
                  "canonicalReference": "server!BlockType:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "blockType",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "registerBlockType"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!BlockTypeRegistry#registerGenericBlockType:member(1)",
              "docComment": "/**\n * Register a generic block type.\n *\n * @param blockTypeOptions - The options for the block type.\n *\n * @returns The registered block type.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "registerGenericBlockType(blockTypeOptions: "
                },
                {
                  "kind": "Reference",
                  "text": "BlockTypeOptions",
                  "canonicalReference": "server!BlockTypeOptions:interface"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "BlockType",
                  "canonicalReference": "server!BlockType:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "blockTypeOptions",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "registerGenericBlockType"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!BlockTypeRegistry#world:member",
              "docComment": "/**\n * The world the block type registry is for.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get world(): "
                },
                {
                  "kind": "Reference",
                  "text": "World",
                  "canonicalReference": "server!World:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "world",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            }
          ],
          "extendsTokenRange": {
            "startIndex": 1,
            "endIndex": 2
          },
          "implementsTokenRanges": [
            {
              "startIndex": 3,
              "endIndex": 4
            }
          ]
        },
        {
          "kind": "Enum",
          "canonicalReference": "server!BlockTypeRegistryEvent:enum",
          "docComment": "/**\n * Event types a BlockTypeRegistry instance can emit. See {@link BlockTypeRegistryEventPayloads} for the payloads.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export declare enum BlockTypeRegistryEvent "
            }
          ],
          "fileUrlPath": "src/worlds/blocks/BlockTypeRegistry.ts",
          "releaseTag": "Public",
          "name": "BlockTypeRegistryEvent",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "EnumMember",
              "canonicalReference": "server!BlockTypeRegistryEvent.REGISTER_BLOCK_TYPE:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "REGISTER_BLOCK_TYPE = "
                },
                {
                  "kind": "Content",
                  "text": "\"BLOCK_TYPE_REGISTRY.REGISTER_BLOCK_TYPE\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "REGISTER_BLOCK_TYPE"
            }
          ]
        },
        {
          "kind": "Interface",
          "canonicalReference": "server!BlockTypeRegistryEventPayloads:interface",
          "docComment": "/**\n * Event payloads for BlockTypeRegistry emitted events.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export interface BlockTypeRegistryEventPayloads "
            }
          ],
          "fileUrlPath": "src/worlds/blocks/BlockTypeRegistry.ts",
          "releaseTag": "Public",
          "name": "BlockTypeRegistryEventPayloads",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!BlockTypeRegistryEventPayloads#\"BLOCK_TYPE_REGISTRY.REGISTER_BLOCK_TYPE\":member",
              "docComment": "/**\n * Emitted when a block type is registered.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "BlockTypeRegistryEvent.REGISTER_BLOCK_TYPE",
                  "canonicalReference": "server!BlockTypeRegistryEvent.REGISTER_BLOCK_TYPE:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        blockTypeRegistry: "
                },
                {
                  "kind": "Reference",
                  "text": "BlockTypeRegistry",
                  "canonicalReference": "server!BlockTypeRegistry:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        id: number;\n        blockType: "
                },
                {
                  "kind": "Reference",
                  "text": "BlockType",
                  "canonicalReference": "server!BlockType:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"BLOCK_TYPE_REGISTRY.REGISTER_BLOCK_TYPE\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 8
              }
            }
          ],
          "extendsTokenRanges": []
        },
        {
          "kind": "Interface",
          "canonicalReference": "server!CapsuleColliderOptions:interface",
          "docComment": "/**\n * The options for a capsule collider.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export interface CapsuleColliderOptions extends "
            },
            {
              "kind": "Reference",
              "text": "BaseColliderOptions",
              "canonicalReference": "server!BaseColliderOptions:interface"
            },
            {
              "kind": "Content",
              "text": " "
            }
          ],
          "fileUrlPath": "src/worlds/physics/Collider.ts",
          "releaseTag": "Public",
          "name": "CapsuleColliderOptions",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!CapsuleColliderOptions#halfHeight:member",
              "docComment": "/**\n * The half height of the capsule collider.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "halfHeight?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "halfHeight",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!CapsuleColliderOptions#radius:member",
              "docComment": "/**\n * The radius of the capsule collider.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "radius?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "radius",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!CapsuleColliderOptions#shape:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "shape: "
                },
                {
                  "kind": "Reference",
                  "text": "ColliderShape.CAPSULE",
                  "canonicalReference": "server!ColliderShape.CAPSULE:member"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "shape",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            }
          ],
          "extendsTokenRanges": [
            {
              "startIndex": 1,
              "endIndex": 2
            }
          ]
        },
        {
          "kind": "Enum",
          "canonicalReference": "server!ChatEvent:enum",
          "docComment": "/**\n * Event types a ChatManager instance can emit. See {@link ChatEventPayloads} for the payloads.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export declare enum ChatEvent "
            }
          ],
          "fileUrlPath": "src/worlds/chat/ChatManager.ts",
          "releaseTag": "Public",
          "name": "ChatEvent",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "EnumMember",
              "canonicalReference": "server!ChatEvent.BROADCAST_MESSAGE:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "BROADCAST_MESSAGE = "
                },
                {
                  "kind": "Content",
                  "text": "\"CHAT.BROADCAST_MESSAGE\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "BROADCAST_MESSAGE"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!ChatEvent.PLAYER_MESSAGE:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "PLAYER_MESSAGE = "
                },
                {
                  "kind": "Content",
                  "text": "\"CHAT.PLAYER_MESSAGE\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "PLAYER_MESSAGE"
            }
          ]
        },
        {
          "kind": "Interface",
          "canonicalReference": "server!ChatEventPayloads:interface",
          "docComment": "/**\n * Event payloads for ChatManager emitted events.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export interface ChatEventPayloads "
            }
          ],
          "fileUrlPath": "src/worlds/chat/ChatManager.ts",
          "releaseTag": "Public",
          "name": "ChatEventPayloads",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ChatEventPayloads#\"CHAT.BROADCAST_MESSAGE\":member",
              "docComment": "/**\n * Emitted when a broadcast message is sent.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "ChatEvent.BROADCAST_MESSAGE",
                  "canonicalReference": "server!ChatEvent.BROADCAST_MESSAGE:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        player: "
                },
                {
                  "kind": "Reference",
                  "text": "Player",
                  "canonicalReference": "server!Player:class"
                },
                {
                  "kind": "Content",
                  "text": " | undefined;\n        message: string;\n        color?: string;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"CHAT.BROADCAST_MESSAGE\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ChatEventPayloads#\"CHAT.PLAYER_MESSAGE\":member",
              "docComment": "/**\n * Emitted when a message is sent to a specific player.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "ChatEvent.PLAYER_MESSAGE",
                  "canonicalReference": "server!ChatEvent.PLAYER_MESSAGE:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        player: "
                },
                {
                  "kind": "Reference",
                  "text": "Player",
                  "canonicalReference": "server!Player:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        message: string;\n        color?: string;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"CHAT.PLAYER_MESSAGE\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            }
          ],
          "extendsTokenRanges": []
        },
        {
          "kind": "Class",
          "canonicalReference": "server!ChatManager:class",
          "docComment": "/**\n * Manages chat and commands in a world.\n *\n * @remarks\n *\n * The ChatManager is created internally as a singleton for each {@link World} instance in a game server. The ChatManager allows you to broadcast messages, send messages to specific players, and register commands that can be used in chat to execute game logic.\n *\n * <h2>Events</h2>\n *\n * This class is an EventRouter, and instances of it emit events with payloads listed under {@link ChatEventPayloads}\n *\n * The constructor for this class is marked as internal. Third-party code should not call the constructor directly or create subclasses that extend the `ChatManager` class.\n *\n * @example\n * ```typescript\n * world.chatManager.registerCommand('/kick', (player, args, message) => {\n *   const admins = [ 'arkdev', 'testuser123' ];\n *   if (admins.includes(player.username)) {\n *     const targetUsername = args[0];\n *     const targetPlayer = world.playerManager.getConnectedPlayerByUsername(targetUsername);\n *\n *     if (targetPlayer) {\n *       targetPlayer.disconnect();\n *     }\n *   }\n * });\n * ```\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export default class ChatManager extends "
            },
            {
              "kind": "Reference",
              "text": "EventRouter",
              "canonicalReference": "server!EventRouter:class"
            },
            {
              "kind": "Content",
              "text": " "
            }
          ],
          "fileUrlPath": "src/worlds/chat/ChatManager.ts",
          "releaseTag": "Public",
          "isAbstract": false,
          "name": "ChatManager",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "Method",
              "canonicalReference": "server!ChatManager#registerCommand:member(1)",
              "docComment": "/**\n * Register a command and its callback.\n *\n * @param command - The command to register.\n *\n * @param callback - The callback function to execute when the command is used.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "registerCommand(command: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": ", callback: "
                },
                {
                  "kind": "Reference",
                  "text": "CommandCallback",
                  "canonicalReference": "server!CommandCallback:type"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 5,
                "endIndex": 6
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "command",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "callback",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "registerCommand"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!ChatManager#sendBroadcastMessage:member(1)",
              "docComment": "/**\n * Send a system broadcast message to all players in the world.\n *\n * @param message - The message to send.\n *\n * @param color - The color of the message as a hex color code, excluding #.\n *\n * @example\n * ```typescript\n * chatManager.sendBroadcastMessage('Hello, world!', 'FF00AA');\n * ```\n *\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "sendBroadcastMessage(message: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": ", color?: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 5,
                "endIndex": 6
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "message",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "color",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": true
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "sendBroadcastMessage"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!ChatManager#sendPlayerMessage:member(1)",
              "docComment": "/**\n * Send a system message to a specific player, only visible to them.\n *\n * @param player - The player to send the message to.\n *\n * @param message - The message to send.\n *\n * @param color - The color of the message as a hex color code, excluding #.\n *\n * @example\n * ```typescript\n * chatManager.sendPlayerMessage(player, 'Hello, player!', 'FF00AA');\n * ```\n *\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "sendPlayerMessage(player: "
                },
                {
                  "kind": "Reference",
                  "text": "Player",
                  "canonicalReference": "server!Player:class"
                },
                {
                  "kind": "Content",
                  "text": ", message: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": ", color?: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 7,
                "endIndex": 8
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "player",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "message",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "color",
                  "parameterTypeTokenRange": {
                    "startIndex": 5,
                    "endIndex": 6
                  },
                  "isOptional": true
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "sendPlayerMessage"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!ChatManager#unregisterCommand:member(1)",
              "docComment": "/**\n * Unregister a command.\n *\n * @param command - The command to unregister.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "unregisterCommand(command: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "command",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "unregisterCommand"
            }
          ],
          "extendsTokenRange": {
            "startIndex": 1,
            "endIndex": 2
          },
          "implementsTokenRanges": []
        },
        {
          "kind": "Class",
          "canonicalReference": "server!Chunk:class",
          "docComment": "/**\n * A 16^3 chunk of blocks. Used to represent a world's terrain.\n *\n * @remarks\n *\n * Chunks make up the bulk of the terrain in a world. Chunks are fixed size, each containing 16^3 possible blocks as a 16x16x16 cube. Chunks are primarily a data structure used by {@link ChunkLattice} to represent a world's terrain. Chunks store their internal block coordinates in local space, meaning local coordinates x: 0...15, y: 0...15, z: 0...15.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export default class Chunk implements "
            },
            {
              "kind": "Reference",
              "text": "protocol.Serializable",
              "canonicalReference": "@hytopia.com/server-protocol!Serializable:interface"
            },
            {
              "kind": "Content",
              "text": " "
            }
          ],
          "fileUrlPath": "src/worlds/blocks/Chunk.ts",
          "releaseTag": "Public",
          "isAbstract": false,
          "name": "Chunk",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "Constructor",
              "canonicalReference": "server!Chunk:constructor(1)",
              "docComment": "/**\n * Creates a new chunk instance.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "constructor(originCoordinate: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ");"
                }
              ],
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "originCoordinate",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ]
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Chunk.blockIndexToLocalCoordinate:member(1)",
              "docComment": "/**\n * Convert a block index to a local coordinate.\n *\n * @param index - The index of the block to convert.\n *\n * @returns The local coordinate of the block.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "static blockIndexToLocalCoordinate(index: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": true,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "index",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "blockIndexToLocalCoordinate"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Chunk#blocks:member",
              "docComment": "/**\n * The blocks in the chunk as a flat Uint8Array[4096], each index as 0 or a block type id.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get blocks(): "
                },
                {
                  "kind": "Reference",
                  "text": "Readonly",
                  "canonicalReference": "!Readonly:type"
                },
                {
                  "kind": "Content",
                  "text": "<"
                },
                {
                  "kind": "Reference",
                  "text": "Uint8Array",
                  "canonicalReference": "!Uint8Array:interface"
                },
                {
                  "kind": "Content",
                  "text": ">"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "blocks",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 5
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Chunk#getBlockId:member(1)",
              "docComment": "/**\n * Get the block type id at a specific local coordinate.\n *\n * @param localCoordinate - The local coordinate of the block to get.\n *\n * @returns The block type id.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "getBlockId(localCoordinate: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "localCoordinate",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "getBlockId"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Chunk.globalCoordinateToLocalCoordinate:member(1)",
              "docComment": "/**\n * Convert a global coordinate to a local coordinate.\n *\n * @param globalCoordinate - The global coordinate to convert.\n *\n * @returns The local coordinate.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "static globalCoordinateToLocalCoordinate(globalCoordinate: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": true,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "globalCoordinate",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "globalCoordinateToLocalCoordinate"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Chunk.globalCoordinateToOriginCoordinate:member(1)",
              "docComment": "/**\n * Convert a global coordinate to an origin coordinate.\n *\n * @param globalCoordinate - The global coordinate to convert.\n *\n * @returns The origin coordinate.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "static globalCoordinateToOriginCoordinate(globalCoordinate: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": true,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "globalCoordinate",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "globalCoordinateToOriginCoordinate"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Chunk#hasBlock:member(1)",
              "docComment": "/**\n * Check if a block exists at a specific local coordinate.\n *\n * @param localCoordinate - The local coordinate of the block to check.\n *\n * @returns Whether a block exists.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "hasBlock(localCoordinate: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "localCoordinate",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "hasBlock"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Chunk#originCoordinate:member",
              "docComment": "/**\n * The origin coordinate of the chunk.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get originCoordinate(): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "originCoordinate",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            }
          ],
          "implementsTokenRanges": [
            {
              "startIndex": 1,
              "endIndex": 2
            }
          ]
        },
        {
          "kind": "Class",
          "canonicalReference": "server!ChunkLattice:class",
          "docComment": "/**\n * A lattice of chunks that represent a world's terrain.\n *\n * @remarks\n *\n * The ChunkLattice lattice tracks the current terrain of a world, comprised of {@link Chunk} instances.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export default class ChunkLattice extends "
            },
            {
              "kind": "Reference",
              "text": "EventRouter",
              "canonicalReference": "server!EventRouter:class"
            },
            {
              "kind": "Content",
              "text": " "
            }
          ],
          "fileUrlPath": "src/worlds/blocks/ChunkLattice.ts",
          "releaseTag": "Public",
          "isAbstract": false,
          "name": "ChunkLattice",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "Constructor",
              "canonicalReference": "server!ChunkLattice:constructor(1)",
              "docComment": "/**\n * Creates a new chunk lattice instance.\n *\n * @param world - The world the chunk lattice is for.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "constructor(world: "
                },
                {
                  "kind": "Reference",
                  "text": "World",
                  "canonicalReference": "server!World:class"
                },
                {
                  "kind": "Content",
                  "text": ");"
                }
              ],
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "world",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ]
            },
            {
              "kind": "Property",
              "canonicalReference": "server!ChunkLattice#chunkCount:member",
              "docComment": "/**\n * The number of chunks in the lattice.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get chunkCount(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "chunkCount",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!ChunkLattice#clear:member(1)",
              "docComment": "/**\n * Removes and clears all chunks and their blocks from the lattice.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "clear(): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "clear"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!ChunkLattice#getAllChunks:member(1)",
              "docComment": "/**\n * Get all chunks in the lattice.\n *\n * @returns An array of all chunks in the lattice.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "getAllChunks(): "
                },
                {
                  "kind": "Reference",
                  "text": "Chunk",
                  "canonicalReference": "server!Chunk:class"
                },
                {
                  "kind": "Content",
                  "text": "[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "getAllChunks"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!ChunkLattice#getBlockId:member(1)",
              "docComment": "/**\n * Get the block type id at a specific global coordinate.\n *\n * @param globalCoordinate - The global coordinate of the block to get.\n *\n * @returns The block type id, 0 if no block is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "getBlockId(globalCoordinate: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "globalCoordinate",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "getBlockId"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!ChunkLattice#getBlockType:member(1)",
              "docComment": "/**\n * Get the block type at a specific global coordinate.\n *\n * @param globalCoordinate - The global coordinate of the block to get.\n *\n * @returns The block type, null if no block is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "getBlockType(globalCoordinate: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "BlockType",
                  "canonicalReference": "server!BlockType:class"
                },
                {
                  "kind": "Content",
                  "text": " | null"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 5
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "globalCoordinate",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "getBlockType"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!ChunkLattice#getBlockTypeCount:member(1)",
              "docComment": "/**\n * Get the number of blocks of a specific block type in the lattice.\n *\n * @param blockTypeId - The block type id to get the count of.\n *\n * @returns The number of blocks of the block type.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "getBlockTypeCount(blockTypeId: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "blockTypeId",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "getBlockTypeCount"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!ChunkLattice#getChunk:member(1)",
              "docComment": "/**\n * Get the chunk that contains the given global coordinate.\n *\n * @param globalCoordinate - The global coordinate to get the chunk for.\n *\n * @returns The chunk that contains the given global coordinate or undefined if not found.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "getChunk(globalCoordinate: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Chunk",
                  "canonicalReference": "server!Chunk:class"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 5
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "globalCoordinate",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "getChunk"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!ChunkLattice#getOrCreateChunk:member(1)",
              "docComment": "/**\n * Get the chunk for a given global coordinate.\n *\n * @param globalCoordinate - The global coordinate of the chunk to get.\n *\n * @returns The chunk at the given global coordinate or undefined if not found.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "getOrCreateChunk(globalCoordinate: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Chunk",
                  "canonicalReference": "server!Chunk:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "globalCoordinate",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "getOrCreateChunk"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!ChunkLattice#hasBlock:member(1)",
              "docComment": "/**\n * Check if a block exists at a specific global coordinate.\n *\n * @param globalCoordinate - The global coordinate of the block to check.\n *\n * @returns Whether a block exists.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "hasBlock(globalCoordinate: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "globalCoordinate",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "hasBlock"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!ChunkLattice#hasChunk:member(1)",
              "docComment": "/**\n * Check if a chunk exists for a given global coordinate.\n *\n * @param globalCoordinate - The global coordinate of the chunk to check.\n *\n * @returns Whether the chunk exists.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "hasChunk(globalCoordinate: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "globalCoordinate",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "hasChunk"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!ChunkLattice#setBlock:member(1)",
              "docComment": "/**\n * Set the block at a global coordinate by block type id, automatically creating a chunk if it doesn't exist. Use block type id 0 for air (to remove a block).\n *\n * @param globalCoordinate - The global coordinate of the block to set.\n *\n * @param blockTypeId - The block type id to set. Use 0 to remove the block and replace with air.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setBlock(globalCoordinate: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ", blockTypeId: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 5,
                "endIndex": 6
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "globalCoordinate",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "blockTypeId",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setBlock"
            }
          ],
          "extendsTokenRange": {
            "startIndex": 1,
            "endIndex": 2
          },
          "implementsTokenRanges": []
        },
        {
          "kind": "Enum",
          "canonicalReference": "server!ChunkLatticeEvent:enum",
          "docComment": "/**\n * Event types a ChunkLattice instance can emit. See {@link ChunkLatticeEventPayloads} for the payloads.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export declare enum ChunkLatticeEvent "
            }
          ],
          "fileUrlPath": "src/worlds/blocks/ChunkLattice.ts",
          "releaseTag": "Public",
          "name": "ChunkLatticeEvent",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "EnumMember",
              "canonicalReference": "server!ChunkLatticeEvent.REMOVE_CHUNK:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "REMOVE_CHUNK = "
                },
                {
                  "kind": "Content",
                  "text": "\"CHUNK_LATTICE.REMOVE_CHUNK\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "REMOVE_CHUNK"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!ChunkLatticeEvent.SET_BLOCK:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_BLOCK = "
                },
                {
                  "kind": "Content",
                  "text": "\"CHUNK_LATTICE.SET_BLOCK\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_BLOCK"
            }
          ]
        },
        {
          "kind": "Interface",
          "canonicalReference": "server!ChunkLatticeEventPayloads:interface",
          "docComment": "/**\n * Event payloads for ChunkLattice emitted events.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export interface ChunkLatticeEventPayloads "
            }
          ],
          "fileUrlPath": "src/worlds/blocks/ChunkLattice.ts",
          "releaseTag": "Public",
          "name": "ChunkLatticeEventPayloads",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ChunkLatticeEventPayloads#\"CHUNK_LATTICE.REMOVE_CHUNK\":member",
              "docComment": "/**\n * Emitted when a chunk is removed from the lattice.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "ChunkLatticeEvent.REMOVE_CHUNK",
                  "canonicalReference": "server!ChunkLatticeEvent.REMOVE_CHUNK:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        chunkLattice: "
                },
                {
                  "kind": "Reference",
                  "text": "ChunkLattice",
                  "canonicalReference": "server!ChunkLattice:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        chunk: "
                },
                {
                  "kind": "Reference",
                  "text": "Chunk",
                  "canonicalReference": "server!Chunk:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"CHUNK_LATTICE.REMOVE_CHUNK\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 8
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ChunkLatticeEventPayloads#\"CHUNK_LATTICE.SET_BLOCK\":member",
              "docComment": "/**\n * Emitted when a block is set in the lattice.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "ChunkLatticeEvent.SET_BLOCK",
                  "canonicalReference": "server!ChunkLatticeEvent.SET_BLOCK:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        chunkLattice: "
                },
                {
                  "kind": "Reference",
                  "text": "ChunkLattice",
                  "canonicalReference": "server!ChunkLattice:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        chunk: "
                },
                {
                  "kind": "Reference",
                  "text": "Chunk",
                  "canonicalReference": "server!Chunk:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        globalCoordinate: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";\n        localCoordinate: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";\n        blockTypeId: number;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"CHUNK_LATTICE.SET_BLOCK\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 12
              }
            }
          ],
          "extendsTokenRanges": []
        },
        {
          "kind": "Enum",
          "canonicalReference": "server!CoefficientCombineRule:enum",
          "docComment": "/**\n * The coefficient for friction or bounciness combine rule.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export declare enum CoefficientCombineRule "
            }
          ],
          "fileUrlPath": "src/worlds/physics/Collider.ts",
          "releaseTag": "Public",
          "name": "CoefficientCombineRule",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "EnumMember",
              "canonicalReference": "server!CoefficientCombineRule.Average:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "Average = "
                },
                {
                  "kind": "Content",
                  "text": "0"
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "Average"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!CoefficientCombineRule.Max:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "Max = "
                },
                {
                  "kind": "Content",
                  "text": "3"
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "Max"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!CoefficientCombineRule.Min:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "Min = "
                },
                {
                  "kind": "Content",
                  "text": "1"
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "Min"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!CoefficientCombineRule.Multiply:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "Multiply = "
                },
                {
                  "kind": "Content",
                  "text": "2"
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "Multiply"
            }
          ]
        },
        {
          "kind": "Class",
          "canonicalReference": "server!Collider:class",
          "docComment": "/**\n * Represents a collider in a world's physics simulation.\n *\n * @remarks\n *\n * Colliders make up the foundation of the physical interactions in a world. They are highly configurable and have many aspects that can be adjusted both before simulation and while simulated. Colliders will most often be used through passing {@link ColliderOptions} to a {@link RigidBody} or an entity's {@link EntityOptions}.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export default class Collider extends "
            },
            {
              "kind": "Reference",
              "text": "EventRouter",
              "canonicalReference": "server!EventRouter:class"
            },
            {
              "kind": "Content",
              "text": " "
            }
          ],
          "fileUrlPath": "src/worlds/physics/Collider.ts",
          "releaseTag": "Public",
          "isAbstract": false,
          "name": "Collider",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "Constructor",
              "canonicalReference": "server!Collider:constructor(1)",
              "docComment": "/**\n * Constructs a new instance of the `Collider` class\n *\n * @param colliderOptions - The options for the collider instance.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "constructor(colliderOptions: "
                },
                {
                  "kind": "Reference",
                  "text": "ColliderOptions",
                  "canonicalReference": "server!ColliderOptions:type"
                },
                {
                  "kind": "Content",
                  "text": ");"
                }
              ],
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "colliderOptions",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ]
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Collider#addToSimulation:member(1)",
              "docComment": "/**\n * Adds the collider to the simulation.\n *\n * @param simulation - The simulation to add the collider to.\n *\n * @param parentRigidBody - The parent rigid body of the collider.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "addToSimulation(simulation: "
                },
                {
                  "kind": "Reference",
                  "text": "Simulation",
                  "canonicalReference": "server!Simulation:class"
                },
                {
                  "kind": "Content",
                  "text": ", parentRigidBody?: "
                },
                {
                  "kind": "Reference",
                  "text": "RigidBody",
                  "canonicalReference": "server!RigidBody:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 5,
                "endIndex": 6
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "simulation",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "parentRigidBody",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": true
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "addToSimulation"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Collider#bounciness:member",
              "docComment": "/**\n * The bounciness of the collider.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get bounciness(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "bounciness",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Collider#bouncinessCombineRule:member",
              "docComment": "/**\n * The bounciness combine rule of the collider.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get bouncinessCombineRule(): "
                },
                {
                  "kind": "Reference",
                  "text": "CoefficientCombineRule",
                  "canonicalReference": "server!CoefficientCombineRule:enum"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "bouncinessCombineRule",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Collider#collisionGroups:member",
              "docComment": "/**\n * The collision groups the collider belongs to.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get collisionGroups(): "
                },
                {
                  "kind": "Reference",
                  "text": "CollisionGroups",
                  "canonicalReference": "server!CollisionGroups:type"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "collisionGroups",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Collider#enableCollisionEvents:member(1)",
              "docComment": "/**\n * Enables or disables collision events for the collider. This is automatically enabled if an on collision callback is set.\n *\n * @param enabled - Whether collision events are enabled.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "enableCollisionEvents(enabled: "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "enabled",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "enableCollisionEvents"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Collider#enableContactForceEvents:member(1)",
              "docComment": "/**\n * Enables or disables contact force events for the collider. This is automatically enabled if an on contact force callback is set.\n *\n * @param enabled - Whether contact force events are enabled.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "enableContactForceEvents(enabled: "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "enabled",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "enableContactForceEvents"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Collider#friction:member",
              "docComment": "/**\n * The friction of the collider.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get friction(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "friction",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Collider#frictionCombineRule:member",
              "docComment": "/**\n * The friction combine rule of the collider.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get frictionCombineRule(): "
                },
                {
                  "kind": "Reference",
                  "text": "CoefficientCombineRule",
                  "canonicalReference": "server!CoefficientCombineRule:enum"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "frictionCombineRule",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Collider#isEnabled:member",
              "docComment": "/**\n * Whether the collider is enabled.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get isEnabled(): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "isEnabled",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Collider#isRemoved:member",
              "docComment": "/**\n * Whether the collider has been removed from the simulation.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get isRemoved(): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "isRemoved",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Collider#isSensor:member",
              "docComment": "/**\n * Whether the collider is a sensor.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get isSensor(): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "isSensor",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Collider#isSimulated:member",
              "docComment": "/**\n * Whether the collider is simulated.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get isSimulated(): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "isSimulated",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Collider.optionsFromBlockHalfExtents:member(1)",
              "docComment": "/**\n * Creates a collider options object from a block's half extents.\n *\n * @param halfExtents - The half extents of the block.\n *\n * @returns The collider options object.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "static optionsFromBlockHalfExtents(halfExtents: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "ColliderOptions",
                  "canonicalReference": "server!ColliderOptions:type"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": true,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "halfExtents",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "optionsFromBlockHalfExtents"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Collider.optionsFromModelUri:member(1)",
              "docComment": "/**\n * Creates a collider options object from a modelUri with best approximate shape and size.\n *\n * @param modelUri - The URI of the model.\n *\n * @param scale - The scale of the model.\n *\n * @param preferredShape - The preferred shape to use for the collider.\n *\n * @returns The collider options object.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "static optionsFromModelUri(modelUri: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": ", scale?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ", preferredShape?: "
                },
                {
                  "kind": "Reference",
                  "text": "ColliderShape",
                  "canonicalReference": "server!ColliderShape:enum"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "ColliderOptions",
                  "canonicalReference": "server!ColliderOptions:type"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": true,
              "returnTypeTokenRange": {
                "startIndex": 7,
                "endIndex": 8
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "modelUri",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "scale",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": true
                },
                {
                  "parameterName": "preferredShape",
                  "parameterTypeTokenRange": {
                    "startIndex": 5,
                    "endIndex": 6
                  },
                  "isOptional": true
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "optionsFromModelUri"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Collider#parentRigidBody:member",
              "docComment": "/**\n * The parent rigid body of the collider.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get parentRigidBody(): "
                },
                {
                  "kind": "Reference",
                  "text": "RigidBody",
                  "canonicalReference": "server!RigidBody:class"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "parentRigidBody",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Collider#rawCollider:member",
              "docComment": "/**\n * The raw collider object from the Rapier physics engine.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get rawCollider(): "
                },
                {
                  "kind": "Reference",
                  "text": "RawCollider",
                  "canonicalReference": "server!RawCollider:type"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "rawCollider",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Collider#rawShape:member",
              "docComment": "/**\n * The raw shape object from the Rapier physics engine.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get rawShape(): "
                },
                {
                  "kind": "Reference",
                  "text": "RawShape",
                  "canonicalReference": "server!RawShape:type"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "rawShape",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Collider#relativePosition:member",
              "docComment": "/**\n * The relative position of the collider to its parent rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get relativePosition(): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "relativePosition",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Collider#relativeRotation:member",
              "docComment": "/**\n * The relative rotation of the collider.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get relativeRotation(): "
                },
                {
                  "kind": "Reference",
                  "text": "QuaternionLike",
                  "canonicalReference": "server!QuaternionLike:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "relativeRotation",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Collider#removeFromSimulation:member(1)",
              "docComment": "/**\n * Removes the collider from the simulation.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "removeFromSimulation(): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "removeFromSimulation"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Collider#scale:member(1)",
              "docComment": "/**\n * Scales the collider by the given scalar. Only ball, block, capsule, cone, cylinder, round cylinder are supported.\n *\n * @param scalar - The scalar to scale the collider by.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "scale(scalar: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "scalar",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "scale"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Collider#setBounciness:member(1)",
              "docComment": "/**\n * Sets the bounciness of the collider.\n *\n * @param bounciness - The bounciness of the collider.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setBounciness(bounciness: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "bounciness",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setBounciness"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Collider#setBouncinessCombineRule:member(1)",
              "docComment": "/**\n * Sets the bounciness combine rule of the collider.\n *\n * @param bouncinessCombineRule - The bounciness combine rule of the collider.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setBouncinessCombineRule(bouncinessCombineRule: "
                },
                {
                  "kind": "Reference",
                  "text": "CoefficientCombineRule",
                  "canonicalReference": "server!CoefficientCombineRule:enum"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "bouncinessCombineRule",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setBouncinessCombineRule"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Collider#setCollisionGroups:member(1)",
              "docComment": "/**\n * Sets the collision groups of the collider.\n *\n * @param collisionGroups - The collision groups of the collider.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setCollisionGroups(collisionGroups: "
                },
                {
                  "kind": "Reference",
                  "text": "CollisionGroups",
                  "canonicalReference": "server!CollisionGroups:type"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "collisionGroups",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setCollisionGroups"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Collider#setEnabled:member(1)",
              "docComment": "/**\n * Sets whether the collider is enabled.\n *\n * @param enabled - Whether the collider is enabled.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setEnabled(enabled: "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "enabled",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setEnabled"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Collider#setFriction:member(1)",
              "docComment": "/**\n * Sets the friction of the collider.\n *\n * @param friction - The friction of the collider.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setFriction(friction: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "friction",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setFriction"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Collider#setFrictionCombineRule:member(1)",
              "docComment": "/**\n * Sets the friction combine rule of the collider.\n *\n * @param frictionCombineRule - The friction combine rule of the collider.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setFrictionCombineRule(frictionCombineRule: "
                },
                {
                  "kind": "Reference",
                  "text": "CoefficientCombineRule",
                  "canonicalReference": "server!CoefficientCombineRule:enum"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "frictionCombineRule",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setFrictionCombineRule"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Collider#setMass:member(1)",
              "docComment": "/**\n * Sets the mass of the collider.\n *\n * @param mass - The mass of the collider.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setMass(mass: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "mass",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setMass"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Collider#setOnCollision:member(1)",
              "docComment": "/**\n * Sets the on collision callback for the collider.\n *\n * @param callback - The on collision callback for the collider.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setOnCollision(callback: "
                },
                {
                  "kind": "Reference",
                  "text": "CollisionCallback",
                  "canonicalReference": "server!CollisionCallback:type"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 4,
                "endIndex": 5
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "callback",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 3
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setOnCollision"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Collider#setRelativePosition:member(1)",
              "docComment": "/**\n * Sets the position of the collider relative to its parent rigid body or the world origin.\n *\n * @remarks\n *\n * Colliders can be added as a child of a rigid body, or to the world directly. This position is relative to the parent rigid body or the world origin.\n *\n * @param position - The relative position of the collider.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setRelativePosition(position: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "position",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setRelativePosition"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Collider#setRelativeRotation:member(1)",
              "docComment": "/**\n * Sets the relative rotation of the collider to its parent rigid body or the world origin.\n *\n * @remarks\n *\n * Colliders can be added as a child of a rigid body, or to the world directly. This rotation is relative to the parent rigid body or the world origin.\n *\n * @param rotation - The relative rotation of the collider.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setRelativeRotation(rotation: "
                },
                {
                  "kind": "Reference",
                  "text": "QuaternionLike",
                  "canonicalReference": "server!QuaternionLike:interface"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "rotation",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setRelativeRotation"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Collider#setSensor:member(1)",
              "docComment": "/**\n * Sets whether the collider is a sensor.\n *\n * @param sensor - Whether the collider is a sensor.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setSensor(sensor: "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "sensor",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setSensor"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Collider#setTag:member(1)",
              "docComment": "/**\n * Sets the tag of the collider.\n *\n * @param tag - The tag of the collider.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setTag(tag: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "tag",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setTag"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Collider#setVoxel:member(1)",
              "docComment": "/**\n * Sets the voxel at the given coordinate as filled or not filled.\n *\n * @param coordinate - The coordinate of the voxel to set.\n *\n * @param filled - True if the voxel at the coordinate should be filled, false if it should be removed.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setVoxel(coordinate: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ", filled: "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 5,
                "endIndex": 6
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "coordinate",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "filled",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setVoxel"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Collider#shape:member",
              "docComment": "/**\n * The shape of the collider.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get shape(): "
                },
                {
                  "kind": "Reference",
                  "text": "ColliderShape",
                  "canonicalReference": "server!ColliderShape:enum"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "shape",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Collider#tag:member",
              "docComment": "/**\n * An arbitrary identifier tag of the collider. Useful for your own logic.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get tag(): "
                },
                {
                  "kind": "Content",
                  "text": "string | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "tag",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            }
          ],
          "extendsTokenRange": {
            "startIndex": 1,
            "endIndex": 2
          },
          "implementsTokenRanges": []
        },
        {
          "kind": "TypeAlias",
          "canonicalReference": "server!ColliderOptions:type",
          "docComment": "/**\n * The options for a collider.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export type ColliderOptions = "
            },
            {
              "kind": "Reference",
              "text": "BallColliderOptions",
              "canonicalReference": "server!BallColliderOptions:interface"
            },
            {
              "kind": "Content",
              "text": " | "
            },
            {
              "kind": "Reference",
              "text": "BlockColliderOptions",
              "canonicalReference": "server!BlockColliderOptions:interface"
            },
            {
              "kind": "Content",
              "text": " | "
            },
            {
              "kind": "Reference",
              "text": "CapsuleColliderOptions",
              "canonicalReference": "server!CapsuleColliderOptions:interface"
            },
            {
              "kind": "Content",
              "text": " | "
            },
            {
              "kind": "Reference",
              "text": "ConeColliderOptions",
              "canonicalReference": "server!ConeColliderOptions:interface"
            },
            {
              "kind": "Content",
              "text": " | "
            },
            {
              "kind": "Reference",
              "text": "CylinderColliderOptions",
              "canonicalReference": "server!CylinderColliderOptions:interface"
            },
            {
              "kind": "Content",
              "text": " | "
            },
            {
              "kind": "Reference",
              "text": "RoundCylinderColliderOptions",
              "canonicalReference": "server!RoundCylinderColliderOptions:interface"
            },
            {
              "kind": "Content",
              "text": " | "
            },
            {
              "kind": "Reference",
              "text": "TrimeshColliderOptions",
              "canonicalReference": "server!TrimeshColliderOptions:interface"
            },
            {
              "kind": "Content",
              "text": " | "
            },
            {
              "kind": "Reference",
              "text": "VoxelsColliderOptions",
              "canonicalReference": "server!VoxelsColliderOptions:interface"
            },
            {
              "kind": "Content",
              "text": " | "
            },
            {
              "kind": "Reference",
              "text": "WedgeColliderOptions",
              "canonicalReference": "server!WedgeColliderOptions:interface"
            },
            {
              "kind": "Content",
              "text": " | "
            },
            {
              "kind": "Reference",
              "text": "NoneColliderOptions",
              "canonicalReference": "server!NoneColliderOptions:interface"
            },
            {
              "kind": "Content",
              "text": ";"
            }
          ],
          "fileUrlPath": "src/worlds/physics/Collider.ts",
          "releaseTag": "Public",
          "name": "ColliderOptions",
          "typeTokenRange": {
            "startIndex": 1,
            "endIndex": 20
          }
        },
        {
          "kind": "Enum",
          "canonicalReference": "server!ColliderShape:enum",
          "docComment": "/**\n * The shapes a collider can be.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export declare enum ColliderShape "
            }
          ],
          "fileUrlPath": "src/worlds/physics/Collider.ts",
          "releaseTag": "Public",
          "name": "ColliderShape",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "EnumMember",
              "canonicalReference": "server!ColliderShape.BALL:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "BALL = "
                },
                {
                  "kind": "Content",
                  "text": "\"ball\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "BALL"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!ColliderShape.BLOCK:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "BLOCK = "
                },
                {
                  "kind": "Content",
                  "text": "\"block\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "BLOCK"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!ColliderShape.CAPSULE:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "CAPSULE = "
                },
                {
                  "kind": "Content",
                  "text": "\"capsule\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "CAPSULE"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!ColliderShape.CONE:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "CONE = "
                },
                {
                  "kind": "Content",
                  "text": "\"cone\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "CONE"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!ColliderShape.CYLINDER:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "CYLINDER = "
                },
                {
                  "kind": "Content",
                  "text": "\"cylinder\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "CYLINDER"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!ColliderShape.NONE:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "NONE = "
                },
                {
                  "kind": "Content",
                  "text": "\"none\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "NONE"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!ColliderShape.ROUND_CYLINDER:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "ROUND_CYLINDER = "
                },
                {
                  "kind": "Content",
                  "text": "\"round-cylinder\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "ROUND_CYLINDER"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!ColliderShape.TRIMESH:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "TRIMESH = "
                },
                {
                  "kind": "Content",
                  "text": "\"trimesh\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "TRIMESH"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!ColliderShape.VOXELS:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "VOXELS = "
                },
                {
                  "kind": "Content",
                  "text": "\"voxels\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "VOXELS"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!ColliderShape.WEDGE:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "WEDGE = "
                },
                {
                  "kind": "Content",
                  "text": "\"wedge\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "WEDGE"
            }
          ]
        },
        {
          "kind": "TypeAlias",
          "canonicalReference": "server!CollisionCallback:type",
          "docComment": "/**\n * A callback function that is called when a collision occurs.\n *\n * @param other - The other object involved in the collision, a block or entity.\n *\n * @param started - Whether the collision has started or ended.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export type CollisionCallback = "
            },
            {
              "kind": "Content",
              "text": "((other: "
            },
            {
              "kind": "Reference",
              "text": "BlockType",
              "canonicalReference": "server!BlockType:class"
            },
            {
              "kind": "Content",
              "text": " | "
            },
            {
              "kind": "Reference",
              "text": "Entity",
              "canonicalReference": "server!Entity:class"
            },
            {
              "kind": "Content",
              "text": ", started: boolean) => void) | ((other: "
            },
            {
              "kind": "Reference",
              "text": "BlockType",
              "canonicalReference": "server!BlockType:class"
            },
            {
              "kind": "Content",
              "text": " | "
            },
            {
              "kind": "Reference",
              "text": "Entity",
              "canonicalReference": "server!Entity:class"
            },
            {
              "kind": "Content",
              "text": ", started: boolean, colliderHandleA: number, colliderHandleB: number) => void)"
            },
            {
              "kind": "Content",
              "text": ";"
            }
          ],
          "fileUrlPath": "src/worlds/physics/ColliderMap.ts",
          "releaseTag": "Public",
          "name": "CollisionCallback",
          "typeTokenRange": {
            "startIndex": 1,
            "endIndex": 10
          }
        },
        {
          "kind": "Enum",
          "canonicalReference": "server!CollisionGroup:enum",
          "docComment": "/**\n * The default collision groups.\n *\n * @remarks\n *\n * The collision groups are used to determine which objects collide and generate collision and contact force events. The default collision groups can be used for most entity and block interactions, but you may want to create your own for more complex scenarios. Up to 15 collision groups can be registered. Collision groups use pairwise filtering using bit masks.\n *\n * This filtering method is based on two 16-bit values: - The belongsTo groups (the 16 left-most bits of `self.0`). - The collidesWith mask (the 16 right-most bits of `self.0`).\n *\n * An interaction is allowed between two filters `a` and `b` two conditions are met simultaneously: - The belongsTo groups of `a` has at least one bit set to `1` in common with the collidesWith mask of `b`. - The belongsTo groups of `b` has at least one bit set to `1` in common with the collidesWith mask of `a`. In other words, interactions are allowed between two filter if the following condition is met:\n * ```\n * ((a >> 16) & b) != 0 && ((b >> 16) & a) != 0\n * ```\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export declare enum CollisionGroup "
            }
          ],
          "fileUrlPath": "src/worlds/physics/CollisionGroupsBuilder.ts",
          "releaseTag": "Public",
          "name": "CollisionGroup",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "EnumMember",
              "canonicalReference": "server!CollisionGroup.ALL:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "ALL = "
                },
                {
                  "kind": "Content",
                  "text": "65535"
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "ALL"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!CollisionGroup.BLOCK:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "BLOCK = "
                },
                {
                  "kind": "Content",
                  "text": "1"
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "BLOCK"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!CollisionGroup.ENTITY:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "ENTITY = "
                },
                {
                  "kind": "Content",
                  "text": "2"
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "ENTITY"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!CollisionGroup.ENTITY_SENSOR:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "ENTITY_SENSOR = "
                },
                {
                  "kind": "Content",
                  "text": "4"
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "ENTITY_SENSOR"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!CollisionGroup.ENVIRONMENT_ENTITY:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "ENVIRONMENT_ENTITY = "
                },
                {
                  "kind": "Content",
                  "text": "8"
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "ENVIRONMENT_ENTITY"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!CollisionGroup.GROUP_1:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "GROUP_1 = "
                },
                {
                  "kind": "Content",
                  "text": "32"
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "GROUP_1"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!CollisionGroup.GROUP_10:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "GROUP_10 = "
                },
                {
                  "kind": "Content",
                  "text": "16384"
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "GROUP_10"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!CollisionGroup.GROUP_11:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "GROUP_11 = "
                },
                {
                  "kind": "Content",
                  "text": "32768"
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "GROUP_11"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!CollisionGroup.GROUP_2:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "GROUP_2 = "
                },
                {
                  "kind": "Content",
                  "text": "64"
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "GROUP_2"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!CollisionGroup.GROUP_3:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "GROUP_3 = "
                },
                {
                  "kind": "Content",
                  "text": "128"
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "GROUP_3"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!CollisionGroup.GROUP_4:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "GROUP_4 = "
                },
                {
                  "kind": "Content",
                  "text": "256"
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "GROUP_4"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!CollisionGroup.GROUP_5:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "GROUP_5 = "
                },
                {
                  "kind": "Content",
                  "text": "512"
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "GROUP_5"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!CollisionGroup.GROUP_6:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "GROUP_6 = "
                },
                {
                  "kind": "Content",
                  "text": "1024"
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "GROUP_6"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!CollisionGroup.GROUP_7:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "GROUP_7 = "
                },
                {
                  "kind": "Content",
                  "text": "2048"
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "GROUP_7"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!CollisionGroup.GROUP_8:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "GROUP_8 = "
                },
                {
                  "kind": "Content",
                  "text": "4096"
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "GROUP_8"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!CollisionGroup.GROUP_9:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "GROUP_9 = "
                },
                {
                  "kind": "Content",
                  "text": "8192"
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "GROUP_9"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!CollisionGroup.PLAYER:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "PLAYER = "
                },
                {
                  "kind": "Content",
                  "text": "16"
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "PLAYER"
            }
          ]
        },
        {
          "kind": "TypeAlias",
          "canonicalReference": "server!CollisionGroups:type",
          "docComment": "/**\n * A set of collision groups.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export type CollisionGroups = "
            },
            {
              "kind": "Content",
              "text": "{\n    belongsTo: "
            },
            {
              "kind": "Reference",
              "text": "CollisionGroup",
              "canonicalReference": "server!CollisionGroup:enum"
            },
            {
              "kind": "Content",
              "text": "[];\n    collidesWith: "
            },
            {
              "kind": "Reference",
              "text": "CollisionGroup",
              "canonicalReference": "server!CollisionGroup:enum"
            },
            {
              "kind": "Content",
              "text": "[];\n}"
            },
            {
              "kind": "Content",
              "text": ";"
            }
          ],
          "fileUrlPath": "src/worlds/physics/CollisionGroupsBuilder.ts",
          "releaseTag": "Public",
          "name": "CollisionGroups",
          "typeTokenRange": {
            "startIndex": 1,
            "endIndex": 6
          }
        },
        {
          "kind": "Class",
          "canonicalReference": "server!CollisionGroupsBuilder:class",
          "docComment": "/**\n * A helper class for building and decoding collision groups.\n *\n * @remarks\n *\n * This class should be used directly with its static methods. You can assign collision groups to colliders of entities and blocks to control optimized collision interactions and filterings between blocks and entities, and entities and other entities.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export default class CollisionGroupsBuilder "
            }
          ],
          "fileUrlPath": "src/worlds/physics/CollisionGroupsBuilder.ts",
          "releaseTag": "Public",
          "isAbstract": false,
          "name": "CollisionGroupsBuilder",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "Method",
              "canonicalReference": "server!CollisionGroupsBuilder.buildRawCollisionGroups:member(1)",
              "docComment": "/**\n * Builds a raw set of collision groups from a set of collision groups.\n *\n * @param collisionGroups - The set of collision groups to build.\n *\n * @returns A raw set of collision groups represented as a 32-bit number.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "static buildRawCollisionGroups(collisionGroups: "
                },
                {
                  "kind": "Reference",
                  "text": "CollisionGroups",
                  "canonicalReference": "server!CollisionGroups:type"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "RawCollisionGroups",
                  "canonicalReference": "server!RawCollisionGroups:type"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": true,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "collisionGroups",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "buildRawCollisionGroups"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!CollisionGroupsBuilder.decodeCollisionGroups:member(1)",
              "docComment": "/**\n * Decodes a set of collision groups into a set of their string equivalents.\n *\n * @param collisionGroups - The set of collision groups to decode.\n *\n * @returns A set of collision groups represented as their string equivalents.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "static decodeCollisionGroups(collisionGroups: "
                },
                {
                  "kind": "Reference",
                  "text": "CollisionGroups",
                  "canonicalReference": "server!CollisionGroups:type"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "DecodedCollisionGroups",
                  "canonicalReference": "server!DecodedCollisionGroups:type"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": true,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "collisionGroups",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "decodeCollisionGroups"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!CollisionGroupsBuilder.decodeRawCollisionGroups:member(1)",
              "docComment": "/**\n * Decodes a raw set of collision groups into a set of collision groups.\n *\n * @param groups - The raw set of collision groups to decode.\n *\n * @returns A set of collision groups.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "static decodeRawCollisionGroups(groups: "
                },
                {
                  "kind": "Reference",
                  "text": "RawCollisionGroups",
                  "canonicalReference": "server!RawCollisionGroups:type"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "CollisionGroups",
                  "canonicalReference": "server!CollisionGroups:type"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": true,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "groups",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "decodeRawCollisionGroups"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!CollisionGroupsBuilder.isDefaultCollisionGroups:member(1)",
              "docComment": "/**\n * Checks if the collision groups are the default collision groups.\n *\n * @param collisionGroups - The set of collision groups to check.\n *\n * @returns Whether the collision groups are the default collision groups.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "static isDefaultCollisionGroups(collisionGroups: "
                },
                {
                  "kind": "Reference",
                  "text": "CollisionGroups",
                  "canonicalReference": "server!CollisionGroups:type"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": true,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "collisionGroups",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "isDefaultCollisionGroups"
            }
          ],
          "implementsTokenRanges": []
        },
        {
          "kind": "TypeAlias",
          "canonicalReference": "server!CommandCallback:type",
          "docComment": "/**\n * A callback function for a chat command.\n *\n * @param player - The player that sent the command.\n *\n * @param args - An array of arguments, comprised of all space separated text after the command.\n *\n * @param message - The full message of the command.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export type CommandCallback = "
            },
            {
              "kind": "Content",
              "text": "(player: "
            },
            {
              "kind": "Reference",
              "text": "Player",
              "canonicalReference": "server!Player:class"
            },
            {
              "kind": "Content",
              "text": ", args: string[], message: string) => void"
            },
            {
              "kind": "Content",
              "text": ";"
            }
          ],
          "fileUrlPath": "src/worlds/chat/ChatManager.ts",
          "releaseTag": "Public",
          "name": "CommandCallback",
          "typeTokenRange": {
            "startIndex": 1,
            "endIndex": 4
          }
        },
        {
          "kind": "Interface",
          "canonicalReference": "server!ConeColliderOptions:interface",
          "docComment": "/**\n * The options for a cone collider.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export interface ConeColliderOptions extends "
            },
            {
              "kind": "Reference",
              "text": "BaseColliderOptions",
              "canonicalReference": "server!BaseColliderOptions:interface"
            },
            {
              "kind": "Content",
              "text": " "
            }
          ],
          "fileUrlPath": "src/worlds/physics/Collider.ts",
          "releaseTag": "Public",
          "name": "ConeColliderOptions",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ConeColliderOptions#halfHeight:member",
              "docComment": "/**\n * The half height of the cone collider.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "halfHeight?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "halfHeight",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ConeColliderOptions#radius:member",
              "docComment": "/**\n * The radius of the cone collider.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "radius?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "radius",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ConeColliderOptions#shape:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "shape: "
                },
                {
                  "kind": "Reference",
                  "text": "ColliderShape.CONE",
                  "canonicalReference": "server!ColliderShape.CONE:member"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "shape",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            }
          ],
          "extendsTokenRanges": [
            {
              "startIndex": 1,
              "endIndex": 2
            }
          ]
        },
        {
          "kind": "TypeAlias",
          "canonicalReference": "server!ContactForceData:type",
          "docComment": "/**\n * Data for contact forces.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export type ContactForceData = "
            },
            {
              "kind": "Content",
              "text": "{\n    totalForce: "
            },
            {
              "kind": "Reference",
              "text": "RAPIER.Vector",
              "canonicalReference": "@dimforge/rapier3d-simd-compat!Vector:interface"
            },
            {
              "kind": "Content",
              "text": ";\n    totalForceMagnitude: number;\n    maxForceDirection: "
            },
            {
              "kind": "Reference",
              "text": "RAPIER.Vector",
              "canonicalReference": "@dimforge/rapier3d-simd-compat!Vector:interface"
            },
            {
              "kind": "Content",
              "text": ";\n    maxForceMagnitude: number;\n}"
            },
            {
              "kind": "Content",
              "text": ";"
            }
          ],
          "fileUrlPath": "src/worlds/physics/Simulation.ts",
          "releaseTag": "Public",
          "name": "ContactForceData",
          "typeTokenRange": {
            "startIndex": 1,
            "endIndex": 6
          }
        },
        {
          "kind": "TypeAlias",
          "canonicalReference": "server!ContactManifold:type",
          "docComment": "/**\n * A contact manifold.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export type ContactManifold = "
            },
            {
              "kind": "Content",
              "text": "{\n    contactPoints: "
            },
            {
              "kind": "Reference",
              "text": "Vector3Like",
              "canonicalReference": "server!Vector3Like:interface"
            },
            {
              "kind": "Content",
              "text": "[];\n    localNormalA: "
            },
            {
              "kind": "Reference",
              "text": "Vector3Like",
              "canonicalReference": "server!Vector3Like:interface"
            },
            {
              "kind": "Content",
              "text": ";\n    localNormalB: "
            },
            {
              "kind": "Reference",
              "text": "Vector3Like",
              "canonicalReference": "server!Vector3Like:interface"
            },
            {
              "kind": "Content",
              "text": ";\n    normal: "
            },
            {
              "kind": "Reference",
              "text": "Vector3Like",
              "canonicalReference": "server!Vector3Like:interface"
            },
            {
              "kind": "Content",
              "text": ";\n}"
            },
            {
              "kind": "Content",
              "text": ";"
            }
          ],
          "fileUrlPath": "src/worlds/physics/Simulation.ts",
          "releaseTag": "Public",
          "name": "ContactManifold",
          "typeTokenRange": {
            "startIndex": 1,
            "endIndex": 10
          }
        },
        {
          "kind": "Interface",
          "canonicalReference": "server!CylinderColliderOptions:interface",
          "docComment": "/**\n * The options for a cylinder collider.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export interface CylinderColliderOptions extends "
            },
            {
              "kind": "Reference",
              "text": "BaseColliderOptions",
              "canonicalReference": "server!BaseColliderOptions:interface"
            },
            {
              "kind": "Content",
              "text": " "
            }
          ],
          "fileUrlPath": "src/worlds/physics/Collider.ts",
          "releaseTag": "Public",
          "name": "CylinderColliderOptions",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!CylinderColliderOptions#halfHeight:member",
              "docComment": "/**\n * The half height of the cylinder collider.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "halfHeight?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "halfHeight",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!CylinderColliderOptions#radius:member",
              "docComment": "/**\n * The radius of the cylinder collider.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "radius?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "radius",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!CylinderColliderOptions#shape:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "shape: "
                },
                {
                  "kind": "Reference",
                  "text": "ColliderShape.CYLINDER",
                  "canonicalReference": "server!ColliderShape.CYLINDER:member"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "shape",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            }
          ],
          "extendsTokenRanges": [
            {
              "startIndex": 1,
              "endIndex": 2
            }
          ]
        },
        {
          "kind": "TypeAlias",
          "canonicalReference": "server!DecodedCollisionGroups:type",
          "docComment": "/**\n * A decoded set of collision groups represented as their string equivalents.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export type DecodedCollisionGroups = "
            },
            {
              "kind": "Content",
              "text": "{\n    belongsTo: string[];\n    collidesWith: string[];\n}"
            },
            {
              "kind": "Content",
              "text": ";"
            }
          ],
          "fileUrlPath": "src/worlds/physics/CollisionGroupsBuilder.ts",
          "releaseTag": "Public",
          "name": "DecodedCollisionGroups",
          "typeTokenRange": {
            "startIndex": 1,
            "endIndex": 2
          }
        },
        {
          "kind": "Variable",
          "canonicalReference": "server!DEFAULT_ENTITY_RIGID_BODY_OPTIONS:var",
          "docComment": "/**\n * The default rigid body options for a model entity when EntityOptions.rigidBodyOptions is not provided.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "DEFAULT_ENTITY_RIGID_BODY_OPTIONS: "
            },
            {
              "kind": "Reference",
              "text": "RigidBodyOptions",
              "canonicalReference": "server!RigidBodyOptions:type"
            }
          ],
          "fileUrlPath": "src/worlds/entities/Entity.ts",
          "isReadonly": true,
          "releaseTag": "Public",
          "name": "DEFAULT_ENTITY_RIGID_BODY_OPTIONS",
          "variableTypeTokenRange": {
            "startIndex": 1,
            "endIndex": 2
          }
        },
        {
          "kind": "Class",
          "canonicalReference": "server!DefaultPlayerEntity:class",
          "docComment": "/**\n * Represents the default player model entity.\n *\n * @remarks\n *\n * The default player entity extends the {@link PlayerEntity} class, uses the default player model, and assigns a DefaultPlayerEntityController. This entity is the most commonly used player controlled entity in games. It automatically handles things like managing player visual customizations and cosmetics, and more. If you want to change the default model used, you can override all of the defaults, including the modelUri, but you must ensure that the model used has the same animation names and anchor points as the default player model in order to prevent unexpected behavior.\n *\n * @example\n * ```typescript\n * const playerEntity = new DefaultPlayerEntity({ player });\n *\n * playerEntity.spawn(world, { x: 0, y: 10, z: 0 });\n * ```\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export default class DefaultPlayerEntity extends "
            },
            {
              "kind": "Reference",
              "text": "PlayerEntity",
              "canonicalReference": "server!PlayerEntity:class"
            },
            {
              "kind": "Content",
              "text": " "
            }
          ],
          "fileUrlPath": "src/worlds/entities/DefaultPlayerEntity.ts",
          "releaseTag": "Public",
          "isAbstract": false,
          "name": "DefaultPlayerEntity",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "Constructor",
              "canonicalReference": "server!DefaultPlayerEntity:constructor(1)",
              "docComment": "/**\n * Constructs a new instance of the `DefaultPlayerEntity` class\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "constructor(options: "
                },
                {
                  "kind": "Reference",
                  "text": "DefaultPlayerEntityOptions",
                  "canonicalReference": "server!DefaultPlayerEntityOptions:type"
                },
                {
                  "kind": "Content",
                  "text": ");"
                }
              ],
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "options",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ]
            }
          ],
          "extendsTokenRange": {
            "startIndex": 1,
            "endIndex": 2
          },
          "implementsTokenRanges": []
        },
        {
          "kind": "Class",
          "canonicalReference": "server!DefaultPlayerEntityController:class",
          "docComment": "/**\n * The player entity controller implementation.\n *\n * @remarks\n *\n * This class extends {@link BaseEntityController} and implements the default movement, platforming, jump, swimming, and other basic logic for the default player entity. We recommend you extend this class if you'd like to implement additional logic on top of the DefaultPlayerEntityController implementation.\n *\n * @example\n * ```typescript\n * // Create a custom entity controller for myEntity, prior to spawning it.\n * myEntity.setController(new DefaultPlayerEntityController({\n *   jumpVelocity: 10,\n *   runVelocity: 8,\n *   walkVelocity: 4,\n * }));\n *\n * // Spawn the entity in the world.\n * myEntity.spawn(world, { x: 53, y: 10, z: 23 });\n * ```\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export default class DefaultPlayerEntityController extends "
            },
            {
              "kind": "Reference",
              "text": "BaseEntityController",
              "canonicalReference": "server!BaseEntityController:class"
            },
            {
              "kind": "Content",
              "text": " "
            }
          ],
          "fileUrlPath": "src/worlds/entities/controllers/DefaultPlayerEntityController.ts",
          "releaseTag": "Public",
          "isAbstract": false,
          "name": "DefaultPlayerEntityController",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "Constructor",
              "canonicalReference": "server!DefaultPlayerEntityController:constructor(1)",
              "docComment": "/**\n * Constructs a new instance of the `DefaultPlayerEntityController` class\n *\n * @param options - Options for the controller.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "constructor(options?: "
                },
                {
                  "kind": "Reference",
                  "text": "DefaultPlayerEntityControllerOptions",
                  "canonicalReference": "server!DefaultPlayerEntityControllerOptions:interface"
                },
                {
                  "kind": "Content",
                  "text": ");"
                }
              ],
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "options",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": true
                }
              ]
            },
            {
              "kind": "Property",
              "canonicalReference": "server!DefaultPlayerEntityController#applyDirectionalMovementRotations:member",
              "docComment": "/**\n * Whether to apply directional rotations to the entity while moving, defaults to true.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "applyDirectionalMovementRotations: "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "applyDirectionalMovementRotations",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!DefaultPlayerEntityController#attach:member(1)",
              "docComment": "/**\n * Called when the controller is attached to an entity.\n *\n * @param entity - The entity to attach the controller to.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "attach(entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "entity",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "attach"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!DefaultPlayerEntityController#autoCancelMouseLeftClick:member",
              "docComment": "/**\n * Whether to automatically cancel left click input after first processed tick, defaults to true.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "autoCancelMouseLeftClick: "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "autoCancelMouseLeftClick",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!DefaultPlayerEntityController#canJump:member",
              "docComment": "/**\n * A function allowing custom logic to determine if the entity can jump.\n *\n * @param controller - The default player entity controller instance.\n *\n * @returns Whether the entity of the entity controller can jump.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "canJump: "
                },
                {
                  "kind": "Content",
                  "text": "(controller: "
                },
                {
                  "kind": "Reference",
                  "text": "DefaultPlayerEntityController",
                  "canonicalReference": "server!DefaultPlayerEntityController:class"
                },
                {
                  "kind": "Content",
                  "text": ") => boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "canJump",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 4
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!DefaultPlayerEntityController#canRun:member",
              "docComment": "/**\n * A function allowing custom logic to determine if the entity can run.\n *\n * @param controller - The default player entity controller instance.\n *\n * @returns Whether the entity of the entity controller can run.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "canRun: "
                },
                {
                  "kind": "Content",
                  "text": "(controller: "
                },
                {
                  "kind": "Reference",
                  "text": "DefaultPlayerEntityController",
                  "canonicalReference": "server!DefaultPlayerEntityController:class"
                },
                {
                  "kind": "Content",
                  "text": ") => boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "canRun",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 4
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!DefaultPlayerEntityController#canSwim:member",
              "docComment": "/**\n * A function allowing custom logic to determine if the entity can swim.\n *\n * @param controller - The default player entity controller instance.\n *\n * @returns Whether the entity of the entity controller can swim.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "canSwim: "
                },
                {
                  "kind": "Content",
                  "text": "(controller: "
                },
                {
                  "kind": "Reference",
                  "text": "DefaultPlayerEntityController",
                  "canonicalReference": "server!DefaultPlayerEntityController:class"
                },
                {
                  "kind": "Content",
                  "text": ") => boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "canSwim",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 4
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!DefaultPlayerEntityController#canWalk:member",
              "docComment": "/**\n * A function allowing custom logic to determine if the entity can walk.\n *\n * @param controller - The default player entity controller instance.\n *\n * @returns Whether the entity of the entity controller can walk.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "canWalk: "
                },
                {
                  "kind": "Content",
                  "text": "(controller: "
                },
                {
                  "kind": "Reference",
                  "text": "DefaultPlayerEntityController",
                  "canonicalReference": "server!DefaultPlayerEntityController:class"
                },
                {
                  "kind": "Content",
                  "text": ") => boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "canWalk",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 4
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!DefaultPlayerEntityController#faceForwardOnStop:member",
              "docComment": "/**\n * Whether to face forward when the entity stops moving.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "faceForwardOnStop: "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "faceForwardOnStop",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!DefaultPlayerEntityController#idleLoopedAnimations:member",
              "docComment": "/**\n * The looped animation(s) that will play when the entity is idle.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "idleLoopedAnimations: "
                },
                {
                  "kind": "Content",
                  "text": "string[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "idleLoopedAnimations",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!DefaultPlayerEntityController#interactOneshotAnimations:member",
              "docComment": "/**\n * The oneshot animation(s) that will play when the entity interacts (left click)\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "interactOneshotAnimations: "
                },
                {
                  "kind": "Content",
                  "text": "string[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "interactOneshotAnimations",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!DefaultPlayerEntityController#isActivelyMoving:member",
              "docComment": "/**\n * Whether the entity is moving from player inputs.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get isActivelyMoving(): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "isActivelyMoving",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!DefaultPlayerEntityController#isGrounded:member",
              "docComment": "/**\n * Whether the entity is grounded.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get isGrounded(): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "isGrounded",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!DefaultPlayerEntityController#isOnPlatform:member",
              "docComment": "/**\n * Whether the entity is on a platform, a platform is any entity with a kinematic rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get isOnPlatform(): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "isOnPlatform",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!DefaultPlayerEntityController#isSwimming:member",
              "docComment": "/**\n * Whether the entity is swimming, this is determined by if the entity is in a liquid block.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get isSwimming(): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "isSwimming",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!DefaultPlayerEntityController#jumpLandHeavyOneshotAnimations:member",
              "docComment": "/**\n * The oneshot animation(s) that will play when the entity lands with a high velocity.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "jumpLandHeavyOneshotAnimations: "
                },
                {
                  "kind": "Content",
                  "text": "string[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "jumpLandHeavyOneshotAnimations",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!DefaultPlayerEntityController#jumpLandLightOneshotAnimations:member",
              "docComment": "/**\n * The oneshot animation(s) that will play when the entity lands after jumping or being airborne.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "jumpLandLightOneshotAnimations: "
                },
                {
                  "kind": "Content",
                  "text": "string[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "jumpLandLightOneshotAnimations",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!DefaultPlayerEntityController#jumpOneshotAnimations:member",
              "docComment": "/**\n * The oneshot animation(s) that will play when the entity is jumping.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "jumpOneshotAnimations: "
                },
                {
                  "kind": "Content",
                  "text": "string[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "jumpOneshotAnimations",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!DefaultPlayerEntityController#jumpVelocity:member",
              "docComment": "/**\n * The upward velocity applied to the entity when it jumps.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "jumpVelocity: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "jumpVelocity",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!DefaultPlayerEntityController#platform:member",
              "docComment": "/**\n * The platform the entity is on, if any.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get platform(): "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "platform",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!DefaultPlayerEntityController#runLoopedAnimations:member",
              "docComment": "/**\n * The looped animation(s) that will play when the entity is running.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "runLoopedAnimations: "
                },
                {
                  "kind": "Content",
                  "text": "string[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "runLoopedAnimations",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!DefaultPlayerEntityController#runVelocity:member",
              "docComment": "/**\n * The normalized horizontal velocity applied to the entity when it runs.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "runVelocity: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "runVelocity",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!DefaultPlayerEntityController#spawn:member(1)",
              "docComment": "/**\n * Called when the controlled entity is spawned. In DefaultPlayerEntityController, this function is used to create the colliders for the entity for wall and ground detection.\n *\n * @param entity - The entity that is spawned.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "spawn(entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "entity",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "spawn"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!DefaultPlayerEntityController#sticksToPlatforms:member",
              "docComment": "/**\n * Whether the entity sticks to platforms.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "sticksToPlatforms: "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "sticksToPlatforms",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!DefaultPlayerEntityController#swimFastVelocity:member",
              "docComment": "/**\n * The normalized horizontal velocity applied to the entity when it swims fast (equivalent to running).\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "swimFastVelocity: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "swimFastVelocity",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!DefaultPlayerEntityController#swimGravity:member",
              "docComment": "/**\n * The gravity modifier applied to the entity when swimming.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "swimGravity: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "swimGravity",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!DefaultPlayerEntityController#swimIdleLoopedAnimations:member",
              "docComment": "/**\n * The looped animation(s) that will play when the entity is not moving while swimming.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "swimIdleLoopedAnimations: "
                },
                {
                  "kind": "Content",
                  "text": "string[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "swimIdleLoopedAnimations",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!DefaultPlayerEntityController#swimLoopedAnimations:member",
              "docComment": "/**\n * The looped animation(s) that will play when the entity is swimming in any direction.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "swimLoopedAnimations: "
                },
                {
                  "kind": "Content",
                  "text": "string[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "swimLoopedAnimations",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!DefaultPlayerEntityController#swimMaxGravityVelocity:member",
              "docComment": "/**\n * The maximum downward velocity that the entity can reach when affected by gravity while swimming.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "swimMaxGravityVelocity: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "swimMaxGravityVelocity",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!DefaultPlayerEntityController#swimSlowVelocity:member",
              "docComment": "/**\n * The normalized horizontal velocity applied to the entity when it swims slowly (equivalent to walking).\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "swimSlowVelocity: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "swimSlowVelocity",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!DefaultPlayerEntityController#swimUpwardVelocity:member",
              "docComment": "/**\n * The upward velocity applied to the entity when swimming.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "swimUpwardVelocity: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "swimUpwardVelocity",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!DefaultPlayerEntityController#tickWithPlayerInput:member(1)",
              "docComment": "/**\n * Ticks the player movement for the entity controller, overriding the default implementation. If the entity to tick is a child entity, only the event will be emitted but the default movement logic will not be applied.\n *\n * @param entity - The entity to tick.\n *\n * @param input - The current input state of the player.\n *\n * @param cameraOrientation - The current camera orientation state of the player.\n *\n * @param deltaTimeMs - The delta time in milliseconds since the last tick.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "tickWithPlayerInput(entity: "
                },
                {
                  "kind": "Reference",
                  "text": "PlayerEntity",
                  "canonicalReference": "server!PlayerEntity:class"
                },
                {
                  "kind": "Content",
                  "text": ", input: "
                },
                {
                  "kind": "Reference",
                  "text": "PlayerInput",
                  "canonicalReference": "server!PlayerInput:type"
                },
                {
                  "kind": "Content",
                  "text": ", cameraOrientation: "
                },
                {
                  "kind": "Reference",
                  "text": "PlayerCameraOrientation",
                  "canonicalReference": "server!PlayerCameraOrientation:type"
                },
                {
                  "kind": "Content",
                  "text": ", deltaTimeMs: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 9,
                "endIndex": 10
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "entity",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "input",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "cameraOrientation",
                  "parameterTypeTokenRange": {
                    "startIndex": 5,
                    "endIndex": 6
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "deltaTimeMs",
                  "parameterTypeTokenRange": {
                    "startIndex": 7,
                    "endIndex": 8
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "tickWithPlayerInput"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!DefaultPlayerEntityController#walkLoopedAnimations:member",
              "docComment": "/**\n * The looped animation(s) that will play when the entity is walking.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "walkLoopedAnimations: "
                },
                {
                  "kind": "Content",
                  "text": "string[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "walkLoopedAnimations",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!DefaultPlayerEntityController#walkVelocity:member",
              "docComment": "/**\n * The normalized horizontal velocity applied to the entity when it walks.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "walkVelocity: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "walkVelocity",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            }
          ],
          "extendsTokenRange": {
            "startIndex": 1,
            "endIndex": 2
          },
          "implementsTokenRanges": []
        },
        {
          "kind": "Interface",
          "canonicalReference": "server!DefaultPlayerEntityControllerOptions:interface",
          "docComment": "/**\n * Options for creating a DefaultPlayerEntityController instance.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export interface DefaultPlayerEntityControllerOptions "
            }
          ],
          "fileUrlPath": "src/worlds/entities/controllers/DefaultPlayerEntityController.ts",
          "releaseTag": "Public",
          "name": "DefaultPlayerEntityControllerOptions",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!DefaultPlayerEntityControllerOptions#applyDirectionalMovementRotations:member",
              "docComment": "/**\n * Whether to apply directional rotations to the entity while moving, defaults to true.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "applyDirectionalMovementRotations?: "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "applyDirectionalMovementRotations",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!DefaultPlayerEntityControllerOptions#autoCancelMouseLeftClick:member",
              "docComment": "/**\n * Whether to automatically cancel left click input after first processed tick, defaults to true.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "autoCancelMouseLeftClick?: "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "autoCancelMouseLeftClick",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!DefaultPlayerEntityControllerOptions#canJump:member",
              "docComment": "/**\n * A function allowing custom logic to determine if the entity can jump.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "canJump?: "
                },
                {
                  "kind": "Content",
                  "text": "() => boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "canJump",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!DefaultPlayerEntityControllerOptions#canRun:member",
              "docComment": "/**\n * A function allowing custom logic to determine if the entity can run.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "canRun?: "
                },
                {
                  "kind": "Content",
                  "text": "() => boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "canRun",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!DefaultPlayerEntityControllerOptions#canSwim:member",
              "docComment": "/**\n * A function allowing custom logic to determine if the entity can swim.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "canSwim?: "
                },
                {
                  "kind": "Content",
                  "text": "() => boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "canSwim",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!DefaultPlayerEntityControllerOptions#canWalk:member",
              "docComment": "/**\n * A function allowing custom logic to determine if the entity can walk.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "canWalk?: "
                },
                {
                  "kind": "Content",
                  "text": "() => boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "canWalk",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!DefaultPlayerEntityControllerOptions#faceForwardOnStop:member",
              "docComment": "/**\n * Whether to face forward when the entity stops moving.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "faceForwardOnStop?: "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "faceForwardOnStop",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!DefaultPlayerEntityControllerOptions#idleLoopedAnimations:member",
              "docComment": "/**\n * Overrides the animation(s) that will play when the entity is idle.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "idleLoopedAnimations?: "
                },
                {
                  "kind": "Content",
                  "text": "string[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "idleLoopedAnimations",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!DefaultPlayerEntityControllerOptions#interactOneshotAnimations:member",
              "docComment": "/**\n * Overrides the animation(s) that will play when the entity interacts (left click)\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "interactOneshotAnimations?: "
                },
                {
                  "kind": "Content",
                  "text": "string[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "interactOneshotAnimations",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!DefaultPlayerEntityControllerOptions#jumpLandHeavyOneshotAnimations:member",
              "docComment": "/**\n * Overrides the animation(s) that will play when the entity lands with a high velocity.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "jumpLandHeavyOneshotAnimations?: "
                },
                {
                  "kind": "Content",
                  "text": "string[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "jumpLandHeavyOneshotAnimations",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!DefaultPlayerEntityControllerOptions#jumpLandLightOneshotAnimations:member",
              "docComment": "/**\n * Overrides the animation(s) that will play when the entity lands after jumping or being airborne.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "jumpLandLightOneshotAnimations?: "
                },
                {
                  "kind": "Content",
                  "text": "string[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "jumpLandLightOneshotAnimations",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!DefaultPlayerEntityControllerOptions#jumpOneshotAnimations:member",
              "docComment": "/**\n * Overrides the animation(s) that will play when the entity is jumping.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "jumpOneshotAnimations?: "
                },
                {
                  "kind": "Content",
                  "text": "string[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "jumpOneshotAnimations",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!DefaultPlayerEntityControllerOptions#jumpVelocity:member",
              "docComment": "/**\n * The upward velocity applied to the entity when it jumps.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "jumpVelocity?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "jumpVelocity",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!DefaultPlayerEntityControllerOptions#runLoopedAnimations:member",
              "docComment": "/**\n * Overrides the animation(s) that will play when the entity is running.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "runLoopedAnimations?: "
                },
                {
                  "kind": "Content",
                  "text": "string[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "runLoopedAnimations",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!DefaultPlayerEntityControllerOptions#runVelocity:member",
              "docComment": "/**\n * The normalized horizontal velocity applied to the entity when it runs.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "runVelocity?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "runVelocity",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!DefaultPlayerEntityControllerOptions#sticksToPlatforms:member",
              "docComment": "/**\n * Whether the entity sticks to platforms, defaults to true.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "sticksToPlatforms?: "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "sticksToPlatforms",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!DefaultPlayerEntityControllerOptions#swimFastVelocity:member",
              "docComment": "/**\n * The normalized horizontal velocity applied to the entity when it swims fast (equivalent to running).\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "swimFastVelocity?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "swimFastVelocity",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!DefaultPlayerEntityControllerOptions#swimGravity:member",
              "docComment": "/**\n * The gravity modifier applied to the entity when swimming.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "swimGravity?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "swimGravity",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!DefaultPlayerEntityControllerOptions#swimIdleLoopedAnimations:member",
              "docComment": "/**\n * The looped animation(s) that will play when the entity is not moving while swimming.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "swimIdleLoopedAnimations?: "
                },
                {
                  "kind": "Content",
                  "text": "string[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "swimIdleLoopedAnimations",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!DefaultPlayerEntityControllerOptions#swimLoopedAnimations:member",
              "docComment": "/**\n * The looped animation(s) that will play when the entity is swimming in any direction.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "swimLoopedAnimations?: "
                },
                {
                  "kind": "Content",
                  "text": "string[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "swimLoopedAnimations",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!DefaultPlayerEntityControllerOptions#swimMaxGravityVelocity:member",
              "docComment": "/**\n * The maximum downward velocity that the entity can reach when affected by gravity while swimming.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "swimMaxGravityVelocity?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "swimMaxGravityVelocity",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!DefaultPlayerEntityControllerOptions#swimSlowVelocity:member",
              "docComment": "/**\n * The normalized horizontal velocity applied to the entity when it swims slowly (equivalent to walking).\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "swimSlowVelocity?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "swimSlowVelocity",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!DefaultPlayerEntityControllerOptions#swimUpwardVelocity:member",
              "docComment": "/**\n * The upward velocity applied to the entity when swimming.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "swimUpwardVelocity?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "swimUpwardVelocity",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!DefaultPlayerEntityControllerOptions#walkLoopedAnimations:member",
              "docComment": "/**\n * Overrides the animation(s) that will play when the entity is walking.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "walkLoopedAnimations?: "
                },
                {
                  "kind": "Content",
                  "text": "string[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "walkLoopedAnimations",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!DefaultPlayerEntityControllerOptions#walkVelocity:member",
              "docComment": "/**\n * The normalized horizontal velocity applied to the entity when it walks.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "walkVelocity?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "walkVelocity",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            }
          ],
          "extendsTokenRanges": []
        },
        {
          "kind": "TypeAlias",
          "canonicalReference": "server!DefaultPlayerEntityOptions:type",
          "docComment": "/**\n * Options for creating a DefaultPlayerEntity instance.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export type DefaultPlayerEntityOptions = "
            },
            {
              "kind": "Content",
              "text": "{} & "
            },
            {
              "kind": "Reference",
              "text": "PlayerEntityOptions",
              "canonicalReference": "server!PlayerEntityOptions:type"
            },
            {
              "kind": "Content",
              "text": ";"
            }
          ],
          "fileUrlPath": "src/worlds/entities/DefaultPlayerEntity.ts",
          "releaseTag": "Public",
          "name": "DefaultPlayerEntityOptions",
          "typeTokenRange": {
            "startIndex": 1,
            "endIndex": 3
          }
        },
        {
          "kind": "Interface",
          "canonicalReference": "server!DynamicRigidBodyOptions:interface",
          "docComment": "/**\n * The options for a dynamic rigid body, also the default type.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export interface DynamicRigidBodyOptions extends "
            },
            {
              "kind": "Reference",
              "text": "BaseRigidBodyOptions",
              "canonicalReference": "server!BaseRigidBodyOptions:interface"
            },
            {
              "kind": "Content",
              "text": " "
            }
          ],
          "fileUrlPath": "src/worlds/physics/RigidBody.ts",
          "releaseTag": "Public",
          "name": "DynamicRigidBodyOptions",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!DynamicRigidBodyOptions#additionalMass:member",
              "docComment": "/**\n * The additional mass of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "additionalMass?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "additionalMass",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!DynamicRigidBodyOptions#additionalMassProperties:member",
              "docComment": "/**\n * The additional mass properties of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "additionalMassProperties?: "
                },
                {
                  "kind": "Reference",
                  "text": "RigidBodyAdditionalMassProperties",
                  "canonicalReference": "server!RigidBodyAdditionalMassProperties:type"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "additionalMassProperties",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!DynamicRigidBodyOptions#additionalSolverIterations:member",
              "docComment": "/**\n * The additional solver iterations of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "additionalSolverIterations?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "additionalSolverIterations",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!DynamicRigidBodyOptions#angularDamping:member",
              "docComment": "/**\n * The angular damping of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "angularDamping?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "angularDamping",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!DynamicRigidBodyOptions#angularVelocity:member",
              "docComment": "/**\n * The angular velocity of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "angularVelocity?: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "angularVelocity",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!DynamicRigidBodyOptions#ccdEnabled:member",
              "docComment": "/**\n * Whether the rigid body has continuous collision detection enabled.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "ccdEnabled?: "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "ccdEnabled",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!DynamicRigidBodyOptions#dominanceGroup:member",
              "docComment": "/**\n * The dominance group of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "dominanceGroup?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "dominanceGroup",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!DynamicRigidBodyOptions#enabledPositions:member",
              "docComment": "/**\n * The enabled axes of positional movement of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "enabledPositions?: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Boolean",
                  "canonicalReference": "server!Vector3Boolean:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "enabledPositions",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!DynamicRigidBodyOptions#enabledRotations:member",
              "docComment": "/**\n * The enabled rotations of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "enabledRotations?: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Boolean",
                  "canonicalReference": "server!Vector3Boolean:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "enabledRotations",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!DynamicRigidBodyOptions#gravityScale:member",
              "docComment": "/**\n * The gravity scale of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "gravityScale?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "gravityScale",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!DynamicRigidBodyOptions#linearDamping:member",
              "docComment": "/**\n * The linear damping of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "linearDamping?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "linearDamping",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!DynamicRigidBodyOptions#linearVelocity:member",
              "docComment": "/**\n * The linear velocity of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "linearVelocity?: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "linearVelocity",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!DynamicRigidBodyOptions#sleeping:member",
              "docComment": "/**\n * Whether the rigid body is sleeping.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "sleeping?: "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "sleeping",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!DynamicRigidBodyOptions#softCcdPrediction:member",
              "docComment": "/**\n * The soft continuous collision detection prediction of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "softCcdPrediction?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "softCcdPrediction",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!DynamicRigidBodyOptions#type:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "type: "
                },
                {
                  "kind": "Reference",
                  "text": "RigidBodyType.DYNAMIC",
                  "canonicalReference": "server!RigidBodyType.DYNAMIC:member"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "type",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            }
          ],
          "extendsTokenRanges": [
            {
              "startIndex": 1,
              "endIndex": 2
            }
          ]
        },
        {
          "kind": "Class",
          "canonicalReference": "server!Entity:class",
          "docComment": "/**\n * Represents an entity in a world.\n *\n * @remarks\n *\n * Entities are highly configurable and controllable. All entities are created from a .gltf model asset and allow full control of their rigid body and attached collider dynamics.\n *\n * <h2>Events</h2>\n *\n * This class is an EventRouter, and instances of it emit events with payloads listed under {@link EntityEventPayloads}\n *\n * @example\n * ```typescript\n * const spider = new Entity({\n *   name: 'Spider',\n *   modelUri: 'models/spider.gltf',\n *   modelLoopedAnimations: [ 'walk' ],\n *   rigidBodyOptions: {\n *     type: RigidBodyType.DYNAMIC,\n *     enabledRotations: { x: false, y: true, z: false },\n *     colliders: [\n *       {\n *         shape: ColliderShape.ROUND_CYLINDER,\n *         borderRadius: 0.1,\n *         halfHeight: 0.225,\n *         radius: 0.5,\n *         tag: 'body',\n *       }\n *     ],\n *   },\n * });\n *\n * spider.spawn(world, { x: 20, y: 6, z: 10 });\n * ```\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export default class Entity extends "
            },
            {
              "kind": "Reference",
              "text": "RigidBody",
              "canonicalReference": "server!RigidBody:class"
            },
            {
              "kind": "Content",
              "text": " implements "
            },
            {
              "kind": "Reference",
              "text": "protocol.Serializable",
              "canonicalReference": "@hytopia.com/server-protocol!Serializable:interface"
            },
            {
              "kind": "Content",
              "text": " "
            }
          ],
          "fileUrlPath": "src/worlds/entities/Entity.ts",
          "releaseTag": "Public",
          "isAbstract": false,
          "name": "Entity",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "Constructor",
              "canonicalReference": "server!Entity:constructor(1)",
              "docComment": "/**\n * Constructs a new instance of the `Entity` class\n *\n * @param options - The options for the entity.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "constructor(options: "
                },
                {
                  "kind": "Reference",
                  "text": "EntityOptions",
                  "canonicalReference": "server!EntityOptions:type"
                },
                {
                  "kind": "Content",
                  "text": ");"
                }
              ],
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "options",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ]
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Entity#blockHalfExtents:member",
              "docComment": "/**\n * The half extends of the visual size of the block entity when blockTextureUri is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get blockHalfExtents(): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "blockHalfExtents",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Entity#blockTextureUri:member",
              "docComment": "/**\n * The URI or path to the texture to be used, if this is set, the entity is a block entity.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get blockTextureUri(): "
                },
                {
                  "kind": "Content",
                  "text": "string | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "blockTextureUri",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Entity#controller:member",
              "docComment": "/**\n * The controller for the entity.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get controller(): "
                },
                {
                  "kind": "Reference",
                  "text": "BaseEntityController",
                  "canonicalReference": "server!BaseEntityController:class"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "controller",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Entity#depth:member",
              "docComment": "/**\n * The depth (z-axis) of the entity's model with scale consideration or block entity's y*2 half extents.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get depth(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "depth",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Entity#despawn:member(1)",
              "docComment": "/**\n * Despawns the entity and all children from the world.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "despawn(): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "despawn"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Entity#height:member",
              "docComment": "/**\n * The height (y-axis) of the entity's model with scale consideration or block entity's y*2 half extents.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get height(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "height",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Entity#id:member",
              "docComment": "/**\n * The unique identifier for the entity.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get id(): "
                },
                {
                  "kind": "Content",
                  "text": "number | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "id",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Entity#isBlockEntity:member",
              "docComment": "/**\n * Whether the entity is a block entity.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get isBlockEntity(): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "isBlockEntity",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Entity#isEnvironmental:member",
              "docComment": "/**\n * Whether the entity is environmental, if true it will not invoke its tick function or change position.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get isEnvironmental(): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "isEnvironmental",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Entity#isModelEntity:member",
              "docComment": "/**\n * Whether the entity is a model entity.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get isModelEntity(): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "isModelEntity",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Entity#isSpawned:member",
              "docComment": "/**\n * Whether the entity is spawned.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get isSpawned(): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "isSpawned",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Entity#modelAnimationsPlaybackRate:member",
              "docComment": "/**\n * The playback rate of the entity's model animations.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get modelAnimationsPlaybackRate(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "modelAnimationsPlaybackRate",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Entity#modelHiddenNodes:member",
              "docComment": "/**\n * The nodes to hide on the entity's model.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get modelHiddenNodes(): "
                },
                {
                  "kind": "Reference",
                  "text": "ReadonlySet",
                  "canonicalReference": "!ReadonlySet:interface"
                },
                {
                  "kind": "Content",
                  "text": "<string>"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "modelHiddenNodes",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Entity#modelLoopedAnimations:member",
              "docComment": "/**\n * The looped animations to start when the entity is spawned.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get modelLoopedAnimations(): "
                },
                {
                  "kind": "Reference",
                  "text": "ReadonlySet",
                  "canonicalReference": "!ReadonlySet:interface"
                },
                {
                  "kind": "Content",
                  "text": "<string>"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "modelLoopedAnimations",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Entity#modelPreferredShape:member",
              "docComment": "/**\n * The preferred shape of the entity's model when automatically generating its collider when no explicit colliders are provided.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get modelPreferredShape(): "
                },
                {
                  "kind": "Reference",
                  "text": "ColliderShape",
                  "canonicalReference": "server!ColliderShape:enum"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "modelPreferredShape",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Entity#modelScale:member",
              "docComment": "/**\n * The scale of the entity's model.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get modelScale(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "modelScale",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Entity#modelShownNodes:member",
              "docComment": "/**\n * The nodes to show on the entity's model, overriding hidden nodes.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get modelShownNodes(): "
                },
                {
                  "kind": "Reference",
                  "text": "ReadonlySet",
                  "canonicalReference": "!ReadonlySet:interface"
                },
                {
                  "kind": "Content",
                  "text": "<string>"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "modelShownNodes",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Entity#modelTextureUri:member",
              "docComment": "/**\n * The URI or path to the texture that overrides the model entity's default texture.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get modelTextureUri(): "
                },
                {
                  "kind": "Content",
                  "text": "string | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "modelTextureUri",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Entity#modelUri:member",
              "docComment": "/**\n * The URI or path to the .gltf model asset to be used for the entity.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get modelUri(): "
                },
                {
                  "kind": "Content",
                  "text": "string | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "modelUri",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Entity#name:member",
              "docComment": "/**\n * The name of the entity.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get name(): "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "name",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Entity#opacity:member",
              "docComment": "/**\n * The opacity of the entity between 0 and 1. 0 is fully transparent, 1 is fully opaque.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get opacity(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "opacity",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Entity#parent:member",
              "docComment": "/**\n * The parent entity of the entity.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get parent(): "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "parent",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Entity#parentNodeName:member",
              "docComment": "/**\n * The name of the parent's node (if parent is a model entity) this entity is attached to when spawned.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get parentNodeName(): "
                },
                {
                  "kind": "Content",
                  "text": "string | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "parentNodeName",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Entity#setController:member(1)",
              "docComment": "/**\n * Sets the controller for the entity.\n *\n * @param controller - The controller to set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setController(controller: "
                },
                {
                  "kind": "Reference",
                  "text": "BaseEntityController",
                  "canonicalReference": "server!BaseEntityController:class"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 4,
                "endIndex": 5
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "controller",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 3
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setController"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Entity#setModelAnimationsPlaybackRate:member(1)",
              "docComment": "/**\n * Sets the playback rate of all animations on the entity's model.\n *\n * @remarks\n *\n * Defaults to 1. A positive value will play the animation forward, a negative value will play the animation in reverse. Any value may be used. You can make animations play faster by using larger values.\n *\n * @param playbackRate - The playback rate of the entity's model animations.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setModelAnimationsPlaybackRate(playbackRate: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "playbackRate",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setModelAnimationsPlaybackRate"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Entity#setModelHiddenNodes:member(1)",
              "docComment": "/**\n * Sets the nodes to hide on the entity's model. Matched nodes will be hidden for all players. Uses case insensitive substring matching.\n *\n * @param modelHiddenNodes - The nodes to hide on the entity's model.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setModelHiddenNodes(modelHiddenNodes: "
                },
                {
                  "kind": "Content",
                  "text": "string[]"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "modelHiddenNodes",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setModelHiddenNodes"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Entity#setModelScale:member(1)",
              "docComment": "/**\n * Sets the scale of the entity's model and proportionally scales its colliders.\n *\n * @param modelScale - The scale of the entity's model.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setModelScale(modelScale: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "modelScale",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setModelScale"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Entity#setModelShownNodes:member(1)",
              "docComment": "/**\n * Sets the nodes to show on the entity's model, overriding hidden nodes. Matched nodes will be shown for all players. Uses case insensitive substring matching.\n *\n * @param modelShownNodes - The nodes to show on the entity's model.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setModelShownNodes(modelShownNodes: "
                },
                {
                  "kind": "Content",
                  "text": "string[]"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "modelShownNodes",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setModelShownNodes"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Entity#setModelTextureUri:member(1)",
              "docComment": "/**\n * Sets the texture uri of the entity's model. Setting this overrides the model's default texture.\n *\n * @param modelTextureUri - The texture uri of the entity's model.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setModelTextureUri(modelTextureUri: "
                },
                {
                  "kind": "Content",
                  "text": "string | undefined"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "modelTextureUri",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setModelTextureUri"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Entity#setOpacity:member(1)",
              "docComment": "/**\n * Sets the opacity of the entity.\n *\n * @param opacity - The opacity of the entity between 0 and 1. 0 is fully transparent, 1 is fully opaque.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setOpacity(opacity: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "opacity",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setOpacity"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Entity#setParent:member(1)",
              "docComment": "/**\n * Sets the parent of the entity and resets this entity's position and rotation.\n *\n * @remarks\n *\n * When setting the parent, all forces, torques and velocities of this entity are reset. Additionally, this entity's type will be set to `KINEMATIC_VELOCITY` if it is not already. All colliders of this entity will be disabled when parent is not undefined. If the provided parent is undefined, this entity will be removed from its parent and all colliders will be re-enabled. When setting an undefined parent to remove this entity from its parent, this entity's type will be set to the last type it was set to before being a child.\n *\n * @param parent - The parent entity to set, or undefined to remove from an existing parent.\n *\n * @param parentNodeName - The name of the parent's node (if parent is a model entity) this entity will attach to.\n *\n * @param position - The position to set for the entity. If parent is provided, this is relative to the parent's attachment point.\n *\n * @param rotation - The rotation to set for the entity. If parent is provided, this is relative to the parent's rotation.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setParent(parent: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": ", parentNodeName?: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": ", position?: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ", rotation?: "
                },
                {
                  "kind": "Reference",
                  "text": "QuaternionLike",
                  "canonicalReference": "server!QuaternionLike:interface"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 10,
                "endIndex": 11
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "parent",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 3
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "parentNodeName",
                  "parameterTypeTokenRange": {
                    "startIndex": 4,
                    "endIndex": 5
                  },
                  "isOptional": true
                },
                {
                  "parameterName": "position",
                  "parameterTypeTokenRange": {
                    "startIndex": 6,
                    "endIndex": 7
                  },
                  "isOptional": true
                },
                {
                  "parameterName": "rotation",
                  "parameterTypeTokenRange": {
                    "startIndex": 8,
                    "endIndex": 9
                  },
                  "isOptional": true
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setParent"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Entity#setTintColor:member(1)",
              "docComment": "/**\n * Sets the tint color of the entity.\n *\n * @param tintColor - The tint color of the entity.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setTintColor(tintColor: "
                },
                {
                  "kind": "Reference",
                  "text": "RgbColor",
                  "canonicalReference": "server!RgbColor:interface"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 4,
                "endIndex": 5
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "tintColor",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 3
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setTintColor"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Entity#spawn:member(1)",
              "docComment": "/**\n * Spawns the entity in the world.\n *\n * @param world - The world to spawn the entity in.\n *\n * @param position - The position to spawn the entity at.\n *\n * @param rotation - The optional rotation to spawn the entity with.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "spawn(world: "
                },
                {
                  "kind": "Reference",
                  "text": "World",
                  "canonicalReference": "server!World:class"
                },
                {
                  "kind": "Content",
                  "text": ", position: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ", rotation?: "
                },
                {
                  "kind": "Reference",
                  "text": "QuaternionLike",
                  "canonicalReference": "server!QuaternionLike:interface"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 7,
                "endIndex": 8
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "world",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "position",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "rotation",
                  "parameterTypeTokenRange": {
                    "startIndex": 5,
                    "endIndex": 6
                  },
                  "isOptional": true
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "spawn"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Entity#startModelLoopedAnimations:member(1)",
              "docComment": "/**\n * Starts looped animations for the entity, blending with other animations currently playing.\n *\n * @remarks\n *\n * This method will be ignored and do nothing if the entity is a block entity.\n *\n * @param animations - The animations to start.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "startModelLoopedAnimations(animations: "
                },
                {
                  "kind": "Content",
                  "text": "string[]"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "animations",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "startModelLoopedAnimations"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Entity#startModelOneshotAnimations:member(1)",
              "docComment": "/**\n * Starts a oneshot animation for the entity, blending with other animations currently playing.\n *\n * @remarks\n *\n * This method will be ignored and do nothing if the entity is a block entity.\n *\n * @param animations - The animations to start.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "startModelOneshotAnimations(animations: "
                },
                {
                  "kind": "Content",
                  "text": "string[]"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "animations",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "startModelOneshotAnimations"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Entity#stopAllModelAnimations:member(1)",
              "docComment": "/**\n * Stops all looped and oneshot animations for the entity, optionally excluded the provided animations from stopping.\n *\n * @param excludedAnimations - The animations to exclude from being stopped.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "stopAllModelAnimations(excludedAnimations?: "
                },
                {
                  "kind": "Content",
                  "text": "string[]"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "excludedAnimations",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": true
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "stopAllModelAnimations"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Entity#stopAllModelLoopedAnimations:member(1)",
              "docComment": "/**\n * Stops all looped animations for the entity, optionally excluded the provided animations from stopping.\n *\n * @param excludedAnimations - The animations to exclude from being stopped.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "stopAllModelLoopedAnimations(excludedAnimations?: "
                },
                {
                  "kind": "Content",
                  "text": "string[]"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "excludedAnimations",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": true
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "stopAllModelLoopedAnimations"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Entity#stopAllModelOneshotAnimations:member(1)",
              "docComment": "/**\n * Stops all oneshot animations for the entity, optionally excluded the provided animations from stopping.\n *\n * @param excludedAnimations - The animations to exclude from being stopped.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "stopAllModelOneshotAnimations(excludedAnimations?: "
                },
                {
                  "kind": "Content",
                  "text": "string[]"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "excludedAnimations",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": true
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "stopAllModelOneshotAnimations"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Entity#stopModelAnimations:member(1)",
              "docComment": "/**\n * Stops the provided model animations for the entity.\n *\n * @remarks\n *\n * This method will be ignored and do nothing if the entity is a block entity.\n *\n * @param animations - The animations to stop.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "stopModelAnimations(animations: "
                },
                {
                  "kind": "Content",
                  "text": "string[]"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "animations",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "stopModelAnimations"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Entity#tag:member",
              "docComment": "/**\n * An arbitrary identifier tag of the entity. Useful for your own logic.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get tag(): "
                },
                {
                  "kind": "Content",
                  "text": "string | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "tag",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Entity#tintColor:member",
              "docComment": "/**\n * The tint color of the entity.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get tintColor(): "
                },
                {
                  "kind": "Reference",
                  "text": "RgbColor",
                  "canonicalReference": "server!RgbColor:interface"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "tintColor",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Entity#width:member",
              "docComment": "/**\n * The width (x-axis) of the entity's model with scale consideration or block entity's x*2 half extents.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get width(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "width",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Entity#world:member",
              "docComment": "/**\n * The world the entity is in.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get world(): "
                },
                {
                  "kind": "Reference",
                  "text": "World",
                  "canonicalReference": "server!World:class"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "world",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            }
          ],
          "extendsTokenRange": {
            "startIndex": 1,
            "endIndex": 2
          },
          "implementsTokenRanges": [
            {
              "startIndex": 3,
              "endIndex": 4
            }
          ]
        },
        {
          "kind": "Enum",
          "canonicalReference": "server!EntityEvent:enum",
          "docComment": "/**\n * Event types an Entity instance can emit. See {@link EntityEventPayloads} for the payloads.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export declare enum EntityEvent "
            }
          ],
          "fileUrlPath": "src/worlds/entities/Entity.ts",
          "releaseTag": "Public",
          "name": "EntityEvent",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "EnumMember",
              "canonicalReference": "server!EntityEvent.BLOCK_COLLISION:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "BLOCK_COLLISION = "
                },
                {
                  "kind": "Content",
                  "text": "\"ENTITY.BLOCK_COLLISION\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "BLOCK_COLLISION"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!EntityEvent.BLOCK_CONTACT_FORCE:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "BLOCK_CONTACT_FORCE = "
                },
                {
                  "kind": "Content",
                  "text": "\"ENTITY.BLOCK_CONTACT_FORCE\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "BLOCK_CONTACT_FORCE"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!EntityEvent.DESPAWN:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "DESPAWN = "
                },
                {
                  "kind": "Content",
                  "text": "\"ENTITY.DESPAWN\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "DESPAWN"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!EntityEvent.ENTITY_COLLISION:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "ENTITY_COLLISION = "
                },
                {
                  "kind": "Content",
                  "text": "\"ENTITY.ENTITY_COLLISION\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "ENTITY_COLLISION"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!EntityEvent.ENTITY_CONTACT_FORCE:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "ENTITY_CONTACT_FORCE = "
                },
                {
                  "kind": "Content",
                  "text": "\"ENTITY.ENTITY_CONTACT_FORCE\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "ENTITY_CONTACT_FORCE"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!EntityEvent.SET_MODEL_ANIMATIONS_PLAYBACK_RATE:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_MODEL_ANIMATIONS_PLAYBACK_RATE = "
                },
                {
                  "kind": "Content",
                  "text": "\"ENTITY.SET_MODEL_ANIMATIONS_PLAYBACK_RATE\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_MODEL_ANIMATIONS_PLAYBACK_RATE"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!EntityEvent.SET_MODEL_HIDDEN_NODES:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_MODEL_HIDDEN_NODES = "
                },
                {
                  "kind": "Content",
                  "text": "\"ENTITY.SET_MODEL_HIDDEN_NODES\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_MODEL_HIDDEN_NODES"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!EntityEvent.SET_MODEL_SCALE:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_MODEL_SCALE = "
                },
                {
                  "kind": "Content",
                  "text": "\"ENTITY.SET_MODEL_SCALE\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_MODEL_SCALE"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!EntityEvent.SET_MODEL_SHOWN_NODES:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_MODEL_SHOWN_NODES = "
                },
                {
                  "kind": "Content",
                  "text": "\"ENTITY.SET_MODEL_SHOWN_NODES\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_MODEL_SHOWN_NODES"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!EntityEvent.SET_MODEL_TEXTURE_URI:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_MODEL_TEXTURE_URI = "
                },
                {
                  "kind": "Content",
                  "text": "\"ENTITY.SET_MODEL_TEXTURE_URI\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_MODEL_TEXTURE_URI"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!EntityEvent.SET_OPACITY:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_OPACITY = "
                },
                {
                  "kind": "Content",
                  "text": "\"ENTITY.SET_OPACITY\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_OPACITY"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!EntityEvent.SET_PARENT:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_PARENT = "
                },
                {
                  "kind": "Content",
                  "text": "\"ENTITY.SET_PARENT\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_PARENT"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!EntityEvent.SET_TINT_COLOR:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_TINT_COLOR = "
                },
                {
                  "kind": "Content",
                  "text": "\"ENTITY.SET_TINT_COLOR\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_TINT_COLOR"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!EntityEvent.SPAWN:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SPAWN = "
                },
                {
                  "kind": "Content",
                  "text": "\"ENTITY.SPAWN\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SPAWN"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!EntityEvent.START_MODEL_LOOPED_ANIMATIONS:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "START_MODEL_LOOPED_ANIMATIONS = "
                },
                {
                  "kind": "Content",
                  "text": "\"ENTITY.START_MODEL_LOOPED_ANIMATIONS\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "START_MODEL_LOOPED_ANIMATIONS"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!EntityEvent.START_MODEL_ONESHOT_ANIMATIONS:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "START_MODEL_ONESHOT_ANIMATIONS = "
                },
                {
                  "kind": "Content",
                  "text": "\"ENTITY.START_MODEL_ONESHOT_ANIMATIONS\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "START_MODEL_ONESHOT_ANIMATIONS"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!EntityEvent.STOP_MODEL_ANIMATIONS:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "STOP_MODEL_ANIMATIONS = "
                },
                {
                  "kind": "Content",
                  "text": "\"ENTITY.STOP_MODEL_ANIMATIONS\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "STOP_MODEL_ANIMATIONS"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!EntityEvent.TICK:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "TICK = "
                },
                {
                  "kind": "Content",
                  "text": "\"ENTITY.TICK\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "TICK"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!EntityEvent.UPDATE_POSITION:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "UPDATE_POSITION = "
                },
                {
                  "kind": "Content",
                  "text": "\"ENTITY.UPDATE_POSITION\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "UPDATE_POSITION"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!EntityEvent.UPDATE_ROTATION:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "UPDATE_ROTATION = "
                },
                {
                  "kind": "Content",
                  "text": "\"ENTITY.UPDATE_ROTATION\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "UPDATE_ROTATION"
            }
          ]
        },
        {
          "kind": "Interface",
          "canonicalReference": "server!EntityEventPayloads:interface",
          "docComment": "/**\n * Event payloads for Entity emitted events.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export interface EntityEventPayloads "
            }
          ],
          "fileUrlPath": "src/worlds/entities/Entity.ts",
          "releaseTag": "Public",
          "name": "EntityEventPayloads",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!EntityEventPayloads#\"ENTITY.BLOCK_COLLISION\":member",
              "docComment": "/**\n * Emitted when an entity collides with a block type.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "EntityEvent.BLOCK_COLLISION",
                  "canonicalReference": "server!EntityEvent.BLOCK_COLLISION:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        blockType: "
                },
                {
                  "kind": "Reference",
                  "text": "BlockType",
                  "canonicalReference": "server!BlockType:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        started: boolean;\n        colliderHandleA: number;\n        colliderHandleB: number;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"ENTITY.BLOCK_COLLISION\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 8
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!EntityEventPayloads#\"ENTITY.BLOCK_CONTACT_FORCE\":member",
              "docComment": "/**\n * Emitted when an entity's contact force is applied to a block type.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "EntityEvent.BLOCK_CONTACT_FORCE",
                  "canonicalReference": "server!EntityEvent.BLOCK_CONTACT_FORCE:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        blockType: "
                },
                {
                  "kind": "Reference",
                  "text": "BlockType",
                  "canonicalReference": "server!BlockType:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        contactForceData: "
                },
                {
                  "kind": "Reference",
                  "text": "ContactForceData",
                  "canonicalReference": "server!ContactForceData:type"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"ENTITY.BLOCK_CONTACT_FORCE\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 10
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!EntityEventPayloads#\"ENTITY.DESPAWN\":member",
              "docComment": "/**\n * Emitted when an entity is despawned.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "EntityEvent.DESPAWN",
                  "canonicalReference": "server!EntityEvent.DESPAWN:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"ENTITY.DESPAWN\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!EntityEventPayloads#\"ENTITY.ENTITY_COLLISION\":member",
              "docComment": "/**\n * Emitted when an entity collides with another entity.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "EntityEvent.ENTITY_COLLISION",
                  "canonicalReference": "server!EntityEvent.ENTITY_COLLISION:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        otherEntity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        started: boolean;\n        colliderHandleA: number;\n        colliderHandleB: number;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"ENTITY.ENTITY_COLLISION\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 8
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!EntityEventPayloads#\"ENTITY.ENTITY_CONTACT_FORCE\":member",
              "docComment": "/**\n * Emitted when an entity's contact force is applied to another entity.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "EntityEvent.ENTITY_CONTACT_FORCE",
                  "canonicalReference": "server!EntityEvent.ENTITY_CONTACT_FORCE:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        otherEntity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        contactForceData: "
                },
                {
                  "kind": "Reference",
                  "text": "ContactForceData",
                  "canonicalReference": "server!ContactForceData:type"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"ENTITY.ENTITY_CONTACT_FORCE\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 10
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!EntityEventPayloads#\"ENTITY.SET_MODEL_ANIMATIONS_PLAYBACK_RATE\":member",
              "docComment": "/**\n * Emitted when the playback rate of the entity's model animations is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "EntityEvent.SET_MODEL_ANIMATIONS_PLAYBACK_RATE",
                  "canonicalReference": "server!EntityEvent.SET_MODEL_ANIMATIONS_PLAYBACK_RATE:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        playbackRate: number;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"ENTITY.SET_MODEL_ANIMATIONS_PLAYBACK_RATE\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!EntityEventPayloads#\"ENTITY.SET_MODEL_HIDDEN_NODES\":member",
              "docComment": "/**\n * Emitted when nodes of the entity's model are set to be hidden.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "EntityEvent.SET_MODEL_HIDDEN_NODES",
                  "canonicalReference": "server!EntityEvent.SET_MODEL_HIDDEN_NODES:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        modelHiddenNodes: "
                },
                {
                  "kind": "Reference",
                  "text": "Set",
                  "canonicalReference": "!Set:interface"
                },
                {
                  "kind": "Content",
                  "text": "<string>;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"ENTITY.SET_MODEL_HIDDEN_NODES\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 8
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!EntityEventPayloads#\"ENTITY.SET_MODEL_SCALE\":member",
              "docComment": "/**\n * Emitted when the scale of the entity's model is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "EntityEvent.SET_MODEL_SCALE",
                  "canonicalReference": "server!EntityEvent.SET_MODEL_SCALE:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        modelScale: number;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"ENTITY.SET_MODEL_SCALE\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!EntityEventPayloads#\"ENTITY.SET_MODEL_SHOWN_NODES\":member",
              "docComment": "/**\n * Emitted when nodes of the entity's model are set to be shown.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "EntityEvent.SET_MODEL_SHOWN_NODES",
                  "canonicalReference": "server!EntityEvent.SET_MODEL_SHOWN_NODES:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        modelShownNodes: "
                },
                {
                  "kind": "Reference",
                  "text": "Set",
                  "canonicalReference": "!Set:interface"
                },
                {
                  "kind": "Content",
                  "text": "<string>;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"ENTITY.SET_MODEL_SHOWN_NODES\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 8
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!EntityEventPayloads#\"ENTITY.SET_MODEL_TEXTURE_URI\":member",
              "docComment": "/**\n * Emitted when the texture uri of the entity's model is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "EntityEvent.SET_MODEL_TEXTURE_URI",
                  "canonicalReference": "server!EntityEvent.SET_MODEL_TEXTURE_URI:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        modelTextureUri: string | undefined;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"ENTITY.SET_MODEL_TEXTURE_URI\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!EntityEventPayloads#\"ENTITY.SET_OPACITY\":member",
              "docComment": "/**\n * Emitted when the opacity of the entity is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "EntityEvent.SET_OPACITY",
                  "canonicalReference": "server!EntityEvent.SET_OPACITY:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        opacity: number;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"ENTITY.SET_OPACITY\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!EntityEventPayloads#\"ENTITY.SET_PARENT\":member",
              "docComment": "/**\n * Emitted when the parent of the entity is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "EntityEvent.SET_PARENT",
                  "canonicalReference": "server!EntityEvent.SET_PARENT:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        parent: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": " | undefined;\n        parentNodeName: string | undefined;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"ENTITY.SET_PARENT\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 8
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!EntityEventPayloads#\"ENTITY.SET_TINT_COLOR\":member",
              "docComment": "/**\n * Emitted when the tint color of the entity is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "EntityEvent.SET_TINT_COLOR",
                  "canonicalReference": "server!EntityEvent.SET_TINT_COLOR:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        tintColor: "
                },
                {
                  "kind": "Reference",
                  "text": "RgbColor",
                  "canonicalReference": "server!RgbColor:interface"
                },
                {
                  "kind": "Content",
                  "text": " | undefined;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"ENTITY.SET_TINT_COLOR\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 8
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!EntityEventPayloads#\"ENTITY.SPAWN\":member",
              "docComment": "/**\n * Emitted when the entity is spawned.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "EntityEvent.SPAWN",
                  "canonicalReference": "server!EntityEvent.SPAWN:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"ENTITY.SPAWN\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!EntityEventPayloads#\"ENTITY.START_MODEL_LOOPED_ANIMATIONS\":member",
              "docComment": "/**\n * Emitted when the looped animations of the entity's model are started.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "EntityEvent.START_MODEL_LOOPED_ANIMATIONS",
                  "canonicalReference": "server!EntityEvent.START_MODEL_LOOPED_ANIMATIONS:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        animations: "
                },
                {
                  "kind": "Reference",
                  "text": "Set",
                  "canonicalReference": "!Set:interface"
                },
                {
                  "kind": "Content",
                  "text": "<string>;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"ENTITY.START_MODEL_LOOPED_ANIMATIONS\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 8
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!EntityEventPayloads#\"ENTITY.START_MODEL_ONESHOT_ANIMATIONS\":member",
              "docComment": "/**\n * Emitted when the oneshot animations of the entity's model are started.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "EntityEvent.START_MODEL_ONESHOT_ANIMATIONS",
                  "canonicalReference": "server!EntityEvent.START_MODEL_ONESHOT_ANIMATIONS:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        animations: "
                },
                {
                  "kind": "Reference",
                  "text": "Set",
                  "canonicalReference": "!Set:interface"
                },
                {
                  "kind": "Content",
                  "text": "<string>;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"ENTITY.START_MODEL_ONESHOT_ANIMATIONS\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 8
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!EntityEventPayloads#\"ENTITY.STOP_MODEL_ANIMATIONS\":member",
              "docComment": "/**\n * Emitted when the model animations of the entity are stopped.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "EntityEvent.STOP_MODEL_ANIMATIONS",
                  "canonicalReference": "server!EntityEvent.STOP_MODEL_ANIMATIONS:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        animations: "
                },
                {
                  "kind": "Reference",
                  "text": "Set",
                  "canonicalReference": "!Set:interface"
                },
                {
                  "kind": "Content",
                  "text": "<string>;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"ENTITY.STOP_MODEL_ANIMATIONS\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 8
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!EntityEventPayloads#\"ENTITY.TICK\":member",
              "docComment": "/**\n * Emitted when the entity is ticked.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "EntityEvent.TICK",
                  "canonicalReference": "server!EntityEvent.TICK:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        tickDeltaMs: number;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"ENTITY.TICK\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!EntityEventPayloads#\"ENTITY.UPDATE_POSITION\":member",
              "docComment": "/**\n * Emitted when the position of the entity is updated at the end of the tick, either directly or by physics.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "EntityEvent.UPDATE_POSITION",
                  "canonicalReference": "server!EntityEvent.UPDATE_POSITION:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        position: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"ENTITY.UPDATE_POSITION\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 8
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!EntityEventPayloads#\"ENTITY.UPDATE_ROTATION\":member",
              "docComment": "/**\n * Emitted when the rotation of the entity is updated at the end of the tick, either directly or by physics.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "EntityEvent.UPDATE_ROTATION",
                  "canonicalReference": "server!EntityEvent.UPDATE_ROTATION:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        rotation: "
                },
                {
                  "kind": "Reference",
                  "text": "QuaternionLike",
                  "canonicalReference": "server!QuaternionLike:interface"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"ENTITY.UPDATE_ROTATION\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 8
              }
            }
          ],
          "extendsTokenRanges": []
        },
        {
          "kind": "Class",
          "canonicalReference": "server!EntityManager:class",
          "docComment": "/**\n * Manages entities in a world.\n *\n * @remarks\n *\n * The EntityManager is created internally as a singleton for each {@link World} instance in a game server. It allows retrieval of all entities, player entities, and more.\n *\n * The constructor for this class is marked as internal. Third-party code should not call the constructor directly or create subclasses that extend the `EntityManager` class.\n *\n * @example\n * ```typescript\n * // Get all entities in the world\n * const entityManager = world.entityManager;\n * const entities = entityManager.getAllEntities();\n * ```\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export default class EntityManager "
            }
          ],
          "fileUrlPath": "src/worlds/entities/EntityManager.ts",
          "releaseTag": "Public",
          "isAbstract": false,
          "name": "EntityManager",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "Property",
              "canonicalReference": "server!EntityManager#entityCount:member",
              "docComment": "/**\n * The number of spawned entities in the world.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get entityCount(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "entityCount",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!EntityManager#getAllEntities:member(1)",
              "docComment": "/**\n * Gets all spawned entities in the world.\n *\n * @returns All spawned entities in the world.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "getAllEntities(): "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": "[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "getAllEntities"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!EntityManager#getAllPlayerEntities:member(1)",
              "docComment": "/**\n * Gets all spawned player entities in the world.\n *\n * @returns All spawned player entities in the world.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "getAllPlayerEntities(): "
                },
                {
                  "kind": "Reference",
                  "text": "PlayerEntity",
                  "canonicalReference": "server!PlayerEntity:class"
                },
                {
                  "kind": "Content",
                  "text": "[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "getAllPlayerEntities"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!EntityManager#getEntitiesByTag:member(1)",
              "docComment": "/**\n * Gets all spawned entities in the world with a specific tag.\n *\n * @param tag - The tag to get the entities for.\n *\n * @returns All spawned entities in the world with the provided tag.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "getEntitiesByTag(tag: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": "[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 5
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "tag",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "getEntitiesByTag"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!EntityManager#getEntitiesByTagSubstring:member(1)",
              "docComment": "/**\n * Gets all spawned entities in the world with a tag that includes a specific substring.\n *\n * @param tagSubstring - The tag substring to get the entities for.\n *\n * @returns All spawned entities in the world with a tag that includes the provided substring.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "getEntitiesByTagSubstring(tagSubstring: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": "[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 5
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "tagSubstring",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "getEntitiesByTagSubstring"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!EntityManager#getEntity:member(1)",
              "docComment": "/**\n * Gets a spawned entity in the world by its id.\n *\n * @param id - The id of the entity to get.\n *\n * @returns The spawned entity with the provided id, or undefined if no entity is found.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "getEntity<T extends "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": ">(id: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "T | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "typeParameters": [
                {
                  "typeParameterName": "T",
                  "constraintTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "defaultTypeTokenRange": {
                    "startIndex": 0,
                    "endIndex": 0
                  }
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 5,
                "endIndex": 6
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "id",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "getEntity"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!EntityManager#getEntityChildren:member(1)",
              "docComment": "/**\n * Gets all child entities of an entity.\n *\n * @param entity - The entity to get the children for.\n *\n * @returns All child entities of the entity.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "getEntityChildren(entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": "[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 5
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "entity",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "getEntityChildren"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!EntityManager#getPlayerEntitiesByPlayer:member(1)",
              "docComment": "/**\n * Gets all spawned entities in the world assigned to the provided player.\n *\n * @param player - The player to get the entities for.\n *\n * @returns All spawned entities in the world assigned to the player.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "getPlayerEntitiesByPlayer(player: "
                },
                {
                  "kind": "Reference",
                  "text": "Player",
                  "canonicalReference": "server!Player:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "PlayerEntity",
                  "canonicalReference": "server!PlayerEntity:class"
                },
                {
                  "kind": "Content",
                  "text": "[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 5
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "player",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "getPlayerEntitiesByPlayer"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!EntityManager#world:member",
              "docComment": "/**\n * The world the entity manager is for.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get world(): "
                },
                {
                  "kind": "Reference",
                  "text": "World",
                  "canonicalReference": "server!World:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "world",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            }
          ],
          "implementsTokenRanges": []
        },
        {
          "kind": "TypeAlias",
          "canonicalReference": "server!EntityOptions:type",
          "docComment": "/**\n * The options for creating an Entity instance.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export type EntityOptions = "
            },
            {
              "kind": "Reference",
              "text": "BlockEntityOptions",
              "canonicalReference": "server!BlockEntityOptions:interface"
            },
            {
              "kind": "Content",
              "text": " | "
            },
            {
              "kind": "Reference",
              "text": "ModelEntityOptions",
              "canonicalReference": "server!ModelEntityOptions:interface"
            },
            {
              "kind": "Content",
              "text": ";"
            }
          ],
          "fileUrlPath": "src/worlds/entities/Entity.ts",
          "releaseTag": "Public",
          "name": "EntityOptions",
          "typeTokenRange": {
            "startIndex": 1,
            "endIndex": 4
          }
        },
        {
          "kind": "Class",
          "canonicalReference": "server!ErrorHandler:class",
          "docComment": "/**\n * Manages error and warning logging.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export default class ErrorHandler "
            }
          ],
          "fileUrlPath": "src/errors/ErrorHandler.ts",
          "releaseTag": "Public",
          "isAbstract": false,
          "name": "ErrorHandler",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "Method",
              "canonicalReference": "server!ErrorHandler.error:member(1)",
              "docComment": "/**\n * Logs a formatted error message with stack trace to help debug issues\n *\n * @param message - The error message to display\n *\n * @param context - Optional context information about the error\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "static error(message: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": ", context?: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": true,
              "returnTypeTokenRange": {
                "startIndex": 5,
                "endIndex": 6
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "message",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "context",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": true
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "error"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!ErrorHandler.fatalError:member(1)",
              "docComment": "/**\n * Logs a formatted fatal error message with stack trace and throws the error\n *\n * @param message - The error message to display\n *\n * @param context - Optional context information about the error\n *\n * @throws\n *\n * The created Error object\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "static fatalError(message: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": ", context?: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "never"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": true,
              "returnTypeTokenRange": {
                "startIndex": 5,
                "endIndex": 6
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "message",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "context",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": true
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "fatalError"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!ErrorHandler.warning:member(1)",
              "docComment": "/**\n * Logs a formatted warning message to alert about potential issues\n *\n * @param message - The warning message to display\n *\n * @param context - Optional context information about the warning\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "static warning(message: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": ", context?: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": true,
              "returnTypeTokenRange": {
                "startIndex": 5,
                "endIndex": 6
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "message",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "context",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": true
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "warning"
            }
          ],
          "implementsTokenRanges": []
        },
        {
          "kind": "Interface",
          "canonicalReference": "server!EventPayloads:interface",
          "docComment": "/**\n * The payloads for all events in the game server.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export interface EventPayloads extends "
            },
            {
              "kind": "Reference",
              "text": "AudioEventPayloads",
              "canonicalReference": "server!AudioEventPayloads:interface"
            },
            {
              "kind": "Content",
              "text": ", "
            },
            {
              "kind": "Reference",
              "text": "BaseEntityControllerEventPayloads",
              "canonicalReference": "server!BaseEntityControllerEventPayloads:interface"
            },
            {
              "kind": "Content",
              "text": ", "
            },
            {
              "kind": "Reference",
              "text": "BlockTypeEventPayloads",
              "canonicalReference": "server!BlockTypeEventPayloads:interface"
            },
            {
              "kind": "Content",
              "text": ", "
            },
            {
              "kind": "Reference",
              "text": "BlockTypeRegistryEventPayloads",
              "canonicalReference": "server!BlockTypeRegistryEventPayloads:interface"
            },
            {
              "kind": "Content",
              "text": ", "
            },
            {
              "kind": "Reference",
              "text": "ChatEventPayloads",
              "canonicalReference": "server!ChatEventPayloads:interface"
            },
            {
              "kind": "Content",
              "text": ", "
            },
            {
              "kind": "Reference",
              "text": "ChunkLatticeEventPayloads",
              "canonicalReference": "server!ChunkLatticeEventPayloads:interface"
            },
            {
              "kind": "Content",
              "text": ", "
            },
            {
              "kind": "Reference",
              "text": "ConnectionEventPayloads",
              "canonicalReference": "server!~ConnectionEventPayloads:interface"
            },
            {
              "kind": "Content",
              "text": ", "
            },
            {
              "kind": "Reference",
              "text": "EntityEventPayloads",
              "canonicalReference": "server!EntityEventPayloads:interface"
            },
            {
              "kind": "Content",
              "text": ", "
            },
            {
              "kind": "Reference",
              "text": "GameServerEventPayloads",
              "canonicalReference": "server!GameServerEventPayloads:interface"
            },
            {
              "kind": "Content",
              "text": ", "
            },
            {
              "kind": "Reference",
              "text": "ParticleEmitterEventPayloads",
              "canonicalReference": "server!ParticleEmitterEventPayloads:interface"
            },
            {
              "kind": "Content",
              "text": ", "
            },
            {
              "kind": "Reference",
              "text": "PlayerCameraEventPayloads",
              "canonicalReference": "server!PlayerCameraEventPayloads:interface"
            },
            {
              "kind": "Content",
              "text": ", "
            },
            {
              "kind": "Reference",
              "text": "PlayerEventPayloads",
              "canonicalReference": "server!PlayerEventPayloads:interface"
            },
            {
              "kind": "Content",
              "text": ", "
            },
            {
              "kind": "Reference",
              "text": "PlayerManagerEventPayloads",
              "canonicalReference": "server!PlayerManagerEventPayloads:interface"
            },
            {
              "kind": "Content",
              "text": ", "
            },
            {
              "kind": "Reference",
              "text": "PlayerUIEventPayloads",
              "canonicalReference": "server!PlayerUIEventPayloads:interface"
            },
            {
              "kind": "Content",
              "text": ", "
            },
            {
              "kind": "Reference",
              "text": "SceneUIEventPayloads",
              "canonicalReference": "server!SceneUIEventPayloads:interface"
            },
            {
              "kind": "Content",
              "text": ", "
            },
            {
              "kind": "Reference",
              "text": "SimulationEventPayloads",
              "canonicalReference": "server!SimulationEventPayloads:interface"
            },
            {
              "kind": "Content",
              "text": ", "
            },
            {
              "kind": "Reference",
              "text": "SocketEventPayloads",
              "canonicalReference": "server!~SocketEventPayloads:interface"
            },
            {
              "kind": "Content",
              "text": ", "
            },
            {
              "kind": "Reference",
              "text": "LightEventPayloads",
              "canonicalReference": "server!LightEventPayloads:interface"
            },
            {
              "kind": "Content",
              "text": ", "
            },
            {
              "kind": "Reference",
              "text": "WebServerEventPayloads",
              "canonicalReference": "server!~WebServerEventPayloads:interface"
            },
            {
              "kind": "Content",
              "text": ", "
            },
            {
              "kind": "Reference",
              "text": "WorldEventPayloads",
              "canonicalReference": "server!WorldEventPayloads:interface"
            },
            {
              "kind": "Content",
              "text": ", "
            },
            {
              "kind": "Reference",
              "text": "WorldLoopEventPayloads",
              "canonicalReference": "server!WorldLoopEventPayloads:interface"
            },
            {
              "kind": "Content",
              "text": ", "
            },
            {
              "kind": "Reference",
              "text": "WorldManagerEventPayloads",
              "canonicalReference": "server!WorldManagerEventPayloads:interface"
            },
            {
              "kind": "Content",
              "text": " "
            }
          ],
          "fileUrlPath": "src/events/Events.ts",
          "releaseTag": "Public",
          "name": "EventPayloads",
          "preserveMemberOrder": false,
          "members": [],
          "extendsTokenRanges": [
            {
              "startIndex": 1,
              "endIndex": 2
            },
            {
              "startIndex": 3,
              "endIndex": 4
            },
            {
              "startIndex": 5,
              "endIndex": 6
            },
            {
              "startIndex": 7,
              "endIndex": 8
            },
            {
              "startIndex": 9,
              "endIndex": 10
            },
            {
              "startIndex": 11,
              "endIndex": 12
            },
            {
              "startIndex": 13,
              "endIndex": 14
            },
            {
              "startIndex": 15,
              "endIndex": 16
            },
            {
              "startIndex": 17,
              "endIndex": 18
            },
            {
              "startIndex": 19,
              "endIndex": 20
            },
            {
              "startIndex": 21,
              "endIndex": 22
            },
            {
              "startIndex": 23,
              "endIndex": 24
            },
            {
              "startIndex": 25,
              "endIndex": 26
            },
            {
              "startIndex": 27,
              "endIndex": 28
            },
            {
              "startIndex": 29,
              "endIndex": 30
            },
            {
              "startIndex": 31,
              "endIndex": 32
            },
            {
              "startIndex": 33,
              "endIndex": 34
            },
            {
              "startIndex": 35,
              "endIndex": 36
            },
            {
              "startIndex": 37,
              "endIndex": 38
            },
            {
              "startIndex": 39,
              "endIndex": 40
            },
            {
              "startIndex": 41,
              "endIndex": 42
            },
            {
              "startIndex": 43,
              "endIndex": 44
            }
          ]
        },
        {
          "kind": "Class",
          "canonicalReference": "server!EventRouter:class",
          "docComment": "/**\n * Manages event emission and assigned listener callbacks.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export default class EventRouter "
            }
          ],
          "fileUrlPath": "src/events/EventRouter.ts",
          "releaseTag": "Public",
          "isAbstract": false,
          "name": "EventRouter",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "Method",
              "canonicalReference": "server!EventRouter#emit:member(1)",
              "docComment": "/**\n * Emit an event, invoking all registered listeners for the event type.\n *\n * @param eventType - The type of event to emit.\n *\n * @param payload - The payload to emit.\n *\n * @returns `true` if any listeners were found and invoked, `false` otherwise.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "emit<TEventType extends "
                },
                {
                  "kind": "Content",
                  "text": "keyof "
                },
                {
                  "kind": "Reference",
                  "text": "EventPayloads",
                  "canonicalReference": "server!EventPayloads:interface"
                },
                {
                  "kind": "Content",
                  "text": ">(eventType: "
                },
                {
                  "kind": "Content",
                  "text": "TEventType"
                },
                {
                  "kind": "Content",
                  "text": ", payload: "
                },
                {
                  "kind": "Reference",
                  "text": "EventPayloads",
                  "canonicalReference": "server!EventPayloads:interface"
                },
                {
                  "kind": "Content",
                  "text": "[TEventType]"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "typeParameters": [
                {
                  "typeParameterName": "TEventType",
                  "constraintTokenRange": {
                    "startIndex": 1,
                    "endIndex": 3
                  },
                  "defaultTypeTokenRange": {
                    "startIndex": 0,
                    "endIndex": 0
                  }
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 9,
                "endIndex": 10
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "eventType",
                  "parameterTypeTokenRange": {
                    "startIndex": 4,
                    "endIndex": 5
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "payload",
                  "parameterTypeTokenRange": {
                    "startIndex": 6,
                    "endIndex": 8
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "emit"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!EventRouter#emit:member(2)",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "emit(eventType: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": ", payload: "
                },
                {
                  "kind": "Content",
                  "text": "any"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 5,
                "endIndex": 6
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 2,
              "parameters": [
                {
                  "parameterName": "eventType",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "payload",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "emit"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!EventRouter#emitWithGlobal:member(1)",
              "docComment": "/**\n * Emits an event to the local and global server instance event routers.\n *\n * @param eventType - The type of event to emit.\n *\n * @param payload - The payload to emit.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "emitWithGlobal<TEventType extends "
                },
                {
                  "kind": "Content",
                  "text": "keyof "
                },
                {
                  "kind": "Reference",
                  "text": "EventPayloads",
                  "canonicalReference": "server!EventPayloads:interface"
                },
                {
                  "kind": "Content",
                  "text": ">(eventType: "
                },
                {
                  "kind": "Content",
                  "text": "TEventType"
                },
                {
                  "kind": "Content",
                  "text": ", payload: "
                },
                {
                  "kind": "Reference",
                  "text": "EventPayloads",
                  "canonicalReference": "server!EventPayloads:interface"
                },
                {
                  "kind": "Content",
                  "text": "[TEventType]"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "typeParameters": [
                {
                  "typeParameterName": "TEventType",
                  "constraintTokenRange": {
                    "startIndex": 1,
                    "endIndex": 3
                  },
                  "defaultTypeTokenRange": {
                    "startIndex": 0,
                    "endIndex": 0
                  }
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 9,
                "endIndex": 10
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "eventType",
                  "parameterTypeTokenRange": {
                    "startIndex": 4,
                    "endIndex": 5
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "payload",
                  "parameterTypeTokenRange": {
                    "startIndex": 6,
                    "endIndex": 8
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "emitWithGlobal"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!EventRouter#emitWithGlobal:member(2)",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "emitWithGlobal(eventType: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": ", payload: "
                },
                {
                  "kind": "Content",
                  "text": "any"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 5,
                "endIndex": 6
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 2,
              "parameters": [
                {
                  "parameterName": "eventType",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "payload",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "emitWithGlobal"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!EventRouter#emitWithWorld:member(1)",
              "docComment": "/**\n * Emits an event to local and provided world event routers.\n *\n * @param world - The world to broadcast the event to.\n *\n * @param eventType - The type of event to broadcast.\n *\n * @param payload - The payload to broadcast.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "emitWithWorld<TEventType extends "
                },
                {
                  "kind": "Content",
                  "text": "keyof "
                },
                {
                  "kind": "Reference",
                  "text": "EventPayloads",
                  "canonicalReference": "server!EventPayloads:interface"
                },
                {
                  "kind": "Content",
                  "text": ">(world: "
                },
                {
                  "kind": "Reference",
                  "text": "World",
                  "canonicalReference": "server!World:class"
                },
                {
                  "kind": "Content",
                  "text": ", eventType: "
                },
                {
                  "kind": "Content",
                  "text": "TEventType"
                },
                {
                  "kind": "Content",
                  "text": ", payload: "
                },
                {
                  "kind": "Reference",
                  "text": "EventPayloads",
                  "canonicalReference": "server!EventPayloads:interface"
                },
                {
                  "kind": "Content",
                  "text": "[TEventType]"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "typeParameters": [
                {
                  "typeParameterName": "TEventType",
                  "constraintTokenRange": {
                    "startIndex": 1,
                    "endIndex": 3
                  },
                  "defaultTypeTokenRange": {
                    "startIndex": 0,
                    "endIndex": 0
                  }
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 11,
                "endIndex": 12
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "world",
                  "parameterTypeTokenRange": {
                    "startIndex": 4,
                    "endIndex": 5
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "eventType",
                  "parameterTypeTokenRange": {
                    "startIndex": 6,
                    "endIndex": 7
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "payload",
                  "parameterTypeTokenRange": {
                    "startIndex": 8,
                    "endIndex": 10
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "emitWithWorld"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!EventRouter#emitWithWorld:member(2)",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "emitWithWorld(world: "
                },
                {
                  "kind": "Reference",
                  "text": "World",
                  "canonicalReference": "server!World:class"
                },
                {
                  "kind": "Content",
                  "text": ", eventType: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": ", payload: "
                },
                {
                  "kind": "Content",
                  "text": "any"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 7,
                "endIndex": 8
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 2,
              "parameters": [
                {
                  "parameterName": "world",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "eventType",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "payload",
                  "parameterTypeTokenRange": {
                    "startIndex": 5,
                    "endIndex": 6
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "emitWithWorld"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!EventRouter#final:member(2)",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "final(eventType: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": ", listener: "
                },
                {
                  "kind": "Content",
                  "text": "(payload: any) => void"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 5,
                "endIndex": 6
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 2,
              "parameters": [
                {
                  "parameterName": "eventType",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "listener",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "final"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!EventRouter.globalInstance:member",
              "docComment": "/**\n * The global event router instance.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "static readonly globalInstance: "
                },
                {
                  "kind": "Reference",
                  "text": "EventRouter",
                  "canonicalReference": "server!EventRouter:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "globalInstance",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": true,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!EventRouter#hasListeners:member(1)",
              "docComment": "/**\n * Check if there are listeners for a specific event type.\n *\n * @param eventType - The type of event to check for listeners.\n *\n * @returns `true` if listeners are found, `false` otherwise.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "hasListeners<TEventType extends "
                },
                {
                  "kind": "Content",
                  "text": "keyof "
                },
                {
                  "kind": "Reference",
                  "text": "EventPayloads",
                  "canonicalReference": "server!EventPayloads:interface"
                },
                {
                  "kind": "Content",
                  "text": ">(eventType: "
                },
                {
                  "kind": "Content",
                  "text": "TEventType"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "typeParameters": [
                {
                  "typeParameterName": "TEventType",
                  "constraintTokenRange": {
                    "startIndex": 1,
                    "endIndex": 3
                  },
                  "defaultTypeTokenRange": {
                    "startIndex": 0,
                    "endIndex": 0
                  }
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 6,
                "endIndex": 7
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "eventType",
                  "parameterTypeTokenRange": {
                    "startIndex": 4,
                    "endIndex": 5
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "hasListeners"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!EventRouter#hasListeners:member(2)",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "hasListeners(eventType: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 2,
              "parameters": [
                {
                  "parameterName": "eventType",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "hasListeners"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!EventRouter#listenerCount:member(1)",
              "docComment": "/**\n * Get the number of listeners for a specific event type.\n *\n * @param eventType - The type of event to get the listener count for.\n *\n * @returns The number of listeners for the event type.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "listenerCount<TEventType extends "
                },
                {
                  "kind": "Content",
                  "text": "keyof "
                },
                {
                  "kind": "Reference",
                  "text": "EventPayloads",
                  "canonicalReference": "server!EventPayloads:interface"
                },
                {
                  "kind": "Content",
                  "text": ">(eventType: "
                },
                {
                  "kind": "Content",
                  "text": "TEventType"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "typeParameters": [
                {
                  "typeParameterName": "TEventType",
                  "constraintTokenRange": {
                    "startIndex": 1,
                    "endIndex": 3
                  },
                  "defaultTypeTokenRange": {
                    "startIndex": 0,
                    "endIndex": 0
                  }
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 6,
                "endIndex": 7
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "eventType",
                  "parameterTypeTokenRange": {
                    "startIndex": 4,
                    "endIndex": 5
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "listenerCount"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!EventRouter#listenerCount:member(2)",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "listenerCount(eventType: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 2,
              "parameters": [
                {
                  "parameterName": "eventType",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "listenerCount"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!EventRouter#listeners:member(1)",
              "docComment": "/**\n * Get all listeners for a specific event type.\n *\n * @param eventType - The type of event to get listeners for.\n *\n * @returns All listeners for the event type.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "listeners<TEventType extends "
                },
                {
                  "kind": "Content",
                  "text": "keyof "
                },
                {
                  "kind": "Reference",
                  "text": "EventPayloads",
                  "canonicalReference": "server!EventPayloads:interface"
                },
                {
                  "kind": "Content",
                  "text": ">(eventType: "
                },
                {
                  "kind": "Content",
                  "text": "TEventType"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "EventEmitter.EventListener",
                  "canonicalReference": "eventemitter3!EventEmitter.EventListener:type"
                },
                {
                  "kind": "Content",
                  "text": "<any, string>[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "typeParameters": [
                {
                  "typeParameterName": "TEventType",
                  "constraintTokenRange": {
                    "startIndex": 1,
                    "endIndex": 3
                  },
                  "defaultTypeTokenRange": {
                    "startIndex": 0,
                    "endIndex": 0
                  }
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 6,
                "endIndex": 8
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "eventType",
                  "parameterTypeTokenRange": {
                    "startIndex": 4,
                    "endIndex": 5
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "listeners"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!EventRouter#listeners:member(2)",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "listeners(eventType: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "EventEmitter.EventListener",
                  "canonicalReference": "eventemitter3!EventEmitter.EventListener:type"
                },
                {
                  "kind": "Content",
                  "text": "<any, string>[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 5
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 2,
              "parameters": [
                {
                  "parameterName": "eventType",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "listeners"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!EventRouter#off:member(1)",
              "docComment": "/**\n * Remove a listener for a specific event type.\n *\n * @param eventType - The type of event to remove the listener from.\n *\n * @param listener - The listener function to remove.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "off<TEventType extends "
                },
                {
                  "kind": "Content",
                  "text": "keyof "
                },
                {
                  "kind": "Reference",
                  "text": "EventPayloads",
                  "canonicalReference": "server!EventPayloads:interface"
                },
                {
                  "kind": "Content",
                  "text": ">(eventType: "
                },
                {
                  "kind": "Content",
                  "text": "TEventType"
                },
                {
                  "kind": "Content",
                  "text": ", listener: "
                },
                {
                  "kind": "Content",
                  "text": "(payload: "
                },
                {
                  "kind": "Reference",
                  "text": "EventPayloads",
                  "canonicalReference": "server!EventPayloads:interface"
                },
                {
                  "kind": "Content",
                  "text": "[TEventType]) => void"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "typeParameters": [
                {
                  "typeParameterName": "TEventType",
                  "constraintTokenRange": {
                    "startIndex": 1,
                    "endIndex": 3
                  },
                  "defaultTypeTokenRange": {
                    "startIndex": 0,
                    "endIndex": 0
                  }
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 10,
                "endIndex": 11
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "eventType",
                  "parameterTypeTokenRange": {
                    "startIndex": 4,
                    "endIndex": 5
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "listener",
                  "parameterTypeTokenRange": {
                    "startIndex": 6,
                    "endIndex": 9
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "off"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!EventRouter#off:member(2)",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "off(eventType: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": ", listener: "
                },
                {
                  "kind": "Content",
                  "text": "(payload: any) => void"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 5,
                "endIndex": 6
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 2,
              "parameters": [
                {
                  "parameterName": "eventType",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "listener",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "off"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!EventRouter#offAll:member(1)",
              "docComment": "/**\n * Remove all listeners or all listeners for a provided event type.\n *\n * @param eventType - The type of event to remove all listeners from.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "offAll<TEventType extends "
                },
                {
                  "kind": "Content",
                  "text": "keyof "
                },
                {
                  "kind": "Reference",
                  "text": "EventPayloads",
                  "canonicalReference": "server!EventPayloads:interface"
                },
                {
                  "kind": "Content",
                  "text": ">(eventType?: "
                },
                {
                  "kind": "Content",
                  "text": "TEventType"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "typeParameters": [
                {
                  "typeParameterName": "TEventType",
                  "constraintTokenRange": {
                    "startIndex": 1,
                    "endIndex": 3
                  },
                  "defaultTypeTokenRange": {
                    "startIndex": 0,
                    "endIndex": 0
                  }
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 6,
                "endIndex": 7
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "eventType",
                  "parameterTypeTokenRange": {
                    "startIndex": 4,
                    "endIndex": 5
                  },
                  "isOptional": true
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "offAll"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!EventRouter#offAll:member(2)",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "offAll(eventType?: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 2,
              "parameters": [
                {
                  "parameterName": "eventType",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": true
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "offAll"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!EventRouter#on:member(1)",
              "docComment": "/**\n * Register a listener for a specific event type.\n *\n * @remarks\n *\n * Listeners are invoked in the order they are registered.\n *\n * @param eventType - The type of event to listen for.\n *\n * @param listener - The listener function to invoke when the event is emitted.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "on<TEventType extends "
                },
                {
                  "kind": "Content",
                  "text": "keyof "
                },
                {
                  "kind": "Reference",
                  "text": "EventPayloads",
                  "canonicalReference": "server!EventPayloads:interface"
                },
                {
                  "kind": "Content",
                  "text": ">(eventType: "
                },
                {
                  "kind": "Content",
                  "text": "TEventType"
                },
                {
                  "kind": "Content",
                  "text": ", listener: "
                },
                {
                  "kind": "Content",
                  "text": "(payload: "
                },
                {
                  "kind": "Reference",
                  "text": "EventPayloads",
                  "canonicalReference": "server!EventPayloads:interface"
                },
                {
                  "kind": "Content",
                  "text": "[TEventType]) => void"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "typeParameters": [
                {
                  "typeParameterName": "TEventType",
                  "constraintTokenRange": {
                    "startIndex": 1,
                    "endIndex": 3
                  },
                  "defaultTypeTokenRange": {
                    "startIndex": 0,
                    "endIndex": 0
                  }
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 10,
                "endIndex": 11
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "eventType",
                  "parameterTypeTokenRange": {
                    "startIndex": 4,
                    "endIndex": 5
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "listener",
                  "parameterTypeTokenRange": {
                    "startIndex": 6,
                    "endIndex": 9
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "on"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!EventRouter#on:member(2)",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "on(eventType: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": ", listener: "
                },
                {
                  "kind": "Content",
                  "text": "(payload: any) => void"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 5,
                "endIndex": 6
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 2,
              "parameters": [
                {
                  "parameterName": "eventType",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "listener",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "on"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!EventRouter#once:member(1)",
              "docComment": "/**\n * Register a listener for a specific event type that will be invoked once.\n *\n * @param eventType - The type of event to listen for.\n *\n * @param listener - The listener function to invoke when the event is emitted.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "once<TEventType extends "
                },
                {
                  "kind": "Content",
                  "text": "keyof "
                },
                {
                  "kind": "Reference",
                  "text": "EventPayloads",
                  "canonicalReference": "server!EventPayloads:interface"
                },
                {
                  "kind": "Content",
                  "text": ">(eventType: "
                },
                {
                  "kind": "Content",
                  "text": "TEventType"
                },
                {
                  "kind": "Content",
                  "text": ", listener: "
                },
                {
                  "kind": "Content",
                  "text": "(payload: "
                },
                {
                  "kind": "Reference",
                  "text": "EventPayloads",
                  "canonicalReference": "server!EventPayloads:interface"
                },
                {
                  "kind": "Content",
                  "text": "[TEventType]) => void"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "typeParameters": [
                {
                  "typeParameterName": "TEventType",
                  "constraintTokenRange": {
                    "startIndex": 1,
                    "endIndex": 3
                  },
                  "defaultTypeTokenRange": {
                    "startIndex": 0,
                    "endIndex": 0
                  }
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 10,
                "endIndex": 11
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "eventType",
                  "parameterTypeTokenRange": {
                    "startIndex": 4,
                    "endIndex": 5
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "listener",
                  "parameterTypeTokenRange": {
                    "startIndex": 6,
                    "endIndex": 9
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "once"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!EventRouter#once:member(2)",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "once(eventType: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": ", listener: "
                },
                {
                  "kind": "Content",
                  "text": "(payload: any) => void"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 5,
                "endIndex": 6
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 2,
              "parameters": [
                {
                  "parameterName": "eventType",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "listener",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "once"
            }
          ],
          "implementsTokenRanges": []
        },
        {
          "kind": "TypeAlias",
          "canonicalReference": "server!FaceCallback:type",
          "docComment": "/**\n * A callback function called when the entity associated with the SimpleEntityController updates its rotation as it is attempting to face a target coordinate.\n *\n * @param currentRotation - The current rotation of the entity.\n *\n * @param targetRotation - The target rotation of the entity.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export type FaceCallback = "
            },
            {
              "kind": "Content",
              "text": "(currentRotation: "
            },
            {
              "kind": "Reference",
              "text": "QuaternionLike",
              "canonicalReference": "server!QuaternionLike:interface"
            },
            {
              "kind": "Content",
              "text": ", targetRotation: "
            },
            {
              "kind": "Reference",
              "text": "QuaternionLike",
              "canonicalReference": "server!QuaternionLike:interface"
            },
            {
              "kind": "Content",
              "text": ") => void"
            },
            {
              "kind": "Content",
              "text": ";"
            }
          ],
          "fileUrlPath": "src/worlds/entities/controllers/SimpleEntityController.ts",
          "releaseTag": "Public",
          "name": "FaceCallback",
          "typeTokenRange": {
            "startIndex": 1,
            "endIndex": 6
          }
        },
        {
          "kind": "TypeAlias",
          "canonicalReference": "server!FaceCompleteCallback:type",
          "docComment": "/**\n * A callback function called when the entity associated with the SimpleEntityController finishes rotating and is now facing a target coordinate.\n *\n * @param endRotation - The rotation of the entity after it has finished rotating.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export type FaceCompleteCallback = "
            },
            {
              "kind": "Content",
              "text": "(endRotation: "
            },
            {
              "kind": "Reference",
              "text": "QuaternionLike",
              "canonicalReference": "server!QuaternionLike:interface"
            },
            {
              "kind": "Content",
              "text": ") => void"
            },
            {
              "kind": "Content",
              "text": ";"
            }
          ],
          "fileUrlPath": "src/worlds/entities/controllers/SimpleEntityController.ts",
          "releaseTag": "Public",
          "name": "FaceCompleteCallback",
          "typeTokenRange": {
            "startIndex": 1,
            "endIndex": 4
          }
        },
        {
          "kind": "TypeAlias",
          "canonicalReference": "server!FaceOptions:type",
          "docComment": "/**\n * Options for the {@link SimpleEntityController.face} method.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export type FaceOptions = "
            },
            {
              "kind": "Content",
              "text": "{\n    faceCallback?: "
            },
            {
              "kind": "Reference",
              "text": "FaceCallback",
              "canonicalReference": "server!FaceCallback:type"
            },
            {
              "kind": "Content",
              "text": ";\n    faceCompleteCallback?: "
            },
            {
              "kind": "Reference",
              "text": "FaceCompleteCallback",
              "canonicalReference": "server!FaceCompleteCallback:type"
            },
            {
              "kind": "Content",
              "text": ";\n}"
            },
            {
              "kind": "Content",
              "text": ";"
            }
          ],
          "fileUrlPath": "src/worlds/entities/controllers/SimpleEntityController.ts",
          "releaseTag": "Public",
          "name": "FaceOptions",
          "typeTokenRange": {
            "startIndex": 1,
            "endIndex": 6
          }
        },
        {
          "kind": "TypeAlias",
          "canonicalReference": "server!FilterOptions:type",
          "docComment": "/**\n * Filter options for various operations like raycasting and intersections.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export type FilterOptions = "
            },
            {
              "kind": "Content",
              "text": "{\n    filterFlags?: "
            },
            {
              "kind": "Reference",
              "text": "RAPIER.QueryFilterFlags",
              "canonicalReference": "@dimforge/rapier3d-simd-compat!QueryFilterFlags:enum"
            },
            {
              "kind": "Content",
              "text": ";\n    filterGroups?: number;\n    filterExcludeCollider?: "
            },
            {
              "kind": "Reference",
              "text": "RawCollider",
              "canonicalReference": "server!RawCollider:type"
            },
            {
              "kind": "Content",
              "text": ";\n    filterExcludeRigidBody?: "
            },
            {
              "kind": "Reference",
              "text": "RAPIER.RigidBody",
              "canonicalReference": "@dimforge/rapier3d-simd-compat!RigidBody:class"
            },
            {
              "kind": "Content",
              "text": ";\n    filterPredicate?: (collider: "
            },
            {
              "kind": "Reference",
              "text": "RawCollider",
              "canonicalReference": "server!RawCollider:type"
            },
            {
              "kind": "Content",
              "text": ") => boolean;\n}"
            },
            {
              "kind": "Content",
              "text": ";"
            }
          ],
          "fileUrlPath": "src/worlds/physics/Simulation.ts",
          "releaseTag": "Public",
          "name": "FilterOptions",
          "typeTokenRange": {
            "startIndex": 1,
            "endIndex": 10
          }
        },
        {
          "kind": "Interface",
          "canonicalReference": "server!FixedRigidBodyOptions:interface",
          "docComment": "/**\n * The options for a fixed rigid body.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export interface FixedRigidBodyOptions extends "
            },
            {
              "kind": "Reference",
              "text": "BaseRigidBodyOptions",
              "canonicalReference": "server!BaseRigidBodyOptions:interface"
            },
            {
              "kind": "Content",
              "text": " "
            }
          ],
          "fileUrlPath": "src/worlds/physics/RigidBody.ts",
          "releaseTag": "Public",
          "name": "FixedRigidBodyOptions",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!FixedRigidBodyOptions#type:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "type: "
                },
                {
                  "kind": "Reference",
                  "text": "RigidBodyType.FIXED",
                  "canonicalReference": "server!RigidBodyType.FIXED:member"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "type",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            }
          ],
          "extendsTokenRanges": [
            {
              "startIndex": 1,
              "endIndex": 2
            }
          ]
        },
        {
          "kind": "Class",
          "canonicalReference": "server!GameServer:class",
          "docComment": "/**\n * Manages the game and associated worlds and systems.\n *\n * @remarks\n *\n * This class is used as a singleton and should be accessed via the `instance` property\n *\n * The constructor for this class is marked as internal. Third-party code should not call the constructor directly or create subclasses that extend the `GameServer` class.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export default class GameServer "
            }
          ],
          "fileUrlPath": "src/GameServer.ts",
          "releaseTag": "Public",
          "isAbstract": false,
          "name": "GameServer",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "Property",
              "canonicalReference": "server!GameServer.instance:member",
              "docComment": "/**\n * The singleton instance of the game server.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "static get instance(): "
                },
                {
                  "kind": "Reference",
                  "text": "GameServer",
                  "canonicalReference": "server!GameServer:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "instance",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": true,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!GameServer#modelRegistry:member",
              "docComment": "/**\n * The model manager for the game server.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get modelRegistry(): "
                },
                {
                  "kind": "Reference",
                  "text": "ModelRegistry",
                  "canonicalReference": "server!ModelRegistry:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "modelRegistry",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!GameServer#playerManager:member",
              "docComment": "/**\n * The player manager for the game server.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get playerManager(): "
                },
                {
                  "kind": "Reference",
                  "text": "PlayerManager",
                  "canonicalReference": "server!PlayerManager:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "playerManager",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!GameServer#webServer:member",
              "docComment": "/**\n * The web server for the game server.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get webServer(): "
                },
                {
                  "kind": "Reference",
                  "text": "WebServer",
                  "canonicalReference": "server!WebServer:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "webServer",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!GameServer#worldManager:member",
              "docComment": "/**\n * The world manager for the game server\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get worldManager(): "
                },
                {
                  "kind": "Reference",
                  "text": "WorldManager",
                  "canonicalReference": "server!WorldManager:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "worldManager",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            }
          ],
          "implementsTokenRanges": []
        },
        {
          "kind": "Enum",
          "canonicalReference": "server!GameServerEvent:enum",
          "docComment": "/**\n * Event types a GameServer instance can emit to the global event router. See {@link GameServerEventPayloads} for the payloads.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export declare enum GameServerEvent "
            }
          ],
          "fileUrlPath": "src/GameServer.ts",
          "releaseTag": "Public",
          "name": "GameServerEvent",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "EnumMember",
              "canonicalReference": "server!GameServerEvent.START:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "START = "
                },
                {
                  "kind": "Content",
                  "text": "\"GAMESERVER.START\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "START"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!GameServerEvent.STOP:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "STOP = "
                },
                {
                  "kind": "Content",
                  "text": "\"GAMESERVER.STOP\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "STOP"
            }
          ]
        },
        {
          "kind": "Interface",
          "canonicalReference": "server!GameServerEventPayloads:interface",
          "docComment": "/**\n * Event payloads for GameServer emitted events.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export interface GameServerEventPayloads "
            }
          ],
          "fileUrlPath": "src/GameServer.ts",
          "releaseTag": "Public",
          "name": "GameServerEventPayloads",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!GameServerEventPayloads#\"GAMESERVER.START\":member",
              "docComment": "/**\n * Emitted when the game server starts.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "GameServerEvent.START",
                  "canonicalReference": "server!GameServerEvent.START:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        startedAtMs: number;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"GAMESERVER.START\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!GameServerEventPayloads#\"GAMESERVER.STOP\":member",
              "docComment": "/**\n * Emitted when the game server stops.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "GameServerEvent.STOP",
                  "canonicalReference": "server!GameServerEvent.STOP:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        stoppedAtMs: number;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"GAMESERVER.STOP\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              }
            }
          ],
          "extendsTokenRanges": []
        },
        {
          "kind": "TypeAlias",
          "canonicalReference": "server!IntersectionResult:type",
          "docComment": "/**\n * A intersection result.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export type IntersectionResult = "
            },
            {
              "kind": "Content",
              "text": "{\n    intersectedBlockType?: "
            },
            {
              "kind": "Reference",
              "text": "BlockType",
              "canonicalReference": "server!BlockType:class"
            },
            {
              "kind": "Content",
              "text": ";\n    intersectedEntity?: "
            },
            {
              "kind": "Reference",
              "text": "Entity",
              "canonicalReference": "server!Entity:class"
            },
            {
              "kind": "Content",
              "text": ";\n}"
            },
            {
              "kind": "Content",
              "text": ";"
            }
          ],
          "fileUrlPath": "src/worlds/physics/Simulation.ts",
          "releaseTag": "Public",
          "name": "IntersectionResult",
          "typeTokenRange": {
            "startIndex": 1,
            "endIndex": 6
          }
        },
        {
          "kind": "Class",
          "canonicalReference": "server!IterationMap:class",
          "docComment": "/**\n * A high-performance Map-like data structure optimized for frequent iteration.\n *\n * @remarks\n *\n * IterationMap maintains both a Map for O(1) lookups and an Array for fast iteration, eliminating the need for Array.from() calls and providing ~2x faster iteration than Map.values(). Optimized for \"build up, iterate, clear\" usage patterns common in game loops.\n *\n * @example\n * ```typescript\n * const iterationMap = new IterationMap<number, string>();\n * iterationMap.set(1, 'hello');\n * iterationMap.set(2, 'world');\n *\n * // Fast O(1) lookup\n * const value = iterationMap.get(1);\n *\n * // Fast array iteration (no Map.values() overhead)\n * for (const item of iterationMap.valuesArray) {\n *   console.log(item);\n * }\n *\n * // Efficient bulk clear\n * iterationMap.clear();\n * ```\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export default class IterationMap<K, V> "
            }
          ],
          "fileUrlPath": "src/shared/classes/IterationMap.ts",
          "releaseTag": "Public",
          "typeParameters": [
            {
              "typeParameterName": "K",
              "constraintTokenRange": {
                "startIndex": 0,
                "endIndex": 0
              },
              "defaultTypeTokenRange": {
                "startIndex": 0,
                "endIndex": 0
              }
            },
            {
              "typeParameterName": "V",
              "constraintTokenRange": {
                "startIndex": 0,
                "endIndex": 0
              },
              "defaultTypeTokenRange": {
                "startIndex": 0,
                "endIndex": 0
              }
            }
          ],
          "isAbstract": false,
          "name": "IterationMap",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "Method",
              "canonicalReference": "server!IterationMap#[Symbol.iterator]:member(1)",
              "docComment": "/**\n * Returns an iterator for the key-value pairs in the IterationMap.\n *\n * @returns An iterator for the entries.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "Symbol.iterator",
                  "canonicalReference": "!SymbolConstructor#iterator"
                },
                {
                  "kind": "Content",
                  "text": "](): "
                },
                {
                  "kind": "Reference",
                  "text": "IterableIterator",
                  "canonicalReference": "!IterableIterator:interface"
                },
                {
                  "kind": "Content",
                  "text": "<[K, V]>"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 5
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "[Symbol.iterator]"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!IterationMap#clear:member(1)",
              "docComment": "/**\n * Removes all key-value pairs from the IterationMap. Highly optimized for the common \"build up, iterate, clear\" pattern.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "clear(): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "clear"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!IterationMap#delete:member(1)",
              "docComment": "/**\n * Removes the key-value pair from the IterationMap.\n *\n * @param key - The key to delete.\n *\n * @returns True if the key existed and was deleted, false otherwise.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "delete(key: "
                },
                {
                  "kind": "Content",
                  "text": "K"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "key",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "delete"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!IterationMap#entries:member(1)",
              "docComment": "/**\n * Returns an iterator for the key-value pairs in the IterationMap.\n *\n * @returns An iterator for the entries.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "entries(): "
                },
                {
                  "kind": "Reference",
                  "text": "IterableIterator",
                  "canonicalReference": "!IterableIterator:interface"
                },
                {
                  "kind": "Content",
                  "text": "<[K, V]>"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "entries"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!IterationMap#forEach:member(1)",
              "docComment": "/**\n * Executes a provided function once for each key-value pair.\n *\n * @param callbackfn - Function to execute for each element.\n *\n * @param thisArg - Value to use as this when executing callback.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "forEach(callbackfn: "
                },
                {
                  "kind": "Content",
                  "text": "(value: V, key: K, map: "
                },
                {
                  "kind": "Reference",
                  "text": "IterationMap",
                  "canonicalReference": "server!IterationMap:class"
                },
                {
                  "kind": "Content",
                  "text": "<K, V>) => void"
                },
                {
                  "kind": "Content",
                  "text": ", thisArg?: "
                },
                {
                  "kind": "Content",
                  "text": "any"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 7,
                "endIndex": 8
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "callbackfn",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 4
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "thisArg",
                  "parameterTypeTokenRange": {
                    "startIndex": 5,
                    "endIndex": 6
                  },
                  "isOptional": true
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "forEach"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!IterationMap#get:member(1)",
              "docComment": "/**\n * Returns the value associated with the key, or undefined if the key doesn't exist.\n *\n * @param key - The key to look up.\n *\n * @returns The value associated with the key, or undefined.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get(key: "
                },
                {
                  "kind": "Content",
                  "text": "K"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "V | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "key",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "get"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!IterationMap#has:member(1)",
              "docComment": "/**\n * Returns true if the key exists in the IterationMap.\n *\n * @param key - The key to check.\n *\n * @returns True if the key exists, false otherwise.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "has(key: "
                },
                {
                  "kind": "Content",
                  "text": "K"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "key",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "has"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!IterationMap#keys:member(1)",
              "docComment": "/**\n * Returns an iterator for the keys in the IterationMap.\n *\n * @returns An iterator for the keys.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "keys(): "
                },
                {
                  "kind": "Reference",
                  "text": "IterableIterator",
                  "canonicalReference": "!IterableIterator:interface"
                },
                {
                  "kind": "Content",
                  "text": "<K>"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "keys"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!IterationMap#set:member(1)",
              "docComment": "/**\n * Sets the value for the key in the IterationMap.\n *\n * @param key - The key to set.\n *\n * @param value - The value to set.\n *\n * @returns The IterationMap instance for chaining.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "set(key: "
                },
                {
                  "kind": "Content",
                  "text": "K"
                },
                {
                  "kind": "Content",
                  "text": ", value: "
                },
                {
                  "kind": "Content",
                  "text": "V"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "this"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 5,
                "endIndex": 6
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "key",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "value",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "set"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!IterationMap#size:member",
              "docComment": "/**\n * Returns the number of key-value pairs in the IterationMap.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get size(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "size",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!IterationMap#values:member(1)",
              "docComment": "/**\n * Returns an iterator for the values in the IterationMap. Note: For performance-critical iteration, use .valuesArray instead.\n *\n * @returns An iterator for the values.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "values(): "
                },
                {
                  "kind": "Reference",
                  "text": "IterableIterator",
                  "canonicalReference": "!IterableIterator:interface"
                },
                {
                  "kind": "Content",
                  "text": "<V>"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "values"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!IterationMap#valuesArray:member",
              "docComment": "/**\n * Returns a readonly array of all values for fast iteration. This is the key performance feature - use this instead of .values() for iteration.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get valuesArray(): "
                },
                {
                  "kind": "Content",
                  "text": "readonly V[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "valuesArray",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            }
          ],
          "implementsTokenRanges": []
        },
        {
          "kind": "Interface",
          "canonicalReference": "server!KinematicPositionRigidBodyOptions:interface",
          "docComment": "/**\n * The options for a kinematic position rigid body.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export interface KinematicPositionRigidBodyOptions extends "
            },
            {
              "kind": "Reference",
              "text": "BaseRigidBodyOptions",
              "canonicalReference": "server!BaseRigidBodyOptions:interface"
            },
            {
              "kind": "Content",
              "text": " "
            }
          ],
          "fileUrlPath": "src/worlds/physics/RigidBody.ts",
          "releaseTag": "Public",
          "name": "KinematicPositionRigidBodyOptions",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!KinematicPositionRigidBodyOptions#type:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "type: "
                },
                {
                  "kind": "Reference",
                  "text": "RigidBodyType.KINEMATIC_POSITION",
                  "canonicalReference": "server!RigidBodyType.KINEMATIC_POSITION:member"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "type",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            }
          ],
          "extendsTokenRanges": [
            {
              "startIndex": 1,
              "endIndex": 2
            }
          ]
        },
        {
          "kind": "Interface",
          "canonicalReference": "server!KinematicVelocityRigidBodyOptions:interface",
          "docComment": "/**\n * The options for a kinematic velocity rigid body.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export interface KinematicVelocityRigidBodyOptions extends "
            },
            {
              "kind": "Reference",
              "text": "BaseRigidBodyOptions",
              "canonicalReference": "server!BaseRigidBodyOptions:interface"
            },
            {
              "kind": "Content",
              "text": " "
            }
          ],
          "fileUrlPath": "src/worlds/physics/RigidBody.ts",
          "releaseTag": "Public",
          "name": "KinematicVelocityRigidBodyOptions",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!KinematicVelocityRigidBodyOptions#angularVelocity:member",
              "docComment": "/**\n * The angular velocity of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "angularVelocity?: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "angularVelocity",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!KinematicVelocityRigidBodyOptions#linearVelocity:member",
              "docComment": "/**\n * The linear velocity of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "linearVelocity?: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "linearVelocity",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!KinematicVelocityRigidBodyOptions#type:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "type: "
                },
                {
                  "kind": "Reference",
                  "text": "RigidBodyType.KINEMATIC_VELOCITY",
                  "canonicalReference": "server!RigidBodyType.KINEMATIC_VELOCITY:member"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "type",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            }
          ],
          "extendsTokenRanges": [
            {
              "startIndex": 1,
              "endIndex": 2
            }
          ]
        },
        {
          "kind": "Class",
          "canonicalReference": "server!Light:class",
          "docComment": "/**\n * Represents a light in a world. Lights can be point lights or spotlights.\n *\n * @remarks\n *\n * Lights are created directly as instances. They support a variety of configuration options through the {@link LightOptions} constructor argument.\n *\n * <h2>Events</h2>\n *\n * This class is an EventRouter, and instances of it emit events with payloads listed under {@link LightEventPayloads}\n *\n * @example\n * ```typescript\n * const light = new Light({\n *   attachedToEntity: playerEntity,\n *   color: { r: 255, g: 0, b: 0 },\n *   intensity: 5,\n *   offset: { x: 0, y: 1, z: 0 },\n * });\n *\n * light.spawn(world);\n * ```\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export default class Light extends "
            },
            {
              "kind": "Reference",
              "text": "EventRouter",
              "canonicalReference": "server!EventRouter:class"
            },
            {
              "kind": "Content",
              "text": " implements "
            },
            {
              "kind": "Reference",
              "text": "protocol.Serializable",
              "canonicalReference": "@hytopia.com/server-protocol!Serializable:interface"
            },
            {
              "kind": "Content",
              "text": " "
            }
          ],
          "fileUrlPath": "src/worlds/lights/Light.ts",
          "releaseTag": "Public",
          "isAbstract": false,
          "name": "Light",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "Constructor",
              "canonicalReference": "server!Light:constructor(1)",
              "docComment": "/**\n * Constructs a new instance of the `Light` class\n *\n * @param options - The options for the Light instance.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "constructor(options: "
                },
                {
                  "kind": "Reference",
                  "text": "LightOptions",
                  "canonicalReference": "server!LightOptions:interface"
                },
                {
                  "kind": "Content",
                  "text": ");"
                }
              ],
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "options",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ]
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Light#angle:member",
              "docComment": "/**\n * If type is spotlight, the angle of the spotlight.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get angle(): "
                },
                {
                  "kind": "Content",
                  "text": "number | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "angle",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Light#attachedToEntity:member",
              "docComment": "/**\n * The entity to which the Light is attached if explicitly set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get attachedToEntity(): "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "attachedToEntity",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Light#color:member",
              "docComment": "/**\n * The color of the light.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get color(): "
                },
                {
                  "kind": "Reference",
                  "text": "RgbColor",
                  "canonicalReference": "server!RgbColor:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "color",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Light#despawn:member(1)",
              "docComment": "/**\n * Despawns the Light from the world.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "despawn(): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "despawn"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Light#distance:member",
              "docComment": "/**\n * The maximum distance the light will illuminate. 0 does not limit distance. Defaults to 0.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get distance(): "
                },
                {
                  "kind": "Content",
                  "text": "number | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "distance",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Light#id:member",
              "docComment": "/**\n * The unique identifier for the Light.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get id(): "
                },
                {
                  "kind": "Content",
                  "text": "number | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "id",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Light#intensity:member",
              "docComment": "/**\n * The intensity of the light in candela (cd). Defaults to 1\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get intensity(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "intensity",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Light#isSpawned:member",
              "docComment": "/**\n * Whether the Light is spawned into the world.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get isSpawned(): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "isSpawned",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Light#offset:member",
              "docComment": "/**\n * The offset of the light from the attached entity or position.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get offset(): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "offset",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Light#penumbra:member",
              "docComment": "/**\n * If type is spotlight, the penumbra of the spotlight.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get penumbra(): "
                },
                {
                  "kind": "Content",
                  "text": "number | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "penumbra",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Light#position:member",
              "docComment": "/**\n * The position of the light in the world if explicitly set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get position(): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "position",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Light#setAngle:member(1)",
              "docComment": "/**\n * Sets the angle of the spotlight if the light type is spotlight.\n *\n * @param angle - The angle of the spotlight.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setAngle(angle: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "angle",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setAngle"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Light#setAttachedToEntity:member(1)",
              "docComment": "/**\n * Sets the entity to which the Light is attached.\n *\n * @param entity - The entity to attach the Light to.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setAttachedToEntity(entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "entity",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setAttachedToEntity"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Light#setColor:member(1)",
              "docComment": "/**\n * Sets the color of the light.\n *\n * @param color - The color of the light.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setColor(color: "
                },
                {
                  "kind": "Reference",
                  "text": "RgbColor",
                  "canonicalReference": "server!RgbColor:interface"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "color",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setColor"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Light#setDistance:member(1)",
              "docComment": "/**\n * Sets the maximum distance the light will illuminate.\n *\n * @param distance - The maximum distance the light will illuminate.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setDistance(distance: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "distance",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setDistance"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Light#setIntensity:member(1)",
              "docComment": "/**\n * Sets the intensity of the light.\n *\n * @param intensity - The intensity of the light.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setIntensity(intensity: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "intensity",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setIntensity"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Light#setOffset:member(1)",
              "docComment": "/**\n * Sets the offset of the light from the attached entity or position.\n *\n * @param offset - The offset of the light.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setOffset(offset: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "offset",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setOffset"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Light#setPenumbra:member(1)",
              "docComment": "/**\n * Sets the penumbra of the spotlight if the light type is spotlight.\n *\n * @param penumbra - The penumbra of the spotlight.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setPenumbra(penumbra: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "penumbra",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setPenumbra"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Light#setPosition:member(1)",
              "docComment": "/**\n * Sets the position of the light.\n *\n * @param position - The position of the light.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setPosition(position: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "position",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setPosition"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Light#setTrackedEntity:member(1)",
              "docComment": "/**\n * Sets the entity the spotlight will constantly point at if the light type is spotlight.\n *\n * @param entity - The entity the spotlight will constantly point at.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setTrackedEntity(entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "entity",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setTrackedEntity"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Light#setTrackedPosition:member(1)",
              "docComment": "/**\n * Sets the position the spotlight will constantly point at if the light type is spotlight.\n *\n * @param position - The position the spotlight will constantly point at.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setTrackedPosition(position: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "position",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setTrackedPosition"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Light#spawn:member(1)",
              "docComment": "/**\n * Spawns the Light in the world.\n *\n * @param world - The world to spawn the Light in.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "spawn(world: "
                },
                {
                  "kind": "Reference",
                  "text": "World",
                  "canonicalReference": "server!World:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "world",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "spawn"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Light#trackedEntity:member",
              "docComment": "/**\n * If type is spotlight, the entity the spotlight will constantly point at.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get trackedEntity(): "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "trackedEntity",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Light#trackedPosition:member",
              "docComment": "/**\n * If type is spotlight, the position the spotlight will constantly point at.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get trackedPosition(): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "trackedPosition",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Light#type:member",
              "docComment": "/**\n * The type of light. Defaults to point light.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get type(): "
                },
                {
                  "kind": "Reference",
                  "text": "LightType",
                  "canonicalReference": "server!LightType:enum"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "type",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Light#world:member",
              "docComment": "/**\n * The world the Light is spawned into.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get world(): "
                },
                {
                  "kind": "Reference",
                  "text": "World",
                  "canonicalReference": "server!World:class"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "world",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            }
          ],
          "extendsTokenRange": {
            "startIndex": 1,
            "endIndex": 2
          },
          "implementsTokenRanges": [
            {
              "startIndex": 3,
              "endIndex": 4
            }
          ]
        },
        {
          "kind": "Enum",
          "canonicalReference": "server!LightEvent:enum",
          "docComment": "/**\n * Event types a Light instance can emit. See {@link LightEventPayloads} for the payloads.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export declare enum LightEvent "
            }
          ],
          "fileUrlPath": "src/worlds/lights/Light.ts",
          "releaseTag": "Public",
          "name": "LightEvent",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "EnumMember",
              "canonicalReference": "server!LightEvent.DESPAWN:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "DESPAWN = "
                },
                {
                  "kind": "Content",
                  "text": "\"LIGHT.DESPAWN\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "DESPAWN"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!LightEvent.SET_ANGLE:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_ANGLE = "
                },
                {
                  "kind": "Content",
                  "text": "\"LIGHT.SET_ANGLE\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_ANGLE"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!LightEvent.SET_ATTACHED_TO_ENTITY:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_ATTACHED_TO_ENTITY = "
                },
                {
                  "kind": "Content",
                  "text": "\"LIGHT.SET_ATTACHED_TO_ENTITY\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_ATTACHED_TO_ENTITY"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!LightEvent.SET_COLOR:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_COLOR = "
                },
                {
                  "kind": "Content",
                  "text": "\"LIGHT.SET_COLOR\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_COLOR"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!LightEvent.SET_DISTANCE:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_DISTANCE = "
                },
                {
                  "kind": "Content",
                  "text": "\"LIGHT.SET_DISTANCE\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_DISTANCE"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!LightEvent.SET_INTENSITY:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_INTENSITY = "
                },
                {
                  "kind": "Content",
                  "text": "\"LIGHT.SET_INTENSITY\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_INTENSITY"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!LightEvent.SET_OFFSET:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_OFFSET = "
                },
                {
                  "kind": "Content",
                  "text": "\"LIGHT.SET_OFFSET\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_OFFSET"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!LightEvent.SET_PENUMBRA:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_PENUMBRA = "
                },
                {
                  "kind": "Content",
                  "text": "\"LIGHT.SET_PENUMBRA\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_PENUMBRA"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!LightEvent.SET_POSITION:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_POSITION = "
                },
                {
                  "kind": "Content",
                  "text": "\"LIGHT.SET_POSITION\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_POSITION"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!LightEvent.SET_TRACKED_ENTITY:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_TRACKED_ENTITY = "
                },
                {
                  "kind": "Content",
                  "text": "\"LIGHT.SET_TRACKED_ENTITY\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_TRACKED_ENTITY"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!LightEvent.SET_TRACKED_POSITION:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_TRACKED_POSITION = "
                },
                {
                  "kind": "Content",
                  "text": "\"LIGHT.SET_TRACKED_POSITION\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_TRACKED_POSITION"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!LightEvent.SPAWN:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SPAWN = "
                },
                {
                  "kind": "Content",
                  "text": "\"LIGHT.SPAWN\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SPAWN"
            }
          ]
        },
        {
          "kind": "Interface",
          "canonicalReference": "server!LightEventPayloads:interface",
          "docComment": "/**\n * Event payloads for Light emitted events.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export interface LightEventPayloads "
            }
          ],
          "fileUrlPath": "src/worlds/lights/Light.ts",
          "releaseTag": "Public",
          "name": "LightEventPayloads",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!LightEventPayloads#\"LIGHT.DESPAWN\":member",
              "docComment": "/**\n * Emitted when a light is despawned.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "LightEvent.DESPAWN",
                  "canonicalReference": "server!LightEvent.DESPAWN:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        light: "
                },
                {
                  "kind": "Reference",
                  "text": "Light",
                  "canonicalReference": "server!Light:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"LIGHT.DESPAWN\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!LightEventPayloads#\"LIGHT.SET_ANGLE\":member",
              "docComment": "/**\n * Emitted when the angle of the spotlight is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "LightEvent.SET_ANGLE",
                  "canonicalReference": "server!LightEvent.SET_ANGLE:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        light: "
                },
                {
                  "kind": "Reference",
                  "text": "Light",
                  "canonicalReference": "server!Light:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        angle: number;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"LIGHT.SET_ANGLE\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!LightEventPayloads#\"LIGHT.SET_ATTACHED_TO_ENTITY\":member",
              "docComment": "/**\n * Emitted when the light is attached to an entity.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "LightEvent.SET_ATTACHED_TO_ENTITY",
                  "canonicalReference": "server!LightEvent.SET_ATTACHED_TO_ENTITY:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        light: "
                },
                {
                  "kind": "Reference",
                  "text": "Light",
                  "canonicalReference": "server!Light:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"LIGHT.SET_ATTACHED_TO_ENTITY\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 8
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!LightEventPayloads#\"LIGHT.SET_COLOR\":member",
              "docComment": "/**\n * Emitted when the color of the light is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "LightEvent.SET_COLOR",
                  "canonicalReference": "server!LightEvent.SET_COLOR:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        light: "
                },
                {
                  "kind": "Reference",
                  "text": "Light",
                  "canonicalReference": "server!Light:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        color: "
                },
                {
                  "kind": "Reference",
                  "text": "RgbColor",
                  "canonicalReference": "server!RgbColor:interface"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"LIGHT.SET_COLOR\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 8
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!LightEventPayloads#\"LIGHT.SET_DISTANCE\":member",
              "docComment": "/**\n * Emitted when the maximum distance the light will illuminate is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "LightEvent.SET_DISTANCE",
                  "canonicalReference": "server!LightEvent.SET_DISTANCE:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        light: "
                },
                {
                  "kind": "Reference",
                  "text": "Light",
                  "canonicalReference": "server!Light:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        distance: number;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"LIGHT.SET_DISTANCE\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!LightEventPayloads#\"LIGHT.SET_INTENSITY\":member",
              "docComment": "/**\n * Emitted when the intensity of the light is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "LightEvent.SET_INTENSITY",
                  "canonicalReference": "server!LightEvent.SET_INTENSITY:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        light: "
                },
                {
                  "kind": "Reference",
                  "text": "Light",
                  "canonicalReference": "server!Light:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        intensity: number;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"LIGHT.SET_INTENSITY\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!LightEventPayloads#\"LIGHT.SET_OFFSET\":member",
              "docComment": "/**\n * Emitted when the offset of the light is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "LightEvent.SET_OFFSET",
                  "canonicalReference": "server!LightEvent.SET_OFFSET:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        light: "
                },
                {
                  "kind": "Reference",
                  "text": "Light",
                  "canonicalReference": "server!Light:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        offset: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"LIGHT.SET_OFFSET\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 8
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!LightEventPayloads#\"LIGHT.SET_PENUMBRA\":member",
              "docComment": "/**\n * Emitted when the penumbra of the spotlight is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "LightEvent.SET_PENUMBRA",
                  "canonicalReference": "server!LightEvent.SET_PENUMBRA:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        light: "
                },
                {
                  "kind": "Reference",
                  "text": "Light",
                  "canonicalReference": "server!Light:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        penumbra: number;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"LIGHT.SET_PENUMBRA\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!LightEventPayloads#\"LIGHT.SET_POSITION\":member",
              "docComment": "/**\n * Emitted when the position of the light is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "LightEvent.SET_POSITION",
                  "canonicalReference": "server!LightEvent.SET_POSITION:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        light: "
                },
                {
                  "kind": "Reference",
                  "text": "Light",
                  "canonicalReference": "server!Light:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        position: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"LIGHT.SET_POSITION\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 8
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!LightEventPayloads#\"LIGHT.SET_TRACKED_ENTITY\":member",
              "docComment": "/**\n * Emitted when the tracked entity of the spotlight is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "LightEvent.SET_TRACKED_ENTITY",
                  "canonicalReference": "server!LightEvent.SET_TRACKED_ENTITY:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        light: "
                },
                {
                  "kind": "Reference",
                  "text": "Light",
                  "canonicalReference": "server!Light:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"LIGHT.SET_TRACKED_ENTITY\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 8
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!LightEventPayloads#\"LIGHT.SET_TRACKED_POSITION\":member",
              "docComment": "/**\n * Emitted when the tracked position of the spotlight is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "LightEvent.SET_TRACKED_POSITION",
                  "canonicalReference": "server!LightEvent.SET_TRACKED_POSITION:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        light: "
                },
                {
                  "kind": "Reference",
                  "text": "Light",
                  "canonicalReference": "server!Light:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        position: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"LIGHT.SET_TRACKED_POSITION\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 8
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!LightEventPayloads#\"LIGHT.SPAWN\":member",
              "docComment": "/**\n * Emitted when a light is spawned.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "LightEvent.SPAWN",
                  "canonicalReference": "server!LightEvent.SPAWN:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        light: "
                },
                {
                  "kind": "Reference",
                  "text": "Light",
                  "canonicalReference": "server!Light:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"LIGHT.SPAWN\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            }
          ],
          "extendsTokenRanges": []
        },
        {
          "kind": "Class",
          "canonicalReference": "server!LightManager:class",
          "docComment": "/**\n * Manages Light instances in a world.\n *\n * @remarks\n *\n * The LightManager is created internally as a singleton for each {@link World} instance in a game server. It allows retrieval of all loaded Light instances, entity attached Light instances, and more.\n *\n * The constructor for this class is marked as internal. Third-party code should not call the constructor directly or create subclasses that extend the `LightManager` class.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export default class LightManager "
            }
          ],
          "fileUrlPath": "src/worlds/lights/LightManager.ts",
          "releaseTag": "Public",
          "isAbstract": false,
          "name": "LightManager",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "Method",
              "canonicalReference": "server!LightManager#getAllEntityAttachedLights:member(1)",
              "docComment": "/**\n * Retrieves all spawned Light instances attached to a specific entity.\n *\n * @param entity - The entity to get attached Light instances for.\n *\n * @returns An array of Light instances.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "getAllEntityAttachedLights(entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Light",
                  "canonicalReference": "server!Light:class"
                },
                {
                  "kind": "Content",
                  "text": "[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 5
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "entity",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "getAllEntityAttachedLights"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!LightManager#getAllLights:member(1)",
              "docComment": "/**\n * Retrieves all spawned Light instances for the world.\n *\n * @returns An array of Light instances.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "getAllLights(): "
                },
                {
                  "kind": "Reference",
                  "text": "Light",
                  "canonicalReference": "server!Light:class"
                },
                {
                  "kind": "Content",
                  "text": "[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "getAllLights"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!LightManager#world:member",
              "docComment": "/**\n * The world the LightManager is for.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get world(): "
                },
                {
                  "kind": "Reference",
                  "text": "World",
                  "canonicalReference": "server!World:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "world",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            }
          ],
          "implementsTokenRanges": []
        },
        {
          "kind": "Interface",
          "canonicalReference": "server!LightOptions:interface",
          "docComment": "/**\n * Options for creating a Light instance.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export interface LightOptions "
            }
          ],
          "fileUrlPath": "src/worlds/lights/Light.ts",
          "releaseTag": "Public",
          "name": "LightOptions",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!LightOptions#angle:member",
              "docComment": "/**\n * If type is spotlight, the angle of the spotlight.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "angle?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "angle",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!LightOptions#attachedToEntity:member",
              "docComment": "/**\n * If set, the light will be attached to this entity.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "attachedToEntity?: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "attachedToEntity",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!LightOptions#color:member",
              "docComment": "/**\n * The color of the light. Defaults to white.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "color?: "
                },
                {
                  "kind": "Reference",
                  "text": "RgbColor",
                  "canonicalReference": "server!RgbColor:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "color",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!LightOptions#distance:member",
              "docComment": "/**\n * The maximum distance the light will illuminate. 0 does not limit distance. Defaults to 0.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "distance?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "distance",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!LightOptions#intensity:member",
              "docComment": "/**\n * The intensity of the light in candela (cd). Defaults to 1\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "intensity?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "intensity",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!LightOptions#offset:member",
              "docComment": "/**\n * The offset of the light from the attached entity or position.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "offset?: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "offset",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!LightOptions#penumbra:member",
              "docComment": "/**\n * If type is spotlight, the penumbra of the spotlight. Defaults to 0\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "penumbra?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "penumbra",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!LightOptions#position:member",
              "docComment": "/**\n * If set, the light will be attached at this position.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "position?: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "position",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!LightOptions#trackedEntity:member",
              "docComment": "/**\n * If type is spotlight, the entity the spotlight will constantly point at.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "trackedEntity?: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "trackedEntity",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!LightOptions#trackedPosition:member",
              "docComment": "/**\n * If type is spotlight, the position the spotlight will constantly point at.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "trackedPosition?: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "trackedPosition",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!LightOptions#type:member",
              "docComment": "/**\n * The type of light. Defaults to point light.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "type?: "
                },
                {
                  "kind": "Reference",
                  "text": "LightType",
                  "canonicalReference": "server!LightType:enum"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "type",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            }
          ],
          "extendsTokenRanges": []
        },
        {
          "kind": "Enum",
          "canonicalReference": "server!LightType:enum",
          "docComment": "/**\n * The types a Light can be.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export declare enum LightType "
            }
          ],
          "fileUrlPath": "src/worlds/lights/Light.ts",
          "releaseTag": "Public",
          "name": "LightType",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "EnumMember",
              "canonicalReference": "server!LightType.POINTLIGHT:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "POINTLIGHT = "
                },
                {
                  "kind": "Content",
                  "text": "0"
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "POINTLIGHT"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!LightType.SPOTLIGHT:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SPOTLIGHT = "
                },
                {
                  "kind": "Content",
                  "text": "1"
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SPOTLIGHT"
            }
          ]
        },
        {
          "kind": "Class",
          "canonicalReference": "server!Matrix2:class",
          "docComment": "/**\n * Represents a 2x2 matrix.\n *\n * @remarks\n *\n * All matrix methods result in mutation of the matrix instance. This class extends `Float32Array` to provide an efficient way to create and manipulate a 2x2 matrix. Various convenience methods are provided for common matrix operations.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export default class Matrix2 extends "
            },
            {
              "kind": "Reference",
              "text": "Float32Array",
              "canonicalReference": "!Float32Array:interface"
            },
            {
              "kind": "Content",
              "text": " "
            }
          ],
          "fileUrlPath": "src/shared/classes/Matrix2.ts",
          "releaseTag": "Public",
          "isAbstract": false,
          "name": "Matrix2",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "Constructor",
              "canonicalReference": "server!Matrix2:constructor(1)",
              "docComment": "/**\n * Constructs a new instance of the `Matrix2` class\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "constructor(m00: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ", m01: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ", m10: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ", m11: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ");"
                }
              ],
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "m00",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "m01",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "m10",
                  "parameterTypeTokenRange": {
                    "startIndex": 5,
                    "endIndex": 6
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "m11",
                  "parameterTypeTokenRange": {
                    "startIndex": 7,
                    "endIndex": 8
                  },
                  "isOptional": false
                }
              ]
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix2#add:member(1)",
              "docComment": "/**\n * Adds a matrix to the current matrix.\n *\n * @param matrix2 - The matrix to add to the current matrix.\n *\n * @returns The current matrix.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "add(matrix2: "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix2",
                  "canonicalReference": "server!Matrix2:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix2",
                  "canonicalReference": "server!Matrix2:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "matrix2",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "add"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix2#adjoint:member(1)",
              "docComment": "/**\n * Sets the adjugate of the current matrix.\n *\n * @returns The current matrix.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "adjoint(): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix2",
                  "canonicalReference": "server!Matrix2:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "adjoint"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix2#clone:member(1)",
              "docComment": "/**\n * Clones the current matrix.\n *\n * @returns A clone of the current matrix.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "clone(): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix2",
                  "canonicalReference": "server!Matrix2:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "clone"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix2#copy:member(1)",
              "docComment": "/**\n * Copies a matrix to the current matrix.\n *\n * @param matrix2 - The matrix2 to copy to the current matrix.\n *\n * @returns The current matrix.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "copy(matrix2: "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix2",
                  "canonicalReference": "server!Matrix2:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix2",
                  "canonicalReference": "server!Matrix2:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "matrix2",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "copy"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix2.create:member(1)",
              "docComment": "/**\n * Creates a new `Matrix2` instance.\n *\n * @returns A new `Matrix2` instance.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "static create(): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix2",
                  "canonicalReference": "server!Matrix2:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": true,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "create"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Matrix2#determinant:member",
              "docComment": "/**\n * The determinant of the matrix.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get determinant(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "determinant",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix2#equals:member(1)",
              "docComment": "/**\n * Checks if the current matrix is approximately equal to another matrix.\n *\n * @param matrix2 - The matrix to compare to the current matrix.\n *\n * @returns `true` if the current matrix is equal to the provided matrix, `false` otherwise.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "equals(matrix2: "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix2",
                  "canonicalReference": "server!Matrix2:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "matrix2",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "equals"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix2#exactEquals:member(1)",
              "docComment": "/**\n * Checks if the current matrix is exactly equal to another matrix.\n *\n * @param matrix2 - The matrix to compare to the current matrix.\n *\n * @returns `true` if the current matrix is equal to the provided matrix, `false` otherwise.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "exactEquals(matrix2: "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix2",
                  "canonicalReference": "server!Matrix2:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "matrix2",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "exactEquals"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Matrix2#frobeniusNorm:member",
              "docComment": "/**\n * The frobenius normal of the matrix.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get frobeniusNorm(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "frobeniusNorm",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix2.fromRotation:member(1)",
              "docComment": "/**\n * Creates a new `Matrix2` instance from a rotation of identity matrix.\n *\n * @param angle - The angle in radians to rotate the matrix by.\n *\n * @returns A new `Matrix2` instance.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "static fromRotation(angle: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix2",
                  "canonicalReference": "server!Matrix2:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": true,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "angle",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "fromRotation"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix2.fromScaling:member(1)",
              "docComment": "/**\n * Creates a new `Matrix2` instance from a scale of identity matrix.\n *\n * @param scale - The scale of the matrix.\n *\n * @returns A new `Matrix2` instance.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "static fromScaling(scale: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector2",
                  "canonicalReference": "server!Vector2:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix2",
                  "canonicalReference": "server!Matrix2:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": true,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "scale",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "fromScaling"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix2#identity:member(1)",
              "docComment": "/**\n * Sets the current matrix to the identity matrix.\n *\n * @returns The current matrix.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "identity(): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix2",
                  "canonicalReference": "server!Matrix2:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "identity"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix2#invert:member(1)",
              "docComment": "/**\n * Inverts the current matrix.\n *\n * @returns The current matrix.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "invert(): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix2",
                  "canonicalReference": "server!Matrix2:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "invert"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix2#multiply:member(1)",
              "docComment": "/**\n * Multiplies the current matrix by another matrix.\n *\n * @param matrix2 - The matrix to multiply the current matrix by.\n *\n * @returns The current matrix.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "multiply(matrix2: "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix2",
                  "canonicalReference": "server!Matrix2:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix2",
                  "canonicalReference": "server!Matrix2:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "matrix2",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "multiply"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix2#multiplyScalar:member(1)",
              "docComment": "/**\n * Multiplies each element of the current matrix by a scalar value.\n *\n * @param scalar - The scalar value to multiply the current matrix elements by.\n *\n * @returns The current matrix.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "multiplyScalar(scalar: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix2",
                  "canonicalReference": "server!Matrix2:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "scalar",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "multiplyScalar"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix2#rotate:member(1)",
              "docComment": "/**\n * Rotates the current matrix by an angle in radians.\n *\n * @param angle - The angle in radians to rotate the current matrix by.\n *\n * @returns The current matrix.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "rotate(angle: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix2",
                  "canonicalReference": "server!Matrix2:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "angle",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "rotate"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix2#subtract:member(1)",
              "docComment": "/**\n * Subtracts a matrix from the current matrix.\n *\n * @param matrix2 - The matrix to subtract from the current matrix.\n *\n * @returns The current matrix.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "subtract(matrix2: "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix2",
                  "canonicalReference": "server!Matrix2:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix2",
                  "canonicalReference": "server!Matrix2:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "matrix2",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "subtract"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix2#toString:member(1)",
              "docComment": "/**\n * Returns a string representation of the current matrix.\n *\n * @returns A string representation of the current matrix.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "toString(): "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "toString"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix2#transpose:member(1)",
              "docComment": "/**\n * Transposes the current matrix.\n *\n * @returns The current matrix.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "transpose(): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix2",
                  "canonicalReference": "server!Matrix2:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "transpose"
            }
          ],
          "extendsTokenRange": {
            "startIndex": 1,
            "endIndex": 2
          },
          "implementsTokenRanges": []
        },
        {
          "kind": "Class",
          "canonicalReference": "server!Matrix3:class",
          "docComment": "/**\n * Represents a 3x3 matrix.\n *\n * @remarks\n *\n * All matrix methods result in mutation of the matrix instance. This class extends `Float32Array` to provide an efficient way to create and manipulate a 3x3 matrix. Various convenience methods are provided for common matrix operations.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export default class Matrix3 extends "
            },
            {
              "kind": "Reference",
              "text": "Float32Array",
              "canonicalReference": "!Float32Array:interface"
            },
            {
              "kind": "Content",
              "text": " "
            }
          ],
          "fileUrlPath": "src/shared/classes/Matrix3.ts",
          "releaseTag": "Public",
          "isAbstract": false,
          "name": "Matrix3",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "Constructor",
              "canonicalReference": "server!Matrix3:constructor(1)",
              "docComment": "/**\n * Constructs a new instance of the `Matrix3` class\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "constructor(m00: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ", m01: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ", m02: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ", m10: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ", m11: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ", m12: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ", m20: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ", m21: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ", m22: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ");"
                }
              ],
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "m00",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "m01",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "m02",
                  "parameterTypeTokenRange": {
                    "startIndex": 5,
                    "endIndex": 6
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "m10",
                  "parameterTypeTokenRange": {
                    "startIndex": 7,
                    "endIndex": 8
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "m11",
                  "parameterTypeTokenRange": {
                    "startIndex": 9,
                    "endIndex": 10
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "m12",
                  "parameterTypeTokenRange": {
                    "startIndex": 11,
                    "endIndex": 12
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "m20",
                  "parameterTypeTokenRange": {
                    "startIndex": 13,
                    "endIndex": 14
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "m21",
                  "parameterTypeTokenRange": {
                    "startIndex": 15,
                    "endIndex": 16
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "m22",
                  "parameterTypeTokenRange": {
                    "startIndex": 17,
                    "endIndex": 18
                  },
                  "isOptional": false
                }
              ]
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix3#add:member(1)",
              "docComment": "/**\n * Adds a matrix to the current matrix.\n *\n * @param matrix3 - The matrix to add to the current matrix.\n *\n * @returns The current matrix.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "add(matrix3: "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix3",
                  "canonicalReference": "server!Matrix3:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix3",
                  "canonicalReference": "server!Matrix3:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "matrix3",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "add"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix3#adjoint:member(1)",
              "docComment": "/**\n * Sets the adjugate of the current matrix.\n *\n * @returns The current matrix.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "adjoint(): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix3",
                  "canonicalReference": "server!Matrix3:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "adjoint"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix3#clone:member(1)",
              "docComment": "/**\n * Clones the current matrix.\n *\n * @returns A clone of the current matrix.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "clone(): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix3",
                  "canonicalReference": "server!Matrix3:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "clone"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix3#copy:member(1)",
              "docComment": "/**\n * Copies a matrix to the current matrix.\n *\n * @param matrix3 - The matrix to copy to the current matrix.\n *\n * @returns The current matrix.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "copy(matrix3: "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix3",
                  "canonicalReference": "server!Matrix3:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix3",
                  "canonicalReference": "server!Matrix3:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "matrix3",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "copy"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix3.create:member(1)",
              "docComment": "/**\n * Creates a new `Matrix3` instance.\n *\n * @returns A new `Matrix3` instance.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "static create(): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix3",
                  "canonicalReference": "server!Matrix3:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": true,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "create"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Matrix3#determinant:member",
              "docComment": "/**\n * The determinant of the matrix.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get determinant(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "determinant",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix3#equals:member(1)",
              "docComment": "/**\n * Checks if the current matrix is approximately equal to another matrix.\n *\n * @param matrix3 - The matrix to compare to the current matrix.\n *\n * @returns `true` if the current matrix is equal to the provided matrix, `false` otherwise.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "equals(matrix3: "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix3",
                  "canonicalReference": "server!Matrix3:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "matrix3",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "equals"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix3#exactEquals:member(1)",
              "docComment": "/**\n * Checks if the current matrix is exactly equal to another matrix.\n *\n * @param matrix3 - The matrix to compare to the current matrix.\n *\n * @returns `true` if the current matrix is equal to the provided matrix, `false` otherwise.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "exactEquals(matrix3: "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix3",
                  "canonicalReference": "server!Matrix3:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "matrix3",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "exactEquals"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Matrix3#frobeniusNorm:member",
              "docComment": "/**\n * The frobenius norm of the matrix.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get frobeniusNorm(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "frobeniusNorm",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix3.fromMatrix4:member(1)",
              "docComment": "/**\n * Creates a new `Matrix3` instance from a `Matrix4` instance.\n *\n * @param matrix4 - The `Matrix4` instance to create the `Matrix3` instance from.\n *\n * @returns A new `Matrix3` instance.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "static fromMatrix4(matrix4: "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix4",
                  "canonicalReference": "server!Matrix4:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix3",
                  "canonicalReference": "server!Matrix3:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": true,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "matrix4",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "fromMatrix4"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix3.fromQuaternion:member(1)",
              "docComment": "/**\n * Creates a new `Matrix3` instance from a `Quaternion` instance.\n *\n * @param quaternion - The `Quaternion` instance to create the `Matrix3` instance from.\n *\n * @returns A new `Matrix3` instance.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "static fromQuaternion(quaternion: "
                },
                {
                  "kind": "Reference",
                  "text": "Quaternion",
                  "canonicalReference": "server!Quaternion:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix3",
                  "canonicalReference": "server!Matrix3:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": true,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "quaternion",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "fromQuaternion"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix3.fromRotation:member(1)",
              "docComment": "/**\n * Creates a new `Matrix3` instance from a rotation of identity matrix.\n *\n * @param angle - The angle in radians to rotate the matrix by.\n *\n * @returns A new `Matrix3` instance.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "static fromRotation(angle: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix3",
                  "canonicalReference": "server!Matrix3:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": true,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "angle",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "fromRotation"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix3.fromScaling:member(1)",
              "docComment": "/**\n * Creates a new `Matrix3` instance from a scale of identity matrix.\n *\n * @param scale - The scale of the matrix.\n *\n * @returns A new `Matrix3` instance.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "static fromScaling(scale: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix3",
                  "canonicalReference": "server!Matrix3:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": true,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "scale",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "fromScaling"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix3.fromTranslation:member(1)",
              "docComment": "/**\n * Creates a new `Matrix3` instance from a translation of identity matrix. This is used only when working with two-dimensional homogeneous coordinates, which is why the `translation` parameter is a `Vector2`.\n *\n * @param translation - The translation of the matrix.\n *\n * @returns A new `Matrix3` instance.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "static fromTranslation(translation: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector2",
                  "canonicalReference": "server!Vector2:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix3",
                  "canonicalReference": "server!Matrix3:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": true,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "translation",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "fromTranslation"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix3#identity:member(1)",
              "docComment": "/**\n * Sets the current matrix to the identity matrix.\n *\n * @returns The current matrix.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "identity(): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix3",
                  "canonicalReference": "server!Matrix3:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "identity"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix3#invert:member(1)",
              "docComment": "/**\n * Inverts the current matrix.\n *\n * @returns The current matrix.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "invert(): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix3",
                  "canonicalReference": "server!Matrix3:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "invert"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix3#multiply:member(1)",
              "docComment": "/**\n * Multiplies the current matrix by another matrix.\n *\n * @param matrix3 - The matrix to multiply the current matrix by.\n *\n * @returns The current matrix.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "multiply(matrix3: "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix3",
                  "canonicalReference": "server!Matrix3:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix3",
                  "canonicalReference": "server!Matrix3:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "matrix3",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "multiply"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix3#multiplyScalar:member(1)",
              "docComment": "/**\n * Multiplies each element of the current matrix by a scalar value.\n *\n * @param scalar - The scalar value to multiply the current matrix elements by.\n *\n * @returns The current matrix.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "multiplyScalar(scalar: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix3",
                  "canonicalReference": "server!Matrix3:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "scalar",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "multiplyScalar"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix3#projection:member(1)",
              "docComment": "/**\n * Sets the current matrix to a orthographic projection matrix with the given bounds.\n *\n * @param width - The width of the projection.\n *\n * @param height - The height of the projection.\n *\n * @returns The current matrix.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "projection(width: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ", height: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix3",
                  "canonicalReference": "server!Matrix3:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 5,
                "endIndex": 6
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "width",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "height",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "projection"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix3#rotate:member(1)",
              "docComment": "/**\n * Rotates the current matrix by an angle in radians.\n *\n * @param angle - The angle in radians to rotate the current matrix by.\n *\n * @returns The current matrix.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "rotate(angle: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix3",
                  "canonicalReference": "server!Matrix3:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "angle",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "rotate"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix3#subtract:member(1)",
              "docComment": "/**\n * Subtracts a matrix from the current matrix.\n *\n * @param matrix3 - The matrix to subtract from the current matrix.\n *\n * @returns The current matrix.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "subtract(matrix3: "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix3",
                  "canonicalReference": "server!Matrix3:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix3",
                  "canonicalReference": "server!Matrix3:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "matrix3",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "subtract"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix3#toString:member(1)",
              "docComment": "/**\n * Returns a string representation of the current matrix.\n *\n * @returns A string representation of the current matrix.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "toString(): "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "toString"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix3#transformVector:member(1)",
              "docComment": "/**\n * Multiplies the provided vector3 by this matrix. This modifies the vector in-place, but also returns the transformed vector.\n *\n * @param vector - The vector to multiply by this.\n *\n * @returns The transformed vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "transformVector(vector: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "vector",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "transformVector"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix3#transpose:member(1)",
              "docComment": "/**\n * Transposes the current matrix.\n *\n * @returns The current matrix.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "transpose(): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix3",
                  "canonicalReference": "server!Matrix3:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "transpose"
            }
          ],
          "extendsTokenRange": {
            "startIndex": 1,
            "endIndex": 2
          },
          "implementsTokenRanges": []
        },
        {
          "kind": "Class",
          "canonicalReference": "server!Matrix4:class",
          "docComment": "/**\n * Represents a 4x4 matrix.\n *\n * @remarks\n *\n * All matrix methods result in mutation of the matrix instance. This class extends `Float32Array` to provide an efficient way to create and manipulate a 4x4 matrix. Various convenience methods are provided for common matrix operations.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export default class Matrix4 extends "
            },
            {
              "kind": "Reference",
              "text": "Float32Array",
              "canonicalReference": "!Float32Array:interface"
            },
            {
              "kind": "Content",
              "text": " "
            }
          ],
          "fileUrlPath": "src/shared/classes/Matrix4.ts",
          "releaseTag": "Public",
          "isAbstract": false,
          "name": "Matrix4",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "Constructor",
              "canonicalReference": "server!Matrix4:constructor(1)",
              "docComment": "/**\n * Constructs a new instance of the `Matrix4` class\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "constructor(m00: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ", m01: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ", m02: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ", m03: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ", m10: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ", m11: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ", m12: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ", m13: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ", m20: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ", m21: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ", m22: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ", m23: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ", m30: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ", m31: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ", m32: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ", m33: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ");"
                }
              ],
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "m00",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "m01",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "m02",
                  "parameterTypeTokenRange": {
                    "startIndex": 5,
                    "endIndex": 6
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "m03",
                  "parameterTypeTokenRange": {
                    "startIndex": 7,
                    "endIndex": 8
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "m10",
                  "parameterTypeTokenRange": {
                    "startIndex": 9,
                    "endIndex": 10
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "m11",
                  "parameterTypeTokenRange": {
                    "startIndex": 11,
                    "endIndex": 12
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "m12",
                  "parameterTypeTokenRange": {
                    "startIndex": 13,
                    "endIndex": 14
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "m13",
                  "parameterTypeTokenRange": {
                    "startIndex": 15,
                    "endIndex": 16
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "m20",
                  "parameterTypeTokenRange": {
                    "startIndex": 17,
                    "endIndex": 18
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "m21",
                  "parameterTypeTokenRange": {
                    "startIndex": 19,
                    "endIndex": 20
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "m22",
                  "parameterTypeTokenRange": {
                    "startIndex": 21,
                    "endIndex": 22
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "m23",
                  "parameterTypeTokenRange": {
                    "startIndex": 23,
                    "endIndex": 24
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "m30",
                  "parameterTypeTokenRange": {
                    "startIndex": 25,
                    "endIndex": 26
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "m31",
                  "parameterTypeTokenRange": {
                    "startIndex": 27,
                    "endIndex": 28
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "m32",
                  "parameterTypeTokenRange": {
                    "startIndex": 29,
                    "endIndex": 30
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "m33",
                  "parameterTypeTokenRange": {
                    "startIndex": 31,
                    "endIndex": 32
                  },
                  "isOptional": false
                }
              ]
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix4#add:member(1)",
              "docComment": "/**\n * Adds a matrix to the current matrix.\n *\n * @param matrix4 - The matrix to add to the current matrix.\n *\n * @returns The current matrix.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "add(matrix4: "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix4",
                  "canonicalReference": "server!Matrix4:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix4",
                  "canonicalReference": "server!Matrix4:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "matrix4",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "add"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix4#adjoint:member(1)",
              "docComment": "/**\n * Sets the adjugate of the current matrix.\n *\n * @returns The current matrix.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "adjoint(): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix4",
                  "canonicalReference": "server!Matrix4:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "adjoint"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix4#clone:member(1)",
              "docComment": "/**\n * Clones the current matrix.\n *\n * @returns A clone of the current matrix.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "clone(): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix4",
                  "canonicalReference": "server!Matrix4:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "clone"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix4#copy:member(1)",
              "docComment": "/**\n * Copies a matrix to the current matrix.\n *\n * @param matrix4 - The matrix to copy to the current matrix.\n *\n * @returns The current matrix.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "copy(matrix4: "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix4",
                  "canonicalReference": "server!Matrix4:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix4",
                  "canonicalReference": "server!Matrix4:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "matrix4",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "copy"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix4.create:member(1)",
              "docComment": "/**\n * Creates a new `Matrix4` instance.\n *\n * @returns A new `Matrix4` instance.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "static create(): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix4",
                  "canonicalReference": "server!Matrix4:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": true,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "create"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Matrix4#determinant:member",
              "docComment": "/**\n * The determinant of the matrix.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get determinant(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "determinant",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix4#equals:member(1)",
              "docComment": "/**\n * Checks if the current matrix is approximately equal to another matrix.\n *\n * @param matrix4 - The matrix to compare to the current matrix.\n *\n * @returns `true` if the current matrix is equal to the provided matrix, `false` otherwise.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "equals(matrix4: "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix4",
                  "canonicalReference": "server!Matrix4:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "matrix4",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "equals"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix4#exactEquals:member(1)",
              "docComment": "/**\n * Checks if the current matrix is exactly equal to another matrix.\n *\n * @param matrix4 - The matrix to compare to the current matrix.\n *\n * @returns `true` if the current matrix is equal to the provided matrix, `false` otherwise.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "exactEquals(matrix4: "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix4",
                  "canonicalReference": "server!Matrix4:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "matrix4",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "exactEquals"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Matrix4#frobeniusNorm:member",
              "docComment": "/**\n * The frobenius norm of the matrix.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get frobeniusNorm(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "frobeniusNorm",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix4.fromQuaternion:member(1)",
              "docComment": "/**\n * Creates a new `Matrix4` instance from a `Quaternion` object.\n *\n * @param quaternion - The `Quaternion` object to create the `Matrix4` instance from.\n *\n * @returns A new `Matrix4` instance.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "static fromQuaternion(quaternion: "
                },
                {
                  "kind": "Reference",
                  "text": "Quaternion",
                  "canonicalReference": "server!Quaternion:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix4",
                  "canonicalReference": "server!Matrix4:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": true,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "quaternion",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "fromQuaternion"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix4.fromRotation:member(1)",
              "docComment": "/**\n * Creates a new `Matrix4` instance from an angle and axis.\n *\n * @param angle - The angle in radians to rotate the matrix by.\n *\n * @param axis - The axis to rotate the matrix around.\n *\n * @returns A new `Matrix4` instance.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "static fromRotation(angle: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ", axis: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix4",
                  "canonicalReference": "server!Matrix4:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": true,
              "returnTypeTokenRange": {
                "startIndex": 5,
                "endIndex": 6
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "angle",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "axis",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "fromRotation"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix4.fromRotationTranslation:member(1)",
              "docComment": "/**\n * Creates a new `Matrix4` instance from a rotation and translation.\n *\n * @param rotation - The rotation of the matrix.\n *\n * @param translation - The translation of the matrix.\n *\n * @returns A new `Matrix4` instance.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "static fromRotationTranslation(rotation: "
                },
                {
                  "kind": "Reference",
                  "text": "Quaternion",
                  "canonicalReference": "server!Quaternion:class"
                },
                {
                  "kind": "Content",
                  "text": ", translation: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix4",
                  "canonicalReference": "server!Matrix4:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": true,
              "returnTypeTokenRange": {
                "startIndex": 5,
                "endIndex": 6
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "rotation",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "translation",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "fromRotationTranslation"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix4.fromRotationTranslationScale:member(1)",
              "docComment": "/**\n * Creates a new `Matrix4` instance from a rotation, translation, and scale.\n *\n * @param rotation - The rotation of the matrix.\n *\n * @param translation - The translation of the matrix.\n *\n * @param scale - The scale of the matrix.\n *\n * @returns A new `Matrix4` instance.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "static fromRotationTranslationScale(rotation: "
                },
                {
                  "kind": "Reference",
                  "text": "Quaternion",
                  "canonicalReference": "server!Quaternion:class"
                },
                {
                  "kind": "Content",
                  "text": ", translation: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": ", scale: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix4",
                  "canonicalReference": "server!Matrix4:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": true,
              "returnTypeTokenRange": {
                "startIndex": 7,
                "endIndex": 8
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "rotation",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "translation",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "scale",
                  "parameterTypeTokenRange": {
                    "startIndex": 5,
                    "endIndex": 6
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "fromRotationTranslationScale"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix4.fromRotationTranslationScaleOrigin:member(1)",
              "docComment": "/**\n * Creates a new `Matrix4` instance from a rotation, translation, scale, and origin.\n *\n * @param rotation - The rotation of the matrix.\n *\n * @param translation - The translation of the matrix.\n *\n * @param scale - The scale of the matrix.\n *\n * @param origin - The origin of the matrix.\n *\n * @returns A new `Matrix4` instance.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "static fromRotationTranslationScaleOrigin(rotation: "
                },
                {
                  "kind": "Reference",
                  "text": "Quaternion",
                  "canonicalReference": "server!Quaternion:class"
                },
                {
                  "kind": "Content",
                  "text": ", translation: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": ", scale: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": ", origin: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix4",
                  "canonicalReference": "server!Matrix4:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": true,
              "returnTypeTokenRange": {
                "startIndex": 9,
                "endIndex": 10
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "rotation",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "translation",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "scale",
                  "parameterTypeTokenRange": {
                    "startIndex": 5,
                    "endIndex": 6
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "origin",
                  "parameterTypeTokenRange": {
                    "startIndex": 7,
                    "endIndex": 8
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "fromRotationTranslationScaleOrigin"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix4.fromScaling:member(1)",
              "docComment": "/**\n * Creates a new `Matrix4` instance from a scale of identity matrix.\n *\n * @param scale - The scale of the matrix.\n *\n * @returns A new `Matrix4` instance.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "static fromScaling(scale: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix4",
                  "canonicalReference": "server!Matrix4:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": true,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "scale",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "fromScaling"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix4.fromTranslation:member(1)",
              "docComment": "/**\n * Creates a new `Matrix4` instance from a translation of identity matrix.\n *\n * @param translation - The translation of the matrix.\n *\n * @returns A new `Matrix4` instance.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "static fromTranslation(translation: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix4",
                  "canonicalReference": "server!Matrix4:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": true,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "translation",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "fromTranslation"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix4.fromXRotation:member(1)",
              "docComment": "/**\n * Creates a new `Matrix4` instance from an x-rotation of identity matrix.\n *\n * @param angle - The angle in radians to rotate the matrix by.\n *\n * @returns A new `Matrix4` instance.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "static fromXRotation(angle: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix4",
                  "canonicalReference": "server!Matrix4:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": true,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "angle",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "fromXRotation"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix4.fromYRotation:member(1)",
              "docComment": "/**\n * Creates a new `Matrix4` instance from a y-rotation of identity matrix.\n *\n * @param angle - The angle in radians to rotate the matrix by.\n *\n * @returns A new `Matrix4` instance.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "static fromYRotation(angle: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix4",
                  "canonicalReference": "server!Matrix4:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": true,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "angle",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "fromYRotation"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix4.fromZRotation:member(1)",
              "docComment": "/**\n * Creates a new `Matrix4` instance from a z-rotation of identity matrix.\n *\n * @param angle - The angle in radians to rotate the matrix by.\n *\n * @returns A new `Matrix4` instance.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "static fromZRotation(angle: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix4",
                  "canonicalReference": "server!Matrix4:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": true,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "angle",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "fromZRotation"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix4#frustrum:member(1)",
              "docComment": "/**\n * Sets the current matrix to a frustrum matrix with the given bounds.\n *\n * @param left - The left bound of the projection.\n *\n * @param right - The right bound of the projection.\n *\n * @param bottom - The bottom bound of the projection.\n *\n * @param top - The top bound of the projection.\n *\n * @param near - The near bound of the projection.\n *\n * @param far - The far bound of the projection.\n *\n * @returns The current matrix.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "frustrum(left: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ", right: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ", bottom: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ", top: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ", near: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ", far: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix4",
                  "canonicalReference": "server!Matrix4:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 13,
                "endIndex": 14
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "left",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "right",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "bottom",
                  "parameterTypeTokenRange": {
                    "startIndex": 5,
                    "endIndex": 6
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "top",
                  "parameterTypeTokenRange": {
                    "startIndex": 7,
                    "endIndex": 8
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "near",
                  "parameterTypeTokenRange": {
                    "startIndex": 9,
                    "endIndex": 10
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "far",
                  "parameterTypeTokenRange": {
                    "startIndex": 11,
                    "endIndex": 12
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "frustrum"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix4#identity:member(1)",
              "docComment": "/**\n * Sets the current matrix to the identity matrix.\n *\n * @returns The current matrix.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "identity(): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix4",
                  "canonicalReference": "server!Matrix4:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "identity"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix4#invert:member(1)",
              "docComment": "/**\n * Inverts the current matrix.\n *\n * @returns The current matrix.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "invert(): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix4",
                  "canonicalReference": "server!Matrix4:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "invert"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix4#lookAt:member(1)",
              "docComment": "/**\n * Sets the current matrix to a look-at matrix with the given eye, center, and up vectors.\n *\n * @param eye - The eye vector of the camera.\n *\n * @param center - The center vector of the camera.\n *\n * @param up - The up vector of the camera.\n *\n * @returns The current matrix.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "lookAt(eye: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": ", center: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": ", up: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix4",
                  "canonicalReference": "server!Matrix4:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 7,
                "endIndex": 8
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "eye",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "center",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "up",
                  "parameterTypeTokenRange": {
                    "startIndex": 5,
                    "endIndex": 6
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "lookAt"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix4#multiply:member(1)",
              "docComment": "/**\n * Multiplies the current matrix by another matrix.\n *\n * @param matrix4 - The matrix to multiply the current matrix by.\n *\n * @returns The current matrix.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "multiply(matrix4: "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix4",
                  "canonicalReference": "server!Matrix4:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix4",
                  "canonicalReference": "server!Matrix4:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "matrix4",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "multiply"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix4#multiplyScalar:member(1)",
              "docComment": "/**\n * Multiplies each element of the current matrix by a scalar value.\n *\n * @param scalar - The scalar value to multiply the current matrix elements by.\n *\n * @returns The current matrix.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "multiplyScalar(scalar: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix4",
                  "canonicalReference": "server!Matrix4:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "scalar",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "multiplyScalar"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix4#orthographic:member(1)",
              "docComment": "/**\n * Sets the current matrix to an orthographic projection matrix with the given bounds.\n *\n * @param left - The left bound of the frustum.\n *\n * @param right - The right bound of the frustum.\n *\n * @param bottom - The bottom bound of the frustum.\n *\n * @param top - The top bound of the frustum.\n *\n * @param near - The near bound of the frustum.\n *\n * @param far - The far bound of the frustum.\n *\n * @returns The current matrix.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "orthographic(left: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ", right: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ", bottom: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ", top: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ", near: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ", far: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix4",
                  "canonicalReference": "server!Matrix4:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 13,
                "endIndex": 14
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "left",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "right",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "bottom",
                  "parameterTypeTokenRange": {
                    "startIndex": 5,
                    "endIndex": 6
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "top",
                  "parameterTypeTokenRange": {
                    "startIndex": 7,
                    "endIndex": 8
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "near",
                  "parameterTypeTokenRange": {
                    "startIndex": 9,
                    "endIndex": 10
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "far",
                  "parameterTypeTokenRange": {
                    "startIndex": 11,
                    "endIndex": 12
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "orthographic"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix4#perspective:member(1)",
              "docComment": "/**\n * Sets the current matrix to a perspective matrix with the given field of view, aspect ratio, and near and far bounds.\n *\n * @param fovy - The field of view of the projection.\n *\n * @param aspect - The aspect ratio of the projection.\n *\n * @param near - The near bound of the projection.\n *\n * @param far - The far bound of the projection.\n *\n * @returns The current matrix.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "perspective(fovy: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ", aspect: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ", near: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ", far: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix4",
                  "canonicalReference": "server!Matrix4:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 9,
                "endIndex": 10
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "fovy",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "aspect",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "near",
                  "parameterTypeTokenRange": {
                    "startIndex": 5,
                    "endIndex": 6
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "far",
                  "parameterTypeTokenRange": {
                    "startIndex": 7,
                    "endIndex": 8
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "perspective"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix4#rotate:member(1)",
              "docComment": "/**\n * Rotates the current matrix by an angle in radians around an axis.\n *\n * @param angle - The angle in radians to rotate the current matrix by.\n *\n * @param axis - The axis to rotate the current matrix around.\n *\n * @returns The current matrix.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "rotate(angle: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ", axis: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix4",
                  "canonicalReference": "server!Matrix4:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 5,
                "endIndex": 6
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "angle",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "axis",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "rotate"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix4#rotateX:member(1)",
              "docComment": "/**\n * Rotates the current matrix by an angle in radians around the x-axis.\n *\n * @param angle - The angle in radians to rotate the current matrix by.\n *\n * @returns The current matrix.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "rotateX(angle: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix4",
                  "canonicalReference": "server!Matrix4:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "angle",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "rotateX"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix4#rotateY:member(1)",
              "docComment": "/**\n * Rotates the current matrix by an angle in radians around the y-axis.\n *\n * @param angle - The angle in radians to rotate the current matrix by.\n *\n * @returns The current matrix.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "rotateY(angle: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix4",
                  "canonicalReference": "server!Matrix4:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "angle",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "rotateY"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix4#rotateZ:member(1)",
              "docComment": "/**\n * Rotates the current matrix by an angle in radians around the z-axis.\n *\n * @param angle - The angle in radians to rotate the current matrix by.\n *\n * @returns The current matrix.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "rotateZ(angle: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix4",
                  "canonicalReference": "server!Matrix4:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "angle",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "rotateZ"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix4#scale:member(1)",
              "docComment": "/**\n * Scales the current matrix by a vector.\n *\n * @param vector3 - The vector to scale the current matrix by.\n *\n * @returns The current matrix.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "scale(vector3: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix4",
                  "canonicalReference": "server!Matrix4:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "vector3",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "scale"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix4#subtract:member(1)",
              "docComment": "/**\n * Subtracts a matrix from the current matrix.\n *\n * @param matrix4 - The matrix to subtract from the current matrix.\n *\n * @returns The current matrix.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "subtract(matrix4: "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix4",
                  "canonicalReference": "server!Matrix4:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix4",
                  "canonicalReference": "server!Matrix4:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "matrix4",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "subtract"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix4#targetTo:member(1)",
              "docComment": "/**\n * Sets the current matrix to a matrix that looks at a target.\n *\n * @param eye - The eye vector of the camera.\n *\n * @param center - The center vector of the camera.\n *\n * @param up - The up vector of the camera.\n *\n * @returns The current matrix.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "targetTo(eye: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": ", center: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": ", up: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix4",
                  "canonicalReference": "server!Matrix4:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 7,
                "endIndex": 8
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "eye",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "center",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "up",
                  "parameterTypeTokenRange": {
                    "startIndex": 5,
                    "endIndex": 6
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "targetTo"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix4#toString:member(1)",
              "docComment": "/**\n * Returns a string representation of the current matrix.\n *\n * @returns A string representation of the current matrix.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "toString(): "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "toString"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix4#translate:member(1)",
              "docComment": "/**\n * Translates the current matrix by a vector.\n *\n * @param vector3 - The vector to translate the current matrix by.\n *\n * @returns The current matrix.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "translate(vector3: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix4",
                  "canonicalReference": "server!Matrix4:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "vector3",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "translate"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Matrix4#transpose:member(1)",
              "docComment": "/**\n * Transposes the current matrix.\n *\n * @returns The current matrix.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "transpose(): "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix4",
                  "canonicalReference": "server!Matrix4:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "transpose"
            }
          ],
          "extendsTokenRange": {
            "startIndex": 1,
            "endIndex": 2
          },
          "implementsTokenRanges": []
        },
        {
          "kind": "TypeAlias",
          "canonicalReference": "server!ModelBoundingBox:type",
          "docComment": "/**\n * A bounding box for a model.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export type ModelBoundingBox = "
            },
            {
              "kind": "Content",
              "text": "{\n    min: "
            },
            {
              "kind": "Reference",
              "text": "Vector3Like",
              "canonicalReference": "server!Vector3Like:interface"
            },
            {
              "kind": "Content",
              "text": ";\n    max: "
            },
            {
              "kind": "Reference",
              "text": "Vector3Like",
              "canonicalReference": "server!Vector3Like:interface"
            },
            {
              "kind": "Content",
              "text": ";\n}"
            },
            {
              "kind": "Content",
              "text": ";"
            }
          ],
          "fileUrlPath": "src/models/ModelRegistry.ts",
          "releaseTag": "Public",
          "name": "ModelBoundingBox",
          "typeTokenRange": {
            "startIndex": 1,
            "endIndex": 6
          }
        },
        {
          "kind": "Interface",
          "canonicalReference": "server!ModelEntityOptions:interface",
          "docComment": "/**\n * The options for creating a model entity.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export interface ModelEntityOptions extends "
            },
            {
              "kind": "Reference",
              "text": "BaseEntityOptions",
              "canonicalReference": "server!BaseEntityOptions:interface"
            },
            {
              "kind": "Content",
              "text": " "
            }
          ],
          "fileUrlPath": "src/worlds/entities/Entity.ts",
          "releaseTag": "Public",
          "name": "ModelEntityOptions",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ModelEntityOptions#modelAnimationsPlaybackRate:member",
              "docComment": "/**\n * The playback rate of the entity's model animations.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "modelAnimationsPlaybackRate?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "modelAnimationsPlaybackRate",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ModelEntityOptions#modelHiddenNodes:member",
              "docComment": "/**\n * The nodes to hide on the entity's model.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "modelHiddenNodes?: "
                },
                {
                  "kind": "Content",
                  "text": "string[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "modelHiddenNodes",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ModelEntityOptions#modelLoopedAnimations:member",
              "docComment": "/**\n * The looped animations to start when the entity is spawned.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "modelLoopedAnimations?: "
                },
                {
                  "kind": "Content",
                  "text": "string[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "modelLoopedAnimations",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ModelEntityOptions#modelPreferredShape:member",
              "docComment": "/**\n * The preferred shape of the entity's model when automatically generating its collider when no explicit colliders are provided.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "modelPreferredShape?: "
                },
                {
                  "kind": "Reference",
                  "text": "ColliderShape",
                  "canonicalReference": "server!ColliderShape:enum"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "modelPreferredShape",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ModelEntityOptions#modelScale:member",
              "docComment": "/**\n * The scale of the entity's model.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "modelScale?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "modelScale",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ModelEntityOptions#modelShownNodes:member",
              "docComment": "/**\n * The nodes to show on the entity's model, overriding hidden nodes.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "modelShownNodes?: "
                },
                {
                  "kind": "Content",
                  "text": "string[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "modelShownNodes",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ModelEntityOptions#modelTextureUri:member",
              "docComment": "/**\n * The texture uri of the entity's model. Setting this overrides the model's default texture.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "modelTextureUri?: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "modelTextureUri",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ModelEntityOptions#modelUri:member",
              "docComment": "/**\n * The URI or path to the .gltf model asset to be used for the entity.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "modelUri?: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "modelUri",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            }
          ],
          "extendsTokenRanges": [
            {
              "startIndex": 1,
              "endIndex": 2
            }
          ]
        },
        {
          "kind": "Class",
          "canonicalReference": "server!ModelRegistry:class",
          "docComment": "/**\n * Manages model data for all known models of the game.\n *\n * @remarks\n *\n * The ModelRegistry is created internally as a global singletone accessible with the static property `ModelRegistry.instance`.\n *\n * The constructor for this class is marked as internal. Third-party code should not call the constructor directly or create subclasses that extend the `ModelRegistry` class.\n *\n * @example\n * ```typescript\n * import { ModelRegistry } from 'hytopia';\n *\n * const modelRegistry = ModelRegistry.instance;\n * const boundingBox = modelRegistry.getBoundingBox('models/player.gltf');\n * ```\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export default class ModelRegistry "
            }
          ],
          "fileUrlPath": "src/models/ModelRegistry.ts",
          "releaseTag": "Public",
          "isAbstract": false,
          "name": "ModelRegistry",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "Method",
              "canonicalReference": "server!ModelRegistry#getAnimationNames:member(1)",
              "docComment": "/**\n * Retrieves an array of all known animation names for a model.\n *\n * @param modelUri - The URI of the model to retrieve the animation names for.\n *\n * @returns An array of all known animation names for the model.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "getAnimationNames(modelUri: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "string[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "modelUri",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "getAnimationNames"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!ModelRegistry#getBoundingBox:member(1)",
              "docComment": "/**\n * Retrieves the bounding box of a model.\n *\n * @param modelUri - The URI of the model to retrieve the bounding box for.\n *\n * @returns The bounding box of the model.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "getBoundingBox(modelUri: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "ModelBoundingBox",
                  "canonicalReference": "server!ModelBoundingBox:type"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "modelUri",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "getBoundingBox"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!ModelRegistry#getDepth:member(1)",
              "docComment": "/**\n * Retrieves the Z-axis depth of a model for a scale of 1.\n *\n * @param modelUri - The URI of the model to retrieve the depth for.\n *\n * @returns The depth of the model.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "getDepth(modelUri: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "modelUri",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "getDepth"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!ModelRegistry#getHeight:member(1)",
              "docComment": "/**\n * Retrieves the Y-axis height of a model for a scale of 1.\n *\n * @param modelUri - The URI of the model to retrieve the height for.\n *\n * @returns The height of the model.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "getHeight(modelUri: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "modelUri",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "getHeight"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!ModelRegistry#getNodeNames:member(1)",
              "docComment": "/**\n * Retrieves the names of all nodes in a model.\n *\n * @param modelUri - The URI of the model to retrieve the node names for.\n *\n * @returns The names of all nodes in the model.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "getNodeNames(modelUri: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "string[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "modelUri",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "getNodeNames"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!ModelRegistry#getTrimesh:member(1)",
              "docComment": "/**\n * Retrieves the trimesh of a model.\n *\n * @param modelUri - The URI of the model to retrieve the trimesh for.\n *\n * @param scale - Optional uniform scaling to apply to the trimesh. Defaults to 1, which is no scaling.\n *\n * @returns The trimesh of the model.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "getTrimesh(modelUri: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": ", scale?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "ModelTrimesh",
                  "canonicalReference": "server!ModelTrimesh:type"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 5,
                "endIndex": 7
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "modelUri",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "scale",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": true
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "getTrimesh"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!ModelRegistry#getWidth:member(1)",
              "docComment": "/**\n * Retrieves the X-axis width of a model for a scale of 1.\n *\n * @param modelUri - The URI of the model to retrieve the width for.\n *\n * @returns The width of the model.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "getWidth(modelUri: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "modelUri",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "getWidth"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!ModelRegistry.instance:member",
              "docComment": "/**\n * The global ModelRegistry instance as a singleton.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "static readonly instance: "
                },
                {
                  "kind": "Reference",
                  "text": "ModelRegistry",
                  "canonicalReference": "server!ModelRegistry:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "instance",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": true,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!ModelRegistry#modelHasNode:member(1)",
              "docComment": "/**\n * Checks if a model has a node with the given name.\n *\n * @param modelUri - The URI of the model to check.\n *\n * @param nodeName - The name of the node to check for.\n *\n * @returns Whether the model has a node with the given name.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "modelHasNode(modelUri: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": ", nodeName: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 5,
                "endIndex": 6
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "modelUri",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "nodeName",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "modelHasNode"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!ModelRegistry#optimize:member",
              "docComment": "/**\n * Whether to use optimized models when they are loaded.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "optimize: "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "optimize",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!ModelRegistry#optimizeEveryStart:member",
              "docComment": "/**\n * Whether to always run model optimization on server start.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "optimizeEveryStart: "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "optimizeEveryStart",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            }
          ],
          "implementsTokenRanges": []
        },
        {
          "kind": "TypeAlias",
          "canonicalReference": "server!ModelTrimesh:type",
          "docComment": "/**\n * A trimesh for a model.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export type ModelTrimesh = "
            },
            {
              "kind": "Content",
              "text": "{\n    vertices: "
            },
            {
              "kind": "Reference",
              "text": "Float32Array",
              "canonicalReference": "!Float32Array:interface"
            },
            {
              "kind": "Content",
              "text": ";\n    indices: "
            },
            {
              "kind": "Reference",
              "text": "Uint32Array",
              "canonicalReference": "!Uint32Array:interface"
            },
            {
              "kind": "Content",
              "text": ";\n}"
            },
            {
              "kind": "Content",
              "text": ";"
            }
          ],
          "fileUrlPath": "src/models/ModelRegistry.ts",
          "releaseTag": "Public",
          "name": "ModelTrimesh",
          "typeTokenRange": {
            "startIndex": 1,
            "endIndex": 6
          }
        },
        {
          "kind": "TypeAlias",
          "canonicalReference": "server!MoveCallback:type",
          "docComment": "/**\n * A callback function called when the entity associated with the SimpleEntityController updates its position as it is attempting to move to a target coordinate.\n *\n * @param currentPosition - The current position of the entity.\n *\n * @param targetPosition - The target position of the entity.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export type MoveCallback = "
            },
            {
              "kind": "Content",
              "text": "(currentPosition: "
            },
            {
              "kind": "Reference",
              "text": "Vector3Like",
              "canonicalReference": "server!Vector3Like:interface"
            },
            {
              "kind": "Content",
              "text": ", targetPosition: "
            },
            {
              "kind": "Reference",
              "text": "Vector3Like",
              "canonicalReference": "server!Vector3Like:interface"
            },
            {
              "kind": "Content",
              "text": ") => void"
            },
            {
              "kind": "Content",
              "text": ";"
            }
          ],
          "fileUrlPath": "src/worlds/entities/controllers/SimpleEntityController.ts",
          "releaseTag": "Public",
          "name": "MoveCallback",
          "typeTokenRange": {
            "startIndex": 1,
            "endIndex": 6
          }
        },
        {
          "kind": "TypeAlias",
          "canonicalReference": "server!MoveCompleteCallback:type",
          "docComment": "/**\n * A callback function called when the entity associated with the SimpleEntityController reaches the target coordinate. An entity must reach the x,y,z coordinate for the callback to be called.\n *\n * @param endPosition - The position of the entity after it has finished moving.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export type MoveCompleteCallback = "
            },
            {
              "kind": "Content",
              "text": "(endPosition: "
            },
            {
              "kind": "Reference",
              "text": "Vector3Like",
              "canonicalReference": "server!Vector3Like:interface"
            },
            {
              "kind": "Content",
              "text": ") => void"
            },
            {
              "kind": "Content",
              "text": ";"
            }
          ],
          "fileUrlPath": "src/worlds/entities/controllers/SimpleEntityController.ts",
          "releaseTag": "Public",
          "name": "MoveCompleteCallback",
          "typeTokenRange": {
            "startIndex": 1,
            "endIndex": 4
          }
        },
        {
          "kind": "TypeAlias",
          "canonicalReference": "server!MoveOptions:type",
          "docComment": "/**\n * Options for the {@link SimpleEntityController.move} method.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export type MoveOptions = "
            },
            {
              "kind": "Content",
              "text": "{\n    moveCallback?: "
            },
            {
              "kind": "Reference",
              "text": "MoveCallback",
              "canonicalReference": "server!MoveCallback:type"
            },
            {
              "kind": "Content",
              "text": ";\n    moveCompleteCallback?: "
            },
            {
              "kind": "Reference",
              "text": "MoveCompleteCallback",
              "canonicalReference": "server!MoveCompleteCallback:type"
            },
            {
              "kind": "Content",
              "text": ";\n    moveIgnoreAxes?: {\n        x?: boolean;\n        y?: boolean;\n        z?: boolean;\n    };\n    moveStartIdleAnimationsOnCompletion?: boolean;\n    moveStoppingDistance?: number;\n    moveCompletesWhenStuck?: boolean;\n}"
            },
            {
              "kind": "Content",
              "text": ";"
            }
          ],
          "fileUrlPath": "src/worlds/entities/controllers/SimpleEntityController.ts",
          "releaseTag": "Public",
          "name": "MoveOptions",
          "typeTokenRange": {
            "startIndex": 1,
            "endIndex": 6
          }
        },
        {
          "kind": "Interface",
          "canonicalReference": "server!NoneColliderOptions:interface",
          "docComment": "/**\n * The options for an error type \"none\" collider.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export interface NoneColliderOptions extends "
            },
            {
              "kind": "Reference",
              "text": "BaseColliderOptions",
              "canonicalReference": "server!BaseColliderOptions:interface"
            },
            {
              "kind": "Content",
              "text": " "
            }
          ],
          "fileUrlPath": "src/worlds/physics/Collider.ts",
          "releaseTag": "Public",
          "name": "NoneColliderOptions",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!NoneColliderOptions#shape:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "shape: "
                },
                {
                  "kind": "Reference",
                  "text": "ColliderShape.NONE",
                  "canonicalReference": "server!ColliderShape.NONE:member"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "shape",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            }
          ],
          "extendsTokenRanges": [
            {
              "startIndex": 1,
              "endIndex": 2
            }
          ]
        },
        {
          "kind": "Class",
          "canonicalReference": "server!ParticleEmitter:class",
          "docComment": "/**\n * Represents a particle emitter in the world. Emit 2D particles that always face the camera.\n *\n * @remarks\n *\n * Particle emitters are created directly as instances. They support a variety of configuration options through the {@link ParticleEmitterOptions} constructor argument.\n *\n * <h2>Events</h2>\n *\n * This class is an EventRouter, and instance of it emit events with payloads listed under {@link ParticleEmitterEventPayloads}.\n *\n * @example\n * ```typescript\n * const particleEmitter = new ParticleEmitter({\n *   textureUri: 'textures/particles/smoke.png',\n * });\n *\n * particleEmitter.spawn(world);\n * ```\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export default class ParticleEmitter extends "
            },
            {
              "kind": "Reference",
              "text": "EventRouter",
              "canonicalReference": "server!EventRouter:class"
            },
            {
              "kind": "Content",
              "text": " implements "
            },
            {
              "kind": "Reference",
              "text": "protocol.Serializable",
              "canonicalReference": "@hytopia.com/server-protocol!Serializable:interface"
            },
            {
              "kind": "Content",
              "text": " "
            }
          ],
          "fileUrlPath": "src/worlds/particles/ParticleEmitter.ts",
          "releaseTag": "Public",
          "isAbstract": false,
          "name": "ParticleEmitter",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "Constructor",
              "canonicalReference": "server!ParticleEmitter:constructor(1)",
              "docComment": "/**\n * Constructs a new instance of the `ParticleEmitter` class\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "constructor(options: "
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitterOptions",
                  "canonicalReference": "server!ParticleEmitterOptions:interface"
                },
                {
                  "kind": "Content",
                  "text": ");"
                }
              ],
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "options",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ]
            },
            {
              "kind": "Property",
              "canonicalReference": "server!ParticleEmitter#alphaTest:member",
              "docComment": "/**\n * The alpha test value, discards particle texture pixels with alpha opacity less than this value.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get alphaTest(): "
                },
                {
                  "kind": "Content",
                  "text": "number | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "alphaTest",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!ParticleEmitter#attachedToEntity:member",
              "docComment": "/**\n * The entity to which the ParticleEmitter is attached if explicitly set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get attachedToEntity(): "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "attachedToEntity",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!ParticleEmitter#attachedToEntityNodeName:member",
              "docComment": "/**\n * The name of the node of the attached entity (if the attached entity is a model entity) to attach the particle emitter to.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get attachedToEntityNodeName(): "
                },
                {
                  "kind": "Content",
                  "text": "string | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "attachedToEntityNodeName",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!ParticleEmitter#colorEnd:member",
              "docComment": "/**\n * The color of an emitted particle at the end of its lifetime.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get colorEnd(): "
                },
                {
                  "kind": "Reference",
                  "text": "RgbColor",
                  "canonicalReference": "server!RgbColor:interface"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "colorEnd",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!ParticleEmitter#colorEndVariance:member",
              "docComment": "/**\n * The color variance of an emitted particle at the end of its lifetime.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get colorEndVariance(): "
                },
                {
                  "kind": "Reference",
                  "text": "RgbColor",
                  "canonicalReference": "server!RgbColor:interface"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "colorEndVariance",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!ParticleEmitter#colorStart:member",
              "docComment": "/**\n * The color of an emitted particle at the start of its lifetime.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get colorStart(): "
                },
                {
                  "kind": "Reference",
                  "text": "RgbColor",
                  "canonicalReference": "server!RgbColor:interface"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "colorStart",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!ParticleEmitter#colorStartVariance:member",
              "docComment": "/**\n * The color variance of an emitted particle at the start of its lifetime.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get colorStartVariance(): "
                },
                {
                  "kind": "Reference",
                  "text": "RgbColor",
                  "canonicalReference": "server!RgbColor:interface"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "colorStartVariance",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!ParticleEmitter#despawn:member(1)",
              "docComment": "/**\n * Despawns the ParticleEmitter from the world.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "despawn(): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "despawn"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!ParticleEmitter#gravity:member",
              "docComment": "/**\n * The gravity vector for an emitted particle.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get gravity(): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "gravity",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!ParticleEmitter#id:member",
              "docComment": "/**\n * The unique identifier for the ParticlEmitter.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get id(): "
                },
                {
                  "kind": "Content",
                  "text": "number | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "id",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!ParticleEmitter#isSpawned:member",
              "docComment": "/**\n * Whether the ParticleEmitter is spawned in the world.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get isSpawned(): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "isSpawned",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!ParticleEmitter#isStopped:member",
              "docComment": "/**\n * Whether the ParticleEmitter is stopped.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get isStopped(): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "isStopped",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!ParticleEmitter#lifetime:member",
              "docComment": "/**\n * The lifetime of an emitted particle in seconds.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get lifetime(): "
                },
                {
                  "kind": "Content",
                  "text": "number | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "lifetime",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!ParticleEmitter#lifetimeVariance:member",
              "docComment": "/**\n * The lifetime variance of an emitted particle in seconds.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get lifetimeVariance(): "
                },
                {
                  "kind": "Content",
                  "text": "number | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "lifetimeVariance",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!ParticleEmitter#maxParticles:member",
              "docComment": "/**\n * The maximum number of live particles.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get maxParticles(): "
                },
                {
                  "kind": "Content",
                  "text": "number | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "maxParticles",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!ParticleEmitter#offset:member",
              "docComment": "/**\n * The offset of the particle emitter from the attached entity or position.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get offset(): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "offset",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!ParticleEmitter#opacityEnd:member",
              "docComment": "/**\n * The opacity of an emitted particle at the end of its lifetime.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get opacityEnd(): "
                },
                {
                  "kind": "Content",
                  "text": "number | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "opacityEnd",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!ParticleEmitter#opacityEndVariance:member",
              "docComment": "/**\n * The opacity variance of an emitted particle at the end of its lifetime.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get opacityEndVariance(): "
                },
                {
                  "kind": "Content",
                  "text": "number | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "opacityEndVariance",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!ParticleEmitter#opacityStart:member",
              "docComment": "/**\n * The opacity of an emitted particle at the start of its lifetime.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get opacityStart(): "
                },
                {
                  "kind": "Content",
                  "text": "number | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "opacityStart",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!ParticleEmitter#opacityStartVariance:member",
              "docComment": "/**\n * The opacity variance of an emitted particle at the start of its lifetime.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get opacityStartVariance(): "
                },
                {
                  "kind": "Content",
                  "text": "number | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "opacityStartVariance",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!ParticleEmitter#position:member",
              "docComment": "/**\n * The position of the particle emitter in the world if explicitly set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get position(): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "position",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!ParticleEmitter#positionVariance:member",
              "docComment": "/**\n * The position variance of an emitted particle.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get positionVariance(): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "positionVariance",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!ParticleEmitter#rate:member",
              "docComment": "/**\n * The rate per second at which particles are emitted.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get rate(): "
                },
                {
                  "kind": "Content",
                  "text": "number | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "rate",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!ParticleEmitter#rateVariance:member",
              "docComment": "/**\n * The rate per second variance of the particle emission rate.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get rateVariance(): "
                },
                {
                  "kind": "Content",
                  "text": "number | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "rateVariance",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!ParticleEmitter#restart:member(1)",
              "docComment": "/**\n * Restarts the particle emission if it was previously stopped. Internally, this sets the rate to the value it was before being stopped.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "restart(): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "restart"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!ParticleEmitter#setAlphaTest:member(1)",
              "docComment": "/**\n * Sets the alpha test value, discards particle texture pixels with alpha opacity less than this value.\n *\n * @param alphaTest - The alpha test value, discards particle texture pixels with alpha opacity less than this value.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setAlphaTest(alphaTest: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "alphaTest",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setAlphaTest"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!ParticleEmitter#setAttachedToEntity:member(1)",
              "docComment": "/**\n * Sets the entity to which the ParticleEmitter is attached.\n *\n * @param entity - The entity to attach the ParticleEmitter to.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setAttachedToEntity(entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "entity",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setAttachedToEntity"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!ParticleEmitter#setAttachedToEntityNodeName:member(1)",
              "docComment": "/**\n * Sets the name of the node of the attached entity (if the attached entity is a model entity) to attach the particle emitter to.\n *\n * @param attachedToEntityNodeName - The name of the node of the attached entity (if the attached entity is a model entity) to attach the particle emitter to.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setAttachedToEntityNodeName(attachedToEntityNodeName: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "attachedToEntityNodeName",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setAttachedToEntityNodeName"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!ParticleEmitter#setColorEnd:member(1)",
              "docComment": "/**\n * Sets the color of an emitted particle at the end of its lifetime.\n *\n * @param colorEnd - The color of an emitted particle at the end of its lifetime.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setColorEnd(colorEnd: "
                },
                {
                  "kind": "Reference",
                  "text": "RgbColor",
                  "canonicalReference": "server!RgbColor:interface"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "colorEnd",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setColorEnd"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!ParticleEmitter#setColorEndVariance:member(1)",
              "docComment": "/**\n * Sets the color variance of an emitted particle at the end of its lifetime.\n *\n * @param colorEndVariance - The color variance of an emitted particle at the end of its lifetime.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setColorEndVariance(colorEndVariance: "
                },
                {
                  "kind": "Reference",
                  "text": "RgbColor",
                  "canonicalReference": "server!RgbColor:interface"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "colorEndVariance",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setColorEndVariance"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!ParticleEmitter#setColorStart:member(1)",
              "docComment": "/**\n * Sets the color of an emitted particle at the start of its lifetime.\n *\n * @param colorStart - The color of an emitted particle at the start of its lifetime.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setColorStart(colorStart: "
                },
                {
                  "kind": "Reference",
                  "text": "RgbColor",
                  "canonicalReference": "server!RgbColor:interface"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "colorStart",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setColorStart"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!ParticleEmitter#setColorStartVariance:member(1)",
              "docComment": "/**\n * Sets the color variance of an emitted particle at the start of its lifetime.\n *\n * @param colorStartVariance - The color variance of an emitted particle at the start of its lifetime.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setColorStartVariance(colorStartVariance: "
                },
                {
                  "kind": "Reference",
                  "text": "RgbColor",
                  "canonicalReference": "server!RgbColor:interface"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "colorStartVariance",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setColorStartVariance"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!ParticleEmitter#setGravity:member(1)",
              "docComment": "/**\n * Sets the gravity vector for an emitted particle.\n *\n * @param gravity - The gravity vector for an emitted particle.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setGravity(gravity: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "gravity",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setGravity"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!ParticleEmitter#setLifetime:member(1)",
              "docComment": "/**\n * Sets the lifetime of an emitted particle in seconds.\n *\n * @param lifetime - The lifetime of an emitted particle in seconds.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setLifetime(lifetime: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "lifetime",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setLifetime"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!ParticleEmitter#setLifetimeVariance:member(1)",
              "docComment": "/**\n * Sets the lifetime variance of an emitted particle in seconds.\n *\n * @param lifetimeVariance - The lifetime variance of an emitted particle in seconds.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setLifetimeVariance(lifetimeVariance: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "lifetimeVariance",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setLifetimeVariance"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!ParticleEmitter#setMaxParticles:member(1)",
              "docComment": "/**\n * Sets the maximum number of live particles.\n *\n * @param maxParticles - The maximum number of live particles.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setMaxParticles(maxParticles: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "maxParticles",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setMaxParticles"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!ParticleEmitter#setOffset:member(1)",
              "docComment": "/**\n * Sets the offset of the particle emitter from the attached entity or position.\n *\n * @param offset - The offset of the particle emitter from the attached entity or position.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setOffset(offset: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "offset",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setOffset"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!ParticleEmitter#setOpacityEnd:member(1)",
              "docComment": "/**\n * Sets the opacity of an emitted particle at the end of its lifetime.\n *\n * @param opacityEnd - The opacity of an emitted particle at the end of its lifetime.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setOpacityEnd(opacityEnd: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "opacityEnd",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setOpacityEnd"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!ParticleEmitter#setOpacityEndVariance:member(1)",
              "docComment": "/**\n * Sets the opacity variance of an emitted particle at the end of its lifetime.\n *\n * @param opacityEndVariance - The opacity variance of an emitted particle at the end of its lifetime.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setOpacityEndVariance(opacityEndVariance: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "opacityEndVariance",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setOpacityEndVariance"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!ParticleEmitter#setOpacityStart:member(1)",
              "docComment": "/**\n * Sets the opacity of an emitted particle at the start of its lifetime.\n *\n * @param opacityStart - The opacity of an emitted particle at the start of its lifetime.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setOpacityStart(opacityStart: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "opacityStart",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setOpacityStart"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!ParticleEmitter#setOpacityStartVariance:member(1)",
              "docComment": "/**\n * Sets the opacity variance of an emitted particle at the start of its lifetime.\n *\n * @param opacityStartVariance - The opacity variance of an emitted particle at the start of its lifetime.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setOpacityStartVariance(opacityStartVariance: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "opacityStartVariance",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setOpacityStartVariance"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!ParticleEmitter#setPosition:member(1)",
              "docComment": "/**\n * Sets the position of the particle emitter.\n *\n * @param position - The position of the particle emitter.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setPosition(position: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "position",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setPosition"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!ParticleEmitter#setPositionVariance:member(1)",
              "docComment": "/**\n * Sets the position variance of an emitted particle.\n *\n * @param positionVariance - The position variance of an emitted particle.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setPositionVariance(positionVariance: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "positionVariance",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setPositionVariance"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!ParticleEmitter#setRate:member(1)",
              "docComment": "/**\n * Sets the rate per second at which particles are emitted.\n *\n * @param rate - The rate per second at which particles are emitted.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setRate(rate: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "rate",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setRate"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!ParticleEmitter#setRateVariance:member(1)",
              "docComment": "/**\n * Sets the rate variance of the particle emission rate.\n *\n * @param rateVariance - The rate variance of the particle emission rate.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setRateVariance(rateVariance: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "rateVariance",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setRateVariance"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!ParticleEmitter#setSize:member(1)",
              "docComment": "/**\n * Sets the size of an emitted particle.\n *\n * @param size - The size of an emitted particle.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setSize(size: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "size",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setSize"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!ParticleEmitter#setSizeVariance:member(1)",
              "docComment": "/**\n * Sets the size variance of an emitted particle.\n *\n * @param sizeVariance - The size variance of an emitted particle.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setSizeVariance(sizeVariance: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "sizeVariance",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setSizeVariance"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!ParticleEmitter#setTextureUri:member(1)",
              "docComment": "/**\n * Sets the texture URI of the particles emitted.\n *\n * @param textureUri - The texture URI of the particles emitted.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setTextureUri(textureUri: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "textureUri",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setTextureUri"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!ParticleEmitter#setTransparent:member(1)",
              "docComment": "/**\n * Sets the transparency of the particle emitter.\n *\n * @param transparent - The transparency of the particle emitter.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setTransparent(transparent: "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "transparent",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setTransparent"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!ParticleEmitter#setVelocity:member(1)",
              "docComment": "/**\n * Sets the velocity of an emitted particle.\n *\n * @param velocity - The velocity of an emitted particle.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setVelocity(velocity: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "velocity",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setVelocity"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!ParticleEmitter#setVelocityVariance:member(1)",
              "docComment": "/**\n * Sets the velocity variance of an emitted particle.\n *\n * @param velocityVariance - The velocity variance of an emitted particle.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setVelocityVariance(velocityVariance: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "velocityVariance",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setVelocityVariance"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!ParticleEmitter#size:member",
              "docComment": "/**\n * The size of an emitted particle.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get size(): "
                },
                {
                  "kind": "Content",
                  "text": "number | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "size",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!ParticleEmitter#sizeVariance:member",
              "docComment": "/**\n * The size variance of an emitted particle.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get sizeVariance(): "
                },
                {
                  "kind": "Content",
                  "text": "number | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "sizeVariance",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!ParticleEmitter#spawn:member(1)",
              "docComment": "/**\n * Spawns the ParticleEmitter in the world.\n *\n * @param world - The world to spawn the ParticleEmitter in.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "spawn(world: "
                },
                {
                  "kind": "Reference",
                  "text": "World",
                  "canonicalReference": "server!World:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "world",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "spawn"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!ParticleEmitter#stop:member(1)",
              "docComment": "/**\n * Stops the particle emission if it was previously started. Internally, this sets the rate to 0.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "stop(): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "stop"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!ParticleEmitter#textureUri:member",
              "docComment": "/**\n * The URI or path to the texture to be used for the particles.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get textureUri(): "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "textureUri",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!ParticleEmitter#transparent:member",
              "docComment": "/**\n * Whether an emitted particle is transparent, resulting in smoother transparency blending.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get transparent(): "
                },
                {
                  "kind": "Content",
                  "text": "boolean | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "transparent",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!ParticleEmitter#velocity:member",
              "docComment": "/**\n * The velocity of an emitted particle.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get velocity(): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "velocity",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!ParticleEmitter#velocityVariance:member",
              "docComment": "/**\n * The velocity variance of an emitted particle.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get velocityVariance(): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "velocityVariance",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!ParticleEmitter#world:member",
              "docComment": "/**\n * The world the ParticleEmitter is in.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get world(): "
                },
                {
                  "kind": "Reference",
                  "text": "World",
                  "canonicalReference": "server!World:class"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "world",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            }
          ],
          "extendsTokenRange": {
            "startIndex": 1,
            "endIndex": 2
          },
          "implementsTokenRanges": [
            {
              "startIndex": 3,
              "endIndex": 4
            }
          ]
        },
        {
          "kind": "Enum",
          "canonicalReference": "server!ParticleEmitterEvent:enum",
          "docComment": "/**\n * Event types a ParticleEmitter instance can emit. See {@link ParticleEmitterEventPayloads}\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export declare enum ParticleEmitterEvent "
            }
          ],
          "fileUrlPath": "src/worlds/particles/ParticleEmitter.ts",
          "releaseTag": "Public",
          "name": "ParticleEmitterEvent",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "EnumMember",
              "canonicalReference": "server!ParticleEmitterEvent.DESPAWN:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "DESPAWN = "
                },
                {
                  "kind": "Content",
                  "text": "\"PARTICLE_EMITTER.DESPAWN\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "DESPAWN"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!ParticleEmitterEvent.SET_ALPHA_TEST:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_ALPHA_TEST = "
                },
                {
                  "kind": "Content",
                  "text": "\"PARTICLE_EMITTER.SET_ALPHA_TEST\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_ALPHA_TEST"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!ParticleEmitterEvent.SET_ATTACHED_TO_ENTITY:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_ATTACHED_TO_ENTITY = "
                },
                {
                  "kind": "Content",
                  "text": "\"PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_ATTACHED_TO_ENTITY"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!ParticleEmitterEvent.SET_ATTACHED_TO_ENTITY_NODE_NAME:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_ATTACHED_TO_ENTITY_NODE_NAME = "
                },
                {
                  "kind": "Content",
                  "text": "\"PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY_NODE_NAME\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_ATTACHED_TO_ENTITY_NODE_NAME"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!ParticleEmitterEvent.SET_COLOR_END:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_COLOR_END = "
                },
                {
                  "kind": "Content",
                  "text": "\"PARTICLE_EMITTER.SET_COLOR_END\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_COLOR_END"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!ParticleEmitterEvent.SET_COLOR_END_VARIANCE:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_COLOR_END_VARIANCE = "
                },
                {
                  "kind": "Content",
                  "text": "\"PARTICLE_EMITTER.SET_COLOR_END_VARIANCE\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_COLOR_END_VARIANCE"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!ParticleEmitterEvent.SET_COLOR_START:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_COLOR_START = "
                },
                {
                  "kind": "Content",
                  "text": "\"PARTICLE_EMITTER.SET_COLOR_START\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_COLOR_START"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!ParticleEmitterEvent.SET_COLOR_START_VARIANCE:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_COLOR_START_VARIANCE = "
                },
                {
                  "kind": "Content",
                  "text": "\"PARTICLE_EMITTER.SET_COLOR_START_VARIANCE\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_COLOR_START_VARIANCE"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!ParticleEmitterEvent.SET_GRAVITY:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_GRAVITY = "
                },
                {
                  "kind": "Content",
                  "text": "\"PARTICLE_EMITTER.SET_GRAVITY\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_GRAVITY"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!ParticleEmitterEvent.SET_LIFETIME:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_LIFETIME = "
                },
                {
                  "kind": "Content",
                  "text": "\"PARTICLE_EMITTER.SET_LIFETIME\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_LIFETIME"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!ParticleEmitterEvent.SET_LIFETIME_VARIANCE:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_LIFETIME_VARIANCE = "
                },
                {
                  "kind": "Content",
                  "text": "\"PARTICLE_EMITTER.SET_LIFETIME_VARIANCE\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_LIFETIME_VARIANCE"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!ParticleEmitterEvent.SET_MAX_PARTICLES:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_MAX_PARTICLES = "
                },
                {
                  "kind": "Content",
                  "text": "\"PARTICLE_EMITTER.SET_MAX_PARTICLES\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_MAX_PARTICLES"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!ParticleEmitterEvent.SET_OFFSET:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_OFFSET = "
                },
                {
                  "kind": "Content",
                  "text": "\"PARTICLE_EMITTER.SET_OFFSET\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_OFFSET"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!ParticleEmitterEvent.SET_OPACITY_END:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_OPACITY_END = "
                },
                {
                  "kind": "Content",
                  "text": "\"PARTICLE_EMITTER.SET_OPACITY_END\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_OPACITY_END"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!ParticleEmitterEvent.SET_OPACITY_END_VARIANCE:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_OPACITY_END_VARIANCE = "
                },
                {
                  "kind": "Content",
                  "text": "\"PARTICLE_EMITTER.SET_OPACITY_END_VARIANCE\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_OPACITY_END_VARIANCE"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!ParticleEmitterEvent.SET_OPACITY_START:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_OPACITY_START = "
                },
                {
                  "kind": "Content",
                  "text": "\"PARTICLE_EMITTER.SET_OPACITY_START\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_OPACITY_START"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!ParticleEmitterEvent.SET_OPACITY_START_VARIANCE:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_OPACITY_START_VARIANCE = "
                },
                {
                  "kind": "Content",
                  "text": "\"PARTICLE_EMITTER.SET_OPACITY_START_VARIANCE\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_OPACITY_START_VARIANCE"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!ParticleEmitterEvent.SET_POSITION:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_POSITION = "
                },
                {
                  "kind": "Content",
                  "text": "\"PARTICLE_EMITTER.SET_POSITION\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_POSITION"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!ParticleEmitterEvent.SET_POSITION_VARIANCE:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_POSITION_VARIANCE = "
                },
                {
                  "kind": "Content",
                  "text": "\"PARTICLE_EMITTER.SET_POSITION_VARIANCE\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_POSITION_VARIANCE"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!ParticleEmitterEvent.SET_RATE:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_RATE = "
                },
                {
                  "kind": "Content",
                  "text": "\"PARTICLE_EMITTER.SET_RATE\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_RATE"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!ParticleEmitterEvent.SET_RATE_VARIANCE:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_RATE_VARIANCE = "
                },
                {
                  "kind": "Content",
                  "text": "\"PARTICLE_EMITTER.SET_RATE_VARIANCE\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_RATE_VARIANCE"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!ParticleEmitterEvent.SET_SIZE:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_SIZE = "
                },
                {
                  "kind": "Content",
                  "text": "\"PARTICLE_EMITTER.SET_SIZE\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_SIZE"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!ParticleEmitterEvent.SET_SIZE_VARIANCE:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_SIZE_VARIANCE = "
                },
                {
                  "kind": "Content",
                  "text": "\"PARTICLE_EMITTER.SET_SIZE_VARIANCE\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_SIZE_VARIANCE"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!ParticleEmitterEvent.SET_TEXTURE_URI:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_TEXTURE_URI = "
                },
                {
                  "kind": "Content",
                  "text": "\"PARTICLE_EMITTER.SET_TEXTURE_URI\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_TEXTURE_URI"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!ParticleEmitterEvent.SET_TRANSPARENT:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_TRANSPARENT = "
                },
                {
                  "kind": "Content",
                  "text": "\"PARTICLE_EMITTER.SET_TRANSPARENT\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_TRANSPARENT"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!ParticleEmitterEvent.SET_VELOCITY:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_VELOCITY = "
                },
                {
                  "kind": "Content",
                  "text": "\"PARTICLE_EMITTER.SET_VELOCITY\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_VELOCITY"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!ParticleEmitterEvent.SET_VELOCITY_VARIANCE:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_VELOCITY_VARIANCE = "
                },
                {
                  "kind": "Content",
                  "text": "\"PARTICLE_EMITTER.SET_VELOCITY_VARIANCE\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_VELOCITY_VARIANCE"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!ParticleEmitterEvent.SPAWN:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SPAWN = "
                },
                {
                  "kind": "Content",
                  "text": "\"PARTICLE_EMITTER.SPAWN\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SPAWN"
            }
          ]
        },
        {
          "kind": "Interface",
          "canonicalReference": "server!ParticleEmitterEventPayloads:interface",
          "docComment": "/**\n * Event payloads for ParticleEmitter emitted events.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export interface ParticleEmitterEventPayloads "
            }
          ],
          "fileUrlPath": "src/worlds/particles/ParticleEmitter.ts",
          "releaseTag": "Public",
          "name": "ParticleEmitterEventPayloads",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.DESPAWN\":member",
              "docComment": "/**\n * Emitted when a ParticleEmitter is despawned.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitterEvent.DESPAWN",
                  "canonicalReference": "server!ParticleEmitterEvent.DESPAWN:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        particleEmitter: "
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitter",
                  "canonicalReference": "server!ParticleEmitter:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"PARTICLE_EMITTER.DESPAWN\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_ALPHA_TEST\":member",
              "docComment": "/**\n * Emitted when the alpha test value is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitterEvent.SET_ALPHA_TEST",
                  "canonicalReference": "server!ParticleEmitterEvent.SET_ALPHA_TEST:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        particleEmitter: "
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitter",
                  "canonicalReference": "server!ParticleEmitter:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        alphaTest: number;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"PARTICLE_EMITTER.SET_ALPHA_TEST\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY_NODE_NAME\":member",
              "docComment": "/**\n * Emitted when the name of the node of the attached entity the particle emitter is attached to is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitterEvent.SET_ATTACHED_TO_ENTITY_NODE_NAME",
                  "canonicalReference": "server!ParticleEmitterEvent.SET_ATTACHED_TO_ENTITY_NODE_NAME:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        particleEmitter: "
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitter",
                  "canonicalReference": "server!ParticleEmitter:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        attachedToEntityNodeName: string;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY_NODE_NAME\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY\":member",
              "docComment": "/**\n * Emitted when the ParticleEmitter is attached to an entity.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitterEvent.SET_ATTACHED_TO_ENTITY",
                  "canonicalReference": "server!ParticleEmitterEvent.SET_ATTACHED_TO_ENTITY:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        particleEmitter: "
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitter",
                  "canonicalReference": "server!ParticleEmitter:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 8
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_COLOR_END_VARIANCE\":member",
              "docComment": "/**\n * Emitted when the color variance of an emitted particle at the end of its lifetime is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitterEvent.SET_COLOR_END_VARIANCE",
                  "canonicalReference": "server!ParticleEmitterEvent.SET_COLOR_END_VARIANCE:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        particleEmitter: "
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitter",
                  "canonicalReference": "server!ParticleEmitter:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        colorEndVariance: "
                },
                {
                  "kind": "Reference",
                  "text": "RgbColor",
                  "canonicalReference": "server!RgbColor:interface"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"PARTICLE_EMITTER.SET_COLOR_END_VARIANCE\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 8
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_COLOR_END\":member",
              "docComment": "/**\n * Emitted when the color of an emitted particle at the end of its lifetime is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitterEvent.SET_COLOR_END",
                  "canonicalReference": "server!ParticleEmitterEvent.SET_COLOR_END:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        particleEmitter: "
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitter",
                  "canonicalReference": "server!ParticleEmitter:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        colorEnd: "
                },
                {
                  "kind": "Reference",
                  "text": "RgbColor",
                  "canonicalReference": "server!RgbColor:interface"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"PARTICLE_EMITTER.SET_COLOR_END\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 8
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_COLOR_START_VARIANCE\":member",
              "docComment": "/**\n * Emitted when the color variance of an emitted particle at the start of its lifetime is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitterEvent.SET_COLOR_START_VARIANCE",
                  "canonicalReference": "server!ParticleEmitterEvent.SET_COLOR_START_VARIANCE:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        particleEmitter: "
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitter",
                  "canonicalReference": "server!ParticleEmitter:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        colorStartVariance: "
                },
                {
                  "kind": "Reference",
                  "text": "RgbColor",
                  "canonicalReference": "server!RgbColor:interface"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"PARTICLE_EMITTER.SET_COLOR_START_VARIANCE\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 8
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_COLOR_START\":member",
              "docComment": "/**\n * Emitted when the color of an emitted particle at the start of its lifetime is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitterEvent.SET_COLOR_START",
                  "canonicalReference": "server!ParticleEmitterEvent.SET_COLOR_START:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        particleEmitter: "
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitter",
                  "canonicalReference": "server!ParticleEmitter:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        colorStart: "
                },
                {
                  "kind": "Reference",
                  "text": "RgbColor",
                  "canonicalReference": "server!RgbColor:interface"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"PARTICLE_EMITTER.SET_COLOR_START\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 8
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_GRAVITY\":member",
              "docComment": "/**\n * Emitted when the gravity vector for an emitted particle is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitterEvent.SET_GRAVITY",
                  "canonicalReference": "server!ParticleEmitterEvent.SET_GRAVITY:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        particleEmitter: "
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitter",
                  "canonicalReference": "server!ParticleEmitter:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        gravity: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"PARTICLE_EMITTER.SET_GRAVITY\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 8
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_LIFETIME_VARIANCE\":member",
              "docComment": "/**\n * Emitted when the lifetime variance of an emitted particle is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitterEvent.SET_LIFETIME_VARIANCE",
                  "canonicalReference": "server!ParticleEmitterEvent.SET_LIFETIME_VARIANCE:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        particleEmitter: "
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitter",
                  "canonicalReference": "server!ParticleEmitter:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        lifetimeVariance: number;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"PARTICLE_EMITTER.SET_LIFETIME_VARIANCE\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_LIFETIME\":member",
              "docComment": "/**\n * Emitted when the lifetime of an emitted particle is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitterEvent.SET_LIFETIME",
                  "canonicalReference": "server!ParticleEmitterEvent.SET_LIFETIME:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        particleEmitter: "
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitter",
                  "canonicalReference": "server!ParticleEmitter:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        lifetime: number;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"PARTICLE_EMITTER.SET_LIFETIME\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_MAX_PARTICLES\":member",
              "docComment": "/**\n * Emitted when the maximum number of live particles is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitterEvent.SET_MAX_PARTICLES",
                  "canonicalReference": "server!ParticleEmitterEvent.SET_MAX_PARTICLES:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        particleEmitter: "
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitter",
                  "canonicalReference": "server!ParticleEmitter:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        maxParticles: number;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"PARTICLE_EMITTER.SET_MAX_PARTICLES\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_OFFSET\":member",
              "docComment": "/**\n * Emitted when the offset of the particle emitter is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitterEvent.SET_OFFSET",
                  "canonicalReference": "server!ParticleEmitterEvent.SET_OFFSET:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        particleEmitter: "
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitter",
                  "canonicalReference": "server!ParticleEmitter:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        offset: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"PARTICLE_EMITTER.SET_OFFSET\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 8
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_OPACITY_END_VARIANCE\":member",
              "docComment": "/**\n * Emitted when the opacity variance of an emitted particle at the end of its lifetime is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitterEvent.SET_OPACITY_END_VARIANCE",
                  "canonicalReference": "server!ParticleEmitterEvent.SET_OPACITY_END_VARIANCE:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        particleEmitter: "
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitter",
                  "canonicalReference": "server!ParticleEmitter:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        opacityEndVariance: number;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"PARTICLE_EMITTER.SET_OPACITY_END_VARIANCE\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_OPACITY_END\":member",
              "docComment": "/**\n * Emitted when the opacity of an emitted particle at the end of its lifetime is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitterEvent.SET_OPACITY_END",
                  "canonicalReference": "server!ParticleEmitterEvent.SET_OPACITY_END:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        particleEmitter: "
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitter",
                  "canonicalReference": "server!ParticleEmitter:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        opacityEnd: number;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"PARTICLE_EMITTER.SET_OPACITY_END\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_OPACITY_START_VARIANCE\":member",
              "docComment": "/**\n * Emitted when the opacity variance of an emitted particle at the start of its lifetime is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitterEvent.SET_OPACITY_START_VARIANCE",
                  "canonicalReference": "server!ParticleEmitterEvent.SET_OPACITY_START_VARIANCE:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        particleEmitter: "
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitter",
                  "canonicalReference": "server!ParticleEmitter:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        opacityStartVariance: number;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"PARTICLE_EMITTER.SET_OPACITY_START_VARIANCE\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_OPACITY_START\":member",
              "docComment": "/**\n * Emitted when the opacity of an emitted particle at the start of its lifetime is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitterEvent.SET_OPACITY_START",
                  "canonicalReference": "server!ParticleEmitterEvent.SET_OPACITY_START:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        particleEmitter: "
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitter",
                  "canonicalReference": "server!ParticleEmitter:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        opacityStart: number;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"PARTICLE_EMITTER.SET_OPACITY_START\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_POSITION_VARIANCE\":member",
              "docComment": "/**\n * Emitted when the position variance of an emitted particle is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitterEvent.SET_POSITION_VARIANCE",
                  "canonicalReference": "server!ParticleEmitterEvent.SET_POSITION_VARIANCE:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        particleEmitter: "
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitter",
                  "canonicalReference": "server!ParticleEmitter:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        positionVariance: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"PARTICLE_EMITTER.SET_POSITION_VARIANCE\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 8
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_POSITION\":member",
              "docComment": "/**\n * Emitted when the position of the particle emitter is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitterEvent.SET_POSITION",
                  "canonicalReference": "server!ParticleEmitterEvent.SET_POSITION:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        particleEmitter: "
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitter",
                  "canonicalReference": "server!ParticleEmitter:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        position: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"PARTICLE_EMITTER.SET_POSITION\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 8
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_RATE_VARIANCE\":member",
              "docComment": "/**\n * Emitted when the rate per second variance of the particle emission rate is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitterEvent.SET_RATE_VARIANCE",
                  "canonicalReference": "server!ParticleEmitterEvent.SET_RATE_VARIANCE:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        particleEmitter: "
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitter",
                  "canonicalReference": "server!ParticleEmitter:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        rateVariance: number;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"PARTICLE_EMITTER.SET_RATE_VARIANCE\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_RATE\":member",
              "docComment": "/**\n * Emitted when the rate per second at which particles are emitted is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitterEvent.SET_RATE",
                  "canonicalReference": "server!ParticleEmitterEvent.SET_RATE:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        particleEmitter: "
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitter",
                  "canonicalReference": "server!ParticleEmitter:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        rate: number;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"PARTICLE_EMITTER.SET_RATE\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_SIZE_VARIANCE\":member",
              "docComment": "/**\n * Emitted when the size variance of an emitted particle is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitterEvent.SET_SIZE_VARIANCE",
                  "canonicalReference": "server!ParticleEmitterEvent.SET_SIZE_VARIANCE:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        particleEmitter: "
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitter",
                  "canonicalReference": "server!ParticleEmitter:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        sizeVariance: number;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"PARTICLE_EMITTER.SET_SIZE_VARIANCE\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_SIZE\":member",
              "docComment": "/**\n * Emitted when the size of an emitted particle is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitterEvent.SET_SIZE",
                  "canonicalReference": "server!ParticleEmitterEvent.SET_SIZE:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        particleEmitter: "
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitter",
                  "canonicalReference": "server!ParticleEmitter:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        size: number;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"PARTICLE_EMITTER.SET_SIZE\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_TEXTURE_URI\":member",
              "docComment": "/**\n * Emitted when the texture URI is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitterEvent.SET_TEXTURE_URI",
                  "canonicalReference": "server!ParticleEmitterEvent.SET_TEXTURE_URI:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        particleEmitter: "
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitter",
                  "canonicalReference": "server!ParticleEmitter:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        textureUri: string;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"PARTICLE_EMITTER.SET_TEXTURE_URI\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_TRANSPARENT\":member",
              "docComment": "/**\n * Emitted when the transparency of an emitted particle is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitterEvent.SET_TRANSPARENT",
                  "canonicalReference": "server!ParticleEmitterEvent.SET_TRANSPARENT:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        particleEmitter: "
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitter",
                  "canonicalReference": "server!ParticleEmitter:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        transparent: boolean;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"PARTICLE_EMITTER.SET_TRANSPARENT\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_VELOCITY_VARIANCE\":member",
              "docComment": "/**\n * Emitted when the velocity variance of an emitted particle is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitterEvent.SET_VELOCITY_VARIANCE",
                  "canonicalReference": "server!ParticleEmitterEvent.SET_VELOCITY_VARIANCE:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        particleEmitter: "
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitter",
                  "canonicalReference": "server!ParticleEmitter:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        velocityVariance: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"PARTICLE_EMITTER.SET_VELOCITY_VARIANCE\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 8
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_VELOCITY\":member",
              "docComment": "/**\n * Emitted when the velocity of an emitted particle is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitterEvent.SET_VELOCITY",
                  "canonicalReference": "server!ParticleEmitterEvent.SET_VELOCITY:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        particleEmitter: "
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitter",
                  "canonicalReference": "server!ParticleEmitter:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        velocity: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"PARTICLE_EMITTER.SET_VELOCITY\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 8
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SPAWN\":member",
              "docComment": "/**\n * Emitted when a ParticleEmitter is spawned.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitterEvent.SPAWN",
                  "canonicalReference": "server!ParticleEmitterEvent.SPAWN:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        particleEmitter: "
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitter",
                  "canonicalReference": "server!ParticleEmitter:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"PARTICLE_EMITTER.SPAWN\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            }
          ],
          "extendsTokenRanges": []
        },
        {
          "kind": "Class",
          "canonicalReference": "server!ParticleEmitterManager:class",
          "docComment": "/**\n * Manages ParticleEmitter instances in a world.\n *\n * @remarks\n *\n * The ParticleEmitterManager is created internally as a singleton for each {@link World} instance in a game server. It allows retrieval of all loaded ParticleEmitter instances, entity attached ParticleEmitter instances, and more.\n *\n * The constructor for this class is marked as internal. Third-party code should not call the constructor directly or create subclasses that extend the `ParticleEmitterManager` class.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export default class ParticleEmitterManager "
            }
          ],
          "fileUrlPath": "src/worlds/particles/ParticleEmitterManager.ts",
          "releaseTag": "Public",
          "isAbstract": false,
          "name": "ParticleEmitterManager",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "Method",
              "canonicalReference": "server!ParticleEmitterManager#getAllEntityAttachedParticleEmitters:member(1)",
              "docComment": "/**\n * Retrieves all spawned ParticleEmitter instances attached to a specific entity.\n *\n * @param entity - The entity to get attached ParticleEmitter instances for.\n *\n * @returns An array of ParticleEmitter instances.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "getAllEntityAttachedParticleEmitters(entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitter",
                  "canonicalReference": "server!ParticleEmitter:class"
                },
                {
                  "kind": "Content",
                  "text": "[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 5
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "entity",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "getAllEntityAttachedParticleEmitters"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!ParticleEmitterManager#getAllParticleEmitters:member(1)",
              "docComment": "/**\n * Retrieves all spawned ParticleEmitter instances for the world.\n *\n * @returns An array of ParticleEmitter instances.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "getAllParticleEmitters(): "
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitter",
                  "canonicalReference": "server!ParticleEmitter:class"
                },
                {
                  "kind": "Content",
                  "text": "[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "getAllParticleEmitters"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!ParticleEmitterManager#world:member",
              "docComment": "/**\n * The world the ParticleEmitterManager is for.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get world(): "
                },
                {
                  "kind": "Reference",
                  "text": "World",
                  "canonicalReference": "server!World:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "world",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            }
          ],
          "implementsTokenRanges": []
        },
        {
          "kind": "Interface",
          "canonicalReference": "server!ParticleEmitterOptions:interface",
          "docComment": "/**\n * Options for creating a ParticleEmitter instance.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export interface ParticleEmitterOptions "
            }
          ],
          "fileUrlPath": "src/worlds/particles/ParticleEmitter.ts",
          "releaseTag": "Public",
          "name": "ParticleEmitterOptions",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ParticleEmitterOptions#alphaTest:member",
              "docComment": "/**\n * The alpha test value, discards particle texture pixels with alpha opacity less than this value. Defaults to 0.5.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "alphaTest?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "alphaTest",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ParticleEmitterOptions#attachedToEntity:member",
              "docComment": "/**\n * If set, the ParticleEmitter will be attached to this entity.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "attachedToEntity?: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "attachedToEntity",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ParticleEmitterOptions#attachedToEntityNodeName:member",
              "docComment": "/**\n * The name of the node of the attached entity (if the attached entity is a model entity) to attach the particle emitter to.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "attachedToEntityNodeName?: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "attachedToEntityNodeName",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ParticleEmitterOptions#colorEnd:member",
              "docComment": "/**\n * The color of an emitted particle at the end of its lifetime.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "colorEnd?: "
                },
                {
                  "kind": "Reference",
                  "text": "RgbColor",
                  "canonicalReference": "server!RgbColor:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "colorEnd",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ParticleEmitterOptions#colorEndVariance:member",
              "docComment": "/**\n * The color variance of an emitted particle at the end of its lifetime.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "colorEndVariance?: "
                },
                {
                  "kind": "Reference",
                  "text": "RgbColor",
                  "canonicalReference": "server!RgbColor:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "colorEndVariance",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ParticleEmitterOptions#colorStart:member",
              "docComment": "/**\n * The color of an emitted particle at the start of its lifetime.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "colorStart?: "
                },
                {
                  "kind": "Reference",
                  "text": "RgbColor",
                  "canonicalReference": "server!RgbColor:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "colorStart",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ParticleEmitterOptions#colorStartVariance:member",
              "docComment": "/**\n * The color variance of an emitted particle at the start of its lifetime.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "colorStartVariance?: "
                },
                {
                  "kind": "Reference",
                  "text": "RgbColor",
                  "canonicalReference": "server!RgbColor:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "colorStartVariance",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ParticleEmitterOptions#gravity:member",
              "docComment": "/**\n * The gravity vector for an emitted particle.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "gravity?: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "gravity",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ParticleEmitterOptions#lifetime:member",
              "docComment": "/**\n * The lifetime of an emitted particle in seconds.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "lifetime?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "lifetime",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ParticleEmitterOptions#lifetimeVariance:member",
              "docComment": "/**\n * The lifetime variance of an emitted particle in seconds.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "lifetimeVariance?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "lifetimeVariance",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ParticleEmitterOptions#maxParticles:member",
              "docComment": "/**\n * The maximum number of live particles.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "maxParticles?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "maxParticles",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ParticleEmitterOptions#offset:member",
              "docComment": "/**\n * The offset of the particle emitter from the attached entity or position.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "offset?: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "offset",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ParticleEmitterOptions#opacityEnd:member",
              "docComment": "/**\n * The opacity of an emitted particle at the end of its lifetime.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "opacityEnd?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "opacityEnd",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ParticleEmitterOptions#opacityEndVariance:member",
              "docComment": "/**\n * The opacity variance of an emitted particle at the end of its lifetime.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "opacityEndVariance?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "opacityEndVariance",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ParticleEmitterOptions#opacityStart:member",
              "docComment": "/**\n * The opacity of an emitted particle at the start of its lifetime.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "opacityStart?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "opacityStart",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ParticleEmitterOptions#opacityStartVariance:member",
              "docComment": "/**\n * The opacity variance of an emitted particle at the start of its lifetime.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "opacityStartVariance?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "opacityStartVariance",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ParticleEmitterOptions#position:member",
              "docComment": "/**\n * The position of the particle emitter in the world if explicitly set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "position?: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "position",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ParticleEmitterOptions#positionVariance:member",
              "docComment": "/**\n * The position variance of an emitted particle.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "positionVariance?: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "positionVariance",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ParticleEmitterOptions#rate:member",
              "docComment": "/**\n * The rate per second at which particles are emitted.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "rate?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "rate",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ParticleEmitterOptions#rateVariance:member",
              "docComment": "/**\n * The rate per second variance of the particle emission rate.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "rateVariance?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "rateVariance",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ParticleEmitterOptions#size:member",
              "docComment": "/**\n * The size of an emitted particle.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "size?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "size",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ParticleEmitterOptions#sizeVariance:member",
              "docComment": "/**\n * The size variance of an emitted particle.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "sizeVariance?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "sizeVariance",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ParticleEmitterOptions#textureUri:member",
              "docComment": "/**\n * The URI or path to the texture to be used for the particles.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "textureUri: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "textureUri",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ParticleEmitterOptions#transparent:member",
              "docComment": "/**\n * Whether an emitted particle is transparent, resulting in smoother transparency blending.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "transparent?: "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "transparent",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ParticleEmitterOptions#velocity:member",
              "docComment": "/**\n * The velocity of an emitted particle.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "velocity?: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "velocity",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!ParticleEmitterOptions#velocityVariance:member",
              "docComment": "/**\n * The velocity variance of an emitted particle.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "velocityVariance?: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "velocityVariance",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            }
          ],
          "extendsTokenRanges": []
        },
        {
          "kind": "TypeAlias",
          "canonicalReference": "server!PathfindAbortCallback:type",
          "docComment": "/**\n * A callback function called when the pathfinding algorithm aborts.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export type PathfindAbortCallback = "
            },
            {
              "kind": "Content",
              "text": "() => void"
            },
            {
              "kind": "Content",
              "text": ";"
            }
          ],
          "fileUrlPath": "src/worlds/entities/controllers/PathfindingEntityController.ts",
          "releaseTag": "Public",
          "name": "PathfindAbortCallback",
          "typeTokenRange": {
            "startIndex": 1,
            "endIndex": 2
          }
        },
        {
          "kind": "TypeAlias",
          "canonicalReference": "server!PathfindCompleteCallback:type",
          "docComment": "/**\n * A callback function called when the entity associated with the PathfindingEntityController finishes pathfinding and is now at the target coordinate.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export type PathfindCompleteCallback = "
            },
            {
              "kind": "Content",
              "text": "() => void"
            },
            {
              "kind": "Content",
              "text": ";"
            }
          ],
          "fileUrlPath": "src/worlds/entities/controllers/PathfindingEntityController.ts",
          "releaseTag": "Public",
          "name": "PathfindCompleteCallback",
          "typeTokenRange": {
            "startIndex": 1,
            "endIndex": 2
          }
        },
        {
          "kind": "Class",
          "canonicalReference": "server!PathfindingEntityController:class",
          "docComment": "/**\n * A pathfinding entity controller built on top of {@link SimpleEntityController}.\n *\n * @remarks\n *\n * This class implements pathfinding using the A* algorithm. Pathfinding when frequently called can cause performance issues, use it sparingly. The .pathfind() method should only need to be called once in nearly all cases when attempting to move an entity to a target coordinate.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export default class PathfindingEntityController extends "
            },
            {
              "kind": "Reference",
              "text": "SimpleEntityController",
              "canonicalReference": "server!SimpleEntityController:class"
            },
            {
              "kind": "Content",
              "text": " "
            }
          ],
          "fileUrlPath": "src/worlds/entities/controllers/PathfindingEntityController.ts",
          "releaseTag": "Public",
          "isAbstract": false,
          "name": "PathfindingEntityController",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "Constructor",
              "canonicalReference": "server!PathfindingEntityController:constructor(1)",
              "docComment": "/**\n * Constructs a new instance of the `PathfindingEntityController` class\n *\n * @param options - Options for the controller.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "constructor(options?: "
                },
                {
                  "kind": "Reference",
                  "text": "PathfindingEntityControllerOptions",
                  "canonicalReference": "server!~PathfindingEntityControllerOptions:interface"
                },
                {
                  "kind": "Content",
                  "text": ");"
                }
              ],
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "options",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": true
                }
              ]
            },
            {
              "kind": "Property",
              "canonicalReference": "server!PathfindingEntityController#debug:member",
              "docComment": "/**\n * Whether to enable debug mode or not. When debug mode is enabled, the pathfinding algorithm will log debug information to the console. Defaults to false.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get debug(): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "debug",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!PathfindingEntityController#maxFall:member",
              "docComment": "/**\n * The maximum fall distance the entity can fall.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get maxFall(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "maxFall",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!PathfindingEntityController#maxJump:member",
              "docComment": "/**\n * The maximum jump distance the entity can jump.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get maxJump(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "maxJump",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!PathfindingEntityController#maxOpenSetIterations:member",
              "docComment": "/**\n * The maximum number of open set iterations that can be processed before aborting pathfinding. Defaults to 200.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get maxOpenSetIterations(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "maxOpenSetIterations",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!PathfindingEntityController#pathfind:member(1)",
              "docComment": "/**\n * Calculate a path and move to the target if a path is found. Returns true if a path is found, false if no path is found.\n *\n * @param target - The target coordinate to pathfind to.\n *\n * @param speed - The speed of the entity.\n *\n * @param options - The pathfinding options.\n *\n * @returns Whether the path was found.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "pathfind(target: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ", speed: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ", options?: "
                },
                {
                  "kind": "Reference",
                  "text": "PathfindingOptions",
                  "canonicalReference": "server!PathfindingOptions:type"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 7,
                "endIndex": 8
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "target",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "speed",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "options",
                  "parameterTypeTokenRange": {
                    "startIndex": 5,
                    "endIndex": 6
                  },
                  "isOptional": true
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "pathfind"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!PathfindingEntityController#speed:member",
              "docComment": "/**\n * The speed of the entity.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get speed(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "speed",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!PathfindingEntityController#target:member",
              "docComment": "/**\n * The target coordinate to pathfind to.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get target(): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "target",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!PathfindingEntityController#verticalPenalty:member",
              "docComment": "/**\n * The vertical penalty for the pathfinding algorithm. A higher value will prefer paths with less vertical movement.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get verticalPenalty(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "verticalPenalty",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!PathfindingEntityController#waypointNextIndex:member",
              "docComment": "/**\n * The index representing the next waypoint moving towards of the current set of waypoints being followed.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get waypointNextIndex(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "waypointNextIndex",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!PathfindingEntityController#waypoints:member",
              "docComment": "/**\n * The current waypoints being followed.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get waypoints(): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": "[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "waypoints",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!PathfindingEntityController#waypointTimeoutMs:member",
              "docComment": "/**\n * The timeout in milliseconds for a waypoint to be considered reached. Defaults to 2000ms divided by the speed of the entity.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get waypointTimeoutMs(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "waypointTimeoutMs",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            }
          ],
          "extendsTokenRange": {
            "startIndex": 1,
            "endIndex": 2
          },
          "implementsTokenRanges": []
        },
        {
          "kind": "TypeAlias",
          "canonicalReference": "server!PathfindingOptions:type",
          "docComment": "/**\n * Options for the {@link PathfindingEntityController.pathfind} method.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export type PathfindingOptions = "
            },
            {
              "kind": "Content",
              "text": "{\n    debug?: boolean;\n    maxFall?: number;\n    maxJump?: number;\n    maxOpenSetIterations?: number;\n    pathfindAbortCallback?: "
            },
            {
              "kind": "Reference",
              "text": "PathfindAbortCallback",
              "canonicalReference": "server!PathfindAbortCallback:type"
            },
            {
              "kind": "Content",
              "text": ";\n    pathfindCompleteCallback?: "
            },
            {
              "kind": "Reference",
              "text": "PathfindCompleteCallback",
              "canonicalReference": "server!PathfindCompleteCallback:type"
            },
            {
              "kind": "Content",
              "text": ";\n    verticalPenalty?: number;\n    waypointMoveCompleteCallback?: "
            },
            {
              "kind": "Reference",
              "text": "WaypointMoveCompleteCallback",
              "canonicalReference": "server!WaypointMoveCompleteCallback:type"
            },
            {
              "kind": "Content",
              "text": ";\n    waypointMoveSkippedCallback?: "
            },
            {
              "kind": "Reference",
              "text": "WaypointMoveSkippedCallback",
              "canonicalReference": "server!WaypointMoveSkippedCallback:type"
            },
            {
              "kind": "Content",
              "text": ";\n    waypointStoppingDistance?: number;\n    waypointTimeoutMs?: number;\n}"
            },
            {
              "kind": "Content",
              "text": ";"
            }
          ],
          "fileUrlPath": "src/worlds/entities/controllers/PathfindingEntityController.ts",
          "releaseTag": "Public",
          "name": "PathfindingOptions",
          "typeTokenRange": {
            "startIndex": 1,
            "endIndex": 10
          }
        },
        {
          "kind": "Class",
          "canonicalReference": "server!PersistenceManager:class",
          "docComment": "/**\n * Manages persistence of player and global data.\n *\n * @remarks\n *\n * This class is a singleton accessible with the static property `PersistenceManager.instance`. Convenience methods are also available on the `Player` and `GameServer` classes.\n *\n * The constructor for this class is marked as internal. Third-party code should not call the constructor directly or create subclasses that extend the `PersistenceManager` class.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export default class PersistenceManager "
            }
          ],
          "fileUrlPath": "src/persistence/PersistenceManager.ts",
          "releaseTag": "Public",
          "isAbstract": false,
          "name": "PersistenceManager",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "Method",
              "canonicalReference": "server!PersistenceManager#getGlobalData:member(1)",
              "docComment": "/**\n * Get global data from the data persistence service.\n *\n * @param key - The key to get the data from.\n *\n * @returns The data from the persistence layer.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "getGlobalData(key: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Promise",
                  "canonicalReference": "!Promise:interface"
                },
                {
                  "kind": "Content",
                  "text": "<"
                },
                {
                  "kind": "Reference",
                  "text": "Record",
                  "canonicalReference": "!Record:type"
                },
                {
                  "kind": "Content",
                  "text": "<string, unknown> | void>"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 7
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "key",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "getGlobalData"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!PersistenceManager.instance:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "static readonly instance: "
                },
                {
                  "kind": "Reference",
                  "text": "PersistenceManager",
                  "canonicalReference": "server!PersistenceManager:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "instance",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": true,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!PersistenceManager#setGlobalData:member(1)",
              "docComment": "/**\n * Set global data in the data persistence service. This data is available and shared by all lobbies of your game.\n *\n * @param key - The key to set the data to.\n *\n * @param data - The data to set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setGlobalData(key: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": ", data: "
                },
                {
                  "kind": "Reference",
                  "text": "Record",
                  "canonicalReference": "!Record:type"
                },
                {
                  "kind": "Content",
                  "text": "<string, unknown>"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Promise",
                  "canonicalReference": "!Promise:interface"
                },
                {
                  "kind": "Content",
                  "text": "<"
                },
                {
                  "kind": "Reference",
                  "text": "Record",
                  "canonicalReference": "!Record:type"
                },
                {
                  "kind": "Content",
                  "text": "<string, unknown> | void>"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 6,
                "endIndex": 10
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "key",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "data",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 5
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setGlobalData"
            }
          ],
          "implementsTokenRanges": []
        },
        {
          "kind": "Class",
          "canonicalReference": "server!Player:class",
          "docComment": "/**\n * A player in the game.\n *\n * @remarks\n *\n * Players are automatically created when they connect and authenticate with the game server. This is all handled internally.\n *\n * <h2>Events</h2>\n *\n * This class is an EventRouter, and instances of it emit events with payloads listed under {@link PlayerEventPayloads}\n *\n * The constructor for this class is marked as internal. Third-party code should not call the constructor directly or create subclasses that extend the `Player` class.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export default class Player extends "
            },
            {
              "kind": "Reference",
              "text": "EventRouter",
              "canonicalReference": "server!EventRouter:class"
            },
            {
              "kind": "Content",
              "text": " implements "
            },
            {
              "kind": "Reference",
              "text": "protocol.Serializable",
              "canonicalReference": "@hytopia.com/server-protocol!Serializable:interface"
            },
            {
              "kind": "Content",
              "text": " "
            }
          ],
          "fileUrlPath": "src/players/Player.ts",
          "releaseTag": "Public",
          "isAbstract": false,
          "name": "Player",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "Property",
              "canonicalReference": "server!Player#camera:member",
              "docComment": "/**\n * The camera for the player.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "readonly camera: "
                },
                {
                  "kind": "Reference",
                  "text": "PlayerCamera",
                  "canonicalReference": "server!PlayerCamera:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "camera",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Player#disconnect:member(1)",
              "docComment": "/**\n * Disconnects the player from the game server.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "disconnect(): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "disconnect"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Player#getPersistedData:member(1)",
              "docComment": "/**\n * Get the persisted data for the player.\n *\n * @remarks\n *\n * This method returns the player persisted data.\n *\n * @returns The persisted data for the player.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "getPersistedData(): "
                },
                {
                  "kind": "Reference",
                  "text": "Record",
                  "canonicalReference": "!Record:type"
                },
                {
                  "kind": "Content",
                  "text": "<string, unknown> | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "getPersistedData"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Player#id:member",
              "docComment": "/**\n * The unique HYTOPIA UUID for the player.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "readonly id: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "id",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Player#input:member",
              "docComment": "/**\n * The current {@link PlayerInput} of the player.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get input(): "
                },
                {
                  "kind": "Reference",
                  "text": "PlayerInput",
                  "canonicalReference": "server!PlayerInput:type"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "input",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Player#joinWorld:member(1)",
              "docComment": "/**\n * Joins a player to a world.\n *\n * @remarks\n *\n * If the player is already in a {@link World}, they will be removed from their current world before joining the new world.\n *\n * @param world - The world to join the player to.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "joinWorld(world: "
                },
                {
                  "kind": "Reference",
                  "text": "World",
                  "canonicalReference": "server!World:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "world",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "joinWorld"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Player#profilePictureUrl:member",
              "docComment": "/**\n * The profile picture URL for the player.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "readonly profilePictureUrl: "
                },
                {
                  "kind": "Content",
                  "text": "string | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "profilePictureUrl",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Player#resetInputs:member(1)",
              "docComment": "/**\n * Resets all inputs keys\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "resetInputs(): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "resetInputs"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Player#setPersistedData:member(1)",
              "docComment": "/**\n * Set the persisted data for the player. This data can later be retrieved using {@link Player.getPersistedData}, even if a player disconnects and rejoin a game in the future, or joins a different HYTOPIA managed lobby of your game.\n *\n * @remarks\n *\n * This method is asynchronous and returns a promise that resolves to the player data.\n *\n * @param data - The data to set.\n *\n * @returns The persisted data for the player.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setPersistedData(data: "
                },
                {
                  "kind": "Reference",
                  "text": "Record",
                  "canonicalReference": "!Record:type"
                },
                {
                  "kind": "Content",
                  "text": "<string, unknown>"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Record",
                  "canonicalReference": "!Record:type"
                },
                {
                  "kind": "Content",
                  "text": "<string, unknown>"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 4,
                "endIndex": 6
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "data",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 3
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setPersistedData"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Player#ui:member",
              "docComment": "/**\n * The UI for the player.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "readonly ui: "
                },
                {
                  "kind": "Reference",
                  "text": "PlayerUI",
                  "canonicalReference": "server!PlayerUI:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "ui",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Player#username:member",
              "docComment": "/**\n * The unique HYTOPIA username for the player.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "readonly username: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "username",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Player#world:member",
              "docComment": "/**\n * The current {@link World} the player is in.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get world(): "
                },
                {
                  "kind": "Reference",
                  "text": "World",
                  "canonicalReference": "server!World:class"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "world",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            }
          ],
          "extendsTokenRange": {
            "startIndex": 1,
            "endIndex": 2
          },
          "implementsTokenRanges": [
            {
              "startIndex": 3,
              "endIndex": 4
            }
          ]
        },
        {
          "kind": "Class",
          "canonicalReference": "server!PlayerCamera:class",
          "docComment": "/**\n * The camera for a Player.\n *\n * @remarks\n *\n * The camera is used to render the player's view of the world. The player's camera exposes functionality to control the camera of a player. All player objects have a camera, accessible via {@link Player.camera}.\n *\n * <h2>Events</h2>\n *\n * This class is an EventRouter, and instances of it emit events with payloads listed under {@link PlayerCameraEventPayloads}\n *\n * The constructor for this class is marked as internal. Third-party code should not call the constructor directly or create subclasses that extend the `PlayerCamera` class.\n *\n * @example\n * ```typescript\n * player.camera.setMode(PlayerCameraMode.FIRST_PERSON);\n * ```\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export default class PlayerCamera extends "
            },
            {
              "kind": "Reference",
              "text": "EventRouter",
              "canonicalReference": "server!EventRouter:class"
            },
            {
              "kind": "Content",
              "text": " implements "
            },
            {
              "kind": "Reference",
              "text": "protocol.Serializable",
              "canonicalReference": "@hytopia.com/server-protocol!Serializable:interface"
            },
            {
              "kind": "Content",
              "text": " "
            }
          ],
          "fileUrlPath": "src/players/PlayerCamera.ts",
          "releaseTag": "Public",
          "isAbstract": false,
          "name": "PlayerCamera",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "Property",
              "canonicalReference": "server!PlayerCamera#attachedToEntity:member",
              "docComment": "/**\n * The entity the camera is attached to.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get attachedToEntity(): "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "attachedToEntity",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!PlayerCamera#attachedToPosition:member",
              "docComment": "/**\n * The position the camera is attached to.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get attachedToPosition(): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "attachedToPosition",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!PlayerCamera#facingDirection:member",
              "docComment": "/**\n * The facing direction vector of the camera based on its current orientation.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get facingDirection(): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "facingDirection",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!PlayerCamera#facingQuaternion:member",
              "docComment": "/**\n * The quaternion representing the camera's facing direction.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get facingQuaternion(): "
                },
                {
                  "kind": "Reference",
                  "text": "QuaternionLike",
                  "canonicalReference": "server!QuaternionLike:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "facingQuaternion",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!PlayerCamera#filmOffset:member",
              "docComment": "/**\n * The film offset of the camera. A positive value shifts the camera right, a negative value shifts it left.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get filmOffset(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "filmOffset",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!PlayerCamera#forwardOffset:member",
              "docComment": "/**\n * Only used in first-person mode. The forward offset of the camera. A positive number shifts the camera forward, a negative number shifts it backward.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get forwardOffset(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "forwardOffset",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!PlayerCamera#fov:member",
              "docComment": "/**\n * The field of view of the camera.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get fov(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "fov",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!PlayerCamera#lookAtEntity:member(1)",
              "docComment": "/**\n * Makes the camera look at an entity. If the camera was previously tracking an entity or position, it will stop tracking.\n *\n * @param entity - The entity to look at.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "lookAtEntity(entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "entity",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "lookAtEntity"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!PlayerCamera#lookAtPosition:member(1)",
              "docComment": "/**\n * Makes the camera look at a position. If the camera was previously tracking an entity or position, it will stop tracking.\n *\n * @param position - The position to look at.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "lookAtPosition(position: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "position",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "lookAtPosition"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!PlayerCamera#mode:member",
              "docComment": "/**\n * The mode of the camera.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get mode(): "
                },
                {
                  "kind": "Reference",
                  "text": "PlayerCameraMode",
                  "canonicalReference": "server!PlayerCameraMode:enum"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "mode",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!PlayerCamera#modelHiddenNodes:member",
              "docComment": "/**\n * The nodes of the model the camera is attached to that will not be rendered for the player. Uses case insensitive substring matching.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get modelHiddenNodes(): "
                },
                {
                  "kind": "Reference",
                  "text": "Set",
                  "canonicalReference": "!Set:interface"
                },
                {
                  "kind": "Content",
                  "text": "<string>"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "modelHiddenNodes",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!PlayerCamera#modelShownNodes:member",
              "docComment": "/**\n * The nodes of the model the camera is attached to that will be rendered for the player, overriding hidden nodes. Uses case insensitive substring matching.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get modelShownNodes(): "
                },
                {
                  "kind": "Reference",
                  "text": "Set",
                  "canonicalReference": "!Set:interface"
                },
                {
                  "kind": "Content",
                  "text": "<string>"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "modelShownNodes",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!PlayerCamera#offset:member",
              "docComment": "/**\n * The relative offset of the camera from the entity or position it is attached to.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get offset(): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "offset",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!PlayerCamera#orientation:member",
              "docComment": "/**\n * The current orientation of the camera.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get orientation(): "
                },
                {
                  "kind": "Reference",
                  "text": "PlayerCameraOrientation",
                  "canonicalReference": "server!PlayerCameraOrientation:type"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "orientation",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!PlayerCamera#player:member",
              "docComment": "/**\n * The player that the camera belongs to.\n *\n * @readonly\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "readonly player: "
                },
                {
                  "kind": "Reference",
                  "text": "Player",
                  "canonicalReference": "server!Player:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "player",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!PlayerCamera#reset:member(1)",
              "docComment": "/**\n * Resets the camera to its default, unattached, spectator mode state.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "reset(): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "reset"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!PlayerCamera#setAttachedToEntity:member(1)",
              "docComment": "/**\n * Sets the entity the camera is attached to.\n *\n * @param entity - The entity to attach the camera to.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setAttachedToEntity(entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "entity",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setAttachedToEntity"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!PlayerCamera#setAttachedToPosition:member(1)",
              "docComment": "/**\n * Sets the position the camera is attached to.\n *\n * @param position - The position to attach the camera to.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setAttachedToPosition(position: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "position",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setAttachedToPosition"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!PlayerCamera#setFilmOffset:member(1)",
              "docComment": "/**\n * Sets the film offset of the camera. A positive value shifts the camera right, a negative value shifts it left.\n *\n * @param filmOffset - The film offset to set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setFilmOffset(filmOffset: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "filmOffset",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setFilmOffset"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!PlayerCamera#setForwardOffset:member(1)",
              "docComment": "/**\n * Only used in first-person mode. Sets the forward offset of the camera. A positive value shifts the camera forward, a negative value shifts it backward.\n *\n * @param forwardOffset - The forward offset to set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setForwardOffset(forwardOffset: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "forwardOffset",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setForwardOffset"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!PlayerCamera#setFov:member(1)",
              "docComment": "/**\n * Sets the field of view of the camera.\n *\n * @param fov - The field of view to set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setFov(fov: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "fov",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setFov"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!PlayerCamera#setMode:member(1)",
              "docComment": "/**\n * Sets the mode of the camera.\n *\n * @param mode - The mode to set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setMode(mode: "
                },
                {
                  "kind": "Reference",
                  "text": "PlayerCameraMode",
                  "canonicalReference": "server!PlayerCameraMode:enum"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "mode",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setMode"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!PlayerCamera#setModelHiddenNodes:member(1)",
              "docComment": "/**\n * Sets the nodes of the model the camera is attached to that will not be rendered for the player. Uses case insensitive substring matching.\n *\n * @param modelHiddenNodes - Determines nodes to hide that match these case insensitive substrings.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setModelHiddenNodes(modelHiddenNodes: "
                },
                {
                  "kind": "Content",
                  "text": "string[]"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "modelHiddenNodes",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setModelHiddenNodes"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!PlayerCamera#setModelShownNodes:member(1)",
              "docComment": "/**\n * Sets the nodes of the model the camera is attached to that will be rendered for the player, overriding hidden nodes. Uses case insensitive substring matching.\n *\n * @param modelShownNodes - Determines nodes to show that match these case insensitive substrings.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setModelShownNodes(modelShownNodes: "
                },
                {
                  "kind": "Content",
                  "text": "string[]"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "modelShownNodes",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setModelShownNodes"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!PlayerCamera#setOffset:member(1)",
              "docComment": "/**\n * Sets the relative offset of the camera from the entity or position it is attached to.\n *\n * @param offset - The offset to set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setOffset(offset: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "offset",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setOffset"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!PlayerCamera#setShoulderAngle:member(1)",
              "docComment": "/**\n * Only used in third-person mode. Sets the shoulder angle of the camera in degrees. A positive value shifts the camera to the right, a negative value shifts it to the left.\n *\n * @param shoulderAngle - The shoulder angle to set in degrees.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setShoulderAngle(shoulderAngle: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "shoulderAngle",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setShoulderAngle"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!PlayerCamera#setTrackedEntity:member(1)",
              "docComment": "/**\n * Sets the entity the camera will constantly look at, even if the camera attached or tracked entity moves.\n *\n * @param entity - The entity to track or undefined to stop tracking.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setTrackedEntity(entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 4,
                "endIndex": 5
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "entity",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 3
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setTrackedEntity"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!PlayerCamera#setTrackedPosition:member(1)",
              "docComment": "/**\n * Sets the position the camera will constantly look at, even if the camera attached entity moves.\n *\n * @param position - The position to track or undefined to stop tracking.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setTrackedPosition(position: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 4,
                "endIndex": 5
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "position",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 3
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setTrackedPosition"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!PlayerCamera#setZoom:member(1)",
              "docComment": "/**\n * Sets the zoom of the camera.\n *\n * @param zoom - The zoom to set, 0 to infinity.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setZoom(zoom: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "zoom",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setZoom"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!PlayerCamera#shoulderAngle:member",
              "docComment": "/**\n * The shoulder angle of the camera in degrees.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get shoulderAngle(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "shoulderAngle",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!PlayerCamera#trackedEntity:member",
              "docComment": "/**\n * The entity the camera will constantly look at, even if the camera attached or tracked entity moves.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get trackedEntity(): "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "trackedEntity",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!PlayerCamera#trackedPosition:member",
              "docComment": "/**\n * The position the camera will constantly look at, even if the camera attached entity moves.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get trackedPosition(): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "trackedPosition",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!PlayerCamera#zoom:member",
              "docComment": "/**\n * The zoom of the camera.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get zoom(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "zoom",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            }
          ],
          "extendsTokenRange": {
            "startIndex": 1,
            "endIndex": 2
          },
          "implementsTokenRanges": [
            {
              "startIndex": 3,
              "endIndex": 4
            }
          ]
        },
        {
          "kind": "Enum",
          "canonicalReference": "server!PlayerCameraEvent:enum",
          "docComment": "/**\n * Event types a PlayerCamera can emit. See {@link PlayerCameraEventPayloads} for the payloads.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export declare enum PlayerCameraEvent "
            }
          ],
          "fileUrlPath": "src/players/PlayerCamera.ts",
          "releaseTag": "Public",
          "name": "PlayerCameraEvent",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "EnumMember",
              "canonicalReference": "server!PlayerCameraEvent.LOOK_AT_ENTITY:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "LOOK_AT_ENTITY = "
                },
                {
                  "kind": "Content",
                  "text": "\"PLAYER_CAMERA.LOOK_AT_ENTITY\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "LOOK_AT_ENTITY"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!PlayerCameraEvent.LOOK_AT_POSITION:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "LOOK_AT_POSITION = "
                },
                {
                  "kind": "Content",
                  "text": "\"PLAYER_CAMERA.LOOK_AT_POSITION\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "LOOK_AT_POSITION"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!PlayerCameraEvent.SET_ATTACHED_TO_ENTITY:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_ATTACHED_TO_ENTITY = "
                },
                {
                  "kind": "Content",
                  "text": "\"PLAYER_CAMERA.SET_ATTACHED_TO_ENTITY\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_ATTACHED_TO_ENTITY"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!PlayerCameraEvent.SET_ATTACHED_TO_POSITION:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_ATTACHED_TO_POSITION = "
                },
                {
                  "kind": "Content",
                  "text": "\"PLAYER_CAMERA.SET_ATTACHED_TO_POSITION\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_ATTACHED_TO_POSITION"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!PlayerCameraEvent.SET_FILM_OFFSET:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_FILM_OFFSET = "
                },
                {
                  "kind": "Content",
                  "text": "\"PLAYER_CAMERA.SET_FILM_OFFSET\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_FILM_OFFSET"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!PlayerCameraEvent.SET_FORWARD_OFFSET:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_FORWARD_OFFSET = "
                },
                {
                  "kind": "Content",
                  "text": "\"PLAYER_CAMERA.SET_FORWARD_OFFSET\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_FORWARD_OFFSET"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!PlayerCameraEvent.SET_FOV:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_FOV = "
                },
                {
                  "kind": "Content",
                  "text": "\"PLAYER_CAMERA.SET_FOV\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_FOV"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!PlayerCameraEvent.SET_MODE:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_MODE = "
                },
                {
                  "kind": "Content",
                  "text": "\"PLAYER_CAMERA.SET_MODE\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_MODE"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!PlayerCameraEvent.SET_MODEL_HIDDEN_NODES:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_MODEL_HIDDEN_NODES = "
                },
                {
                  "kind": "Content",
                  "text": "\"PLAYER_CAMERA.SET_MODEL_HIDDEN_NODES\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_MODEL_HIDDEN_NODES"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!PlayerCameraEvent.SET_MODEL_SHOWN_NODES:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_MODEL_SHOWN_NODES = "
                },
                {
                  "kind": "Content",
                  "text": "\"PLAYER_CAMERA.SET_MODEL_SHOWN_NODES\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_MODEL_SHOWN_NODES"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!PlayerCameraEvent.SET_OFFSET:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_OFFSET = "
                },
                {
                  "kind": "Content",
                  "text": "\"PLAYER_CAMERA.SET_OFFSET\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_OFFSET"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!PlayerCameraEvent.SET_SHOULDER_ANGLE:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_SHOULDER_ANGLE = "
                },
                {
                  "kind": "Content",
                  "text": "\"PLAYER_CAMERA.SET_SHOULDER_ANGLE\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_SHOULDER_ANGLE"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!PlayerCameraEvent.SET_TRACKED_ENTITY:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_TRACKED_ENTITY = "
                },
                {
                  "kind": "Content",
                  "text": "\"PLAYER_CAMERA.SET_TRACKED_ENTITY\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_TRACKED_ENTITY"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!PlayerCameraEvent.SET_TRACKED_POSITION:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_TRACKED_POSITION = "
                },
                {
                  "kind": "Content",
                  "text": "\"PLAYER_CAMERA.SET_TRACKED_POSITION\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_TRACKED_POSITION"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!PlayerCameraEvent.SET_ZOOM:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_ZOOM = "
                },
                {
                  "kind": "Content",
                  "text": "\"PLAYER_CAMERA.SET_ZOOM\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_ZOOM"
            }
          ]
        },
        {
          "kind": "Interface",
          "canonicalReference": "server!PlayerCameraEventPayloads:interface",
          "docComment": "/**\n * Event payloads for PlayerCamera emitted events.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export interface PlayerCameraEventPayloads "
            }
          ],
          "fileUrlPath": "src/players/PlayerCamera.ts",
          "releaseTag": "Public",
          "name": "PlayerCameraEventPayloads",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!PlayerCameraEventPayloads#\"PLAYER_CAMERA.LOOK_AT_ENTITY\":member",
              "docComment": "/**\n * Emitted when the camera looks at an entity.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "PlayerCameraEvent.LOOK_AT_ENTITY",
                  "canonicalReference": "server!PlayerCameraEvent.LOOK_AT_ENTITY:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        playerCamera: "
                },
                {
                  "kind": "Reference",
                  "text": "PlayerCamera",
                  "canonicalReference": "server!PlayerCamera:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"PLAYER_CAMERA.LOOK_AT_ENTITY\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 8
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!PlayerCameraEventPayloads#\"PLAYER_CAMERA.LOOK_AT_POSITION\":member",
              "docComment": "/**\n * Emitted when the camera looks at a position.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "PlayerCameraEvent.LOOK_AT_POSITION",
                  "canonicalReference": "server!PlayerCameraEvent.LOOK_AT_POSITION:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        playerCamera: "
                },
                {
                  "kind": "Reference",
                  "text": "PlayerCamera",
                  "canonicalReference": "server!PlayerCamera:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        position: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"PLAYER_CAMERA.LOOK_AT_POSITION\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 8
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!PlayerCameraEventPayloads#\"PLAYER_CAMERA.SET_ATTACHED_TO_ENTITY\":member",
              "docComment": "/**\n * Emitted when the camera is attached to an entity.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "PlayerCameraEvent.SET_ATTACHED_TO_ENTITY",
                  "canonicalReference": "server!PlayerCameraEvent.SET_ATTACHED_TO_ENTITY:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        playerCamera: "
                },
                {
                  "kind": "Reference",
                  "text": "PlayerCamera",
                  "canonicalReference": "server!PlayerCamera:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"PLAYER_CAMERA.SET_ATTACHED_TO_ENTITY\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 8
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!PlayerCameraEventPayloads#\"PLAYER_CAMERA.SET_ATTACHED_TO_POSITION\":member",
              "docComment": "/**\n * Emitted when the camera is attached to a position.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "PlayerCameraEvent.SET_ATTACHED_TO_POSITION",
                  "canonicalReference": "server!PlayerCameraEvent.SET_ATTACHED_TO_POSITION:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        playerCamera: "
                },
                {
                  "kind": "Reference",
                  "text": "PlayerCamera",
                  "canonicalReference": "server!PlayerCamera:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        position: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"PLAYER_CAMERA.SET_ATTACHED_TO_POSITION\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 8
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!PlayerCameraEventPayloads#\"PLAYER_CAMERA.SET_FILM_OFFSET\":member",
              "docComment": "/**\n * Emitted when the film offset of the camera is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "PlayerCameraEvent.SET_FILM_OFFSET",
                  "canonicalReference": "server!PlayerCameraEvent.SET_FILM_OFFSET:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        playerCamera: "
                },
                {
                  "kind": "Reference",
                  "text": "PlayerCamera",
                  "canonicalReference": "server!PlayerCamera:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        filmOffset: number;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"PLAYER_CAMERA.SET_FILM_OFFSET\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!PlayerCameraEventPayloads#\"PLAYER_CAMERA.SET_FORWARD_OFFSET\":member",
              "docComment": "/**\n * Emitted when the forward offset of the camera is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "PlayerCameraEvent.SET_FORWARD_OFFSET",
                  "canonicalReference": "server!PlayerCameraEvent.SET_FORWARD_OFFSET:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        playerCamera: "
                },
                {
                  "kind": "Reference",
                  "text": "PlayerCamera",
                  "canonicalReference": "server!PlayerCamera:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        forwardOffset: number;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"PLAYER_CAMERA.SET_FORWARD_OFFSET\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!PlayerCameraEventPayloads#\"PLAYER_CAMERA.SET_FOV\":member",
              "docComment": "/**\n * Emitted when the field of view of the camera is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "PlayerCameraEvent.SET_FOV",
                  "canonicalReference": "server!PlayerCameraEvent.SET_FOV:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        playerCamera: "
                },
                {
                  "kind": "Reference",
                  "text": "PlayerCamera",
                  "canonicalReference": "server!PlayerCamera:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        fov: number;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"PLAYER_CAMERA.SET_FOV\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!PlayerCameraEventPayloads#\"PLAYER_CAMERA.SET_MODE\":member",
              "docComment": "/**\n * Emitted when the mode of the camera is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "PlayerCameraEvent.SET_MODE",
                  "canonicalReference": "server!PlayerCameraEvent.SET_MODE:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        playerCamera: "
                },
                {
                  "kind": "Reference",
                  "text": "PlayerCamera",
                  "canonicalReference": "server!PlayerCamera:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        mode: "
                },
                {
                  "kind": "Reference",
                  "text": "PlayerCameraMode",
                  "canonicalReference": "server!PlayerCameraMode:enum"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"PLAYER_CAMERA.SET_MODE\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 8
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!PlayerCameraEventPayloads#\"PLAYER_CAMERA.SET_MODEL_HIDDEN_NODES\":member",
              "docComment": "/**\n * Emitted when the nodes of the model the camera is attached to are set to be hidden.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "PlayerCameraEvent.SET_MODEL_HIDDEN_NODES",
                  "canonicalReference": "server!PlayerCameraEvent.SET_MODEL_HIDDEN_NODES:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        playerCamera: "
                },
                {
                  "kind": "Reference",
                  "text": "PlayerCamera",
                  "canonicalReference": "server!PlayerCamera:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        modelHiddenNodes: "
                },
                {
                  "kind": "Reference",
                  "text": "Set",
                  "canonicalReference": "!Set:interface"
                },
                {
                  "kind": "Content",
                  "text": "<string>;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"PLAYER_CAMERA.SET_MODEL_HIDDEN_NODES\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 8
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!PlayerCameraEventPayloads#\"PLAYER_CAMERA.SET_MODEL_SHOWN_NODES\":member",
              "docComment": "/**\n * Emitted when the nodes of the model the camera is attached to are set to be shown.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "PlayerCameraEvent.SET_MODEL_SHOWN_NODES",
                  "canonicalReference": "server!PlayerCameraEvent.SET_MODEL_SHOWN_NODES:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        playerCamera: "
                },
                {
                  "kind": "Reference",
                  "text": "PlayerCamera",
                  "canonicalReference": "server!PlayerCamera:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        modelShownNodes: "
                },
                {
                  "kind": "Reference",
                  "text": "Set",
                  "canonicalReference": "!Set:interface"
                },
                {
                  "kind": "Content",
                  "text": "<string>;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"PLAYER_CAMERA.SET_MODEL_SHOWN_NODES\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 8
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!PlayerCameraEventPayloads#\"PLAYER_CAMERA.SET_OFFSET\":member",
              "docComment": "/**\n * Emitted when the offset of the camera is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "PlayerCameraEvent.SET_OFFSET",
                  "canonicalReference": "server!PlayerCameraEvent.SET_OFFSET:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        playerCamera: "
                },
                {
                  "kind": "Reference",
                  "text": "PlayerCamera",
                  "canonicalReference": "server!PlayerCamera:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        offset: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"PLAYER_CAMERA.SET_OFFSET\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 8
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!PlayerCameraEventPayloads#\"PLAYER_CAMERA.SET_SHOULDER_ANGLE\":member",
              "docComment": "/**\n * Emitted when the shoulder angle of the camera is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "PlayerCameraEvent.SET_SHOULDER_ANGLE",
                  "canonicalReference": "server!PlayerCameraEvent.SET_SHOULDER_ANGLE:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        playerCamera: "
                },
                {
                  "kind": "Reference",
                  "text": "PlayerCamera",
                  "canonicalReference": "server!PlayerCamera:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        shoulderAngle: number;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"PLAYER_CAMERA.SET_SHOULDER_ANGLE\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!PlayerCameraEventPayloads#\"PLAYER_CAMERA.SET_TRACKED_ENTITY\":member",
              "docComment": "/**\n * Emitted when the tracked entity of the camera is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "PlayerCameraEvent.SET_TRACKED_ENTITY",
                  "canonicalReference": "server!PlayerCameraEvent.SET_TRACKED_ENTITY:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        playerCamera: "
                },
                {
                  "kind": "Reference",
                  "text": "PlayerCamera",
                  "canonicalReference": "server!PlayerCamera:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": " | undefined;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"PLAYER_CAMERA.SET_TRACKED_ENTITY\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 8
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!PlayerCameraEventPayloads#\"PLAYER_CAMERA.SET_TRACKED_POSITION\":member",
              "docComment": "/**\n * Emitted when the tracked position of the camera is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "PlayerCameraEvent.SET_TRACKED_POSITION",
                  "canonicalReference": "server!PlayerCameraEvent.SET_TRACKED_POSITION:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        playerCamera: "
                },
                {
                  "kind": "Reference",
                  "text": "PlayerCamera",
                  "canonicalReference": "server!PlayerCamera:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        position: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": " | undefined;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"PLAYER_CAMERA.SET_TRACKED_POSITION\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 8
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!PlayerCameraEventPayloads#\"PLAYER_CAMERA.SET_ZOOM\":member",
              "docComment": "/**\n * Emitted when the zoom of the camera is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "PlayerCameraEvent.SET_ZOOM",
                  "canonicalReference": "server!PlayerCameraEvent.SET_ZOOM:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        playerCamera: "
                },
                {
                  "kind": "Reference",
                  "text": "PlayerCamera",
                  "canonicalReference": "server!PlayerCamera:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        zoom: number;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"PLAYER_CAMERA.SET_ZOOM\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            }
          ],
          "extendsTokenRanges": []
        },
        {
          "kind": "Enum",
          "canonicalReference": "server!PlayerCameraMode:enum",
          "docComment": "/**\n * The mode of the camera.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export declare enum PlayerCameraMode "
            }
          ],
          "fileUrlPath": "src/players/PlayerCamera.ts",
          "releaseTag": "Public",
          "name": "PlayerCameraMode",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "EnumMember",
              "canonicalReference": "server!PlayerCameraMode.FIRST_PERSON:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "FIRST_PERSON = "
                },
                {
                  "kind": "Content",
                  "text": "0"
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "FIRST_PERSON"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!PlayerCameraMode.SPECTATOR:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SPECTATOR = "
                },
                {
                  "kind": "Content",
                  "text": "2"
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SPECTATOR"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!PlayerCameraMode.THIRD_PERSON:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "THIRD_PERSON = "
                },
                {
                  "kind": "Content",
                  "text": "1"
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "THIRD_PERSON"
            }
          ]
        },
        {
          "kind": "TypeAlias",
          "canonicalReference": "server!PlayerCameraOrientation:type",
          "docComment": "/**\n * The camera orientation state of a Player.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export type PlayerCameraOrientation = "
            },
            {
              "kind": "Content",
              "text": "{\n    pitch: number;\n    yaw: number;\n}"
            },
            {
              "kind": "Content",
              "text": ";"
            }
          ],
          "fileUrlPath": "src/players/PlayerCamera.ts",
          "releaseTag": "Public",
          "name": "PlayerCameraOrientation",
          "typeTokenRange": {
            "startIndex": 1,
            "endIndex": 2
          }
        },
        {
          "kind": "Class",
          "canonicalReference": "server!PlayerEntity:class",
          "docComment": "/**\n * Represents an entity controlled by a player in a world.\n *\n * @remarks\n *\n * Player entities extend the {@link Entity} class. They can be created and assigned to a player at anytime during gameplay, but most commonly when a player joins a world. PlayerEntity expects a controller to be set prior to spawning. Without setting a controller, the player entity will not respond to player inputs and throw an error.\n *\n * @example\n * ```typescript\n * world.onPlayerJoin = player => {\n *   const playerEntity = new PlayerEntity({\n *     player,\n *     name: 'Player',\n *     modelUri: 'models/players/player.gltf',\n *     modelLoopedAnimations: [ 'idle_lower', 'idle_upper' ],\n *     modelScale: 0.5,\n *   });\n *\n *   playerEntity.spawn(world, { x: 10, y: 20, z: 15 });\n * };\n * ```\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export default class PlayerEntity extends "
            },
            {
              "kind": "Reference",
              "text": "Entity",
              "canonicalReference": "server!Entity:class"
            },
            {
              "kind": "Content",
              "text": " "
            }
          ],
          "fileUrlPath": "src/worlds/entities/PlayerEntity.ts",
          "releaseTag": "Public",
          "isAbstract": false,
          "name": "PlayerEntity",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "Constructor",
              "canonicalReference": "server!PlayerEntity:constructor(1)",
              "docComment": "/**\n * Constructs a new instance of the `PlayerEntity` class\n *\n * @param options - The options for the player entity.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "constructor(options: "
                },
                {
                  "kind": "Reference",
                  "text": "PlayerEntityOptions",
                  "canonicalReference": "server!PlayerEntityOptions:type"
                },
                {
                  "kind": "Content",
                  "text": ");"
                }
              ],
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "options",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ]
            },
            {
              "kind": "Property",
              "canonicalReference": "server!PlayerEntity#nametagSceneUI:member",
              "docComment": "/**\n * The SceneUI instance for the player entity's nametag.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "readonly nametagSceneUI: "
                },
                {
                  "kind": "Reference",
                  "text": "SceneUI",
                  "canonicalReference": "server!SceneUI:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "nametagSceneUI",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!PlayerEntity#player:member",
              "docComment": "/**\n * The player the player entity is assigned to and controlled by.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "readonly player: "
                },
                {
                  "kind": "Reference",
                  "text": "Player",
                  "canonicalReference": "server!Player:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "player",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            }
          ],
          "extendsTokenRange": {
            "startIndex": 1,
            "endIndex": 2
          },
          "implementsTokenRanges": []
        },
        {
          "kind": "TypeAlias",
          "canonicalReference": "server!PlayerEntityOptions:type",
          "docComment": "/**\n * Options for creating a PlayerEntity instance.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export type PlayerEntityOptions = "
            },
            {
              "kind": "Content",
              "text": "{\n    player: "
            },
            {
              "kind": "Reference",
              "text": "Player",
              "canonicalReference": "server!Player:class"
            },
            {
              "kind": "Content",
              "text": ";\n} & "
            },
            {
              "kind": "Reference",
              "text": "EntityOptions",
              "canonicalReference": "server!EntityOptions:type"
            },
            {
              "kind": "Content",
              "text": ";"
            }
          ],
          "fileUrlPath": "src/worlds/entities/PlayerEntity.ts",
          "releaseTag": "Public",
          "name": "PlayerEntityOptions",
          "typeTokenRange": {
            "startIndex": 1,
            "endIndex": 5
          }
        },
        {
          "kind": "Enum",
          "canonicalReference": "server!PlayerEvent:enum",
          "docComment": "/**\n * Event types a Player can emit. See {@link PlayerEventPayloads} for the payloads.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export declare enum PlayerEvent "
            }
          ],
          "fileUrlPath": "src/players/Player.ts",
          "releaseTag": "Public",
          "name": "PlayerEvent",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "EnumMember",
              "canonicalReference": "server!PlayerEvent.CHAT_MESSAGE_SEND:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "CHAT_MESSAGE_SEND = "
                },
                {
                  "kind": "Content",
                  "text": "\"PLAYER.CHAT_MESSAGE_SEND\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "CHAT_MESSAGE_SEND"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!PlayerEvent.JOINED_WORLD:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "JOINED_WORLD = "
                },
                {
                  "kind": "Content",
                  "text": "\"PLAYER.JOINED_WORLD\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "JOINED_WORLD"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!PlayerEvent.LEFT_WORLD:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "LEFT_WORLD = "
                },
                {
                  "kind": "Content",
                  "text": "\"PLAYER.LEFT_WORLD\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "LEFT_WORLD"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!PlayerEvent.RECONNECTED_WORLD:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "RECONNECTED_WORLD = "
                },
                {
                  "kind": "Content",
                  "text": "\"PLAYER.RECONNECTED_WORLD\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "RECONNECTED_WORLD"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!PlayerEvent.REQUEST_SYNC:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "REQUEST_SYNC = "
                },
                {
                  "kind": "Content",
                  "text": "\"PLAYER.REQUEST_SYNC\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "REQUEST_SYNC"
            }
          ]
        },
        {
          "kind": "Interface",
          "canonicalReference": "server!PlayerEventPayloads:interface",
          "docComment": "/**\n * Event payloads for Player emitted events.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export interface PlayerEventPayloads "
            }
          ],
          "fileUrlPath": "src/players/Player.ts",
          "releaseTag": "Public",
          "name": "PlayerEventPayloads",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!PlayerEventPayloads#\"PLAYER.CHAT_MESSAGE_SEND\":member",
              "docComment": "/**\n * Emitted when a player sends a chat message.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "PlayerEvent.CHAT_MESSAGE_SEND",
                  "canonicalReference": "server!PlayerEvent.CHAT_MESSAGE_SEND:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        player: "
                },
                {
                  "kind": "Reference",
                  "text": "Player",
                  "canonicalReference": "server!Player:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        message: string;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"PLAYER.CHAT_MESSAGE_SEND\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!PlayerEventPayloads#\"PLAYER.JOINED_WORLD\":member",
              "docComment": "/**\n * Emitted when a player joins a world.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "PlayerEvent.JOINED_WORLD",
                  "canonicalReference": "server!PlayerEvent.JOINED_WORLD:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        player: "
                },
                {
                  "kind": "Reference",
                  "text": "Player",
                  "canonicalReference": "server!Player:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        world: "
                },
                {
                  "kind": "Reference",
                  "text": "World",
                  "canonicalReference": "server!World:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"PLAYER.JOINED_WORLD\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 8
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!PlayerEventPayloads#\"PLAYER.LEFT_WORLD\":member",
              "docComment": "/**\n * Emitted when a player leaves a world.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "PlayerEvent.LEFT_WORLD",
                  "canonicalReference": "server!PlayerEvent.LEFT_WORLD:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        player: "
                },
                {
                  "kind": "Reference",
                  "text": "Player",
                  "canonicalReference": "server!Player:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        world: "
                },
                {
                  "kind": "Reference",
                  "text": "World",
                  "canonicalReference": "server!World:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"PLAYER.LEFT_WORLD\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 8
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!PlayerEventPayloads#\"PLAYER.RECONNECTED_WORLD\":member",
              "docComment": "/**\n * Emitted when a player reconnects to a world after a unintentional disconnect.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "PlayerEvent.RECONNECTED_WORLD",
                  "canonicalReference": "server!PlayerEvent.RECONNECTED_WORLD:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        player: "
                },
                {
                  "kind": "Reference",
                  "text": "Player",
                  "canonicalReference": "server!Player:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        world: "
                },
                {
                  "kind": "Reference",
                  "text": "World",
                  "canonicalReference": "server!World:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"PLAYER.RECONNECTED_WORLD\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 8
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!PlayerEventPayloads#\"PLAYER.REQUEST_SYNC\":member",
              "docComment": "/**\n * Emitted when a player's client requests a round trip time synchronization.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "PlayerEvent.REQUEST_SYNC",
                  "canonicalReference": "server!PlayerEvent.REQUEST_SYNC:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        player: "
                },
                {
                  "kind": "Reference",
                  "text": "Player",
                  "canonicalReference": "server!Player:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        receivedAt: number;\n        receivedAtMs: number;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"PLAYER.REQUEST_SYNC\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            }
          ],
          "extendsTokenRanges": []
        },
        {
          "kind": "TypeAlias",
          "canonicalReference": "server!PlayerInput:type",
          "docComment": "/**\n * The input state of a Player; keys from SUPPORTED_INPUT_KEYS.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export type PlayerInput = "
            },
            {
              "kind": "Reference",
              "text": "Partial",
              "canonicalReference": "!Partial:type"
            },
            {
              "kind": "Content",
              "text": "<"
            },
            {
              "kind": "Reference",
              "text": "Record",
              "canonicalReference": "!Record:type"
            },
            {
              "kind": "Content",
              "text": "<keyof "
            },
            {
              "kind": "Reference",
              "text": "InputSchema",
              "canonicalReference": "@hytopia.com/server-protocol!InputSchema:type"
            },
            {
              "kind": "Content",
              "text": ", boolean>>"
            },
            {
              "kind": "Content",
              "text": ";"
            }
          ],
          "fileUrlPath": "src/players/Player.ts",
          "releaseTag": "Public",
          "name": "PlayerInput",
          "typeTokenRange": {
            "startIndex": 1,
            "endIndex": 7
          }
        },
        {
          "kind": "Class",
          "canonicalReference": "server!PlayerManager:class",
          "docComment": "/**\n * Manages all connected players in a game server.\n *\n * @remarks\n *\n * The PlayerManager is created internally as a global singleton accessible with the static property `PlayerManager.instance`.\n *\n * <h2>Events</h2>\n *\n * This class emits global events with payloads listed under {@link PlayerManagerEventPayloads}\n *\n * The constructor for this class is marked as internal. Third-party code should not call the constructor directly or create subclasses that extend the `PlayerManager` class.\n *\n * @example\n * ```typescript\n * import { PlayerManager } from 'hytopia';\n *\n * const playerManager = PlayerManager.instance;\n * const connectedPlayers = playerManager.getConnectedPlayers();\n * ```\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export default class PlayerManager "
            }
          ],
          "fileUrlPath": "src/players/PlayerManager.ts",
          "releaseTag": "Public",
          "isAbstract": false,
          "name": "PlayerManager",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "Method",
              "canonicalReference": "server!PlayerManager#getConnectedPlayerByUsername:member(1)",
              "docComment": "/**\n * Get a connected player by their username (case insensitive).\n *\n * @param username - The username of the player to get.\n *\n * @returns The connected player with the given username or undefined if not found.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "getConnectedPlayerByUsername(username: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Player",
                  "canonicalReference": "server!Player:class"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 5
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "username",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "getConnectedPlayerByUsername"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!PlayerManager#getConnectedPlayers:member(1)",
              "docComment": "/**\n * Get all connected players.\n *\n * @returns An array of all connected players.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "getConnectedPlayers(): "
                },
                {
                  "kind": "Reference",
                  "text": "Player",
                  "canonicalReference": "server!Player:class"
                },
                {
                  "kind": "Content",
                  "text": "[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "getConnectedPlayers"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!PlayerManager#getConnectedPlayersByWorld:member(1)",
              "docComment": "/**\n * Get all connected players in a specific world.\n *\n * @param world - The world to get connected players for.\n *\n * @returns An array of all connected players in the world.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "getConnectedPlayersByWorld(world: "
                },
                {
                  "kind": "Reference",
                  "text": "World",
                  "canonicalReference": "server!World:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Player",
                  "canonicalReference": "server!Player:class"
                },
                {
                  "kind": "Content",
                  "text": "[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 5
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "world",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "getConnectedPlayersByWorld"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!PlayerManager.instance:member",
              "docComment": "/**\n * The global PlayerManager instance as a singleton.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "static readonly instance: "
                },
                {
                  "kind": "Reference",
                  "text": "PlayerManager",
                  "canonicalReference": "server!PlayerManager:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "instance",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": true,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!PlayerManager#playerCount:member",
              "docComment": "/**\n * The number of players currently connected to the server.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get playerCount(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "playerCount",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!PlayerManager#worldSelectionHandler:member",
              "docComment": "/**\n * Optional handler for selecting the world a newly connected player joins. Returning no world results in the player joining the default WorldManager world.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "worldSelectionHandler?: "
                },
                {
                  "kind": "Content",
                  "text": "(player: "
                },
                {
                  "kind": "Reference",
                  "text": "Player",
                  "canonicalReference": "server!Player:class"
                },
                {
                  "kind": "Content",
                  "text": ") => "
                },
                {
                  "kind": "Reference",
                  "text": "Promise",
                  "canonicalReference": "!Promise:interface"
                },
                {
                  "kind": "Content",
                  "text": "<"
                },
                {
                  "kind": "Reference",
                  "text": "World",
                  "canonicalReference": "server!World:class"
                },
                {
                  "kind": "Content",
                  "text": " | undefined>"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "worldSelectionHandler",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 8
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            }
          ],
          "implementsTokenRanges": []
        },
        {
          "kind": "Enum",
          "canonicalReference": "server!PlayerManagerEvent:enum",
          "docComment": "/**\n * Event types a PlayerManager can emit. See {@link PlayerManagerEventPayloads} for the payloads.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export declare enum PlayerManagerEvent "
            }
          ],
          "fileUrlPath": "src/players/PlayerManager.ts",
          "releaseTag": "Public",
          "name": "PlayerManagerEvent",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "EnumMember",
              "canonicalReference": "server!PlayerManagerEvent.PLAYER_CONNECTED:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "PLAYER_CONNECTED = "
                },
                {
                  "kind": "Content",
                  "text": "\"PLAYER_MANAGER.PLAYER_CONNECTED\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "PLAYER_CONNECTED"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!PlayerManagerEvent.PLAYER_DISCONNECTED:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "PLAYER_DISCONNECTED = "
                },
                {
                  "kind": "Content",
                  "text": "\"PLAYER_MANAGER.PLAYER_DISCONNECTED\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "PLAYER_DISCONNECTED"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!PlayerManagerEvent.PLAYER_RECONNECTED:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "PLAYER_RECONNECTED = "
                },
                {
                  "kind": "Content",
                  "text": "\"PLAYER_MANAGER.PLAYER_RECONNECTED\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "PLAYER_RECONNECTED"
            }
          ]
        },
        {
          "kind": "Interface",
          "canonicalReference": "server!PlayerManagerEventPayloads:interface",
          "docComment": "/**\n * Event payloads for PlayerManager emitted events.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export interface PlayerManagerEventPayloads "
            }
          ],
          "fileUrlPath": "src/players/PlayerManager.ts",
          "releaseTag": "Public",
          "name": "PlayerManagerEventPayloads",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!PlayerManagerEventPayloads#\"PLAYER_MANAGER.PLAYER_CONNECTED\":member",
              "docComment": "/**\n * Emitted when a player connects to the server.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "PlayerManagerEvent.PLAYER_CONNECTED",
                  "canonicalReference": "server!PlayerManagerEvent.PLAYER_CONNECTED:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        player: "
                },
                {
                  "kind": "Reference",
                  "text": "Player",
                  "canonicalReference": "server!Player:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"PLAYER_MANAGER.PLAYER_CONNECTED\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!PlayerManagerEventPayloads#\"PLAYER_MANAGER.PLAYER_DISCONNECTED\":member",
              "docComment": "/**\n * Emitted when a player disconnects from the server for any reason (lost connection, kick, world switch, etc).\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "PlayerManagerEvent.PLAYER_DISCONNECTED",
                  "canonicalReference": "server!PlayerManagerEvent.PLAYER_DISCONNECTED:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        player: "
                },
                {
                  "kind": "Reference",
                  "text": "Player",
                  "canonicalReference": "server!Player:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"PLAYER_MANAGER.PLAYER_DISCONNECTED\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!PlayerManagerEventPayloads#\"PLAYER_MANAGER.PLAYER_RECONNECTED\":member",
              "docComment": "/**\n * Emitted when a player reconnects to the server for any reason (reconnection, world switch, etc).\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "PlayerManagerEvent.PLAYER_RECONNECTED",
                  "canonicalReference": "server!PlayerManagerEvent.PLAYER_RECONNECTED:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        player: "
                },
                {
                  "kind": "Reference",
                  "text": "Player",
                  "canonicalReference": "server!Player:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"PLAYER_MANAGER.PLAYER_RECONNECTED\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            }
          ],
          "extendsTokenRanges": []
        },
        {
          "kind": "Class",
          "canonicalReference": "server!PlayerUI:class",
          "docComment": "/**\n * The UI for a player.\n *\n * @remarks\n *\n * UI allows control of all in-game overlays a player sees. UI is controlled by HTML, CSS and JavaScript files you provide in your `assets` folder.\n *\n * <h2>Events</h2>\n *\n * This class is an EventRouter, and instances of it emit events with payloads listed under {@link PlayerUIEventPayloads}\n *\n * The constructor for this class is marked as internal. Third-party code should not call the constructor directly or create subclasses that extend the `PlayerUI` class.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export default class PlayerUI extends "
            },
            {
              "kind": "Reference",
              "text": "EventRouter",
              "canonicalReference": "server!EventRouter:class"
            },
            {
              "kind": "Content",
              "text": " "
            }
          ],
          "fileUrlPath": "src/players/PlayerUI.ts",
          "releaseTag": "Public",
          "isAbstract": false,
          "name": "PlayerUI",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "Method",
              "canonicalReference": "server!PlayerUI#load:member(1)",
              "docComment": "/**\n * Loads client UI for the player.\n *\n * @param htmlUri - The ui html uri to load.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "load(htmlUri: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "htmlUri",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "load"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!PlayerUI#lockPointer:member(1)",
              "docComment": "/**\n * Locks or unlocks the player's mouse pointer. If the pointer is unlocked with lockPointer(false), the player will not be able to use in-game inputs or camera controls from the mouse pointer until `player.ui.lockPointer(true)`, or in your game's client UI html with `hytopia.lockPointer(true)`.\n *\n * @param lock - Set true to lock the pointer, false to unlock it.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "lockPointer(lock: "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "lock",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "lockPointer"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!PlayerUI#player:member",
              "docComment": "/**\n * The player that the UI belongs to.\n *\n * @readonly\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "readonly player: "
                },
                {
                  "kind": "Reference",
                  "text": "Player",
                  "canonicalReference": "server!Player:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "player",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!PlayerUI#sendData:member(1)",
              "docComment": "/**\n * Sends data to the player's client UI.\n *\n * @param data - The data to send to the client UI.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "sendData(data: "
                },
                {
                  "kind": "Content",
                  "text": "object"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "data",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "sendData"
            }
          ],
          "extendsTokenRange": {
            "startIndex": 1,
            "endIndex": 2
          },
          "implementsTokenRanges": []
        },
        {
          "kind": "Enum",
          "canonicalReference": "server!PlayerUIEvent:enum",
          "docComment": "/**\n * Event types a PlayerUI can emit. See {@link PlayerUIEventPayloads} for the payloads.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export declare enum PlayerUIEvent "
            }
          ],
          "fileUrlPath": "src/players/PlayerUI.ts",
          "releaseTag": "Public",
          "name": "PlayerUIEvent",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "EnumMember",
              "canonicalReference": "server!PlayerUIEvent.DATA:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "DATA = "
                },
                {
                  "kind": "Content",
                  "text": "\"PLAYER_UI.DATA\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "DATA"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!PlayerUIEvent.LOAD:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "LOAD = "
                },
                {
                  "kind": "Content",
                  "text": "\"PLAYER_UI.LOAD\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "LOAD"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!PlayerUIEvent.LOCK_POINTER:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "LOCK_POINTER = "
                },
                {
                  "kind": "Content",
                  "text": "\"PLAYER_UI.LOCK_POINTER\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "LOCK_POINTER"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!PlayerUIEvent.SEND_DATA:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SEND_DATA = "
                },
                {
                  "kind": "Content",
                  "text": "\"PLAYER_UI.SEND_DATA\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SEND_DATA"
            }
          ]
        },
        {
          "kind": "Interface",
          "canonicalReference": "server!PlayerUIEventPayloads:interface",
          "docComment": "/**\n * Event payloads for PlayerUI emitted events.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export interface PlayerUIEventPayloads "
            }
          ],
          "fileUrlPath": "src/players/PlayerUI.ts",
          "releaseTag": "Public",
          "name": "PlayerUIEventPayloads",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!PlayerUIEventPayloads#\"PLAYER_UI.DATA\":member",
              "docComment": "/**\n * Emitted when data is received by the server from the player's client UI.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "PlayerUIEvent.DATA",
                  "canonicalReference": "server!PlayerUIEvent.DATA:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        playerUI: "
                },
                {
                  "kind": "Reference",
                  "text": "PlayerUI",
                  "canonicalReference": "server!PlayerUI:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        data: "
                },
                {
                  "kind": "Reference",
                  "text": "Record",
                  "canonicalReference": "!Record:type"
                },
                {
                  "kind": "Content",
                  "text": "<string, any>;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"PLAYER_UI.DATA\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 8
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!PlayerUIEventPayloads#\"PLAYER_UI.LOAD\":member",
              "docComment": "/**\n * Emitted when the player's client UI is loaded.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "PlayerUIEvent.LOAD",
                  "canonicalReference": "server!PlayerUIEvent.LOAD:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        playerUI: "
                },
                {
                  "kind": "Reference",
                  "text": "PlayerUI",
                  "canonicalReference": "server!PlayerUI:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        htmlUri: string;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"PLAYER_UI.LOAD\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!PlayerUIEventPayloads#\"PLAYER_UI.LOCK_POINTER\":member",
              "docComment": "/**\n * Emitted when the player's mouse pointer is locked or unlocked.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "PlayerUIEvent.LOCK_POINTER",
                  "canonicalReference": "server!PlayerUIEvent.LOCK_POINTER:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        playerUI: "
                },
                {
                  "kind": "Reference",
                  "text": "PlayerUI",
                  "canonicalReference": "server!PlayerUI:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        lock: boolean;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"PLAYER_UI.LOCK_POINTER\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!PlayerUIEventPayloads#\"PLAYER_UI.SEND_DATA\":member",
              "docComment": "/**\n * Emitted when data is sent from the server to the player's client UI.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "PlayerUIEvent.SEND_DATA",
                  "canonicalReference": "server!PlayerUIEvent.SEND_DATA:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        playerUI: "
                },
                {
                  "kind": "Reference",
                  "text": "PlayerUI",
                  "canonicalReference": "server!PlayerUI:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        data: "
                },
                {
                  "kind": "Reference",
                  "text": "Record",
                  "canonicalReference": "!Record:type"
                },
                {
                  "kind": "Content",
                  "text": "<string, any>;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"PLAYER_UI.SEND_DATA\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 8
              }
            }
          ],
          "extendsTokenRanges": []
        },
        {
          "kind": "Variable",
          "canonicalReference": "server!PORT:var",
          "docComment": "/**\n * The port the server will run on. You can override this in your .env by setting PORT. When deployed in production to HYTOPIA servers, any .env value will be ignored and 8080 will be used.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "PORT: "
            },
            {
              "kind": "Content",
              "text": "string | 8080"
            }
          ],
          "fileUrlPath": "src/networking/WebServer.ts",
          "isReadonly": true,
          "releaseTag": "Public",
          "name": "PORT",
          "variableTypeTokenRange": {
            "startIndex": 1,
            "endIndex": 2
          }
        },
        {
          "kind": "Class",
          "canonicalReference": "server!Quaternion:class",
          "docComment": "/**\n * Represents a quaternion.\n *\n * @remarks\n *\n * All quaternion methods result in mutation of the quaternion instance. This class extends `Float32Array` to provide an efficient way to create and manipulate a quaternion. Various convenience methods are provided for common quaternion operations.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export default class Quaternion extends "
            },
            {
              "kind": "Reference",
              "text": "Float32Array",
              "canonicalReference": "!Float32Array:interface"
            },
            {
              "kind": "Content",
              "text": " implements "
            },
            {
              "kind": "Reference",
              "text": "QuaternionLike",
              "canonicalReference": "server!QuaternionLike:interface"
            },
            {
              "kind": "Content",
              "text": " "
            }
          ],
          "fileUrlPath": "src/shared/classes/Quaternion.ts",
          "releaseTag": "Public",
          "isAbstract": false,
          "name": "Quaternion",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "Constructor",
              "canonicalReference": "server!Quaternion:constructor(1)",
              "docComment": "/**\n * Constructs a new instance of the `Quaternion` class\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "constructor(x: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ", y: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ", z: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ", w: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ");"
                }
              ],
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "x",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "y",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "z",
                  "parameterTypeTokenRange": {
                    "startIndex": 5,
                    "endIndex": 6
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "w",
                  "parameterTypeTokenRange": {
                    "startIndex": 7,
                    "endIndex": 8
                  },
                  "isOptional": false
                }
              ]
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Quaternion#clone:member(1)",
              "docComment": "/**\n * Creates a clone of the current quaternion.\n *\n * @returns A new `Quaternion` instance.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "clone(): "
                },
                {
                  "kind": "Reference",
                  "text": "Quaternion",
                  "canonicalReference": "server!Quaternion:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "clone"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Quaternion#conjugate:member(1)",
              "docComment": "/**\n * Conjugates the current quaternion.\n *\n * @returns The current quaternion.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "conjugate(): "
                },
                {
                  "kind": "Reference",
                  "text": "Quaternion",
                  "canonicalReference": "server!Quaternion:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "conjugate"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Quaternion#copy:member(1)",
              "docComment": "/**\n * Copies the components of a `QuaternionLike` object to the current quaternion.\n *\n * @param quaternionLike - The `QuaternionLike` object to copy the components from.\n *\n * @returns The current quaternion.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "copy(quaternion: "
                },
                {
                  "kind": "Reference",
                  "text": "Quaternion",
                  "canonicalReference": "server!Quaternion:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Quaternion",
                  "canonicalReference": "server!Quaternion:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "quaternion",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "copy"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Quaternion#dot:member(1)",
              "docComment": "/**\n * Calculates the dot product of the current quaternion and another quaternion.\n *\n * @param quaternionLike - The quaternion to calculate the dot product with.\n *\n * @returns The dot product.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "dot(quaternion: "
                },
                {
                  "kind": "Reference",
                  "text": "Quaternion",
                  "canonicalReference": "server!Quaternion:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "quaternion",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "dot"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Quaternion#equals:member(1)",
              "docComment": "/**\n * Checks if the current quaternion is approximately equal to another quaternion.\n *\n * @param quaternionLike - The quaternion to check against.\n *\n * @returns `true` if the quaternions are approximately equal, `false` otherwise.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "equals(quaternion: "
                },
                {
                  "kind": "Reference",
                  "text": "Quaternion",
                  "canonicalReference": "server!Quaternion:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "quaternion",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "equals"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Quaternion#exactEquals:member(1)",
              "docComment": "/**\n * Checks if the current quaternion is exactly equal to another quaternion.\n *\n * @param quaternionLike - The quaternion to check against.\n *\n * @returns `true` if the quaternions are exactly equal, `false` otherwise.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "exactEquals(quaternion: "
                },
                {
                  "kind": "Reference",
                  "text": "Quaternion",
                  "canonicalReference": "server!Quaternion:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "quaternion",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "exactEquals"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Quaternion#exponential:member(1)",
              "docComment": "/**\n * Calculates and sets the current quaternion to its exponential.\n *\n * @returns The current quaternion.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "exponential(): "
                },
                {
                  "kind": "Reference",
                  "text": "Quaternion",
                  "canonicalReference": "server!Quaternion:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "exponential"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Quaternion.fromEuler:member(1)",
              "docComment": "/**\n * Creates a quaternion from Euler angles.\n *\n * @param x - The x-component of the Euler angles in degrees.\n *\n * @param y - The y-component of the Euler angles in degrees.\n *\n * @param z - The z-component of the Euler angles in degrees.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "static fromEuler(x: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ", y: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ", z: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Quaternion",
                  "canonicalReference": "server!Quaternion:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": true,
              "returnTypeTokenRange": {
                "startIndex": 7,
                "endIndex": 8
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "x",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "y",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "z",
                  "parameterTypeTokenRange": {
                    "startIndex": 5,
                    "endIndex": 6
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "fromEuler"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Quaternion.fromQuaternionLike:member(1)",
              "docComment": "/**\n * Creates a quaternion from a `QuaternionLike` object.\n *\n * @param quaternionLike - The `QuaternionLike` object to create the quaternion from.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "static fromQuaternionLike(quaternionLike: "
                },
                {
                  "kind": "Reference",
                  "text": "QuaternionLike",
                  "canonicalReference": "server!QuaternionLike:interface"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Quaternion",
                  "canonicalReference": "server!Quaternion:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": true,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "quaternionLike",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "fromQuaternionLike"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Quaternion#getAngle:member(1)",
              "docComment": "/**\n * Calculates and returns the angle between the current quaternion and another quaternion.\n *\n * @param quaternionLike - The quaternion to calculate the angle with.\n *\n * @returns The angle in degrees.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "getAngle(quaternion: "
                },
                {
                  "kind": "Reference",
                  "text": "Quaternion",
                  "canonicalReference": "server!Quaternion:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "quaternion",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "getAngle"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Quaternion#identity:member(1)",
              "docComment": "/**\n * Sets the current quaternion to the identity quaternion.\n *\n * @returns The current quaternion.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "identity(): "
                },
                {
                  "kind": "Reference",
                  "text": "Quaternion",
                  "canonicalReference": "server!Quaternion:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "identity"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Quaternion#invert:member(1)",
              "docComment": "/**\n * Inverts each component of the quaternion.\n *\n * @returns The current quaternion.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "invert(): "
                },
                {
                  "kind": "Reference",
                  "text": "Quaternion",
                  "canonicalReference": "server!Quaternion:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "invert"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Quaternion#length:member",
              "docComment": "/**\n * The length of the quaternion.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get length(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "length",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Quaternion#lerp:member(1)",
              "docComment": "/**\n * Linearly interpolates between the current quaternion and another quaternion.\n *\n * @param quaternionLike - The quaternion to interpolate with.\n *\n * @param t - The interpolation factor.\n *\n * @returns The current quaternion.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "lerp(quaternion: "
                },
                {
                  "kind": "Reference",
                  "text": "Quaternion",
                  "canonicalReference": "server!Quaternion:class"
                },
                {
                  "kind": "Content",
                  "text": ", t: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Quaternion",
                  "canonicalReference": "server!Quaternion:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 5,
                "endIndex": 6
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "quaternion",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "t",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "lerp"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Quaternion#logarithm:member(1)",
              "docComment": "/**\n * Sets the current quaternion to its natural logarithm.\n *\n * @returns The current quaternion.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "logarithm(): "
                },
                {
                  "kind": "Reference",
                  "text": "Quaternion",
                  "canonicalReference": "server!Quaternion:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "logarithm"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Quaternion#magnitude:member",
              "docComment": "/**\n * The magnitude of the quaternion. Alias for `.length`.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get magnitude(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "magnitude",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Quaternion#multiply:member(1)",
              "docComment": "/**\n * Multiplies the quaternion by another quaternion.\n *\n * @param quaternionLike - The quaternion to multiply by.\n *\n * @returns The current quaternion.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "multiply(quaternion: "
                },
                {
                  "kind": "Reference",
                  "text": "Quaternion",
                  "canonicalReference": "server!Quaternion:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Quaternion",
                  "canonicalReference": "server!Quaternion:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "quaternion",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "multiply"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Quaternion#normalize:member(1)",
              "docComment": "/**\n * Normalizes the quaternion.\n *\n * @returns The current quaternion.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "normalize(): "
                },
                {
                  "kind": "Reference",
                  "text": "Quaternion",
                  "canonicalReference": "server!Quaternion:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "normalize"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Quaternion#power:member(1)",
              "docComment": "/**\n * Raises the current quaternion to a power.\n *\n * @param exponent - The exponent to raise the quaternion to.\n *\n * @returns The current quaternion.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "power(exponent: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Quaternion",
                  "canonicalReference": "server!Quaternion:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "exponent",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "power"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Quaternion#randomize:member(1)",
              "docComment": "/**\n * Randomizes the current quaternion.\n *\n * @returns The current quaternion.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "randomize(): "
                },
                {
                  "kind": "Reference",
                  "text": "Quaternion",
                  "canonicalReference": "server!Quaternion:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "randomize"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Quaternion#rotateX:member(1)",
              "docComment": "/**\n * Rotates the quaternion around the x-axis.\n *\n * @param angle - The angle to rotate in degrees.\n *\n * @returns The current quaternion.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "rotateX(angle: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Quaternion",
                  "canonicalReference": "server!Quaternion:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "angle",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "rotateX"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Quaternion#rotateY:member(1)",
              "docComment": "/**\n * Rotates the quaternion around the y-axis.\n *\n * @param angle - The angle to rotate in degrees.\n *\n * @returns The current quaternion.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "rotateY(angle: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Quaternion",
                  "canonicalReference": "server!Quaternion:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "angle",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "rotateY"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Quaternion#rotateZ:member(1)",
              "docComment": "/**\n * Rotates the quaternion around the z-axis.\n *\n * @param angle - The angle to rotate in degrees.\n *\n * @returns The current quaternion.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "rotateZ(angle: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Quaternion",
                  "canonicalReference": "server!Quaternion:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "angle",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "rotateZ"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Quaternion#scale:member(1)",
              "docComment": "/**\n * Scales the quaternion by a scalar value.\n *\n * @param scale - The scalar value to scale the quaternion by.\n *\n * @returns The current quaternion.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "scale(scale: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Quaternion",
                  "canonicalReference": "server!Quaternion:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "scale",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "scale"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Quaternion#setAxisAngle:member(1)",
              "docComment": "/**\n * Sets the current quaternion to the angle and rotation axis.\n *\n * @param axis - The axis to rotate around.\n *\n * @param angle - The angle to rotate in radians.\n *\n * @returns The current quaternion.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setAxisAngle(axis: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": ", angle: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Quaternion",
                  "canonicalReference": "server!Quaternion:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 5,
                "endIndex": 6
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "axis",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "angle",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setAxisAngle"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Quaternion#slerp:member(1)",
              "docComment": "/**\n * Spherically interpolates between the current quaternion and another quaternion.\n *\n * @param quaternion - The quaternion to interpolate with.\n *\n * @param t - The interpolation factor.\n *\n * @returns The current quaternion.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "slerp(quaternion: "
                },
                {
                  "kind": "Reference",
                  "text": "Quaternion",
                  "canonicalReference": "server!Quaternion:class"
                },
                {
                  "kind": "Content",
                  "text": ", t: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Quaternion",
                  "canonicalReference": "server!Quaternion:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 5,
                "endIndex": 6
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "quaternion",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "t",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "slerp"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Quaternion#squaredLength:member",
              "docComment": "/**\n * The squared length of the quaternion.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get squaredLength(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "squaredLength",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Quaternion#squaredMagnitude:member",
              "docComment": "/**\n * The squared magnitude of the quaternion. Alias for `.squaredLength`.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get squaredMagnitude(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "squaredMagnitude",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Quaternion#toString:member(1)",
              "docComment": "/**\n * Returns a string representation of the quaternion in x,y,z,w format.\n *\n * @returns A string representation of the quaternion in the format x,y,z,w.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "toString(): "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "toString"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Quaternion#transformVector:member(1)",
              "docComment": "/**\n * Rotates the provided vector by the rotation this quaternion represents. This modifies the vector in-place, but also returns the rotated vector.\n *\n * @param vector - the vector to rotate\n *\n * @returns the rotated vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "transformVector(vector: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "vector",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "transformVector"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Quaternion#w:member",
              "docComment": "/**\n * The w-component of the quaternion.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get w(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";\n\nset w(value: number);"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "w",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Quaternion#x:member",
              "docComment": "/**\n * The x-component of the quaternion.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get x(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";\n\nset x(value: number);"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "x",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Quaternion#y:member",
              "docComment": "/**\n * The y-component of the quaternion.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get y(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";\n\nset y(value: number);"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "y",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Quaternion#z:member",
              "docComment": "/**\n * The z-component of the quaternion.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get z(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";\n\nset z(value: number);"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "z",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            }
          ],
          "extendsTokenRange": {
            "startIndex": 1,
            "endIndex": 2
          },
          "implementsTokenRanges": [
            {
              "startIndex": 3,
              "endIndex": 4
            }
          ]
        },
        {
          "kind": "Interface",
          "canonicalReference": "server!QuaternionLike:interface",
          "docComment": "/**\n * A quaternion.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "interface QuaternionLike "
            }
          ],
          "fileUrlPath": "src/shared/types/math/QuaternionLike.ts",
          "releaseTag": "Public",
          "name": "QuaternionLike",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!QuaternionLike#w:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "w: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "w",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!QuaternionLike#x:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "x: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "x",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!QuaternionLike#y:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "y: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "y",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!QuaternionLike#z:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "z: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "z",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            }
          ],
          "extendsTokenRanges": []
        },
        {
          "kind": "TypeAlias",
          "canonicalReference": "server!RawCollider:type",
          "docComment": "/**\n * A raw collider object from the Rapier physics engine.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export type RawCollider = "
            },
            {
              "kind": "Reference",
              "text": "RAPIER.Collider",
              "canonicalReference": "@dimforge/rapier3d-simd-compat!Collider:class"
            },
            {
              "kind": "Content",
              "text": ";"
            }
          ],
          "fileUrlPath": "src/worlds/physics/Collider.ts",
          "releaseTag": "Public",
          "name": "RawCollider",
          "typeTokenRange": {
            "startIndex": 1,
            "endIndex": 2
          }
        },
        {
          "kind": "TypeAlias",
          "canonicalReference": "server!RawCollisionGroups:type",
          "docComment": "/**\n * A raw set of collision groups represented as a 32-bit number.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export type RawCollisionGroups = "
            },
            {
              "kind": "Reference",
              "text": "RAPIER.InteractionGroups",
              "canonicalReference": "@dimforge/rapier3d-simd-compat!InteractionGroups:type"
            },
            {
              "kind": "Content",
              "text": ";"
            }
          ],
          "fileUrlPath": "src/worlds/physics/CollisionGroupsBuilder.ts",
          "releaseTag": "Public",
          "name": "RawCollisionGroups",
          "typeTokenRange": {
            "startIndex": 1,
            "endIndex": 2
          }
        },
        {
          "kind": "TypeAlias",
          "canonicalReference": "server!RawShape:type",
          "docComment": "/**\n * A raw shape object from the Rapier physics engine.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export type RawShape = "
            },
            {
              "kind": "Reference",
              "text": "RAPIER.Shape",
              "canonicalReference": "@dimforge/rapier3d-simd-compat!Shape:class"
            },
            {
              "kind": "Content",
              "text": ";"
            }
          ],
          "fileUrlPath": "src/worlds/physics/Collider.ts",
          "releaseTag": "Public",
          "name": "RawShape",
          "typeTokenRange": {
            "startIndex": 1,
            "endIndex": 2
          }
        },
        {
          "kind": "TypeAlias",
          "canonicalReference": "server!RaycastHit:type",
          "docComment": "/**\n * A hit result from a raycast.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export type RaycastHit = "
            },
            {
              "kind": "Content",
              "text": "{\n    hitBlock?: "
            },
            {
              "kind": "Reference",
              "text": "Block",
              "canonicalReference": "server!Block:class"
            },
            {
              "kind": "Content",
              "text": ";\n    hitEntity?: "
            },
            {
              "kind": "Reference",
              "text": "Entity",
              "canonicalReference": "server!Entity:class"
            },
            {
              "kind": "Content",
              "text": ";\n    hitPoint: "
            },
            {
              "kind": "Reference",
              "text": "Vector3Like",
              "canonicalReference": "server!Vector3Like:interface"
            },
            {
              "kind": "Content",
              "text": ";\n    hitDistance: number;\n}"
            },
            {
              "kind": "Content",
              "text": ";"
            }
          ],
          "fileUrlPath": "src/worlds/physics/Simulation.ts",
          "releaseTag": "Public",
          "name": "RaycastHit",
          "typeTokenRange": {
            "startIndex": 1,
            "endIndex": 8
          }
        },
        {
          "kind": "TypeAlias",
          "canonicalReference": "server!RaycastOptions:type",
          "docComment": "/**\n * Options for raycasting.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export type RaycastOptions = "
            },
            {
              "kind": "Content",
              "text": "{\n    solidMode?: boolean;\n} & "
            },
            {
              "kind": "Reference",
              "text": "FilterOptions",
              "canonicalReference": "server!FilterOptions:type"
            },
            {
              "kind": "Content",
              "text": ";"
            }
          ],
          "fileUrlPath": "src/worlds/physics/Simulation.ts",
          "releaseTag": "Public",
          "name": "RaycastOptions",
          "typeTokenRange": {
            "startIndex": 1,
            "endIndex": 3
          }
        },
        {
          "kind": "Interface",
          "canonicalReference": "server!RgbColor:interface",
          "docComment": "/**\n * A RGB color.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "interface RgbColor "
            }
          ],
          "fileUrlPath": "src/shared/types/RgbColor.ts",
          "releaseTag": "Public",
          "name": "RgbColor",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!RgbColor#b:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "b: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "b",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!RgbColor#g:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "g: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "g",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!RgbColor#r:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "r: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "r",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            }
          ],
          "extendsTokenRanges": []
        },
        {
          "kind": "Class",
          "canonicalReference": "server!RigidBody:class",
          "docComment": "/**\n * Represents a rigid body in a world's physics simulation.\n *\n * @remarks\n *\n * Rigid bodies are the core of the physics simulation. They are used to represent physical objects (IE: entities) that can interact with each other.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export default class RigidBody extends "
            },
            {
              "kind": "Reference",
              "text": "EventRouter",
              "canonicalReference": "server!EventRouter:class"
            },
            {
              "kind": "Content",
              "text": " "
            }
          ],
          "fileUrlPath": "src/worlds/physics/RigidBody.ts",
          "releaseTag": "Public",
          "isAbstract": false,
          "name": "RigidBody",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "Constructor",
              "canonicalReference": "server!RigidBody:constructor(1)",
              "docComment": "/**\n * Constructs a new instance of the `RigidBody` class\n *\n * @param options - The options for the rigid body instance.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "constructor(options: "
                },
                {
                  "kind": "Reference",
                  "text": "RigidBodyOptions",
                  "canonicalReference": "server!RigidBodyOptions:type"
                },
                {
                  "kind": "Content",
                  "text": ");"
                }
              ],
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "options",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ]
            },
            {
              "kind": "Method",
              "canonicalReference": "server!RigidBody#addChildColliderToSimulation:member(1)",
              "docComment": "/**\n * Adds an unsimulated child collider to the rigid body for the simulation it belongs to.\n *\n * @param collider - The child collider to add to the rigid body for the simulation it belongs to.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "addChildColliderToSimulation(collider: "
                },
                {
                  "kind": "Reference",
                  "text": "Collider",
                  "canonicalReference": "server!Collider:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "collider",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "addChildColliderToSimulation"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!RigidBody#addForce:member(1)",
              "docComment": "/**\n * Adds a force to the rigid body.\n *\n * @param force - The force to add to the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "addForce(force: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "force",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "addForce"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!RigidBody#additionalMass:member",
              "docComment": "/**\n * The additional mass of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get additionalMass(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "additionalMass",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!RigidBody#additionalSolverIterations:member",
              "docComment": "/**\n * The additional solver iterations of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get additionalSolverIterations(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "additionalSolverIterations",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!RigidBody#addTorque:member(1)",
              "docComment": "/**\n * Adds a torque to the rigid body.\n *\n * @param torque - The torque to add to the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "addTorque(torque: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "torque",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "addTorque"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!RigidBody#addToSimulation:member(1)",
              "docComment": "/**\n * Adds the rigid body to a simulation.\n *\n * @param simulation - The simulation to add the rigid body to.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "addToSimulation(simulation: "
                },
                {
                  "kind": "Reference",
                  "text": "Simulation",
                  "canonicalReference": "server!Simulation:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "simulation",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "addToSimulation"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!RigidBody#angularDamping:member",
              "docComment": "/**\n * The angular damping of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get angularDamping(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "angularDamping",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!RigidBody#angularVelocity:member",
              "docComment": "/**\n * The angular velocity of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get angularVelocity(): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "angularVelocity",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!RigidBody#applyImpulse:member(1)",
              "docComment": "/**\n * Applies an impulse to the rigid body.\n *\n * @param impulse - The impulse to apply to the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "applyImpulse(impulse: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "impulse",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "applyImpulse"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!RigidBody#applyImpulseAtPoint:member(1)",
              "docComment": "/**\n * Applies an impulse to the rigid body at a point.\n *\n * @param impulse - The impulse to apply to the rigid body.\n *\n * @param point - The point at which to apply the impulse.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "applyImpulseAtPoint(impulse: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ", point: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 5,
                "endIndex": 6
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "impulse",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "point",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "applyImpulseAtPoint"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!RigidBody#applyTorqueImpulse:member(1)",
              "docComment": "/**\n * Applies a torque impulse to the rigid body.\n *\n * @param impulse - The torque impulse to apply to the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "applyTorqueImpulse(impulse: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "impulse",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "applyTorqueImpulse"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!RigidBody#colliders:member",
              "docComment": "/**\n * The colliders of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get colliders(): "
                },
                {
                  "kind": "Reference",
                  "text": "Set",
                  "canonicalReference": "!Set:interface"
                },
                {
                  "kind": "Content",
                  "text": "<"
                },
                {
                  "kind": "Reference",
                  "text": "Collider",
                  "canonicalReference": "server!Collider:class"
                },
                {
                  "kind": "Content",
                  "text": ">"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "colliders",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 5
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!RigidBody#createAndAddChildCollider:member(1)",
              "docComment": "/**\n * Creates and adds a child collider to the rigid body for the simulation it belongs to.\n *\n * @remarks\n *\n * If the rigid body is not simulated, the collider will be added to the rigid body as a pending child collider and also simulated when the rigid body is simulated.\n *\n * @param colliderOptions - The options for the child collider to add.\n *\n * @returns The child collider that was added to the rigid body, or null if failed.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "createAndAddChildCollider(colliderOptions: "
                },
                {
                  "kind": "Reference",
                  "text": "ColliderOptions",
                  "canonicalReference": "server!ColliderOptions:type"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Collider",
                  "canonicalReference": "server!Collider:class"
                },
                {
                  "kind": "Content",
                  "text": " | null"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 5
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "colliderOptions",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "createAndAddChildCollider"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!RigidBody#createAndAddChildColliders:member(1)",
              "docComment": "/**\n * Creates and adds multiple child colliders to the rigid body for the simulation it belongs to.\n *\n * @remarks\n *\n * If the rigid body is not simulated, the colliders will be added to the rigid body as pending child colliders and also simulated when the rigid body is simulated.\n *\n * @param colliderOptions - The options for the child colliders to add to the rigid body.\n *\n * @returns The child colliders that were added to the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "createAndAddChildColliders(colliderOptions: "
                },
                {
                  "kind": "Reference",
                  "text": "ColliderOptions",
                  "canonicalReference": "server!ColliderOptions:type"
                },
                {
                  "kind": "Content",
                  "text": "[]"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Collider",
                  "canonicalReference": "server!Collider:class"
                },
                {
                  "kind": "Content",
                  "text": "[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 4,
                "endIndex": 6
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "colliderOptions",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 3
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "createAndAddChildColliders"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!RigidBody#directionFromRotation:member",
              "docComment": "/**\n * The direction from the rotation of the rigid body. (-Z identity)\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get directionFromRotation(): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "directionFromRotation",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!RigidBody#dominanceGroup:member",
              "docComment": "/**\n * The dominance group of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get dominanceGroup(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "dominanceGroup",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!RigidBody#effectiveAngularInertia:member",
              "docComment": "/**\n * The effective angular inertia of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get effectiveAngularInertia(): "
                },
                {
                  "kind": "Reference",
                  "text": "SpdMatrix3",
                  "canonicalReference": "server!SpdMatrix3:interface"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "effectiveAngularInertia",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!RigidBody#effectiveInverseMass:member",
              "docComment": "/**\n * The effective inverse mass of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get effectiveInverseMass(): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "effectiveInverseMass",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!RigidBody#effectiveWorldInversePrincipalAngularInertiaSqrt:member",
              "docComment": "/**\n * The effective world inverse principal angular inertia square root of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get effectiveWorldInversePrincipalAngularInertiaSqrt(): "
                },
                {
                  "kind": "Reference",
                  "text": "SpdMatrix3",
                  "canonicalReference": "server!SpdMatrix3:interface"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "effectiveWorldInversePrincipalAngularInertiaSqrt",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!RigidBody#enabledPositions:member",
              "docComment": "/**\n * The enabled axes of positional movement of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get enabledPositions(): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Boolean",
                  "canonicalReference": "server!Vector3Boolean:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "enabledPositions",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!RigidBody#enabledRotations:member",
              "docComment": "/**\n * The enabled axes of rotational movement of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get enabledRotations(): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Boolean",
                  "canonicalReference": "server!Vector3Boolean:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "enabledRotations",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!RigidBody#getCollidersByTag:member(1)",
              "docComment": "/**\n * Gets the colliders of the rigid body by tag.\n *\n * @param tag - The tag to filter by.\n *\n * @returns The colliders of the rigid body with the given tag.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "getCollidersByTag(tag: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Collider",
                  "canonicalReference": "server!Collider:class"
                },
                {
                  "kind": "Content",
                  "text": "[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 5
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "tag",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "getCollidersByTag"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!RigidBody#gravityScale:member",
              "docComment": "/**\n * The gravity scale of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get gravityScale(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "gravityScale",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!RigidBody#inverseMass:member",
              "docComment": "/**\n * The inverse mass of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get inverseMass(): "
                },
                {
                  "kind": "Content",
                  "text": "number | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "inverseMass",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!RigidBody#inversePrincipalAngularInertiaSqrt:member",
              "docComment": "/**\n * The inverse principal angular inertia square root of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get inversePrincipalAngularInertiaSqrt(): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "inversePrincipalAngularInertiaSqrt",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!RigidBody#isCcdEnabled:member",
              "docComment": "/**\n * Whether the rigid body has continuous collision detection enabled.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get isCcdEnabled(): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "isCcdEnabled",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!RigidBody#isDynamic:member",
              "docComment": "/**\n * Whether the rigid body is dynamic.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get isDynamic(): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "isDynamic",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!RigidBody#isEnabled:member",
              "docComment": "/**\n * Whether the rigid body is enabled.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get isEnabled(): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "isEnabled",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!RigidBody#isFixed:member",
              "docComment": "/**\n * Whether the rigid body is fixed.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get isFixed(): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "isFixed",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!RigidBody#isKinematic:member",
              "docComment": "/**\n * Whether the rigid body is kinematic.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get isKinematic(): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "isKinematic",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!RigidBody#isKinematicPositionBased:member",
              "docComment": "/**\n * Whether the rigid body is kinematic position based.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get isKinematicPositionBased(): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "isKinematicPositionBased",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!RigidBody#isKinematicVelocityBased:member",
              "docComment": "/**\n * Whether the rigid body is kinematic velocity based.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get isKinematicVelocityBased(): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "isKinematicVelocityBased",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!RigidBody#isMoving:member",
              "docComment": "/**\n * Whether the rigid body is moving.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get isMoving(): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "isMoving",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!RigidBody#isRemoved:member",
              "docComment": "/**\n * Whether the rigid body has been removed from the simulation.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get isRemoved(): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "isRemoved",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!RigidBody#isSimulated:member",
              "docComment": "/**\n * Whether the rigid body is simulated.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get isSimulated(): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "isSimulated",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!RigidBody#isSleeping:member",
              "docComment": "/**\n * Whether the rigid body is sleeping.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get isSleeping(): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "isSleeping",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!RigidBody#linearDamping:member",
              "docComment": "/**\n * The linear damping of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get linearDamping(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "linearDamping",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!RigidBody#linearVelocity:member",
              "docComment": "/**\n * The linear velocity of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get linearVelocity(): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "linearVelocity",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!RigidBody#localCenterOfMass:member",
              "docComment": "/**\n * The local center of mass of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get localCenterOfMass(): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "localCenterOfMass",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!RigidBody#lockAllPositions:member(1)",
              "docComment": "/**\n * Locks all positional movement of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "lockAllPositions(): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "lockAllPositions"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!RigidBody#lockAllRotations:member(1)",
              "docComment": "/**\n * Locks all rotations of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "lockAllRotations(): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "lockAllRotations"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!RigidBody#mass:member",
              "docComment": "/**\n * The mass of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get mass(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "mass",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!RigidBody#nextKinematicPosition:member",
              "docComment": "/**\n * The next kinematic position of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get nextKinematicPosition(): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "nextKinematicPosition",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!RigidBody#nextKinematicRotation:member",
              "docComment": "/**\n * The next kinematic rotation of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get nextKinematicRotation(): "
                },
                {
                  "kind": "Reference",
                  "text": "QuaternionLike",
                  "canonicalReference": "server!QuaternionLike:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "nextKinematicRotation",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!RigidBody#numColliders:member",
              "docComment": "/**\n * The number of colliders in the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get numColliders(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "numColliders",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!RigidBody#position:member",
              "docComment": "/**\n * The position of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get position(): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "position",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!RigidBody#principalAngularInertia:member",
              "docComment": "/**\n * The principal angular inertia of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get principalAngularInertia(): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "principalAngularInertia",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!RigidBody#principalAngularInertiaLocalFrame:member",
              "docComment": "/**\n * The principal angular inertia local frame of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get principalAngularInertiaLocalFrame(): "
                },
                {
                  "kind": "Reference",
                  "text": "QuaternionLike",
                  "canonicalReference": "server!QuaternionLike:interface"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "principalAngularInertiaLocalFrame",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!RigidBody#rawRigidBody:member",
              "docComment": "/**\n * The raw RAPIER rigid body instance.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get rawRigidBody(): "
                },
                {
                  "kind": "Reference",
                  "text": "RAPIER.RigidBody",
                  "canonicalReference": "@dimforge/rapier3d-simd-compat!RigidBody:class"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "rawRigidBody",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!RigidBody#removeFromSimulation:member(1)",
              "docComment": "/**\n * Removes the rigid body from the simulation it belongs to.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "removeFromSimulation(): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "removeFromSimulation"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!RigidBody#resetAngularVelocity:member(1)",
              "docComment": "/**\n * Resets the angular velocity of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "resetAngularVelocity(): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "resetAngularVelocity"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!RigidBody#resetForces:member(1)",
              "docComment": "/**\n * Resets the forces actiong on the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "resetForces(): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "resetForces"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!RigidBody#resetLinearVelocity:member(1)",
              "docComment": "/**\n * Resets the linear velocity of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "resetLinearVelocity(): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "resetLinearVelocity"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!RigidBody#resetTorques:member(1)",
              "docComment": "/**\n * Resets the torques acting on the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "resetTorques(): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "resetTorques"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!RigidBody#rotation:member",
              "docComment": "/**\n * The rotation of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get rotation(): "
                },
                {
                  "kind": "Reference",
                  "text": "QuaternionLike",
                  "canonicalReference": "server!QuaternionLike:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "rotation",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!RigidBody#setAdditionalMass:member(1)",
              "docComment": "/**\n * Sets the additional mass of the rigid body.\n *\n * @param additionalMass - The additional mass of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setAdditionalMass(additionalMass: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "additionalMass",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setAdditionalMass"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!RigidBody#setAdditionalMassProperties:member(1)",
              "docComment": "/**\n * Sets the additional mass properties of the rigid body.\n *\n * @param additionalMassProperties - The additional mass properties of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setAdditionalMassProperties(additionalMassProperties: "
                },
                {
                  "kind": "Reference",
                  "text": "RigidBodyAdditionalMassProperties",
                  "canonicalReference": "server!RigidBodyAdditionalMassProperties:type"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "additionalMassProperties",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setAdditionalMassProperties"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!RigidBody#setAdditionalSolverIterations:member(1)",
              "docComment": "/**\n * Sets the additional solver iterations of the rigid body.\n *\n * @param solverIterations - The additional solver iterations of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setAdditionalSolverIterations(solverIterations: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "solverIterations",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setAdditionalSolverIterations"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!RigidBody#setAngularDamping:member(1)",
              "docComment": "/**\n * Sets the angular damping of the rigid body.\n *\n * @param angularDamping - The angular damping of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setAngularDamping(angularDamping: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "angularDamping",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setAngularDamping"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!RigidBody#setAngularVelocity:member(1)",
              "docComment": "/**\n * Sets the angular velocity of the rigid body.\n *\n * @param angularVelocity - The angular velocity of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setAngularVelocity(angularVelocity: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "angularVelocity",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setAngularVelocity"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!RigidBody#setCcdEnabled:member(1)",
              "docComment": "/**\n * Sets whether the rigid body has continuous collision detection enabled.\n *\n * @param ccdEnabled - Whether the rigid body has continuous collision detection enabled.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setCcdEnabled(ccdEnabled: "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "ccdEnabled",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setCcdEnabled"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!RigidBody#setCollisionGroupsForSensorColliders:member(1)",
              "docComment": "/**\n * Sets the collision groups for sensor colliders of the rigid body.\n *\n * @param collisionGroups - The collision groups for sensor colliders of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setCollisionGroupsForSensorColliders(collisionGroups: "
                },
                {
                  "kind": "Reference",
                  "text": "CollisionGroups",
                  "canonicalReference": "server!CollisionGroups:type"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "collisionGroups",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setCollisionGroupsForSensorColliders"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!RigidBody#setCollisionGroupsForSolidColliders:member(1)",
              "docComment": "/**\n * Sets the collision groups for solid colliders (non-sensor) of the rigid body.\n *\n * @param collisionGroups - The collision groups for solid colliders of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setCollisionGroupsForSolidColliders(collisionGroups: "
                },
                {
                  "kind": "Reference",
                  "text": "CollisionGroups",
                  "canonicalReference": "server!CollisionGroups:type"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "collisionGroups",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setCollisionGroupsForSolidColliders"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!RigidBody#setDominanceGroup:member(1)",
              "docComment": "/**\n * Sets the dominance group of the rigid body.\n *\n * @param dominanceGroup - The dominance group of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setDominanceGroup(dominanceGroup: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "dominanceGroup",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setDominanceGroup"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!RigidBody#setEnabled:member(1)",
              "docComment": "/**\n * Sets whether the rigid body is enabled.\n *\n * @param enabled - Whether the rigid body is enabled.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setEnabled(enabled: "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "enabled",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setEnabled"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!RigidBody#setEnabledPositions:member(1)",
              "docComment": "/**\n * Sets whether the rigid body has enabled positional movement.\n *\n * @param enabledPositions - Whether the rigid body has enabled positional movement.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setEnabledPositions(enabledPositions: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Boolean",
                  "canonicalReference": "server!Vector3Boolean:interface"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "enabledPositions",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setEnabledPositions"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!RigidBody#setEnabledRotations:member(1)",
              "docComment": "/**\n * Sets whether the rigid body has enabled rotations.\n *\n * @param enabledRotations - Whether the rigid body has enabled rotations.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setEnabledRotations(enabledRotations: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Boolean",
                  "canonicalReference": "server!Vector3Boolean:interface"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "enabledRotations",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setEnabledRotations"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!RigidBody#setGravityScale:member(1)",
              "docComment": "/**\n * Sets the gravity scale of the rigid body.\n *\n * @param gravityScale - The gravity scale of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setGravityScale(gravityScale: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "gravityScale",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setGravityScale"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!RigidBody#setLinearDamping:member(1)",
              "docComment": "/**\n * Sets the linear damping of the rigid body.\n *\n * @param linearDamping - The linear damping of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setLinearDamping(linearDamping: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "linearDamping",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setLinearDamping"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!RigidBody#setLinearVelocity:member(1)",
              "docComment": "/**\n * Sets the linear velocity of the rigid body.\n *\n * @param linearVelocity - The linear velocity of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setLinearVelocity(linearVelocity: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "linearVelocity",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setLinearVelocity"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!RigidBody#setNextKinematicPosition:member(1)",
              "docComment": "/**\n * Sets the next kinematic position of the rigid body.\n *\n * @param nextKinematicPosition - The next kinematic position of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setNextKinematicPosition(nextKinematicPosition: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "nextKinematicPosition",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setNextKinematicPosition"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!RigidBody#setNextKinematicRotation:member(1)",
              "docComment": "/**\n * Sets the next kinematic rotation of the rigid body.\n *\n * @param nextKinematicRotation - The next kinematic rotation of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setNextKinematicRotation(nextKinematicRotation: "
                },
                {
                  "kind": "Reference",
                  "text": "QuaternionLike",
                  "canonicalReference": "server!QuaternionLike:interface"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "nextKinematicRotation",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setNextKinematicRotation"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!RigidBody#setPosition:member(1)",
              "docComment": "/**\n * Sets the position of the rigid body.\n *\n * @param position - The position of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setPosition(position: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "position",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setPosition"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!RigidBody#setRotation:member(1)",
              "docComment": "/**\n * Sets the rotation of the rigid body.\n *\n * @param rotation - The rotation of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setRotation(rotation: "
                },
                {
                  "kind": "Reference",
                  "text": "QuaternionLike",
                  "canonicalReference": "server!QuaternionLike:interface"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "rotation",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setRotation"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!RigidBody#setSleeping:member(1)",
              "docComment": "/**\n * Sets whether the rigid body is sleeping.\n *\n * @param sleeping - Whether the rigid body is sleeping.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setSleeping(sleeping: "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "sleeping",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setSleeping"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!RigidBody#setSoftCcdPrediction:member(1)",
              "docComment": "/**\n * Sets the soft ccd prediction of the rigid body.\n *\n * @param softCcdPrediction - The soft ccd prediction of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setSoftCcdPrediction(softCcdPrediction: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "softCcdPrediction",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setSoftCcdPrediction"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!RigidBody#setType:member(1)",
              "docComment": "/**\n * Sets the type of the rigid body.\n *\n * @param type - The type of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setType(type: "
                },
                {
                  "kind": "Reference",
                  "text": "RigidBodyType",
                  "canonicalReference": "server!RigidBodyType:enum"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "type",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setType"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!RigidBody#sleep:member(1)",
              "docComment": "/**\n * Explicitly puts the rigid body to sleep. Physics otherwise optimizes sleeping.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "sleep(): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "sleep"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!RigidBody#softCcdPrediction:member",
              "docComment": "/**\n * The soft continuous collision detection prediction of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get softCcdPrediction(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "softCcdPrediction",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!RigidBody#type:member",
              "docComment": "/**\n * The type of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get type(): "
                },
                {
                  "kind": "Reference",
                  "text": "RigidBodyType",
                  "canonicalReference": "server!RigidBodyType:enum"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "type",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!RigidBody#wakeUp:member(1)",
              "docComment": "/**\n * Wakes up the rigid body. Physics otherwise optimizes waking it when necessary.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "wakeUp(): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "wakeUp"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!RigidBody#worldCenterOfMass:member",
              "docComment": "/**\n * The world center of mass of the rigid body.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get worldCenterOfMass(): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "worldCenterOfMass",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            }
          ],
          "extendsTokenRange": {
            "startIndex": 1,
            "endIndex": 2
          },
          "implementsTokenRanges": []
        },
        {
          "kind": "TypeAlias",
          "canonicalReference": "server!RigidBodyAdditionalMassProperties:type",
          "docComment": "/**\n * Additional mass properties for a RigidBody.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export type RigidBodyAdditionalMassProperties = "
            },
            {
              "kind": "Content",
              "text": "{\n    additionalMass: number;\n    centerOfMass: "
            },
            {
              "kind": "Reference",
              "text": "Vector3Like",
              "canonicalReference": "server!Vector3Like:interface"
            },
            {
              "kind": "Content",
              "text": ";\n    principalAngularInertia: "
            },
            {
              "kind": "Reference",
              "text": "Vector3Like",
              "canonicalReference": "server!Vector3Like:interface"
            },
            {
              "kind": "Content",
              "text": ";\n    principalAngularInertiaLocalFrame: "
            },
            {
              "kind": "Reference",
              "text": "QuaternionLike",
              "canonicalReference": "server!QuaternionLike:interface"
            },
            {
              "kind": "Content",
              "text": ";\n}"
            },
            {
              "kind": "Content",
              "text": ";"
            }
          ],
          "fileUrlPath": "src/worlds/physics/RigidBody.ts",
          "releaseTag": "Public",
          "name": "RigidBodyAdditionalMassProperties",
          "typeTokenRange": {
            "startIndex": 1,
            "endIndex": 8
          }
        },
        {
          "kind": "TypeAlias",
          "canonicalReference": "server!RigidBodyOptions:type",
          "docComment": "/**\n * The options for a rigid body.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export type RigidBodyOptions = "
            },
            {
              "kind": "Reference",
              "text": "DynamicRigidBodyOptions",
              "canonicalReference": "server!DynamicRigidBodyOptions:interface"
            },
            {
              "kind": "Content",
              "text": " | "
            },
            {
              "kind": "Reference",
              "text": "FixedRigidBodyOptions",
              "canonicalReference": "server!FixedRigidBodyOptions:interface"
            },
            {
              "kind": "Content",
              "text": " | "
            },
            {
              "kind": "Reference",
              "text": "KinematicPositionRigidBodyOptions",
              "canonicalReference": "server!KinematicPositionRigidBodyOptions:interface"
            },
            {
              "kind": "Content",
              "text": " | "
            },
            {
              "kind": "Reference",
              "text": "KinematicVelocityRigidBodyOptions",
              "canonicalReference": "server!KinematicVelocityRigidBodyOptions:interface"
            },
            {
              "kind": "Content",
              "text": ";"
            }
          ],
          "fileUrlPath": "src/worlds/physics/RigidBody.ts",
          "releaseTag": "Public",
          "name": "RigidBodyOptions",
          "typeTokenRange": {
            "startIndex": 1,
            "endIndex": 8
          }
        },
        {
          "kind": "Enum",
          "canonicalReference": "server!RigidBodyType:enum",
          "docComment": "/**\n * The types a RigidBody can be.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export declare enum RigidBodyType "
            }
          ],
          "fileUrlPath": "src/worlds/physics/RigidBody.ts",
          "releaseTag": "Public",
          "name": "RigidBodyType",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "EnumMember",
              "canonicalReference": "server!RigidBodyType.DYNAMIC:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "DYNAMIC = "
                },
                {
                  "kind": "Content",
                  "text": "\"dynamic\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "DYNAMIC"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!RigidBodyType.FIXED:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "FIXED = "
                },
                {
                  "kind": "Content",
                  "text": "\"fixed\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "FIXED"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!RigidBodyType.KINEMATIC_POSITION:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "KINEMATIC_POSITION = "
                },
                {
                  "kind": "Content",
                  "text": "\"kinematic_position\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "KINEMATIC_POSITION"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!RigidBodyType.KINEMATIC_VELOCITY:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "KINEMATIC_VELOCITY = "
                },
                {
                  "kind": "Content",
                  "text": "\"kinematic_velocity\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "KINEMATIC_VELOCITY"
            }
          ]
        },
        {
          "kind": "Interface",
          "canonicalReference": "server!RoundCylinderColliderOptions:interface",
          "docComment": "/**\n * The options for a round cylinder collider.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export interface RoundCylinderColliderOptions extends "
            },
            {
              "kind": "Reference",
              "text": "BaseColliderOptions",
              "canonicalReference": "server!BaseColliderOptions:interface"
            },
            {
              "kind": "Content",
              "text": " "
            }
          ],
          "fileUrlPath": "src/worlds/physics/Collider.ts",
          "releaseTag": "Public",
          "name": "RoundCylinderColliderOptions",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!RoundCylinderColliderOptions#borderRadius:member",
              "docComment": "/**\n * The border radius of the round cylinder collider.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "borderRadius?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "borderRadius",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!RoundCylinderColliderOptions#halfHeight:member",
              "docComment": "/**\n * The half height of the round cylinder collider.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "halfHeight?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "halfHeight",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!RoundCylinderColliderOptions#radius:member",
              "docComment": "/**\n * The radius of the round cylinder collider.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "radius?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "radius",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!RoundCylinderColliderOptions#shape:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "shape: "
                },
                {
                  "kind": "Reference",
                  "text": "ColliderShape.ROUND_CYLINDER",
                  "canonicalReference": "server!ColliderShape.ROUND_CYLINDER:member"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "shape",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            }
          ],
          "extendsTokenRanges": [
            {
              "startIndex": 1,
              "endIndex": 2
            }
          ]
        },
        {
          "kind": "Class",
          "canonicalReference": "server!SceneUI:class",
          "docComment": "/**\n * UI rendered within the 3D space of a world's game scene.\n *\n * @remarks\n *\n * SceneUI instances are created directly as instances. They support a variety of configuration options through the {@link SceneUIOptions} constructor argument.\n *\n * <h2>Events</h2>\n *\n * This class is an EventRouter, and instances of it emit events with payloads listed under {@link SceneUIEventPayloads}\n *\n * @example\n * ```typescript\n * const sceneUI = new SceneUI({\n *   templateId: 'player-health-bar',\n *   attachedToEntity: playerEntity,\n *   offset: { x: 0, y: 1, z: 0 },\n * });\n * ```\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export default class SceneUI extends "
            },
            {
              "kind": "Reference",
              "text": "EventRouter",
              "canonicalReference": "server!EventRouter:class"
            },
            {
              "kind": "Content",
              "text": " implements "
            },
            {
              "kind": "Reference",
              "text": "protocol.Serializable",
              "canonicalReference": "@hytopia.com/server-protocol!Serializable:interface"
            },
            {
              "kind": "Content",
              "text": " "
            }
          ],
          "fileUrlPath": "src/worlds/ui/SceneUI.ts",
          "releaseTag": "Public",
          "isAbstract": false,
          "name": "SceneUI",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "Constructor",
              "canonicalReference": "server!SceneUI:constructor(1)",
              "docComment": "/**\n * Constructs a new instance of the `SceneUI` class\n *\n * @param options - The options for the SceneUI instance.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "constructor(options: "
                },
                {
                  "kind": "Reference",
                  "text": "SceneUIOptions",
                  "canonicalReference": "server!SceneUIOptions:interface"
                },
                {
                  "kind": "Content",
                  "text": ");"
                }
              ],
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "options",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ]
            },
            {
              "kind": "Property",
              "canonicalReference": "server!SceneUI#attachedToEntity:member",
              "docComment": "/**\n * The entity to which the SceneUI is attached if explicitly set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get attachedToEntity(): "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "attachedToEntity",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!SceneUI#id:member",
              "docComment": "/**\n * The unique identifier for the SceneUI.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get id(): "
                },
                {
                  "kind": "Content",
                  "text": "number | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "id",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!SceneUI#isLoaded:member",
              "docComment": "/**\n * Whether the SceneUI is loaded into the world.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get isLoaded(): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "isLoaded",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!SceneUI#load:member(1)",
              "docComment": "/**\n * Loads the SceneUI into the world.\n *\n * @param world - The world to load the SceneUI into.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "load(world: "
                },
                {
                  "kind": "Reference",
                  "text": "World",
                  "canonicalReference": "server!World:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "world",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "load"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!SceneUI#offset:member",
              "docComment": "/**\n * The offset of the SceneUI from the attached entity or position.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get offset(): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "offset",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!SceneUI#position:member",
              "docComment": "/**\n * The position of the SceneUI in the world if explicitly set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get position(): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "position",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!SceneUI#setAttachedToEntity:member(1)",
              "docComment": "/**\n * Sets the entity to which the SceneUI is attached, following its position.\n *\n * @param entity - The entity to attach the SceneUI to.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setAttachedToEntity(entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "entity",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setAttachedToEntity"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!SceneUI#setOffset:member(1)",
              "docComment": "/**\n * Sets the spatial offset of the SceneUI relative to the attached entity or position.\n *\n * @param offset - The offset in the world.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setOffset(offset: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "offset",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setOffset"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!SceneUI#setPosition:member(1)",
              "docComment": "/**\n * Sets the position of the SceneUI. Will detach from entity if attached.\n *\n * @param position - The position in the world.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setPosition(position: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "position",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setPosition"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!SceneUI#setState:member(1)",
              "docComment": "/**\n * Sets the state of the SceneUI by performing a shallow merge with existing state.\n *\n * @param state - The state to set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setState(state: "
                },
                {
                  "kind": "Content",
                  "text": "object"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "state",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setState"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!SceneUI#setViewDistance:member(1)",
              "docComment": "/**\n * Sets the view distance of the SceneUI.\n *\n * @param viewDistance - The view distance in the world.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setViewDistance(viewDistance: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "viewDistance",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setViewDistance"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!SceneUI#state:member",
              "docComment": "/**\n * The state of the SceneUI.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get state(): "
                },
                {
                  "kind": "Reference",
                  "text": "Readonly",
                  "canonicalReference": "!Readonly:type"
                },
                {
                  "kind": "Content",
                  "text": "<object>"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "state",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!SceneUI#templateId:member",
              "docComment": "/**\n * The template ID of the SceneUI.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get templateId(): "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "templateId",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!SceneUI#unload:member(1)",
              "docComment": "/**\n * Unloads the SceneUI from the world.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "unload(): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "unload"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!SceneUI#viewDistance:member",
              "docComment": "/**\n * The maximum view distance the SceneUI will be visible to the player.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get viewDistance(): "
                },
                {
                  "kind": "Content",
                  "text": "number | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "viewDistance",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!SceneUI#world:member",
              "docComment": "/**\n * The world the SceneUI is loaded into.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get world(): "
                },
                {
                  "kind": "Reference",
                  "text": "World",
                  "canonicalReference": "server!World:class"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "world",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            }
          ],
          "extendsTokenRange": {
            "startIndex": 1,
            "endIndex": 2
          },
          "implementsTokenRanges": [
            {
              "startIndex": 3,
              "endIndex": 4
            }
          ]
        },
        {
          "kind": "Enum",
          "canonicalReference": "server!SceneUIEvent:enum",
          "docComment": "/**\n * Event types a SceneUI instance can emit. See {@link SceneUIEventPayloads} for the payloads.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export declare enum SceneUIEvent "
            }
          ],
          "fileUrlPath": "src/worlds/ui/SceneUI.ts",
          "releaseTag": "Public",
          "name": "SceneUIEvent",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "EnumMember",
              "canonicalReference": "server!SceneUIEvent.LOAD:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "LOAD = "
                },
                {
                  "kind": "Content",
                  "text": "\"SCENE_UI.LOAD\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "LOAD"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!SceneUIEvent.SET_ATTACHED_TO_ENTITY:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_ATTACHED_TO_ENTITY = "
                },
                {
                  "kind": "Content",
                  "text": "\"SCENE_UI.SET_ATTACHED_TO_ENTITY\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_ATTACHED_TO_ENTITY"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!SceneUIEvent.SET_OFFSET:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_OFFSET = "
                },
                {
                  "kind": "Content",
                  "text": "\"SCENE_UI.SET_OFFSET\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_OFFSET"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!SceneUIEvent.SET_POSITION:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_POSITION = "
                },
                {
                  "kind": "Content",
                  "text": "\"SCENE_UI.SET_POSITION\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_POSITION"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!SceneUIEvent.SET_STATE:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_STATE = "
                },
                {
                  "kind": "Content",
                  "text": "\"SCENE_UI.SET_STATE\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_STATE"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!SceneUIEvent.SET_VIEW_DISTANCE:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_VIEW_DISTANCE = "
                },
                {
                  "kind": "Content",
                  "text": "\"SCENE_UI.SET_VIEW_DISTANCE\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_VIEW_DISTANCE"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!SceneUIEvent.UNLOAD:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "UNLOAD = "
                },
                {
                  "kind": "Content",
                  "text": "\"SCENE_UI.UNLOAD\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "UNLOAD"
            }
          ]
        },
        {
          "kind": "Interface",
          "canonicalReference": "server!SceneUIEventPayloads:interface",
          "docComment": "/**\n * Event payloads for SceneUI emitted events.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export interface SceneUIEventPayloads "
            }
          ],
          "fileUrlPath": "src/worlds/ui/SceneUI.ts",
          "releaseTag": "Public",
          "name": "SceneUIEventPayloads",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!SceneUIEventPayloads#\"SCENE_UI.LOAD\":member",
              "docComment": "/**\n * Emitted when a SceneUI is loaded into the world.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "SceneUIEvent.LOAD",
                  "canonicalReference": "server!SceneUIEvent.LOAD:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        sceneUI: "
                },
                {
                  "kind": "Reference",
                  "text": "SceneUI",
                  "canonicalReference": "server!SceneUI:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"SCENE_UI.LOAD\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!SceneUIEventPayloads#\"SCENE_UI.SET_ATTACHED_TO_ENTITY\":member",
              "docComment": "/**\n * Emitted when a SceneUI is attached to an entity.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "SceneUIEvent.SET_ATTACHED_TO_ENTITY",
                  "canonicalReference": "server!SceneUIEvent.SET_ATTACHED_TO_ENTITY:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        sceneUI: "
                },
                {
                  "kind": "Reference",
                  "text": "SceneUI",
                  "canonicalReference": "server!SceneUI:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"SCENE_UI.SET_ATTACHED_TO_ENTITY\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 8
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!SceneUIEventPayloads#\"SCENE_UI.SET_OFFSET\":member",
              "docComment": "/**\n * Emitted when the offset of a SceneUI is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "SceneUIEvent.SET_OFFSET",
                  "canonicalReference": "server!SceneUIEvent.SET_OFFSET:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        sceneUI: "
                },
                {
                  "kind": "Reference",
                  "text": "SceneUI",
                  "canonicalReference": "server!SceneUI:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        offset: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"SCENE_UI.SET_OFFSET\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 8
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!SceneUIEventPayloads#\"SCENE_UI.SET_POSITION\":member",
              "docComment": "/**\n * Emitted when the position of a SceneUI is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "SceneUIEvent.SET_POSITION",
                  "canonicalReference": "server!SceneUIEvent.SET_POSITION:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        sceneUI: "
                },
                {
                  "kind": "Reference",
                  "text": "SceneUI",
                  "canonicalReference": "server!SceneUI:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        position: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"SCENE_UI.SET_POSITION\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 8
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!SceneUIEventPayloads#\"SCENE_UI.SET_STATE\":member",
              "docComment": "/**\n * Emitted when the state of a SceneUI is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "SceneUIEvent.SET_STATE",
                  "canonicalReference": "server!SceneUIEvent.SET_STATE:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        sceneUI: "
                },
                {
                  "kind": "Reference",
                  "text": "SceneUI",
                  "canonicalReference": "server!SceneUI:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        state: object;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"SCENE_UI.SET_STATE\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!SceneUIEventPayloads#\"SCENE_UI.SET_VIEW_DISTANCE\":member",
              "docComment": "/**\n * Emitted when the view distance of a SceneUI is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "SceneUIEvent.SET_VIEW_DISTANCE",
                  "canonicalReference": "server!SceneUIEvent.SET_VIEW_DISTANCE:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        sceneUI: "
                },
                {
                  "kind": "Reference",
                  "text": "SceneUI",
                  "canonicalReference": "server!SceneUI:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        viewDistance: number;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"SCENE_UI.SET_VIEW_DISTANCE\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!SceneUIEventPayloads#\"SCENE_UI.UNLOAD\":member",
              "docComment": "/**\n * Emitted when a SceneUI is unloaded from the world.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "SceneUIEvent.UNLOAD",
                  "canonicalReference": "server!SceneUIEvent.UNLOAD:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        sceneUI: "
                },
                {
                  "kind": "Reference",
                  "text": "SceneUI",
                  "canonicalReference": "server!SceneUI:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"SCENE_UI.UNLOAD\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            }
          ],
          "extendsTokenRanges": []
        },
        {
          "kind": "Class",
          "canonicalReference": "server!SceneUIManager:class",
          "docComment": "/**\n * Manages SceneUI instances in a world.\n *\n * @remarks\n *\n * The SceneUIManager is created internally as a singleton for each {@link World} instance in a game server. It allows retrieval of all loaded SceneUI instances, entity attached SceneUI instances, and more.\n *\n * The constructor for this class is marked as internal. Third-party code should not call the constructor directly or create subclasses that extend the `SceneUIManager` class.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export default class SceneUIManager "
            }
          ],
          "fileUrlPath": "src/worlds/ui/SceneUIManager.ts",
          "releaseTag": "Public",
          "isAbstract": false,
          "name": "SceneUIManager",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "Method",
              "canonicalReference": "server!SceneUIManager#getAllEntityAttachedSceneUIs:member(1)",
              "docComment": "/**\n * Retrieves all loaded SceneUI instances attached to a specific entity.\n *\n * @param entity - The entity to get attached SceneUI instances for.\n *\n * @returns An array of SceneUI instances.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "getAllEntityAttachedSceneUIs(entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "SceneUI",
                  "canonicalReference": "server!SceneUI:class"
                },
                {
                  "kind": "Content",
                  "text": "[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 5
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "entity",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "getAllEntityAttachedSceneUIs"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!SceneUIManager#getAllSceneUIs:member(1)",
              "docComment": "/**\n * Retrieves all loaded SceneUI instances for the world.\n *\n * @returns An array of SceneUI instances.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "getAllSceneUIs(): "
                },
                {
                  "kind": "Reference",
                  "text": "SceneUI",
                  "canonicalReference": "server!SceneUI:class"
                },
                {
                  "kind": "Content",
                  "text": "[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "getAllSceneUIs"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!SceneUIManager#getSceneUIById:member(1)",
              "docComment": "/**\n * Retrieves a SceneUI instance by its unique identifier (id).\n *\n * @param id - The unique identifier (id) of the SceneUI to retrieve.\n *\n * @returns The SceneUI instance if found, otherwise undefined.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "getSceneUIById(id: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "SceneUI",
                  "canonicalReference": "server!SceneUI:class"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 5
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "id",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "getSceneUIById"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!SceneUIManager#unloadEntityAttachedSceneUIs:member(1)",
              "docComment": "/**\n * Unloads and unregisters all SceneUI instances attached to a specific entity.\n *\n * @param entity - The entity to unload and unregister SceneUI instances for.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "unloadEntityAttachedSceneUIs(entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "entity",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "unloadEntityAttachedSceneUIs"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!SceneUIManager#world:member",
              "docComment": "/**\n * The world the SceneUIManager is for.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get world(): "
                },
                {
                  "kind": "Reference",
                  "text": "World",
                  "canonicalReference": "server!World:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "world",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            }
          ],
          "implementsTokenRanges": []
        },
        {
          "kind": "Interface",
          "canonicalReference": "server!SceneUIOptions:interface",
          "docComment": "/**\n * Options for creating a SceneUI instance.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export interface SceneUIOptions "
            }
          ],
          "fileUrlPath": "src/worlds/ui/SceneUI.ts",
          "releaseTag": "Public",
          "name": "SceneUIOptions",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!SceneUIOptions#attachedToEntity:member",
              "docComment": "/**\n * If set, SceneUI will follow the entity's position\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "attachedToEntity?: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "attachedToEntity",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!SceneUIOptions#offset:member",
              "docComment": "/**\n * The offset of the SceneUI from the attached entity or position\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "offset?: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "offset",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!SceneUIOptions#position:member",
              "docComment": "/**\n * If set, SceneUI will be attached at this position\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "position?: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "position",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!SceneUIOptions#state:member",
              "docComment": "/**\n * The state of the SceneUI\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "state?: "
                },
                {
                  "kind": "Content",
                  "text": "object"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "state",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!SceneUIOptions#templateId:member",
              "docComment": "/**\n * The template ID to use for this SceneUI\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "templateId: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "templateId",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!SceneUIOptions#viewDistance:member",
              "docComment": "/**\n * The maximum view distance the SceneUI will be visible to the player\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "viewDistance?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "viewDistance",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            }
          ],
          "extendsTokenRanges": []
        },
        {
          "kind": "Class",
          "canonicalReference": "server!SimpleEntityController:class",
          "docComment": "/**\n * A simple entity controller with basic movement functions.\n *\n * @remarks\n *\n * This class implements simple movement methods that serve as a way to add realistic movement and rotational facing functionality to an entity. This is also a great base to extend for your own more complex entity controller that implements things like pathfinding. Compatible with entities that have kinematic or dynamic rigid body types.\n *\n * @example\n * ```typescript\n * // Create a custom entity controller for myEntity, prior to spawning it.\n * myEntity.setController(new SimpleEntityController());\n *\n * // Spawn the entity in the world.\n * myEntity.spawn(world, { x: 53, y: 10, z: 23 });\n *\n * // Move the entity at a speed of 4 blocks\n * // per second to the coordinate (10, 1, 10).\n * // console.log when we reach the target.\n * myEntity.controller.move({ x: 10, y: 1, z: 10 }, 4, {\n *   moveCompleteCallback: endPosition => {\n *     console.log('Finished moving to', endPosition);\n *   },\n * });\n * ```\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export default class SimpleEntityController extends "
            },
            {
              "kind": "Reference",
              "text": "BaseEntityController",
              "canonicalReference": "server!BaseEntityController:class"
            },
            {
              "kind": "Content",
              "text": " "
            }
          ],
          "fileUrlPath": "src/worlds/entities/controllers/SimpleEntityController.ts",
          "releaseTag": "Public",
          "isAbstract": false,
          "name": "SimpleEntityController",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "Constructor",
              "canonicalReference": "server!SimpleEntityController:constructor(1)",
              "docComment": "/**\n * Constructs a new instance of the `SimpleEntityController` class\n *\n * @param options - Options for the controller.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "constructor(options?: "
                },
                {
                  "kind": "Reference",
                  "text": "SimpleEntityControllerOptions",
                  "canonicalReference": "server!~SimpleEntityControllerOptions:interface"
                },
                {
                  "kind": "Content",
                  "text": ");"
                }
              ],
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "options",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": true
                }
              ]
            },
            {
              "kind": "Method",
              "canonicalReference": "server!SimpleEntityController#face:member(1)",
              "docComment": "/**\n * Rotates the entity at a given speed to face a target coordinate.\n *\n * @remarks\n *\n * If this method is called while the entity is already attempting to face another target, the previous target will be ignored and the entity will start attempting to face the new target.\n *\n * @param target - The target coordinate to face.\n *\n * @param speed - The speed at which to rotate to the target coordinate.\n *\n * @param options - Additional options for the face operation, such as callbacks.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "face(target: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ", speed: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ", options?: "
                },
                {
                  "kind": "Reference",
                  "text": "FaceOptions",
                  "canonicalReference": "server!FaceOptions:type"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 7,
                "endIndex": 8
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "target",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "speed",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "options",
                  "parameterTypeTokenRange": {
                    "startIndex": 5,
                    "endIndex": 6
                  },
                  "isOptional": true
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "face"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!SimpleEntityController#idleLoopedAnimations:member",
              "docComment": "/**\n * The animations to loop when the entity is idle.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "idleLoopedAnimations: "
                },
                {
                  "kind": "Content",
                  "text": "string[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "idleLoopedAnimations",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!SimpleEntityController#idleLoopedAnimationsSpeed:member",
              "docComment": "/**\n * The speed at which to loop the idle animations.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "idleLoopedAnimationsSpeed: "
                },
                {
                  "kind": "Content",
                  "text": "number | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "idleLoopedAnimationsSpeed",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!SimpleEntityController#jump:member(1)",
              "docComment": "/**\n * Applies an upwards impulse to the entity to simulate a jump, only supported for entities with dynamic rigid body types.\n *\n * @param height - The height to jump to.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "jump(height: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "height",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "jump"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!SimpleEntityController#jumpOneshotAnimations:member",
              "docComment": "/**\n * The animations to play when the entity jumps.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "jumpOneshotAnimations: "
                },
                {
                  "kind": "Content",
                  "text": "string[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "jumpOneshotAnimations",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!SimpleEntityController#move:member(1)",
              "docComment": "/**\n * Moves the entity at a given speed in a straight line to a target coordinate.\n *\n * @remarks\n *\n * If this method is called while the entity is already attempting to move to another target, the previous target will be ignored and the entity will start attempting to move to the new target.\n *\n * @param target - The target coordinate to move to.\n *\n * @param speed - The speed at which to move to the target coordinate.\n *\n * @param options - Additional options for the move operation, such as callbacks.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "move(target: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ", speed: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ", options?: "
                },
                {
                  "kind": "Reference",
                  "text": "MoveOptions",
                  "canonicalReference": "server!MoveOptions:type"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 7,
                "endIndex": 8
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "target",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "speed",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "options",
                  "parameterTypeTokenRange": {
                    "startIndex": 5,
                    "endIndex": 6
                  },
                  "isOptional": true
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "move"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!SimpleEntityController#moveLoopedAnimations:member",
              "docComment": "/**\n * The animations to loop when the entity is moving.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "moveLoopedAnimations: "
                },
                {
                  "kind": "Content",
                  "text": "string[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "moveLoopedAnimations",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!SimpleEntityController#moveLoopedAnimationsSpeed:member",
              "docComment": "/**\n * The speed at which to loop the move animations.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "moveLoopedAnimationsSpeed: "
                },
                {
                  "kind": "Content",
                  "text": "number | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "moveLoopedAnimationsSpeed",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!SimpleEntityController#moveSpeed:member",
              "docComment": "/**\n * The speed at which to move the entity. Can be altered while moving.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "moveSpeed: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "moveSpeed",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!SimpleEntityController#spawn:member(1)",
              "docComment": "/**\n * Override of the {@link BaseEntityController.spawn} method. Starts the set idle animations (if any) when the entity is spawned.\n *\n * @param entity - The entity that was spawned.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "spawn(entity: "
                },
                {
                  "kind": "Reference",
                  "text": "Entity",
                  "canonicalReference": "server!Entity:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "entity",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "spawn"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!SimpleEntityController#stopFace:member(1)",
              "docComment": "/**\n * Stops the entity from attempting to face a target coordinate.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "stopFace(): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "stopFace"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!SimpleEntityController#stopMove:member(1)",
              "docComment": "/**\n * Stops the entity from continuing to move it's current target coordinate.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "stopMove(): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "stopMove"
            }
          ],
          "extendsTokenRange": {
            "startIndex": 1,
            "endIndex": 2
          },
          "implementsTokenRanges": []
        },
        {
          "kind": "Class",
          "canonicalReference": "server!Simulation:class",
          "docComment": "/**\n * Represents the physics simulation for a world.\n *\n * @remarks\n *\n * The simulation internally and automatically handles the physical interactions, collisions, contact forces, and events for all aspects of the world. Most methods are not often used directly, but are provided for advanced usage.\n *\n * <h2>Events</h2>\n *\n * This class is an EventRouter, and instances of it emit events with payloads listed under {@link SimulationEventPayloads}\n *\n * The constructor for this class is marked as internal. Third-party code should not call the constructor directly or create subclasses that extend the `Simulation` class.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export default class Simulation extends "
            },
            {
              "kind": "Reference",
              "text": "EventRouter",
              "canonicalReference": "server!EventRouter:class"
            },
            {
              "kind": "Content",
              "text": " "
            }
          ],
          "fileUrlPath": "src/worlds/physics/Simulation.ts",
          "releaseTag": "Public",
          "isAbstract": false,
          "name": "Simulation",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "Method",
              "canonicalReference": "server!Simulation#enableDebugRaycasting:member(1)",
              "docComment": "/**\n * Enables or disables debug raycasting for the simulation. This will render lines for the raycast that disappear after a few seconds.\n *\n * @param enabled - Whether to enable debug raycasting.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "enableDebugRaycasting(enabled: "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "enabled",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "enableDebugRaycasting"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Simulation#enableDebugRendering:member(1)",
              "docComment": "/**\n * Enables or disables debug rendering for the simulation. When enabled, all colliders and rigid body outlines will be rendered in the world. Do not enable this in production. In large worlds enabling this can cause noticable lag and RTT spikes.\n *\n * @param enabled - Whether to enable debug rendering.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "enableDebugRendering(enabled: "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ", filterFlags?: "
                },
                {
                  "kind": "Reference",
                  "text": "RAPIER.QueryFilterFlags",
                  "canonicalReference": "@dimforge/rapier3d-simd-compat!QueryFilterFlags:enum"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 5,
                "endIndex": 6
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "enabled",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "filterFlags",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": true
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "enableDebugRendering"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Simulation#getContactManifolds:member(1)",
              "docComment": "/**\n * Gets the contact manifolds for a pair of colliders.\n *\n * @remarks\n *\n * Contact manifolds will not be returned for contacts that involve sensors.\n *\n * @param colliderHandleA - The handle of the first collider.\n *\n * @param colliderHandleB - The handle of the second collider.\n *\n * @returns The contact manifolds, or an empty array if no contact.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "getContactManifolds(colliderHandleA: "
                },
                {
                  "kind": "Reference",
                  "text": "RAPIER.ColliderHandle",
                  "canonicalReference": "@dimforge/rapier3d-simd-compat!ColliderHandle:type"
                },
                {
                  "kind": "Content",
                  "text": ", colliderHandleB: "
                },
                {
                  "kind": "Reference",
                  "text": "RAPIER.ColliderHandle",
                  "canonicalReference": "@dimforge/rapier3d-simd-compat!ColliderHandle:type"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "ContactManifold",
                  "canonicalReference": "server!ContactManifold:type"
                },
                {
                  "kind": "Content",
                  "text": "[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 5,
                "endIndex": 7
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "colliderHandleA",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "colliderHandleB",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "getContactManifolds"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Simulation#gravity:member",
              "docComment": "/**\n * The gravity vector for the simulation.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get gravity(): "
                },
                {
                  "kind": "Reference",
                  "text": "RAPIER.Vector3",
                  "canonicalReference": "@dimforge/rapier3d-simd-compat!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "gravity",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Simulation#intersectionsWithRawShape:member(1)",
              "docComment": "/**\n * Gets the intersections with a raw shape.\n *\n * @remarks\n *\n * rawShape can be retrieved from a simulated or unsimulated collider using {@link Collider.rawShape}.\n *\n * @param rawShape - The raw shape to get intersections with.\n *\n * @param position - The position of the shape.\n *\n * @param rotation - The rotation of the shape.\n *\n * @param options - The options for the intersections.\n *\n * @returns The intersections.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "intersectionsWithRawShape(rawShape: "
                },
                {
                  "kind": "Reference",
                  "text": "RawShape",
                  "canonicalReference": "server!RawShape:type"
                },
                {
                  "kind": "Content",
                  "text": ", position: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ", rotation: "
                },
                {
                  "kind": "Reference",
                  "text": "QuaternionLike",
                  "canonicalReference": "server!QuaternionLike:interface"
                },
                {
                  "kind": "Content",
                  "text": ", options?: "
                },
                {
                  "kind": "Reference",
                  "text": "FilterOptions",
                  "canonicalReference": "server!FilterOptions:type"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "IntersectionResult",
                  "canonicalReference": "server!IntersectionResult:type"
                },
                {
                  "kind": "Content",
                  "text": "[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 9,
                "endIndex": 11
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "rawShape",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "position",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "rotation",
                  "parameterTypeTokenRange": {
                    "startIndex": 5,
                    "endIndex": 6
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "options",
                  "parameterTypeTokenRange": {
                    "startIndex": 7,
                    "endIndex": 8
                  },
                  "isOptional": true
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "intersectionsWithRawShape"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Simulation#isDebugRaycastingEnabled:member",
              "docComment": "/**\n * Whether the simulation has debug raycasting enabled\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get isDebugRaycastingEnabled(): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "isDebugRaycastingEnabled",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Simulation#isDebugRenderingEnabled:member",
              "docComment": "/**\n * Whether the simulation has debug rendering enabled.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get isDebugRenderingEnabled(): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "isDebugRenderingEnabled",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Simulation#raycast:member(1)",
              "docComment": "/**\n * Casts a ray through the simulation.\n *\n * @remarks\n *\n * The cast ray will stop at the the first block or entity hit within the length of the ray.\n *\n * @param origin - The origin of the ray.\n *\n * @param direction - The direction of the ray.\n *\n * @param length - The length of the ray.\n *\n * @param options - The options for the raycast.\n *\n * @returns A RaycastHit object containing the first block or entity hit by the ray, or null if no hit.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "raycast(origin: "
                },
                {
                  "kind": "Reference",
                  "text": "RAPIER.Vector3",
                  "canonicalReference": "@dimforge/rapier3d-simd-compat!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": ", direction: "
                },
                {
                  "kind": "Reference",
                  "text": "RAPIER.Vector3",
                  "canonicalReference": "@dimforge/rapier3d-simd-compat!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": ", length: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ", options?: "
                },
                {
                  "kind": "Reference",
                  "text": "RaycastOptions",
                  "canonicalReference": "server!RaycastOptions:type"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "RaycastHit",
                  "canonicalReference": "server!RaycastHit:type"
                },
                {
                  "kind": "Content",
                  "text": " | null"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 9,
                "endIndex": 11
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "origin",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "direction",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "length",
                  "parameterTypeTokenRange": {
                    "startIndex": 5,
                    "endIndex": 6
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "options",
                  "parameterTypeTokenRange": {
                    "startIndex": 7,
                    "endIndex": 8
                  },
                  "isOptional": true
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "raycast"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Simulation#setGravity:member(1)",
              "docComment": "/**\n * Sets the gravity vector for the simulation.\n *\n * @param gravity - The gravity vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setGravity(gravity: "
                },
                {
                  "kind": "Reference",
                  "text": "RAPIER.Vector3",
                  "canonicalReference": "@dimforge/rapier3d-simd-compat!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "gravity",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setGravity"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Simulation#timestepS:member",
              "docComment": "/**\n * The fixed timestep for the simulation.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get timestepS(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "timestepS",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Simulation#world:member",
              "docComment": "/**\n * The world the simulation is for.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get world(): "
                },
                {
                  "kind": "Reference",
                  "text": "World",
                  "canonicalReference": "server!World:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "world",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            }
          ],
          "extendsTokenRange": {
            "startIndex": 1,
            "endIndex": 2
          },
          "implementsTokenRanges": []
        },
        {
          "kind": "Enum",
          "canonicalReference": "server!SimulationEvent:enum",
          "docComment": "/**\n * Event types a Simulation instance can emit. See {@link SimulationEventPayloads} for the payloads.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export declare enum SimulationEvent "
            }
          ],
          "fileUrlPath": "src/worlds/physics/Simulation.ts",
          "releaseTag": "Public",
          "name": "SimulationEvent",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "EnumMember",
              "canonicalReference": "server!SimulationEvent.DEBUG_RAYCAST:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "DEBUG_RAYCAST = "
                },
                {
                  "kind": "Content",
                  "text": "\"SIMULATION.DEBUG_RAYCAST\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "DEBUG_RAYCAST"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!SimulationEvent.DEBUG_RENDER:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "DEBUG_RENDER = "
                },
                {
                  "kind": "Content",
                  "text": "\"SIMULATION.DEBUG_RENDER\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "DEBUG_RENDER"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!SimulationEvent.STEP_END:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "STEP_END = "
                },
                {
                  "kind": "Content",
                  "text": "\"SIMULATION.STEP_END\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "STEP_END"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!SimulationEvent.STEP_START:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "STEP_START = "
                },
                {
                  "kind": "Content",
                  "text": "\"SIMULATION.STEP_START\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "STEP_START"
            }
          ]
        },
        {
          "kind": "Interface",
          "canonicalReference": "server!SimulationEventPayloads:interface",
          "docComment": "/**\n * Event payloads for Simulation emitted events.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export interface SimulationEventPayloads "
            }
          ],
          "fileUrlPath": "src/worlds/physics/Simulation.ts",
          "releaseTag": "Public",
          "name": "SimulationEventPayloads",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!SimulationEventPayloads#\"SIMULATION.DEBUG_RAYCAST\":member",
              "docComment": "/**\n * Emitted when a debug raycast is performed.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "SimulationEvent.DEBUG_RAYCAST",
                  "canonicalReference": "server!SimulationEvent.DEBUG_RAYCAST:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        simulation: "
                },
                {
                  "kind": "Reference",
                  "text": "Simulation",
                  "canonicalReference": "server!Simulation:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        origin: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";\n        direction: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";\n        length: number;\n        hit: boolean;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"SIMULATION.DEBUG_RAYCAST\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 10
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!SimulationEventPayloads#\"SIMULATION.DEBUG_RENDER\":member",
              "docComment": "/**\n * Emitted when the simulation debug rendering is enabled.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "SimulationEvent.DEBUG_RENDER",
                  "canonicalReference": "server!SimulationEvent.DEBUG_RENDER:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        simulation: "
                },
                {
                  "kind": "Reference",
                  "text": "Simulation",
                  "canonicalReference": "server!Simulation:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        vertices: "
                },
                {
                  "kind": "Reference",
                  "text": "Float32Array",
                  "canonicalReference": "!Float32Array:interface"
                },
                {
                  "kind": "Content",
                  "text": ";\n        colors: "
                },
                {
                  "kind": "Reference",
                  "text": "Float32Array",
                  "canonicalReference": "!Float32Array:interface"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"SIMULATION.DEBUG_RENDER\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 10
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!SimulationEventPayloads#\"SIMULATION.STEP_END\":member",
              "docComment": "/**\n * Emitted when the simulation step ends.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "SimulationEvent.STEP_END",
                  "canonicalReference": "server!SimulationEvent.STEP_END:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        simulation: "
                },
                {
                  "kind": "Reference",
                  "text": "Simulation",
                  "canonicalReference": "server!Simulation:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        stepDurationMs: number;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"SIMULATION.STEP_END\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!SimulationEventPayloads#\"SIMULATION.STEP_START\":member",
              "docComment": "/**\n * Emitted when the simulation step starts.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "SimulationEvent.STEP_START",
                  "canonicalReference": "server!SimulationEvent.STEP_START:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        simulation: "
                },
                {
                  "kind": "Reference",
                  "text": "Simulation",
                  "canonicalReference": "server!Simulation:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        tickDeltaMs: number;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"SIMULATION.STEP_START\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            }
          ],
          "extendsTokenRanges": []
        },
        {
          "kind": "Interface",
          "canonicalReference": "server!SpdMatrix3:interface",
          "docComment": "/**\n * A 3x3 symmetric positive-definite matrix for spatial dynamics.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "interface SpdMatrix3 extends "
            },
            {
              "kind": "Reference",
              "text": "RapierSdpMatrix3",
              "canonicalReference": "@dimforge/rapier3d-simd-compat!SdpMatrix3:class"
            },
            {
              "kind": "Content",
              "text": " "
            }
          ],
          "fileUrlPath": "src/shared/types/math/SpdMatrix3.ts",
          "releaseTag": "Public",
          "name": "SpdMatrix3",
          "preserveMemberOrder": false,
          "members": [],
          "extendsTokenRanges": [
            {
              "startIndex": 1,
              "endIndex": 2
            }
          ]
        },
        {
          "kind": "Function",
          "canonicalReference": "server!startServer:function(1)",
          "docComment": "/**\n * The entry point for running game setup and starting the game server.\n *\n * @remarks\n *\n * This function should always be called first when initializing your game. It will internally handle initialization of the physics engine and other systems required systems. All of your game setup logic should be executed in the init function.\n *\n * @param init - A function that initializes the game. The function can take no parameters to just initialize game logic, or it can accept a world parameter. If it accepts a world parameter, a default world will be automatically created and passed to the function.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export declare function startServer(init: "
            },
            {
              "kind": "Content",
              "text": "((() => void) | ((world: "
            },
            {
              "kind": "Reference",
              "text": "World",
              "canonicalReference": "server!World:class"
            },
            {
              "kind": "Content",
              "text": ") => void))"
            },
            {
              "kind": "Content",
              "text": "): "
            },
            {
              "kind": "Content",
              "text": "void"
            },
            {
              "kind": "Content",
              "text": ";"
            }
          ],
          "fileUrlPath": "src/GameServer.ts",
          "returnTypeTokenRange": {
            "startIndex": 5,
            "endIndex": 6
          },
          "releaseTag": "Public",
          "overloadIndex": 1,
          "parameters": [
            {
              "parameterName": "init",
              "parameterTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 4
              },
              "isOptional": false
            }
          ],
          "name": "startServer"
        },
        {
          "kind": "Variable",
          "canonicalReference": "server!SUPPORTED_INPUT_KEYS:var",
          "docComment": "/**\n * The input keys that are included in the PlayerInput.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "SUPPORTED_INPUT_KEYS: "
            },
            {
              "kind": "Content",
              "text": "readonly [\"w\", \"a\", \"s\", \"d\", \"sp\", \"sh\", \"tb\", \"ml\", \"mr\", \"q\", \"e\", \"r\", \"f\", \"z\", \"x\", \"c\", \"v\", \"u\", \"i\", \"o\", \"j\", \"k\", \"l\", \"n\", \"m\", \"1\", \"2\", \"3\", \"4\", \"5\", \"6\", \"7\", \"8\", \"9\", \"0\"]"
            }
          ],
          "fileUrlPath": "src/players/Player.ts",
          "isReadonly": true,
          "releaseTag": "Public",
          "name": "SUPPORTED_INPUT_KEYS",
          "variableTypeTokenRange": {
            "startIndex": 1,
            "endIndex": 2
          }
        },
        {
          "kind": "Interface",
          "canonicalReference": "server!TrimeshColliderOptions:interface",
          "docComment": "/**\n * The options for a trimesh collider.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export interface TrimeshColliderOptions extends "
            },
            {
              "kind": "Reference",
              "text": "BaseColliderOptions",
              "canonicalReference": "server!BaseColliderOptions:interface"
            },
            {
              "kind": "Content",
              "text": " "
            }
          ],
          "fileUrlPath": "src/worlds/physics/Collider.ts",
          "releaseTag": "Public",
          "name": "TrimeshColliderOptions",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!TrimeshColliderOptions#indices:member",
              "docComment": "/**\n * The indices of the trimesh collider.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "indices?: "
                },
                {
                  "kind": "Reference",
                  "text": "Uint32Array",
                  "canonicalReference": "!Uint32Array:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "indices",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!TrimeshColliderOptions#shape:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "shape: "
                },
                {
                  "kind": "Reference",
                  "text": "ColliderShape.TRIMESH",
                  "canonicalReference": "server!ColliderShape.TRIMESH:member"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "shape",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!TrimeshColliderOptions#vertices:member",
              "docComment": "/**\n * The vertices of the trimesh collider.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "vertices?: "
                },
                {
                  "kind": "Reference",
                  "text": "Float32Array",
                  "canonicalReference": "!Float32Array:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "vertices",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            }
          ],
          "extendsTokenRanges": [
            {
              "startIndex": 1,
              "endIndex": 2
            }
          ]
        },
        {
          "kind": "Class",
          "canonicalReference": "server!Vector2:class",
          "docComment": "/**\n * Represents a 2D vector.\n *\n * @remarks\n *\n * All vector methods result in mutation of the vector instance. This class extends `Float32Array` to provide an efficient way to create and manipulate a 2-dimensional vector. Various convenience methods are provided for common vector operations.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export default class Vector2 extends "
            },
            {
              "kind": "Reference",
              "text": "Float32Array",
              "canonicalReference": "!Float32Array:interface"
            },
            {
              "kind": "Content",
              "text": " implements "
            },
            {
              "kind": "Reference",
              "text": "Vector2Like",
              "canonicalReference": "server!Vector2Like:interface"
            },
            {
              "kind": "Content",
              "text": " "
            }
          ],
          "fileUrlPath": "src/shared/classes/Vector2.ts",
          "releaseTag": "Public",
          "isAbstract": false,
          "name": "Vector2",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "Constructor",
              "canonicalReference": "server!Vector2:constructor(1)",
              "docComment": "/**\n * Constructs a new instance of the `Vector2` class\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "constructor(x: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ", y: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ");"
                }
              ],
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "x",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "y",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": false
                }
              ]
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector2#add:member(1)",
              "docComment": "/**\n * Adds a vector to the current vector.\n *\n * @param vector2 - The vector to add to the current vector.\n *\n * @returns The current vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "add(vector2: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector2",
                  "canonicalReference": "server!Vector2:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector2",
                  "canonicalReference": "server!Vector2:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "vector2",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "add"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector2#angle:member(1)",
              "docComment": "/**\n * Returns the angle between two vectors.\n *\n * @param vector2 - The vector to compare to the current vector.\n *\n * @returns The angle between the two vectors.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "angle(vector2: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector2",
                  "canonicalReference": "server!Vector2:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "vector2",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "angle"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector2#ceil:member(1)",
              "docComment": "/**\n * Rounds each component of the vector up to the nearest integer.\n *\n * @returns The current vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "ceil(): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector2",
                  "canonicalReference": "server!Vector2:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "ceil"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector2#clone:member(1)",
              "docComment": "/**\n * Returns a new vector with the same components as the current vector.\n *\n * @returns A new `Vector2` instance.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "clone(): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector2",
                  "canonicalReference": "server!Vector2:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "clone"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector2#copy:member(1)",
              "docComment": "/**\n * Copies the components of a vector to the current vector.\n *\n * @param vector2 - The vector to copy the components from.\n *\n * @returns The current vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "copy(vector2: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector2",
                  "canonicalReference": "server!Vector2:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector2",
                  "canonicalReference": "server!Vector2:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "vector2",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "copy"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector2.create:member(1)",
              "docComment": "/**\n * Creates a new `Vector2` instance.\n *\n * @returns A new `Vector2` instance.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "static create(): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector2",
                  "canonicalReference": "server!Vector2:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": true,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "create"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector2#distance:member(1)",
              "docComment": "/**\n * Calculates the distance between the current vector and another vector.\n *\n * @param vector2 - The vector to calculate the distance to.\n *\n * @returns The distance between the two vectors.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "distance(vector2: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector2",
                  "canonicalReference": "server!Vector2:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "vector2",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "distance"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector2#divide:member(1)",
              "docComment": "/**\n * Divides the current vector by another vector.\n *\n * @param vector2 - The vector to divide the current vector by.\n *\n * @returns The current vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "divide(vector2: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector2",
                  "canonicalReference": "server!Vector2:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector2",
                  "canonicalReference": "server!Vector2:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "vector2",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "divide"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector2#dot:member(1)",
              "docComment": "/**\n * Calculates the dot product of the current vector and another vector.\n *\n * @param vector2 - The vector to calculate the dot product with.\n *\n * @returns The dot product of the two vectors.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "dot(vector2: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector2",
                  "canonicalReference": "server!Vector2:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "vector2",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "dot"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector2#equals:member(1)",
              "docComment": "/**\n * Checks if the current vector is approximately equal to another vector.\n *\n * @param vector2 - The vector to compare to the current vector.\n *\n * @returns `true` if the two vectors are equal, `false` otherwise.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "equals(vector2: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector2",
                  "canonicalReference": "server!Vector2:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "vector2",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "equals"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector2#exactEquals:member(1)",
              "docComment": "/**\n * Checks if the current vector is exactly equal to another vector.\n *\n * @param vector2 - The vector to compare to the current vector.\n *\n * @returns `true` if the two vectors are equal, `false` otherwise.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "exactEquals(vector2: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector2",
                  "canonicalReference": "server!Vector2:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "vector2",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "exactEquals"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector2#floor:member(1)",
              "docComment": "/**\n * Rounds each component of the vector down to the nearest integer.\n *\n * @returns The current vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "floor(): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector2",
                  "canonicalReference": "server!Vector2:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "floor"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector2#invert:member(1)",
              "docComment": "/**\n * Inverts the components of the current vector.\n *\n * @returns The current vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "invert(): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector2",
                  "canonicalReference": "server!Vector2:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "invert"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Vector2#length:member",
              "docComment": "/**\n * The length of the vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get length(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "length",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector2#lerp:member(1)",
              "docComment": "/**\n * Linearly interpolates between the current vector and another vector.\n *\n * @param vector2 - The vector to interpolate to.\n *\n * @param t - The interpolation factor. A value between 0 and 1.\n *\n * @returns The current vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "lerp(vector2: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector2",
                  "canonicalReference": "server!Vector2:class"
                },
                {
                  "kind": "Content",
                  "text": ", t: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector2",
                  "canonicalReference": "server!Vector2:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 5,
                "endIndex": 6
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "vector2",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "t",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "lerp"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Vector2#magnitude:member",
              "docComment": "/**\n * The magnitude of the vector. Alias for `length`.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get magnitude(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "magnitude",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector2#max:member(1)",
              "docComment": "/**\n * Sets each component of the vector to the maximum of the current vector and another vector.\n *\n * @param vector2 - The vector to compare to the current vector.\n *\n * @returns The current vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "max(vector2: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector2",
                  "canonicalReference": "server!Vector2:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector2",
                  "canonicalReference": "server!Vector2:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "vector2",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "max"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector2#min:member(1)",
              "docComment": "/**\n * Sets each component of the vector to the minimum of the current vector and another vector.\n *\n * @param vector2 - The vector to compare to the current vector.\n *\n * @returns The current vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "min(vector2: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector2",
                  "canonicalReference": "server!Vector2:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector2",
                  "canonicalReference": "server!Vector2:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "vector2",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "min"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector2#multiply:member(1)",
              "docComment": "/**\n * Multiplies each component of the current vector by the corresponding component of another vector.\n *\n * @param vector2 - The vector to multiply the current vector by.\n *\n * @returns The current vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "multiply(vector2: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector2",
                  "canonicalReference": "server!Vector2:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector2",
                  "canonicalReference": "server!Vector2:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "vector2",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "multiply"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector2#negate:member(1)",
              "docComment": "/**\n * Negates each component of the vector.\n *\n * @returns The current vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "negate(): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector2",
                  "canonicalReference": "server!Vector2:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "negate"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector2#normalize:member(1)",
              "docComment": "/**\n * Normalizes the current vector.\n *\n * @returns The current vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "normalize(): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector2",
                  "canonicalReference": "server!Vector2:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "normalize"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector2#randomize:member(1)",
              "docComment": "/**\n * Randomizes the components of the current vector.\n *\n * @param scale - The scale of the resulting vector.\n *\n * @returns The current vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "randomize(scale?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector2",
                  "canonicalReference": "server!Vector2:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "scale",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": true
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "randomize"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector2#rotate:member(1)",
              "docComment": "/**\n * Rotates the current vector around an origin.\n *\n * @param vector2 - The vector to rotate around.\n *\n * @param angle - The angle to rotate the vector by.\n *\n * @returns The current vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "rotate(vector2: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector2",
                  "canonicalReference": "server!Vector2:class"
                },
                {
                  "kind": "Content",
                  "text": ", angle: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector2",
                  "canonicalReference": "server!Vector2:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 5,
                "endIndex": 6
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "vector2",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "angle",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "rotate"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector2#round:member(1)",
              "docComment": "/**\n * Rounds each component of the vector to the nearest integer.\n *\n * @returns The current vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "round(): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector2",
                  "canonicalReference": "server!Vector2:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "round"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector2#scale:member(1)",
              "docComment": "/**\n * Scales the current vector by a scalar value.\n *\n * @param scale - The scalar value to scale the vector by.\n *\n * @returns The current vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "scale(scale: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector2",
                  "canonicalReference": "server!Vector2:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "scale",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "scale"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector2#scaleAndAdd:member(1)",
              "docComment": "/**\n * Scales the current vector by a scalar value and adds the result to another vector.\n *\n * @param vector2 - The vector to add the scaled vector to.\n *\n * @param scale - The scalar value to scale the vector by.\n *\n * @returns The current vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "scaleAndAdd(vector2: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector2",
                  "canonicalReference": "server!Vector2:class"
                },
                {
                  "kind": "Content",
                  "text": ", scale: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector2",
                  "canonicalReference": "server!Vector2:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 5,
                "endIndex": 6
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "vector2",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "scale",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "scaleAndAdd"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Vector2#squaredLength:member",
              "docComment": "/**\n * The squared length of the vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get squaredLength(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "squaredLength",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Vector2#squaredMagnitude:member",
              "docComment": "/**\n * The squared magnitude of the vector. Alias for `squaredLength`.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get squaredMagnitude(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "squaredMagnitude",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector2#subtract:member(1)",
              "docComment": "/**\n * Subtracts a vector from the current vector.\n *\n * @param vector2 - The vector to subtract from the current vector.\n *\n * @returns The current vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "subtract(vector2: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector2",
                  "canonicalReference": "server!Vector2:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector2",
                  "canonicalReference": "server!Vector2:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "vector2",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "subtract"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector2#toString:member(1)",
              "docComment": "/**\n * Returns a string representation of the vector in x,y format.\n *\n * @returns A string representation of the vector in the format x,y.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "toString(): "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "toString"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector2#transformMatrix2:member(1)",
              "docComment": "/**\n * Transforms the current vector by a matrix2.\n *\n * @param matrix2 - The matrix2 to transform the vector by.\n *\n * @returns The current vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "transformMatrix2(matrix2: "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix2",
                  "canonicalReference": "server!Matrix2:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector2",
                  "canonicalReference": "server!Vector2:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "matrix2",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "transformMatrix2"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector2#transformMatrix3:member(1)",
              "docComment": "/**\n * Transforms the current vector by a matrix3.\n *\n * @param matrix3 - The matrix3 to transform the vector by.\n *\n * @returns The current vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "transformMatrix3(matrix3: "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix3",
                  "canonicalReference": "server!Matrix3:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector2",
                  "canonicalReference": "server!Vector2:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "matrix3",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "transformMatrix3"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector2#transformMatrix4:member(1)",
              "docComment": "/**\n * Transforms the current vector by a matrix4.\n *\n * @param matrix4 - The matrix4 to transform the vector by.\n *\n * @returns The current vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "transformMatrix4(matrix4: "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix4",
                  "canonicalReference": "server!Matrix4:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector2",
                  "canonicalReference": "server!Vector2:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "matrix4",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "transformMatrix4"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Vector2#x:member",
              "docComment": "/**\n * The x-component of the vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get x(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";\n\nset x(value: number);"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "x",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Vector2#y:member",
              "docComment": "/**\n * The y-component of the vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get y(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";\n\nset y(value: number);"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "y",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector2#zero:member(1)",
              "docComment": "/**\n * Sets each component of the vector to zero.\n *\n * @returns The current vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "zero(): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector2",
                  "canonicalReference": "server!Vector2:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "zero"
            }
          ],
          "extendsTokenRange": {
            "startIndex": 1,
            "endIndex": 2
          },
          "implementsTokenRanges": [
            {
              "startIndex": 3,
              "endIndex": 4
            }
          ]
        },
        {
          "kind": "Interface",
          "canonicalReference": "server!Vector2Boolean:interface",
          "docComment": "/**\n * A 2-dimensional vector of boolean values.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "interface Vector2Boolean "
            }
          ],
          "fileUrlPath": "src/shared/types/math/Vector2Boolean.ts",
          "releaseTag": "Public",
          "name": "Vector2Boolean",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!Vector2Boolean#x:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "x: "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "x",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!Vector2Boolean#y:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "y: "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "y",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            }
          ],
          "extendsTokenRanges": []
        },
        {
          "kind": "Interface",
          "canonicalReference": "server!Vector2Like:interface",
          "docComment": "/**\n * A 2-dimensional vector.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "interface Vector2Like "
            }
          ],
          "fileUrlPath": "src/shared/types/math/Vector2Like.ts",
          "releaseTag": "Public",
          "name": "Vector2Like",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!Vector2Like#x:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "x: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "x",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!Vector2Like#y:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "y: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "y",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            }
          ],
          "extendsTokenRanges": []
        },
        {
          "kind": "Class",
          "canonicalReference": "server!Vector3:class",
          "docComment": "/**\n * Represents a 3-dimensional vector.\n *\n * @remarks\n *\n * All vector methods result in mutation of the vector instance. This class extends `Float32Array` to provide an efficient way to create and manipulate a 3-dimensional vector. Various convenience methods are provided for common vector operations.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export default class Vector3 extends "
            },
            {
              "kind": "Reference",
              "text": "Float32Array",
              "canonicalReference": "!Float32Array:interface"
            },
            {
              "kind": "Content",
              "text": " implements "
            },
            {
              "kind": "Reference",
              "text": "Vector3Like",
              "canonicalReference": "server!Vector3Like:interface"
            },
            {
              "kind": "Content",
              "text": " "
            }
          ],
          "fileUrlPath": "src/shared/classes/Vector3.ts",
          "releaseTag": "Public",
          "isAbstract": false,
          "name": "Vector3",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "Constructor",
              "canonicalReference": "server!Vector3:constructor(1)",
              "docComment": "/**\n * Constructs a new instance of the `Vector3` class\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "constructor(x: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ", y: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ", z: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ");"
                }
              ],
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "x",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "y",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "z",
                  "parameterTypeTokenRange": {
                    "startIndex": 5,
                    "endIndex": 6
                  },
                  "isOptional": false
                }
              ]
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector3#add:member(1)",
              "docComment": "/**\n * Adds a vector to the current vector.\n *\n * @param vector3 - The vector to add to the current vector.\n *\n * @returns The current vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "add(vector3: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "vector3",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "add"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector3#ceil:member(1)",
              "docComment": "/**\n * Rounds each component of the vector up to the nearest integer.\n *\n * @returns The current vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "ceil(): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "ceil"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector3#clone:member(1)",
              "docComment": "/**\n * Returns a new vector with the same components as the current vector.\n *\n * @returns A new vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "clone(): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "clone"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector3#copy:member(1)",
              "docComment": "/**\n * Copies the components of a vector to the current vector.\n *\n * @param vector3 - The vector to copy the components from.\n *\n * @returns The current vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "copy(vector3: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "vector3",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "copy"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector3.create:member(1)",
              "docComment": "/**\n * Creates a new `Vector3` instance.\n *\n * @returns A new `Vector3` instance.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "static create(): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": true,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "create"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector3#cross:member(1)",
              "docComment": "/**\n * Calculates the cross product of the current vector and another vector.\n *\n * @param vector3 - The vector to calculate the cross product with.\n *\n * @returns The current vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "cross(vector3: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "vector3",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "cross"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector3#distance:member(1)",
              "docComment": "/**\n * Calculates the distance between the current vector and another vector.\n *\n * @param vector3 - The vector to calculate the distance to.\n *\n * @returns The distance between the two vectors.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "distance(vector3: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "vector3",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "distance"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector3#divide:member(1)",
              "docComment": "/**\n * Divides each component of the current vector by the corresponding component of another vector.\n *\n * @param vector3 - The vector to divide the current vector by.\n *\n * @returns The current vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "divide(vector3: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "vector3",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "divide"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector3#dot:member(1)",
              "docComment": "/**\n * Returns the dot product of this vector and another vector.\n *\n * @param vector3 - the other vector\n *\n * @returns the dot product of this and vector3\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "dot(vector3: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "vector3",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "dot"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector3#equals:member(1)",
              "docComment": "/**\n * Checks if the current vector is approximately equal to another vector.\n *\n * @param vector3 - The vector to compare to.\n *\n * @returns A boolean indicating whether the two vectors are approximately equal.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "equals(vector3: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "vector3",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "equals"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector3#exactEquals:member(1)",
              "docComment": "/**\n * Checks if the current vector is exactly equal to another vector.\n *\n * @param vector3 - The vector to compare to.\n *\n * @returns A boolean indicating whether the two vectors are exactly equal.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "exactEquals(vector3: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "vector3",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "exactEquals"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector3#floor:member(1)",
              "docComment": "/**\n * Rounds each component of the vector down to the nearest integer.\n *\n * @returns The current vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "floor(): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "floor"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector3.fromVector3Like:member(1)",
              "docComment": "/**\n * Creates a new `Vector3` instance from a `Vector3Like` object.\n *\n * @param vector3Like - The `Vector3Like` object to create the `Vector3` instance from.\n *\n * @returns A new `Vector3` instance.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "static fromVector3Like(vector3Like: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": true,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "vector3Like",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "fromVector3Like"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector3#invert:member(1)",
              "docComment": "/**\n * Inverts each component of the vector.\n *\n * @returns The current vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "invert(): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "invert"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Vector3#length:member",
              "docComment": "/**\n * The length of the vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get length(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "length",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector3#lerp:member(1)",
              "docComment": "/**\n * Linearly interpolates between the current vector and another vector.\n *\n * @param vector3 - The vector to interpolate to.\n *\n * @param t - The interpolation factor. A value between 0 and 1.\n *\n * @returns The current vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "lerp(vector3: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": ", t: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 5,
                "endIndex": 6
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "vector3",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "t",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "lerp"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Vector3#magnitude:member",
              "docComment": "/**\n * The magnitude of the vector. Alias for `length`.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get magnitude(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "magnitude",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector3#max:member(1)",
              "docComment": "/**\n * Sets each component of the vector to the maximum of the current vector and another vector.\n *\n * @param vector3 - The vector to compare to.\n *\n * @returns The current vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "max(vector3: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "vector3",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "max"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector3#min:member(1)",
              "docComment": "/**\n * Sets each component of the vector to the minimum of the current vector and another vector.\n *\n * @param vector3 - The vector to compare to.\n *\n * @returns The current vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "min(vector3: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "vector3",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "min"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector3#multiply:member(1)",
              "docComment": "/**\n * Multiplies each component of the current vector by the corresponding component of another vector.\n *\n * @param vector3 - The vector to multiply the current vector by.\n *\n * @returns The current vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "multiply(vector3: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "vector3",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "multiply"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector3#negate:member(1)",
              "docComment": "/**\n * Negates each component of the vector.\n *\n * @returns The current vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "negate(): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "negate"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector3#normalize:member(1)",
              "docComment": "/**\n * Normalizes the vector.\n *\n * @returns The current vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "normalize(): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "normalize"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector3#randomize:member(1)",
              "docComment": "/**\n * Randomizes the vector.\n *\n * @param scale - Length of the resulting vector, if omitted a unit vector is set.\n *\n * @returns The current vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "randomize(scale?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "scale",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": true
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "randomize"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector3#rotateX:member(1)",
              "docComment": "/**\n * Rotates the vector around the x-axis.\n *\n * @param vector3 - The origin vector to rotate around.\n *\n * @param angle - The angle to rotate the vector by.\n *\n * @returns The current vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "rotateX(vector3: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": ", angle: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 5,
                "endIndex": 6
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "vector3",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "angle",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "rotateX"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector3#rotateY:member(1)",
              "docComment": "/**\n * Rotates the vector around the y-axis.\n *\n * @param vector3 - The origin vector to rotate around.\n *\n * @param angle - The angle to rotate the vector by.\n *\n * @returns The current vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "rotateY(vector3: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": ", angle: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 5,
                "endIndex": 6
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "vector3",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "angle",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "rotateY"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector3#rotateZ:member(1)",
              "docComment": "/**\n * Rotates the vector around the z-axis.\n *\n * @param vector3 - The origin vector to rotate around.\n *\n * @param angle - The angle to rotate the vector by.\n *\n * @returns The current vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "rotateZ(vector3: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": ", angle: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 5,
                "endIndex": 6
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "vector3",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "angle",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "rotateZ"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector3#round:member(1)",
              "docComment": "/**\n * Rounds each component of the vector to the nearest integer.\n *\n * @returns The current vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "round(): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "round"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector3#scale:member(1)",
              "docComment": "/**\n * Scales each component of the vector by a scalar value.\n *\n * @param scale - The scalar value to scale the vector by.\n *\n * @returns The current vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "scale(scale: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "scale",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "scale"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector3#scaleAndAdd:member(1)",
              "docComment": "/**\n * Adds 2 vectors together after scaling the provided vector by a scalar value.\n *\n * @param vector3 - The vector to add the scaled vector to.\n *\n * @param scale - The scalar value to scale the current vector by.\n *\n * @returns The current vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "scaleAndAdd(vector3: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": ", scale: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 5,
                "endIndex": 6
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "vector3",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                },
                {
                  "parameterName": "scale",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "scaleAndAdd"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Vector3#squaredLength:member",
              "docComment": "/**\n * The squared length of the vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get squaredLength(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "squaredLength",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Vector3#squaredMagnitude:member",
              "docComment": "/**\n * The squared magnitude of the vector. Alias for `squaredLength`.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get squaredMagnitude(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "squaredMagnitude",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector3#subtract:member(1)",
              "docComment": "/**\n * Subtracts a vector from the current vector.\n *\n * @param vector3 - The vector to subtract from the current vector.\n *\n * @returns The current vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "subtract(vector3: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "vector3",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "subtract"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector3#toString:member(1)",
              "docComment": "/**\n * Returns a string representation of the vector in x,y,z format.\n *\n * @returns A string representation of the vector in the format x,y,z.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "toString(): "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "toString"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector3#transformMatrix3:member(1)",
              "docComment": "/**\n * Transforms the vector by a matrix3.\n *\n * @param matrix3 - The matrix3 to transform the vector by.\n *\n * @returns The current vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "transformMatrix3(matrix3: "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix3",
                  "canonicalReference": "server!Matrix3:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "matrix3",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "transformMatrix3"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector3#transformMatrix4:member(1)",
              "docComment": "/**\n * Transforms the vector by a matrix4.\n *\n * @param matrix4 - The matrix4 to transform the vector by.\n *\n * @returns The current vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "transformMatrix4(matrix4: "
                },
                {
                  "kind": "Reference",
                  "text": "Matrix4",
                  "canonicalReference": "server!Matrix4:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "matrix4",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "transformMatrix4"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector3#transformQuaternion:member(1)",
              "docComment": "/**\n * Transforms the vector by a quaternion.\n *\n * @param quaternion - The quaternion to transform the vector by.\n *\n * @returns The current vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "transformQuaternion(quaternion: "
                },
                {
                  "kind": "Reference",
                  "text": "Quaternion",
                  "canonicalReference": "server!Quaternion:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "quaternion",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "transformQuaternion"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Vector3#x:member",
              "docComment": "/**\n * The x-component of the vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get x(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";\n\nset x(value: number);"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "x",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Vector3#y:member",
              "docComment": "/**\n * The y-component of the vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get y(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";\n\nset y(value: number);"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "y",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!Vector3#z:member",
              "docComment": "/**\n * The z-component of the vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get z(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";\n\nset z(value: number);"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "z",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!Vector3#zero:member(1)",
              "docComment": "/**\n * Sets each component of the vector to zero.\n *\n * @returns The current vector.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "zero(): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3",
                  "canonicalReference": "server!Vector3:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "zero"
            }
          ],
          "extendsTokenRange": {
            "startIndex": 1,
            "endIndex": 2
          },
          "implementsTokenRanges": [
            {
              "startIndex": 3,
              "endIndex": 4
            }
          ]
        },
        {
          "kind": "Interface",
          "canonicalReference": "server!Vector3Boolean:interface",
          "docComment": "/**\n * A 3-dimensional vector of boolean values.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "interface Vector3Boolean "
            }
          ],
          "fileUrlPath": "src/shared/types/math/Vector3Boolean.ts",
          "releaseTag": "Public",
          "name": "Vector3Boolean",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!Vector3Boolean#x:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "x: "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "x",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!Vector3Boolean#y:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "y: "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "y",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!Vector3Boolean#z:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "z: "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "z",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            }
          ],
          "extendsTokenRanges": []
        },
        {
          "kind": "Interface",
          "canonicalReference": "server!Vector3Like:interface",
          "docComment": "/**\n * A 3-dimensional vector.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "interface Vector3Like "
            }
          ],
          "fileUrlPath": "src/shared/types/math/Vector3Like.ts",
          "releaseTag": "Public",
          "name": "Vector3Like",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!Vector3Like#x:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "x: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "x",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!Vector3Like#y:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "y: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "y",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!Vector3Like#z:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "z: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "z",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            }
          ],
          "extendsTokenRanges": []
        },
        {
          "kind": "Interface",
          "canonicalReference": "server!VoxelsColliderOptions:interface",
          "docComment": "/**\n * The options for a voxels collider.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export interface VoxelsColliderOptions extends "
            },
            {
              "kind": "Reference",
              "text": "BaseColliderOptions",
              "canonicalReference": "server!BaseColliderOptions:interface"
            },
            {
              "kind": "Content",
              "text": " "
            }
          ],
          "fileUrlPath": "src/worlds/physics/Collider.ts",
          "releaseTag": "Public",
          "name": "VoxelsColliderOptions",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!VoxelsColliderOptions#coordinates:member",
              "docComment": "/**\n * The coordinate of each voxel in the collider.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "coordinates?: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": "[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "coordinates",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!VoxelsColliderOptions#shape:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "shape: "
                },
                {
                  "kind": "Reference",
                  "text": "ColliderShape.VOXELS",
                  "canonicalReference": "server!ColliderShape.VOXELS:member"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "shape",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!VoxelsColliderOptions#size:member",
              "docComment": "/**\n * The size of each voxel in the collider.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "size?: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "size",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            }
          ],
          "extendsTokenRanges": [
            {
              "startIndex": 1,
              "endIndex": 2
            }
          ]
        },
        {
          "kind": "TypeAlias",
          "canonicalReference": "server!WaypointMoveCompleteCallback:type",
          "docComment": "/**\n * A callback function called when the entity associated with the PathfindingEntityController finishes moving to a calculate waypoint of its current path.\n *\n * @param waypoint - The waypoint that the entity has finished moving to.\n *\n * @param waypointIndex - The index of the waypoint that the entity has finished moving to.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export type WaypointMoveCompleteCallback = "
            },
            {
              "kind": "Content",
              "text": "(waypoint: "
            },
            {
              "kind": "Reference",
              "text": "Vector3Like",
              "canonicalReference": "server!Vector3Like:interface"
            },
            {
              "kind": "Content",
              "text": ", waypointIndex: number) => void"
            },
            {
              "kind": "Content",
              "text": ";"
            }
          ],
          "fileUrlPath": "src/worlds/entities/controllers/PathfindingEntityController.ts",
          "releaseTag": "Public",
          "name": "WaypointMoveCompleteCallback",
          "typeTokenRange": {
            "startIndex": 1,
            "endIndex": 4
          }
        },
        {
          "kind": "TypeAlias",
          "canonicalReference": "server!WaypointMoveSkippedCallback:type",
          "docComment": "/**\n * A callback function called when the entity associated with the PathfindingEntityController skips a waypoint because it took too long to reach.\n *\n * @param waypoint - The waypoint that the entity skipped.\n *\n * @param waypointIndex - The index of the waypoint that the entity skipped.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export type WaypointMoveSkippedCallback = "
            },
            {
              "kind": "Content",
              "text": "(waypoint: "
            },
            {
              "kind": "Reference",
              "text": "Vector3Like",
              "canonicalReference": "server!Vector3Like:interface"
            },
            {
              "kind": "Content",
              "text": ", waypointIndex: number) => void"
            },
            {
              "kind": "Content",
              "text": ";"
            }
          ],
          "fileUrlPath": "src/worlds/entities/controllers/PathfindingEntityController.ts",
          "releaseTag": "Public",
          "name": "WaypointMoveSkippedCallback",
          "typeTokenRange": {
            "startIndex": 1,
            "endIndex": 4
          }
        },
        {
          "kind": "Interface",
          "canonicalReference": "server!WedgeColliderOptions:interface",
          "docComment": "/**\n * The options for a wedge collider.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export interface WedgeColliderOptions extends "
            },
            {
              "kind": "Reference",
              "text": "BaseColliderOptions",
              "canonicalReference": "server!BaseColliderOptions:interface"
            },
            {
              "kind": "Content",
              "text": " "
            }
          ],
          "fileUrlPath": "src/worlds/physics/Collider.ts",
          "releaseTag": "Public",
          "name": "WedgeColliderOptions",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!WedgeColliderOptions#extents:member",
              "docComment": "/**\n * The extents of the wedge collider, defining full width (x), height (y), and length (z).\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "extents?: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "extents",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!WedgeColliderOptions#shape:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "shape: "
                },
                {
                  "kind": "Reference",
                  "text": "ColliderShape.WEDGE",
                  "canonicalReference": "server!ColliderShape.WEDGE:member"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "shape",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            }
          ],
          "extendsTokenRanges": [
            {
              "startIndex": 1,
              "endIndex": 2
            }
          ]
        },
        {
          "kind": "Class",
          "canonicalReference": "server!World:class",
          "docComment": "/**\n * Represents a world in the game server.\n *\n * @remarks\n *\n * Worlds are the primary container for game objects and interactions. A game can have multiple worlds running simultaneously, each uniquely isolated from each other. Players who have joined your server can be assigned to a world programmatically by your game logic if desired. This is useful for things like mini-games, or complex dungeons with multiple floors that can be optimized by splitting them into seperate world or \"room\" simulations, etc. In most cases, the single automatically created default world is all you need, but this flexibility is available for more complex games.\n *\n * <h2>Events</h2>\n *\n * This class is an EventRouter, and instances of it emit events with payloads listed under {@link WorldEventPayloads}\n *\n * @example\n * ```typescript\n * const world = new World({\n *   id: 1,\n *   name: 'My World',\n *   skyboxUri: 'skyboxes/partly-cloudy',\n * });\n * ```\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export default class World extends "
            },
            {
              "kind": "Reference",
              "text": "EventRouter",
              "canonicalReference": "server!EventRouter:class"
            },
            {
              "kind": "Content",
              "text": " implements "
            },
            {
              "kind": "Reference",
              "text": "protocol.Serializable",
              "canonicalReference": "@hytopia.com/server-protocol!Serializable:interface"
            },
            {
              "kind": "Content",
              "text": " "
            }
          ],
          "fileUrlPath": "src/worlds/World.ts",
          "releaseTag": "Public",
          "isAbstract": false,
          "name": "World",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "Constructor",
              "canonicalReference": "server!World:constructor(1)",
              "docComment": "/**\n * Constructs a new instance of the `World` class\n *\n * @param options - The options for the world.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "constructor(options: "
                },
                {
                  "kind": "Reference",
                  "text": "WorldOptions",
                  "canonicalReference": "server!WorldOptions:interface"
                },
                {
                  "kind": "Content",
                  "text": ");"
                }
              ],
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "options",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ]
            },
            {
              "kind": "Property",
              "canonicalReference": "server!World#ambientLightColor:member",
              "docComment": "/**\n * The color of the ambient light.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get ambientLightColor(): "
                },
                {
                  "kind": "Reference",
                  "text": "RgbColor",
                  "canonicalReference": "server!RgbColor:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "ambientLightColor",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!World#ambientLightIntensity:member",
              "docComment": "/**\n * The intensity of the ambient light.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get ambientLightIntensity(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "ambientLightIntensity",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!World#audioManager:member",
              "docComment": "/**\n * The audio manager for the world.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get audioManager(): "
                },
                {
                  "kind": "Reference",
                  "text": "AudioManager",
                  "canonicalReference": "server!AudioManager:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "audioManager",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!World#blockTypeRegistry:member",
              "docComment": "/**\n * The block type registry for the world.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get blockTypeRegistry(): "
                },
                {
                  "kind": "Reference",
                  "text": "BlockTypeRegistry",
                  "canonicalReference": "server!BlockTypeRegistry:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "blockTypeRegistry",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!World#chatManager:member",
              "docComment": "/**\n * The chat manager for the world.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get chatManager(): "
                },
                {
                  "kind": "Reference",
                  "text": "ChatManager",
                  "canonicalReference": "server!ChatManager:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "chatManager",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!World#chunkLattice:member",
              "docComment": "/**\n * The chunk lattice for the world.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get chunkLattice(): "
                },
                {
                  "kind": "Reference",
                  "text": "ChunkLattice",
                  "canonicalReference": "server!ChunkLattice:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "chunkLattice",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!World#directionalLightColor:member",
              "docComment": "/**\n * The color of the directional light.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get directionalLightColor(): "
                },
                {
                  "kind": "Reference",
                  "text": "RgbColor",
                  "canonicalReference": "server!RgbColor:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "directionalLightColor",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!World#directionalLightIntensity:member",
              "docComment": "/**\n * The intensity of the directional light.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get directionalLightIntensity(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "directionalLightIntensity",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!World#directionalLightPosition:member",
              "docComment": "/**\n * The position the directional light originates from.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get directionalLightPosition(): "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "directionalLightPosition",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!World#entityManager:member",
              "docComment": "/**\n * The entity manager for the world.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get entityManager(): "
                },
                {
                  "kind": "Reference",
                  "text": "EntityManager",
                  "canonicalReference": "server!EntityManager:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "entityManager",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!World#fogColor:member",
              "docComment": "/**\n * The color of the fog, if not explicitly set, defaults to ambient light color.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get fogColor(): "
                },
                {
                  "kind": "Reference",
                  "text": "RgbColor",
                  "canonicalReference": "server!RgbColor:interface"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "fogColor",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!World#fogFar:member",
              "docComment": "/**\n * The maximum distance from the camera at which fog stops being applied.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get fogFar(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "fogFar",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!World#fogNear:member",
              "docComment": "/**\n * The minimum distance from the camera to start applying fog.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get fogNear(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "fogNear",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!World#id:member",
              "docComment": "/**\n * The unique ID of the world.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get id(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "id",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!World#lightManager:member",
              "docComment": "/**\n * The light manager for the world.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get lightManager(): "
                },
                {
                  "kind": "Reference",
                  "text": "LightManager",
                  "canonicalReference": "server!LightManager:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "lightManager",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!World#loadMap:member(1)",
              "docComment": "/**\n * Loads a map into the world, clearing any prior map.\n *\n * @param map - The map to load.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "loadMap(map: "
                },
                {
                  "kind": "Reference",
                  "text": "WorldMap",
                  "canonicalReference": "server!WorldMap:interface"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "map",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "loadMap"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!World#loop:member",
              "docComment": "/**\n * The world loop for the world.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get loop(): "
                },
                {
                  "kind": "Reference",
                  "text": "WorldLoop",
                  "canonicalReference": "server!WorldLoop:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "loop",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!World#name:member",
              "docComment": "/**\n * The name of the world.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get name(): "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "name",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!World#particleEmitterManager:member",
              "docComment": "/**\n * The particle emitter manager for the world.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get particleEmitterManager(): "
                },
                {
                  "kind": "Reference",
                  "text": "ParticleEmitterManager",
                  "canonicalReference": "server!ParticleEmitterManager:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "particleEmitterManager",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!World#sceneUIManager:member",
              "docComment": "/**\n * The scene UI manager for the world.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get sceneUIManager(): "
                },
                {
                  "kind": "Reference",
                  "text": "SceneUIManager",
                  "canonicalReference": "server!SceneUIManager:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "sceneUIManager",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!World#setAmbientLightColor:member(1)",
              "docComment": "/**\n * Sets the color of the world's ambient light.\n *\n * @param color - The color of the light.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setAmbientLightColor(color: "
                },
                {
                  "kind": "Reference",
                  "text": "RgbColor",
                  "canonicalReference": "server!RgbColor:interface"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "color",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setAmbientLightColor"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!World#setAmbientLightIntensity:member(1)",
              "docComment": "/**\n * Sets the intensity of the world's ambient light.\n *\n * @param intensity - The intensity.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setAmbientLightIntensity(intensity: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "intensity",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setAmbientLightIntensity"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!World#setDirectionalLightColor:member(1)",
              "docComment": "/**\n * Sets the color of the world's directional light.\n *\n * @param color - The color of the light.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setDirectionalLightColor(color: "
                },
                {
                  "kind": "Reference",
                  "text": "RgbColor",
                  "canonicalReference": "server!RgbColor:interface"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "color",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setDirectionalLightColor"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!World#setDirectionalLightIntensity:member(1)",
              "docComment": "/**\n * Sets the intensity of the world's directional light.\n *\n * @param intensity - The intensity.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setDirectionalLightIntensity(intensity: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "intensity",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setDirectionalLightIntensity"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!World#setDirectionalLightPosition:member(1)",
              "docComment": "/**\n * Sets the position the world's directional light originates from relative to a player's camera position.\n *\n * @param position - The position the directional light originates from relative to the player's camera position.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setDirectionalLightPosition(position: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "position",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setDirectionalLightPosition"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!World#setFogColor:member(1)",
              "docComment": "/**\n * Sets the color of the world's fog.\n *\n * @param color - The color of the fog, or undefined to reset to ambient light color.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setFogColor(color: "
                },
                {
                  "kind": "Reference",
                  "text": "RgbColor",
                  "canonicalReference": "server!RgbColor:interface"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 4,
                "endIndex": 5
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "color",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 3
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setFogColor"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!World#setFogFar:member(1)",
              "docComment": "/**\n * Sets the maximum distance from the camera at which fog stops being applied.\n *\n * @param far - The far distance.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setFogFar(far: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "far",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setFogFar"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!World#setFogNear:member(1)",
              "docComment": "/**\n * Sets the minimum distance from the camera to start applying fog.\n *\n * @param near - The near distance.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setFogNear(near: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "near",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setFogNear"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!World#setSkyboxIntensity:member(1)",
              "docComment": "/**\n * Sets the intensity of the world's skybox brightness.\n *\n * @param intensity - The intensity.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setSkyboxIntensity(intensity: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "intensity",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setSkyboxIntensity"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!World#simulation:member",
              "docComment": "/**\n * The simulation for the world.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get simulation(): "
                },
                {
                  "kind": "Reference",
                  "text": "Simulation",
                  "canonicalReference": "server!Simulation:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "simulation",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!World#skyboxIntensity:member",
              "docComment": "/**\n * The intensity of the world's skybox brightness.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get skyboxIntensity(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "skyboxIntensity",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!World#skyboxUri:member",
              "docComment": "/**\n * The URI of the skybox cubemap for the world.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get skyboxUri(): "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "skyboxUri",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!World#start:member(1)",
              "docComment": "/**\n * Starts the world loop, which begins ticking physics, entities, etc.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "start(): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "start"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!World#stop:member(1)",
              "docComment": "/**\n * Stops the world loop, which stops ticking physics, entities, etc.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "stop(): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "stop"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!World#tag:member",
              "docComment": "/**\n * An arbitrary identifier tag of the world. Useful for your own logic.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get tag(): "
                },
                {
                  "kind": "Content",
                  "text": "string | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "tag",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            }
          ],
          "extendsTokenRange": {
            "startIndex": 1,
            "endIndex": 2
          },
          "implementsTokenRanges": [
            {
              "startIndex": 3,
              "endIndex": 4
            }
          ]
        },
        {
          "kind": "Enum",
          "canonicalReference": "server!WorldEvent:enum",
          "docComment": "/**\n * Event types a World instance can emit. See {@link WorldEventPayloads} for the payloads.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export declare enum WorldEvent "
            }
          ],
          "fileUrlPath": "src/worlds/World.ts",
          "releaseTag": "Public",
          "name": "WorldEvent",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "EnumMember",
              "canonicalReference": "server!WorldEvent.SET_AMBIENT_LIGHT_COLOR:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_AMBIENT_LIGHT_COLOR = "
                },
                {
                  "kind": "Content",
                  "text": "\"WORLD.SET_AMBIENT_LIGHT_COLOR\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_AMBIENT_LIGHT_COLOR"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!WorldEvent.SET_AMBIENT_LIGHT_INTENSITY:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_AMBIENT_LIGHT_INTENSITY = "
                },
                {
                  "kind": "Content",
                  "text": "\"WORLD.SET_AMBIENT_LIGHT_INTENSITY\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_AMBIENT_LIGHT_INTENSITY"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!WorldEvent.SET_DIRECTIONAL_LIGHT_COLOR:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_DIRECTIONAL_LIGHT_COLOR = "
                },
                {
                  "kind": "Content",
                  "text": "\"WORLD.SET_DIRECTIONAL_LIGHT_COLOR\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_DIRECTIONAL_LIGHT_COLOR"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!WorldEvent.SET_DIRECTIONAL_LIGHT_INTENSITY:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_DIRECTIONAL_LIGHT_INTENSITY = "
                },
                {
                  "kind": "Content",
                  "text": "\"WORLD.SET_DIRECTIONAL_LIGHT_INTENSITY\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_DIRECTIONAL_LIGHT_INTENSITY"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!WorldEvent.SET_DIRECTIONAL_LIGHT_POSITION:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_DIRECTIONAL_LIGHT_POSITION = "
                },
                {
                  "kind": "Content",
                  "text": "\"WORLD.SET_DIRECTIONAL_LIGHT_POSITION\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_DIRECTIONAL_LIGHT_POSITION"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!WorldEvent.SET_FOG_COLOR:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_FOG_COLOR = "
                },
                {
                  "kind": "Content",
                  "text": "\"WORLD.SET_FOG_COLOR\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_FOG_COLOR"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!WorldEvent.SET_FOG_FAR:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_FOG_FAR = "
                },
                {
                  "kind": "Content",
                  "text": "\"WORLD.SET_FOG_FAR\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_FOG_FAR"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!WorldEvent.SET_FOG_NEAR:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_FOG_NEAR = "
                },
                {
                  "kind": "Content",
                  "text": "\"WORLD.SET_FOG_NEAR\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_FOG_NEAR"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!WorldEvent.SET_SKYBOX_INTENSITY:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "SET_SKYBOX_INTENSITY = "
                },
                {
                  "kind": "Content",
                  "text": "\"WORLD.SET_SKYBOX_INTENSITY\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "SET_SKYBOX_INTENSITY"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!WorldEvent.START:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "START = "
                },
                {
                  "kind": "Content",
                  "text": "\"WORLD.START\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "START"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!WorldEvent.STOP:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "STOP = "
                },
                {
                  "kind": "Content",
                  "text": "\"WORLD.STOP\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "STOP"
            }
          ]
        },
        {
          "kind": "Interface",
          "canonicalReference": "server!WorldEventPayloads:interface",
          "docComment": "/**\n * Event payloads for World emitted events.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export interface WorldEventPayloads "
            }
          ],
          "fileUrlPath": "src/worlds/World.ts",
          "releaseTag": "Public",
          "name": "WorldEventPayloads",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!WorldEventPayloads#\"WORLD.SET_AMBIENT_LIGHT_COLOR\":member",
              "docComment": "/**\n * Emitted when the color of the world's ambient light is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "WorldEvent.SET_AMBIENT_LIGHT_COLOR",
                  "canonicalReference": "server!WorldEvent.SET_AMBIENT_LIGHT_COLOR:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        world: "
                },
                {
                  "kind": "Reference",
                  "text": "World",
                  "canonicalReference": "server!World:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        color: "
                },
                {
                  "kind": "Reference",
                  "text": "RgbColor",
                  "canonicalReference": "server!RgbColor:interface"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"WORLD.SET_AMBIENT_LIGHT_COLOR\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 8
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!WorldEventPayloads#\"WORLD.SET_AMBIENT_LIGHT_INTENSITY\":member",
              "docComment": "/**\n * Emitted when the intensity of the world's ambient light is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "WorldEvent.SET_AMBIENT_LIGHT_INTENSITY",
                  "canonicalReference": "server!WorldEvent.SET_AMBIENT_LIGHT_INTENSITY:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        world: "
                },
                {
                  "kind": "Reference",
                  "text": "World",
                  "canonicalReference": "server!World:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        intensity: number;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"WORLD.SET_AMBIENT_LIGHT_INTENSITY\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!WorldEventPayloads#\"WORLD.SET_DIRECTIONAL_LIGHT_COLOR\":member",
              "docComment": "/**\n * Emitted when the color of the world's directional light is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "WorldEvent.SET_DIRECTIONAL_LIGHT_COLOR",
                  "canonicalReference": "server!WorldEvent.SET_DIRECTIONAL_LIGHT_COLOR:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        world: "
                },
                {
                  "kind": "Reference",
                  "text": "World",
                  "canonicalReference": "server!World:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        color: "
                },
                {
                  "kind": "Reference",
                  "text": "RgbColor",
                  "canonicalReference": "server!RgbColor:interface"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"WORLD.SET_DIRECTIONAL_LIGHT_COLOR\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 8
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!WorldEventPayloads#\"WORLD.SET_DIRECTIONAL_LIGHT_INTENSITY\":member",
              "docComment": "/**\n * Emitted when the intensity of the world's directional light is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "WorldEvent.SET_DIRECTIONAL_LIGHT_INTENSITY",
                  "canonicalReference": "server!WorldEvent.SET_DIRECTIONAL_LIGHT_INTENSITY:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        world: "
                },
                {
                  "kind": "Reference",
                  "text": "World",
                  "canonicalReference": "server!World:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        intensity: number;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"WORLD.SET_DIRECTIONAL_LIGHT_INTENSITY\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!WorldEventPayloads#\"WORLD.SET_DIRECTIONAL_LIGHT_POSITION\":member",
              "docComment": "/**\n * Emitted when the position of the world's directional light is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "WorldEvent.SET_DIRECTIONAL_LIGHT_POSITION",
                  "canonicalReference": "server!WorldEvent.SET_DIRECTIONAL_LIGHT_POSITION:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        world: "
                },
                {
                  "kind": "Reference",
                  "text": "World",
                  "canonicalReference": "server!World:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        position: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"WORLD.SET_DIRECTIONAL_LIGHT_POSITION\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 8
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!WorldEventPayloads#\"WORLD.SET_FOG_COLOR\":member",
              "docComment": "/**\n * Emitted when the color of the world's fog is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "WorldEvent.SET_FOG_COLOR",
                  "canonicalReference": "server!WorldEvent.SET_FOG_COLOR:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        world: "
                },
                {
                  "kind": "Reference",
                  "text": "World",
                  "canonicalReference": "server!World:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        color: "
                },
                {
                  "kind": "Reference",
                  "text": "RgbColor",
                  "canonicalReference": "server!RgbColor:interface"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"WORLD.SET_FOG_COLOR\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 8
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!WorldEventPayloads#\"WORLD.SET_FOG_FAR\":member",
              "docComment": "/**\n * Emitted when the density of the world's fog is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "WorldEvent.SET_FOG_FAR",
                  "canonicalReference": "server!WorldEvent.SET_FOG_FAR:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        world: "
                },
                {
                  "kind": "Reference",
                  "text": "World",
                  "canonicalReference": "server!World:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        far: number;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"WORLD.SET_FOG_FAR\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!WorldEventPayloads#\"WORLD.SET_FOG_NEAR\":member",
              "docComment": "/**\n * Emitted when the density of the world's fog is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "WorldEvent.SET_FOG_NEAR",
                  "canonicalReference": "server!WorldEvent.SET_FOG_NEAR:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        world: "
                },
                {
                  "kind": "Reference",
                  "text": "World",
                  "canonicalReference": "server!World:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        near: number;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"WORLD.SET_FOG_NEAR\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!WorldEventPayloads#\"WORLD.SET_SKYBOX_INTENSITY\":member",
              "docComment": "/**\n * Emitted when the intensity of the world's skybox brightness is set.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "WorldEvent.SET_SKYBOX_INTENSITY",
                  "canonicalReference": "server!WorldEvent.SET_SKYBOX_INTENSITY:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        world: "
                },
                {
                  "kind": "Reference",
                  "text": "World",
                  "canonicalReference": "server!World:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        intensity: number;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"WORLD.SET_SKYBOX_INTENSITY\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!WorldEventPayloads#\"WORLD.START\":member",
              "docComment": "/**\n * Emitted when the world starts.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "WorldEvent.START",
                  "canonicalReference": "server!WorldEvent.START:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        world: "
                },
                {
                  "kind": "Reference",
                  "text": "World",
                  "canonicalReference": "server!World:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        startedAtMs: number;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"WORLD.START\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!WorldEventPayloads#\"WORLD.STOP\":member",
              "docComment": "/**\n * Emitted when the world stops.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "WorldEvent.STOP",
                  "canonicalReference": "server!WorldEvent.STOP:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        world: "
                },
                {
                  "kind": "Reference",
                  "text": "World",
                  "canonicalReference": "server!World:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        stoppedAtMs: number;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"WORLD.STOP\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            }
          ],
          "extendsTokenRanges": []
        },
        {
          "kind": "Class",
          "canonicalReference": "server!WorldLoop:class",
          "docComment": "/**\n * Manages the tick loop for a world.\n *\n * @remarks\n *\n * The world loop automatically handles ticking physics, entities, and other world logic.\n *\n * The internal order of tick operations is as follows:\n *\n * 1. Update chunks and meshing\n *\n * 2. Tick entity logic\n *\n * 3. Step physics\n *\n * 4. Check and emit entity updates\n *\n * 5. Synchronize network packets with player clients\n *\n * <h2>Events</h2>\n *\n * This class is an EventRouter, and instances of it emit events with payloads listed under {@link WorldLoopEventPayloads}\n *\n * The constructor for this class is marked as internal. Third-party code should not call the constructor directly or create subclasses that extend the `WorldLoop` class.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export default class WorldLoop extends "
            },
            {
              "kind": "Reference",
              "text": "EventRouter",
              "canonicalReference": "server!EventRouter:class"
            },
            {
              "kind": "Content",
              "text": " "
            }
          ],
          "fileUrlPath": "src/worlds/WorldLoop.ts",
          "releaseTag": "Public",
          "isAbstract": false,
          "name": "WorldLoop",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "Property",
              "canonicalReference": "server!WorldLoop#currentTick:member",
              "docComment": "/**\n * The current tick of the world loop.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get currentTick(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "currentTick",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!WorldLoop#isStarted:member",
              "docComment": "/**\n * Whether the world loop is started.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get isStarted(): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "isStarted",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!WorldLoop#nextTickMs:member",
              "docComment": "/**\n * The next tick time in milliseconds.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get nextTickMs(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "nextTickMs",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!WorldLoop#timestepS:member",
              "docComment": "/**\n * The fixed timestep of the world loop in seconds.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get timestepS(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "timestepS",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Property",
              "canonicalReference": "server!WorldLoop#world:member",
              "docComment": "/**\n * The world that the loop manages.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get world(): "
                },
                {
                  "kind": "Reference",
                  "text": "World",
                  "canonicalReference": "server!World:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "world",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false,
              "isProtected": false,
              "isAbstract": false
            }
          ],
          "extendsTokenRange": {
            "startIndex": 1,
            "endIndex": 2
          },
          "implementsTokenRanges": []
        },
        {
          "kind": "Enum",
          "canonicalReference": "server!WorldLoopEvent:enum",
          "docComment": "/**\n * Event types a WorldLoop instance can emit. See {@link WorldLoopEventPayloads} for the payloads.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export declare enum WorldLoopEvent "
            }
          ],
          "fileUrlPath": "src/worlds/WorldLoop.ts",
          "releaseTag": "Public",
          "name": "WorldLoopEvent",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "EnumMember",
              "canonicalReference": "server!WorldLoopEvent.START:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "START = "
                },
                {
                  "kind": "Content",
                  "text": "\"WORLD_LOOP.START\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "START"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!WorldLoopEvent.STOP:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "STOP = "
                },
                {
                  "kind": "Content",
                  "text": "\"WORLD_LOOP.STOP\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "STOP"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!WorldLoopEvent.TICK_END:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "TICK_END = "
                },
                {
                  "kind": "Content",
                  "text": "\"WORLD_LOOP.TICK_END\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "TICK_END"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!WorldLoopEvent.TICK_ERROR:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "TICK_ERROR = "
                },
                {
                  "kind": "Content",
                  "text": "\"WORLD_LOOP.TICK_ERROR\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "TICK_ERROR"
            },
            {
              "kind": "EnumMember",
              "canonicalReference": "server!WorldLoopEvent.TICK_START:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "TICK_START = "
                },
                {
                  "kind": "Content",
                  "text": "\"WORLD_LOOP.TICK_START\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "TICK_START"
            }
          ]
        },
        {
          "kind": "Interface",
          "canonicalReference": "server!WorldLoopEventPayloads:interface",
          "docComment": "/**\n * Event payloads for WorldLoop emitted events.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export interface WorldLoopEventPayloads "
            }
          ],
          "fileUrlPath": "src/worlds/WorldLoop.ts",
          "releaseTag": "Public",
          "name": "WorldLoopEventPayloads",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!WorldLoopEventPayloads#\"WORLD_LOOP.START\":member",
              "docComment": "/**\n * Emitted when the world loop starts.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "WorldLoopEvent.START",
                  "canonicalReference": "server!WorldLoopEvent.START:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        worldLoop: "
                },
                {
                  "kind": "Reference",
                  "text": "WorldLoop",
                  "canonicalReference": "server!WorldLoop:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"WORLD_LOOP.START\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!WorldLoopEventPayloads#\"WORLD_LOOP.STOP\":member",
              "docComment": "/**\n * Emitted when the world loop stops.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "WorldLoopEvent.STOP",
                  "canonicalReference": "server!WorldLoopEvent.STOP:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        worldLoop: "
                },
                {
                  "kind": "Reference",
                  "text": "WorldLoop",
                  "canonicalReference": "server!WorldLoop:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"WORLD_LOOP.STOP\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!WorldLoopEventPayloads#\"WORLD_LOOP.TICK_END\":member",
              "docComment": "/**\n * Emitted when the world loop tick ends.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "WorldLoopEvent.TICK_END",
                  "canonicalReference": "server!WorldLoopEvent.TICK_END:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        worldLoop: "
                },
                {
                  "kind": "Reference",
                  "text": "WorldLoop",
                  "canonicalReference": "server!WorldLoop:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        tickDurationMs: number;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"WORLD_LOOP.TICK_END\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!WorldLoopEventPayloads#\"WORLD_LOOP.TICK_ERROR\":member",
              "docComment": "/**\n * Emitted when an error occurs during a world loop tick.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "WorldLoopEvent.TICK_ERROR",
                  "canonicalReference": "server!WorldLoopEvent.TICK_ERROR:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        worldLoop: "
                },
                {
                  "kind": "Reference",
                  "text": "WorldLoop",
                  "canonicalReference": "server!WorldLoop:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        error: "
                },
                {
                  "kind": "Reference",
                  "text": "Error",
                  "canonicalReference": "!Error:interface"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"WORLD_LOOP.TICK_ERROR\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 8
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!WorldLoopEventPayloads#\"WORLD_LOOP.TICK_START\":member",
              "docComment": "/**\n * Emitted when the world loop tick starts.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "WorldLoopEvent.TICK_START",
                  "canonicalReference": "server!WorldLoopEvent.TICK_START:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        worldLoop: "
                },
                {
                  "kind": "Reference",
                  "text": "WorldLoop",
                  "canonicalReference": "server!WorldLoop:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n        tickDeltaMs: number;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"WORLD_LOOP.TICK_START\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            }
          ],
          "extendsTokenRanges": []
        },
        {
          "kind": "Class",
          "canonicalReference": "server!WorldManager:class",
          "docComment": "/**\n * Manages all worlds in a game server.\n *\n * @remarks\n *\n * The WorldManager is created internally as a global singleton accessible with the static property `WorldManager.instance`.\n *\n * <h2>Events</h2>\n *\n * This class emits global events with payloads listed under {@link WorldManagerEventPayloads}\n *\n * @example\n * ```typescript\n * import { WorldManager } from 'hytopia';\n *\n * const worldManager = WorldManager.instance;\n * const newWorld = worldManager.createWorld({\n *   name: 'My New World',\n *   skyboxUri: 'skyboxes/partly-cloudy',\n * });\n * ```\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export default class WorldManager "
            }
          ],
          "fileUrlPath": "src/worlds/WorldManager.ts",
          "releaseTag": "Public",
          "isAbstract": false,
          "name": "WorldManager",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "Method",
              "canonicalReference": "server!WorldManager#createWorld:member(1)",
              "docComment": "/**\n * Creates a new world.\n *\n * @param options - The options for the world.\n *\n * @param start - Whether to start the world immediately, defaults to true.\n *\n * @returns The created world.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "createWorld(options: "
                },
                {
                  "kind": "Reference",
                  "text": "Omit",
                  "canonicalReference": "!Omit:type"
                },
                {
                  "kind": "Content",
                  "text": "<"
                },
                {
                  "kind": "Reference",
                  "text": "WorldOptions",
                  "canonicalReference": "server!WorldOptions:interface"
                },
                {
                  "kind": "Content",
                  "text": ", 'id'>"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "World",
                  "canonicalReference": "server!World:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 6,
                "endIndex": 7
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "options",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 5
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "createWorld"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!WorldManager#getAllWorlds:member(1)",
              "docComment": "/**\n * Gets all worlds.\n *\n * @returns All worlds.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "getAllWorlds(): "
                },
                {
                  "kind": "Reference",
                  "text": "World",
                  "canonicalReference": "server!World:class"
                },
                {
                  "kind": "Content",
                  "text": "[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "getAllWorlds"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!WorldManager#getDefaultWorld:member(1)",
              "docComment": "/**\n * Gets the default world.\n *\n * @returns The default world.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "getDefaultWorld(): "
                },
                {
                  "kind": "Reference",
                  "text": "World",
                  "canonicalReference": "server!World:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [],
              "isOptional": false,
              "isAbstract": false,
              "name": "getDefaultWorld"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!WorldManager#getWorld:member(1)",
              "docComment": "/**\n * Gets a world by its id.\n *\n * @param id - The id of the world to get.\n *\n * @returns The world with the provided id, or undefined if no world is found.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "getWorld(id: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "World",
                  "canonicalReference": "server!World:class"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 5
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "id",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "getWorld"
            },
            {
              "kind": "Method",
              "canonicalReference": "server!WorldManager#getWorldsByTag:member(1)",
              "docComment": "/**\n * Gets all worlds with a specific tag.\n *\n * @param tag - The tag to get the worlds for.\n *\n * @returns All worlds with the provided tag.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "getWorldsByTag(tag: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "World",
                  "canonicalReference": "server!World:class"
                },
                {
                  "kind": "Content",
                  "text": "[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 5
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "tag",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "getWorldsByTag"
            },
            {
              "kind": "Property",
              "canonicalReference": "server!WorldManager.instance:member",
              "docComment": "/**\n * The global WorldManager instance as a singleton.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "static readonly instance: "
                },
                {
                  "kind": "Reference",
                  "text": "WorldManager",
                  "canonicalReference": "server!WorldManager:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": true,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "instance",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": true,
              "isProtected": false,
              "isAbstract": false
            },
            {
              "kind": "Method",
              "canonicalReference": "server!WorldManager#setDefaultWorld:member(1)",
              "docComment": "/**\n * Sets the default world. This is the world players automatically join when they connect to the game.\n *\n * @param world - The world to set as the default.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "setDefaultWorld(world: "
                },
                {
                  "kind": "Reference",
                  "text": "World",
                  "canonicalReference": "server!World:class"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Content",
                  "text": "void"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 4
              },
              "releaseTag": "Public",
              "isProtected": false,
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "world",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isOptional": false
                }
              ],
              "isOptional": false,
              "isAbstract": false,
              "name": "setDefaultWorld"
            }
          ],
          "implementsTokenRanges": []
        },
        {
          "kind": "Enum",
          "canonicalReference": "server!WorldManagerEvent:enum",
          "docComment": "/**\n * Event types a WorldManager instance can emit to the global event router. See {@link WorldManagerEventPayloads} for the payloads.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export declare enum WorldManagerEvent "
            }
          ],
          "fileUrlPath": "src/worlds/WorldManager.ts",
          "releaseTag": "Public",
          "name": "WorldManagerEvent",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "EnumMember",
              "canonicalReference": "server!WorldManagerEvent.WORLD_CREATED:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "WORLD_CREATED = "
                },
                {
                  "kind": "Content",
                  "text": "\"WORLD_MANAGER.WORLD_CREATED\""
                }
              ],
              "initializerTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "releaseTag": "Public",
              "name": "WORLD_CREATED"
            }
          ]
        },
        {
          "kind": "Interface",
          "canonicalReference": "server!WorldManagerEventPayloads:interface",
          "docComment": "/**\n * Event payloads for WorldManager emitted events.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export interface WorldManagerEventPayloads "
            }
          ],
          "fileUrlPath": "src/worlds/WorldManager.ts",
          "releaseTag": "Public",
          "name": "WorldManagerEventPayloads",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!WorldManagerEventPayloads#\"WORLD_MANAGER.WORLD_CREATED\":member",
              "docComment": "/**\n * Emitted when a world is created.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "["
                },
                {
                  "kind": "Reference",
                  "text": "WorldManagerEvent.WORLD_CREATED",
                  "canonicalReference": "server!WorldManagerEvent.WORLD_CREATED:member"
                },
                {
                  "kind": "Content",
                  "text": "]: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        world: "
                },
                {
                  "kind": "Reference",
                  "text": "World",
                  "canonicalReference": "server!World:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "\"WORLD_MANAGER.WORLD_CREATED\"",
              "propertyTypeTokenRange": {
                "startIndex": 3,
                "endIndex": 6
              }
            }
          ],
          "extendsTokenRanges": []
        },
        {
          "kind": "Interface",
          "canonicalReference": "server!WorldMap:interface",
          "docComment": "/**\n * A map representation for a world.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export interface WorldMap "
            }
          ],
          "fileUrlPath": "src/worlds/World.ts",
          "releaseTag": "Public",
          "name": "WorldMap",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!WorldMap#blocks:member",
              "docComment": "/**\n * The blocks in the map\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "blocks?: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        [coordinate: string]: number;\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "blocks",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!WorldMap#blockTypes:member",
              "docComment": "/**\n * The block types in the map.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "blockTypes?: "
                },
                {
                  "kind": "Reference",
                  "text": "BlockTypeOptions",
                  "canonicalReference": "server!BlockTypeOptions:interface"
                },
                {
                  "kind": "Content",
                  "text": "[]"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "blockTypes",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!WorldMap#entities:member",
              "docComment": "/**\n * The entities in the map.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "entities?: "
                },
                {
                  "kind": "Content",
                  "text": "{\n        [position: string]: "
                },
                {
                  "kind": "Reference",
                  "text": "Omit",
                  "canonicalReference": "!Omit:type"
                },
                {
                  "kind": "Content",
                  "text": "<"
                },
                {
                  "kind": "Reference",
                  "text": "EntityOptions",
                  "canonicalReference": "server!EntityOptions:type"
                },
                {
                  "kind": "Content",
                  "text": ", 'rigidBodyOptions'> & {\n            rigidBodyOptions?: "
                },
                {
                  "kind": "Reference",
                  "text": "Omit",
                  "canonicalReference": "!Omit:type"
                },
                {
                  "kind": "Content",
                  "text": "<"
                },
                {
                  "kind": "Reference",
                  "text": "NonNullable",
                  "canonicalReference": "!NonNullable:type"
                },
                {
                  "kind": "Content",
                  "text": "<"
                },
                {
                  "kind": "Reference",
                  "text": "EntityOptions",
                  "canonicalReference": "server!EntityOptions:type"
                },
                {
                  "kind": "Content",
                  "text": "['rigidBodyOptions']>, 'type'> & {\n                type?: any;\n            };\n        };\n    }"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "entities",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 12
              }
            }
          ],
          "extendsTokenRanges": []
        },
        {
          "kind": "Interface",
          "canonicalReference": "server!WorldOptions:interface",
          "docComment": "/**\n * Options for creating a World instance.\n *\n * @public\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export interface WorldOptions "
            }
          ],
          "fileUrlPath": "src/worlds/World.ts",
          "releaseTag": "Public",
          "name": "WorldOptions",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!WorldOptions#ambientLightColor:member",
              "docComment": "/**\n * The color of the ambient light for the world.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "ambientLightColor?: "
                },
                {
                  "kind": "Reference",
                  "text": "RgbColor",
                  "canonicalReference": "server!RgbColor:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "ambientLightColor",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!WorldOptions#ambientLightIntensity:member",
              "docComment": "/**\n * The intensity of the ambient light for the world. 0 to 1+\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "ambientLightIntensity?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "ambientLightIntensity",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!WorldOptions#directionalLightColor:member",
              "docComment": "/**\n * The color of the directional light for the world.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "directionalLightColor?: "
                },
                {
                  "kind": "Reference",
                  "text": "RgbColor",
                  "canonicalReference": "server!RgbColor:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "directionalLightColor",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!WorldOptions#directionalLightIntensity:member",
              "docComment": "/**\n * The intensity of the directional light for the world. 0 to 1+\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "directionalLightIntensity?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "directionalLightIntensity",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!WorldOptions#directionalLightPosition:member",
              "docComment": "/**\n * The position the directional light originates from for the world.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "directionalLightPosition?: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "directionalLightPosition",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!WorldOptions#fogColor:member",
              "docComment": "/**\n * The color of the fog for the world. Defaults to ambient light color.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "fogColor?: "
                },
                {
                  "kind": "Reference",
                  "text": "RgbColor",
                  "canonicalReference": "server!RgbColor:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "fogColor",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!WorldOptions#fogFar:member",
              "docComment": "/**\n * The maximum distance from the camera at which fog stops being applied.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "fogFar?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "fogFar",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!WorldOptions#fogNear:member",
              "docComment": "/**\n * The minimum distance from the camera to start applying fog.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "fogNear?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "fogNear",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!WorldOptions#gravity:member",
              "docComment": "/**\n * The gravity vector for the world.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "gravity?: "
                },
                {
                  "kind": "Reference",
                  "text": "Vector3Like",
                  "canonicalReference": "server!Vector3Like:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "gravity",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!WorldOptions#id:member",
              "docComment": "/**\n * The unique ID of the world.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "id: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "id",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!WorldOptions#map:member",
              "docComment": "/**\n * The map of the world.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "map?: "
                },
                {
                  "kind": "Reference",
                  "text": "WorldMap",
                  "canonicalReference": "server!WorldMap:interface"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "map",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!WorldOptions#name:member",
              "docComment": "/**\n * The name of the world.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "name: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "name",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!WorldOptions#skyboxIntensity:member",
              "docComment": "/**\n * The intensity of the skybox brightness for the world. 0 is black, 1 is full brightness, 1+ is brighter.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "skyboxIntensity?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "skyboxIntensity",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!WorldOptions#skyboxUri:member",
              "docComment": "/**\n * The URI of the skybox cubemap for the world.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "skyboxUri: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": false,
              "releaseTag": "Public",
              "name": "skyboxUri",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!WorldOptions#tag:member",
              "docComment": "/**\n * An arbitrary identifier tag of the world. Useful for your own logic\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "tag?: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "tag",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "server!WorldOptions#tickRate:member",
              "docComment": "/**\n * The tick rate for the world.\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "tickRate?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isReadonly": false,
              "isOptional": true,
              "releaseTag": "Public",
              "name": "tickRate",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            }
          ],
          "extendsTokenRanges": []
        }
      ]
    }
  ]
}
