@gwigz/slua-types 1.1.2 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/index.d.ts +761 -215
  2. package/package.json +1 -1
package/index.d.ts CHANGED
@@ -1351,7 +1351,11 @@ declare namespace ll {
1351
1351
  * Reports collision data for intersections with objects.
1352
1352
  * Return value: [UUID_1, {link_number_1}, hit_position_1, {hit_normal_1}, UUID_2, {link_number_2}, hit_position_2, {hit_normal_2}, ... , status_code] where {} indicates optional data.
1353
1353
  */
1354
- export function CastRay(start: Vector, end: Vector, options: list): list
1354
+ export function CastRay<const T extends readonly unknown[]>(
1355
+ start: Vector,
1356
+ end: Vector,
1357
+ options: T & ParseCastRayParams<T>,
1358
+ ): list
1355
1359
 
1356
1360
  /**
1357
1361
  * Returns smallest integer value >= Value.
@@ -1428,7 +1432,9 @@ declare namespace ll {
1428
1432
  * Creates a path-finding entity, known as a "character", from the object containing the script. Required to activate use of path-finding functions.
1429
1433
  * Options is a list of key/value pairs.
1430
1434
  */
1431
- export function CreateCharacter(options: list): void
1435
+ export function CreateCharacter<const T extends readonly unknown[]>(
1436
+ options: T & ParseCharacterParams<T>,
1437
+ ): void
1432
1438
 
1433
1439
  /** Starts an asychronous transaction to create a key-value pair. Will fail with XP_ERROR_STORAGE_EXCEPTION if the key already exists. The dataserver callback will be executed with the key returned from this call and a string describing the result. The result is a two element commma-delimited list. The first item is an integer specifying if the transaction succeeded (1) or not (0). In the failure case, the second item will be an integer corresponding to one of the XP_ERROR_... constants. In the success case the second item will be the value passed to the function. */
1434
1440
  export function CreateKeyValue(key: string, value: string): UUID
@@ -1998,7 +2004,10 @@ declare namespace ll {
1998
2004
  * * Supplying a prim or object flag will return that flag's attributes.
1999
2005
  * * Face flags require the user to also supply a face index parameter.
2000
2006
  */
2001
- export function GetLinkPrimitiveParams(linkNumber: number, parameters: number[]): list
2007
+ export function GetLinkPrimitiveParams<const T extends readonly unknown[]>(
2008
+ linkNumber: number,
2009
+ parameters: number[],
2010
+ ): list
2002
2011
 
2003
2012
  /** Returns the sit flags set on the specified prim in a linkset. */
2004
2013
  export function GetLinkSitFlags(linkNumber: number): number
@@ -2227,7 +2236,7 @@ declare namespace ll {
2227
2236
  * Returns the primitive parameters specified in the parameters list.
2228
2237
  * Returns primitive parameters specified in the Parameters list.
2229
2238
  */
2230
- export function GetPrimitiveParams(parameters: number[]): list
2239
+ export function GetPrimitiveParams<const T extends readonly unknown[]>(parameters: number[]): list
2231
2240
 
2232
2241
  /**
2233
2242
  * Returns the number of avatars in the region.
@@ -2510,7 +2519,11 @@ declare namespace ll {
2510
2519
  * Sends an HTTP request to the specified URL with the Body of the request and Parameters.
2511
2520
  * Returns a key that is a handle identifying the HTTP request made.
2512
2521
  */
2513
- export function HTTPRequest(url: string, parameters: list, body: string): UUID
2522
+ export function HTTPRequest<const T extends readonly unknown[]>(
2523
+ url: string,
2524
+ parameters: T & ParseHttpParams<T>,
2525
+ body: string,
2526
+ ): UUID
2514
2527
 
2515
2528
  /** Responds to an incoming HTTP request which was triggerd by an http_request event within the script. HTTPRequestID specifies the request to respond to (this ID is supplied in the http_request event handler). Status and Body specify the status code and message to respond with. */
2516
2529
  export function HTTPResponse(httpRequestId: UUID, status: number, body: string): void
@@ -2600,7 +2613,10 @@ declare namespace ll {
2600
2613
  * List format is [ rule-1, data-1, rule-2, data-2 ... rule-n, data-n ].
2601
2614
  * This is identical to llParticleSystem except that it applies to a specified linked prim and not just the prim the script is in.
2602
2615
  */
2603
- export function LinkParticleSystem(linkNumber: number, rules: list): void
2616
+ export function LinkParticleSystem<const T extends readonly unknown[]>(
2617
+ linkNumber: number,
2618
+ rules: T & ParseParticleSystemParams<T>,
2619
+ ): void
2604
2620
 
2605
2621
  /**
2606
2622
  * Plays Sound, once or looping, at Volume (0.0 - 1.0). The sound may be attached to the link or triggered at its location.
@@ -3104,7 +3120,9 @@ declare namespace ll {
3104
3120
  * Creates a particle system in the prim the script is attached to, based on Parameters. An empty list removes a particle system from object.
3105
3121
  * List format is [ rule-1, data-1, rule-2, data-2 ... rule-n, data-n ].
3106
3122
  */
3107
- export function ParticleSystem(parameters: list): void
3123
+ export function ParticleSystem<const T extends readonly unknown[]>(
3124
+ parameters: T & ParseParticleSystemParams<T>,
3125
+ ): void
3108
3126
 
3109
3127
  /**
3110
3128
  * Configures how collision events are passed to scripts in the linkset.
@@ -3403,8 +3421,13 @@ declare namespace ll {
3403
3421
  startParameter: number,
3404
3422
  ): void
3405
3423
 
3406
- /** Instantiate owner's InventoryItem with the given parameters. */
3407
- export function RezObjectWithParams(inventoryItem: string, params: list): UUID
3424
+ /**
3425
+ * Instantiate owner's InventoryItem with the given parameters.
3426
+ */
3427
+ export function RezObjectWithParams<const T extends readonly unknown[]>(
3428
+ inventoryItem: string,
3429
+ params: T & ParseRezParams<T>,
3430
+ ): UUID
3408
3431
 
3409
3432
  /**
3410
3433
  * Returns the rotation angle represented by Rotation.
@@ -3607,7 +3630,9 @@ declare namespace ll {
3607
3630
  * Sets multiple camera parameters at once. List format is [ rule-1, data-1, rule-2, data-2 . . . rule-n, data-n ].
3608
3631
  * Requires the PERMISSION_CONTROL_CAMERA runtime permission (automatically granted to attached or sat on objects).
3609
3632
  */
3610
- export function SetCameraParams(parameters: list): void
3633
+ export function SetCameraParams<const T extends readonly unknown[]>(
3634
+ parameters: T & ParseCameraParams<T>,
3635
+ ): void
3611
3636
 
3612
3637
  /** Sets the action performed when a prim is clicked upon. */
3613
3638
  export function SetClickAction(action: number): void
@@ -3699,13 +3724,19 @@ declare namespace ll {
3699
3724
  * Deprecated: Use llSetLinkPrimitiveParamsFast instead.
3700
3725
  * @deprecated Use 'll.SetLinkPrimitiveParamsFast' instead.
3701
3726
  */
3702
- export function SetLinkPrimitiveParams(linkNumber: number, parameters: list): void
3727
+ export function SetLinkPrimitiveParams<const T extends readonly unknown[]>(
3728
+ linkNumber: number,
3729
+ parameters: T & ParsePrimParams<T>,
3730
+ ): void
3703
3731
 
3704
3732
  /**
3705
3733
  * Set primitive parameters for LinkNumber based on Parameters, without a delay.
3706
3734
  * Set parameters for link number, from the list of Parameters, with no built-in script sleep. This function is identical to llSetLinkPrimitiveParams, except without the delay.
3707
3735
  */
3708
- export function SetLinkPrimitiveParamsFast(linkNumber: number, parameters: list): void
3736
+ export function SetLinkPrimitiveParamsFast<const T extends readonly unknown[]>(
3737
+ linkNumber: number,
3738
+ parameters: T & ParsePrimParams<T>,
3739
+ ): void
3709
3740
 
3710
3741
  /** Sets the Render Material of Face on a linked prim, specified by LinkNumber. Render Material may be a UUID or name of a material in prim inventory. */
3711
3742
  export function SetLinkRenderMaterial(
@@ -3810,7 +3841,9 @@ declare namespace ll {
3810
3841
  * Deprecated: Use llSetLinkPrimitiveParamsFast instead.
3811
3842
  * @deprecated Use 'll.SetLinkPrimitiveParamsFast' instead.
3812
3843
  */
3813
- export function SetPrimitiveParams(parameters: list): void
3844
+ export function SetPrimitiveParams<const T extends readonly unknown[]>(
3845
+ parameters: T & ParsePrimParams<T>,
3846
+ ): void
3814
3847
 
3815
3848
  /**
3816
3849
  * Attempts to move the object so that the root prim is within 0.1m of Position.
@@ -4151,8 +4184,12 @@ declare namespace ll {
4151
4184
  */
4152
4185
  export function UnescapeURL(url: string): string
4153
4186
 
4154
- /** Updates settings for a pathfinding character. */
4155
- export function UpdateCharacter(options: list): void
4187
+ /**
4188
+ * Updates settings for a pathfinding character.
4189
+ */
4190
+ export function UpdateCharacter<const T extends readonly unknown[]>(
4191
+ options: T & ParseCharacterParams<T>,
4192
+ ): void
4156
4193
 
4157
4194
  /** Starts an asychronous transaction to update the value associated with the key given. The dataserver callback will be executed with the key returned from this call and a string describing the result. The result is a two element commma-delimited list. The first item is an integer specifying if the transaction succeeded (1) or not (0). In the failure case, the second item will be an integer corresponding to one of the XP_ERROR_... constants. In the success case the second item will be the value associated with the key. If Checked is 1 the existing value in the data store must match the OriginalValue passed or XP_ERROR_RETRY_UPDATE will be returned. If Checked is 0 the key will be created if necessary. */
4158
4195
  export function UpdateKeyValue(
@@ -4386,20 +4423,20 @@ declare const AVOID_DYNAMIC_OBSTACLES: number
4386
4423
  declare const AVOID_NONE: number
4387
4424
  /** Cause llMapBeacon to optionally display and focus the world map on the avatar's viewer. */
4388
4425
  declare const BEACON_MAP: number
4389
- declare const CAMERA_ACTIVE: number
4390
- declare const CAMERA_BEHINDNESS_ANGLE: number
4391
- declare const CAMERA_BEHINDNESS_LAG: number
4392
- declare const CAMERA_DISTANCE: number
4393
- declare const CAMERA_FOCUS: number
4394
- declare const CAMERA_FOCUS_LAG: number
4395
- declare const CAMERA_FOCUS_LOCKED: number
4396
- declare const CAMERA_FOCUS_OFFSET: number
4397
- declare const CAMERA_FOCUS_THRESHOLD: number
4398
- declare const CAMERA_PITCH: number
4399
- declare const CAMERA_POSITION: number
4400
- declare const CAMERA_POSITION_LAG: number
4401
- declare const CAMERA_POSITION_LOCKED: number
4402
- declare const CAMERA_POSITION_THRESHOLD: number
4426
+ declare const CAMERA_ACTIVE: 12
4427
+ declare const CAMERA_BEHINDNESS_ANGLE: 8
4428
+ declare const CAMERA_BEHINDNESS_LAG: 9
4429
+ declare const CAMERA_DISTANCE: 7
4430
+ declare const CAMERA_FOCUS: 17
4431
+ declare const CAMERA_FOCUS_LAG: 6
4432
+ declare const CAMERA_FOCUS_LOCKED: 22
4433
+ declare const CAMERA_FOCUS_OFFSET: 1
4434
+ declare const CAMERA_FOCUS_THRESHOLD: 11
4435
+ declare const CAMERA_PITCH: 0
4436
+ declare const CAMERA_POSITION: 13
4437
+ declare const CAMERA_POSITION_LAG: 5
4438
+ declare const CAMERA_POSITION_LOCKED: 21
4439
+ declare const CAMERA_POSITION_THRESHOLD: 10
4403
4440
  /** The object inventory has changed because an item was added through the llAllowInventoryDrop interface. */
4404
4441
  declare const CHANGED_ALLOWED_DROP: number
4405
4442
  /** The object color has changed. */
@@ -4426,39 +4463,39 @@ declare const CHANGED_TELEPORT: number
4426
4463
  /** The texture offset, scale rotation, or simply the object texture has changed. */
4427
4464
  declare const CHANGED_TEXTURE: number
4428
4465
  /** If set to false, character will not attempt to catch up on lost time when pathfinding performance is low, potentially providing more reliable movement (albeit while potentially appearing to be more stuttery). Default is true to match pre-existing behavior. */
4429
- declare const CHARACTER_ACCOUNT_FOR_SKIPPED_FRAMES: number
4466
+ declare const CHARACTER_ACCOUNT_FOR_SKIPPED_FRAMES: 14
4430
4467
  /** Allows you to specify that a character should not try to avoid other characters, should not try to avoid dynamic obstacles (relatively fast moving objects and avatars), or both. */
4431
- declare const CHARACTER_AVOIDANCE_MODE: number
4468
+ declare const CHARACTER_AVOIDANCE_MODE: 5
4432
4469
  /** Makes the character jump. Requires an additional parameter, the height to jump, between 0.1m and 2.0m. This must be provided as the first element of the llExecCharacterCmd option list. */
4433
4470
  declare const CHARACTER_CMD_JUMP: number
4434
4471
  declare const CHARACTER_CMD_SMOOTH_STOP: number
4435
4472
  /** Stops any current pathfinding operation. */
4436
4473
  declare const CHARACTER_CMD_STOP: number
4437
4474
  /** Speed of pursuit in meters per second. */
4438
- declare const CHARACTER_DESIRED_SPEED: number
4475
+ declare const CHARACTER_DESIRED_SPEED: 1
4439
4476
  /** The character's maximum speed while turning about the Z axis. - Note that this is only loosely enforced. */
4440
- declare const CHARACTER_DESIRED_TURN_SPEED: number
4477
+ declare const CHARACTER_DESIRED_TURN_SPEED: 12
4441
4478
  /** Set collision capsule length - cannot be less than two times the radius. */
4442
- declare const CHARACTER_LENGTH: number
4479
+ declare const CHARACTER_LENGTH: 3
4443
4480
  /** The character's maximum acceleration rate. */
4444
- declare const CHARACTER_MAX_ACCEL: number
4481
+ declare const CHARACTER_MAX_ACCEL: 8
4445
4482
  /** The character's maximum deceleration rate. */
4446
- declare const CHARACTER_MAX_DECEL: number
4483
+ declare const CHARACTER_MAX_DECEL: 9
4447
4484
  /** The character's maximum speed. */
4448
- declare const CHARACTER_MAX_SPEED: number
4485
+ declare const CHARACTER_MAX_SPEED: 13
4449
4486
  /** The character's turn radius when travelling at CHARACTER_MAX_TURN_SPEED. */
4450
- declare const CHARACTER_MAX_TURN_RADIUS: number
4487
+ declare const CHARACTER_MAX_TURN_RADIUS: 10
4451
4488
  /** Valid options are: VERTICAL, HORIZONTAL. */
4452
- declare const CHARACTER_ORIENTATION: number
4489
+ declare const CHARACTER_ORIENTATION: 4
4453
4490
  /** Set collision capsule radius. */
4454
- declare const CHARACTER_RADIUS: number
4491
+ declare const CHARACTER_RADIUS: 2
4455
4492
  /**
4456
4493
  * Determines whether a character can leave its starting parcel.
4457
4494
  * Takes a boolean parameter. If TRUE, the character cannot voluntarilly leave the parcel, but can return to it.
4458
4495
  */
4459
- declare const CHARACTER_STAY_WITHIN_PARCEL: number
4496
+ declare const CHARACTER_STAY_WITHIN_PARCEL: 15
4460
4497
  /** Specifies which walk-ability coefficient will be used by this character. */
4461
- declare const CHARACTER_TYPE: number
4498
+ declare const CHARACTER_TYPE: 6
4462
4499
  declare const CHARACTER_TYPE_A: number
4463
4500
  declare const CHARACTER_TYPE_B: number
4464
4501
  declare const CHARACTER_TYPE_C: number
@@ -4673,24 +4710,24 @@ declare const GCNP_STATIC: number
4673
4710
  declare const GRAVITY_MULTIPLIER: number
4674
4711
  declare const HORIZONTAL: number
4675
4712
  /** Provide a string value to be included in the HTTPaccepts header value. This replaces the default Second Life HTTP accepts header. */
4676
- declare const HTTP_ACCEPT: number
4677
- declare const HTTP_BODY_MAXLENGTH: number
4713
+ declare const HTTP_ACCEPT: 8
4714
+ declare const HTTP_BODY_MAXLENGTH: 2
4678
4715
  declare const HTTP_BODY_TRUNCATED: number
4679
4716
  /** Add an extra custom HTTP header to the request. The first string is the name of the parameter to change, e.g. "Pragma", and the second string is the value, e.g. "no-cache". Up to 8 custom headers may be configured per request. Note that certain headers, such as the default headers, are blocked for security reasons. */
4680
- declare const HTTP_CUSTOM_HEADER: number
4717
+ declare const HTTP_CUSTOM_HEADER: 5
4681
4718
  /** Report extended error information through http_response event. */
4682
- declare const HTTP_EXTENDED_ERROR: number
4683
- declare const HTTP_METHOD: number
4684
- declare const HTTP_MIMETYPE: number
4719
+ declare const HTTP_EXTENDED_ERROR: 9
4720
+ declare const HTTP_METHOD: 0
4721
+ declare const HTTP_MIMETYPE: 1
4685
4722
  /**
4686
4723
  * Allows enabling/disabling of the "Pragma: no-cache" header.
4687
4724
  * Usage: [HTTP_PRAGMA_NO_CACHE, integer SendHeader]. When SendHeader is TRUE, the "Pragma: no-cache" header is sent by the script. This matches the default behavior. When SendHeader is FALSE, no "Pragma" header is sent by the script.
4688
4725
  */
4689
- declare const HTTP_PRAGMA_NO_CACHE: number
4726
+ declare const HTTP_PRAGMA_NO_CACHE: 6
4690
4727
  /** Provide a string value to be included in the HTTPUser-Agent header value. This is appended to the default value. */
4691
- declare const HTTP_USER_AGENT: number
4692
- declare const HTTP_VERBOSE_THROTTLE: number
4693
- declare const HTTP_VERIFY_CERT: number
4728
+ declare const HTTP_USER_AGENT: 7
4729
+ declare const HTTP_VERBOSE_THROTTLE: 4
4730
+ declare const HTTP_VERIFY_CERT: 3
4694
4731
  declare const IMG_USE_BAKED_AUX1: UUID
4695
4732
  declare const IMG_USE_BAKED_AUX2: UUID
4696
4733
  declare const IMG_USE_BAKED_AUX3: UUID
@@ -4842,137 +4879,137 @@ declare const NULL_KEY: UUID
4842
4879
  * 10 when the avatar has a premium plus account,
4843
4880
  * or -1 if the object is not an avatar.
4844
4881
  */
4845
- declare const OBJECT_ACCOUNT_LEVEL: number
4882
+ declare const OBJECT_ACCOUNT_LEVEL: 41
4846
4883
  /** This is a flag used with llGetObjectDetails to get the number of associated animated objects */
4847
- declare const OBJECT_ANIMATED_COUNT: number
4884
+ declare const OBJECT_ANIMATED_COUNT: 39
4848
4885
  /** This is a flag used with llGetObjectDetails to get the number of additional animated object attachments allowed. */
4849
- declare const OBJECT_ANIMATED_SLOTS_AVAILABLE: number
4886
+ declare const OBJECT_ANIMATED_SLOTS_AVAILABLE: 40
4850
4887
  /**
4851
4888
  * Gets the attachment point to which the object is attached.
4852
4889
  * Returns 0 if the object is not an attachment (or is an avatar, etc).
4853
4890
  */
4854
- declare const OBJECT_ATTACHED_POINT: number
4891
+ declare const OBJECT_ATTACHED_POINT: 19
4855
4892
  /**
4856
4893
  * Returns the number of attachment slots available.
4857
4894
  * Returns 0 if the object is not an avatar or none are available.
4858
4895
  */
4859
- declare const OBJECT_ATTACHED_SLOTS_AVAILABLE: number
4896
+ declare const OBJECT_ATTACHED_SLOTS_AVAILABLE: 35
4860
4897
  /**
4861
4898
  * This is a flag used with llGetObjectDetails to get the body type of the avatar, based on shape data.
4862
4899
  * If no data is available, -1.0 is returned.
4863
4900
  * This is normally between 0 and 1.0, with 0.5 and larger considered 'male'
4864
4901
  */
4865
- declare const OBJECT_BODY_SHAPE_TYPE: number
4902
+ declare const OBJECT_BODY_SHAPE_TYPE: 26
4866
4903
  /** Units in seconds */
4867
- declare const OBJECT_CHARACTER_TIME: number
4904
+ declare const OBJECT_CHARACTER_TIME: 17
4868
4905
  /**
4869
4906
  * This is a flag used with llGetObjectDetails to get the click action.
4870
4907
  * The default is 0
4871
4908
  */
4872
- declare const OBJECT_CLICK_ACTION: number
4909
+ declare const OBJECT_CLICK_ACTION: 28
4873
4910
  /** This is a flag used with llGetObjectDetails to get the time this object was created */
4874
- declare const OBJECT_CREATION_TIME: number
4911
+ declare const OBJECT_CREATION_TIME: 36
4875
4912
  /** Gets the object's creator key. If id is an avatar, a NULL_KEY is returned. */
4876
- declare const OBJECT_CREATOR: number
4913
+ declare const OBJECT_CREATOR: 8
4877
4914
  /** Gets the damage value assigned to this object. */
4878
- declare const OBJECT_DAMAGE: number
4915
+ declare const OBJECT_DAMAGE: 51
4879
4916
  /** Gets the damage type, if any, assigned to this object. */
4880
- declare const OBJECT_DAMAGE_TYPE: number
4917
+ declare const OBJECT_DAMAGE_TYPE: 52
4881
4918
  /** Gets the object's description. If id is an avatar, an empty string is returned. */
4882
- declare const OBJECT_DESC: number
4919
+ declare const OBJECT_DESC: 2
4883
4920
  /** Gets the prims's group key. If id is an avatar, a NULL_KEY is returned. */
4884
- declare const OBJECT_GROUP: number
4921
+ declare const OBJECT_GROUP: 7
4885
4922
  /** Gets the agent's current group role tag. If id is an object, an empty is returned. */
4886
- declare const OBJECT_GROUP_TAG: number
4923
+ declare const OBJECT_GROUP_TAG: 33
4887
4924
  /** Gets current health value for the object. */
4888
- declare const OBJECT_HEALTH: number
4925
+ declare const OBJECT_HEALTH: 50
4889
4926
  /**
4890
4927
  * This is a flag used with llGetObjectDetails to get hover height of the avatar
4891
4928
  * If no data is available, 0.0 is returned.
4892
4929
  */
4893
- declare const OBJECT_HOVER_HEIGHT: number
4930
+ declare const OBJECT_HOVER_HEIGHT: 25
4894
4931
  /** Gets the object's last owner ID. */
4895
- declare const OBJECT_LAST_OWNER_ID: number
4932
+ declare const OBJECT_LAST_OWNER_ID: 27
4896
4933
  /** Gets the object's link number or 0 if unlinked. */
4897
- declare const OBJECT_LINK_NUMBER: number
4934
+ declare const OBJECT_LINK_NUMBER: 46
4898
4935
  /** Get the object's mass */
4899
- declare const OBJECT_MASS: number
4936
+ declare const OBJECT_MASS: 43
4900
4937
  /** Get an object's material setting. */
4901
- declare const OBJECT_MATERIAL: number
4938
+ declare const OBJECT_MATERIAL: 42
4902
4939
  /** Gets the object's name. */
4903
- declare const OBJECT_NAME: number
4940
+ declare const OBJECT_NAME: 1
4904
4941
  /** Gets an object's angular velocity. */
4905
- declare const OBJECT_OMEGA: number
4942
+ declare const OBJECT_OMEGA: 29
4906
4943
  /** Gets an object's owner's key. If id is group owned, a NULL_KEY is returned. */
4907
- declare const OBJECT_OWNER: number
4944
+ declare const OBJECT_OWNER: 6
4908
4945
  /** Returns the pathfinding setting of any object in the region. It returns an integer matching one of the OPT_* constants. */
4909
- declare const OBJECT_PATHFINDING_TYPE: number
4946
+ declare const OBJECT_PATHFINDING_TYPE: 20
4910
4947
  /** Gets the objects permissions */
4911
- declare const OBJECT_PERMS: number
4948
+ declare const OBJECT_PERMS: 53
4912
4949
  /** Gets the object's permissions including any inventory. */
4913
- declare const OBJECT_PERMS_COMBINED: number
4950
+ declare const OBJECT_PERMS_COMBINED: 54
4914
4951
  /**
4915
4952
  * Returns boolean, detailing if phantom is enabled or disabled on the object.
4916
4953
  * If id is an avatar or attachment, 0 is returned.
4917
4954
  */
4918
- declare const OBJECT_PHANTOM: number
4955
+ declare const OBJECT_PHANTOM: 22
4919
4956
  /**
4920
4957
  * Returns boolean, detailing if physics is enabled or disabled on the object.
4921
4958
  * If id is an avatar or attachment, 0 is returned.
4922
4959
  */
4923
- declare const OBJECT_PHYSICS: number
4924
- declare const OBJECT_PHYSICS_COST: number
4960
+ declare const OBJECT_PHYSICS: 21
4961
+ declare const OBJECT_PHYSICS_COST: 16
4925
4962
  /** Gets the object's position in region coordinates. */
4926
- declare const OBJECT_POS: number
4963
+ declare const OBJECT_POS: 3
4927
4964
  /** Gets the prim count of the object. The script and target object must be owned by the same owner */
4928
- declare const OBJECT_PRIM_COUNT: number
4929
- declare const OBJECT_PRIM_EQUIVALENCE: number
4965
+ declare const OBJECT_PRIM_COUNT: 30
4966
+ declare const OBJECT_PRIM_EQUIVALENCE: 13
4930
4967
  /**
4931
4968
  * This is a flag used with llGetObjectDetails to get the Avatar_Rendering_Cost of an avatar, based on values reported by nearby viewers.
4932
4969
  * If no data is available, -1 is returned.
4933
4970
  * The maximum render weight stored by the simulator is 500000. When called against an object, 0 is returned.
4934
4971
  */
4935
- declare const OBJECT_RENDER_WEIGHT: number
4972
+ declare const OBJECT_RENDER_WEIGHT: 24
4936
4973
  declare const OBJECT_RETURN_PARCEL: number
4937
4974
  declare const OBJECT_RETURN_PARCEL_OWNER: number
4938
4975
  declare const OBJECT_RETURN_REGION: number
4939
- declare const OBJECT_REZZER_KEY: number
4976
+ declare const OBJECT_REZZER_KEY: 32
4940
4977
  /** Get the time when an object was rezzed. */
4941
- declare const OBJECT_REZ_TIME: number
4978
+ declare const OBJECT_REZ_TIME: 45
4942
4979
  /**
4943
4980
  * Gets the id of the root prim of the object requested.
4944
4981
  * If id is an avatar, return the id of the root prim of the linkset the avatar is sitting on (or the avatar's own id if the avatar is not sitting on an object within the region).
4945
4982
  */
4946
- declare const OBJECT_ROOT: number
4983
+ declare const OBJECT_ROOT: 18
4947
4984
  /** Gets the object's rotation. */
4948
- declare const OBJECT_ROT: number
4949
- declare const OBJECT_RUNNING_SCRIPT_COUNT: number
4985
+ declare const OBJECT_ROT: 4
4986
+ declare const OBJECT_RUNNING_SCRIPT_COUNT: 9
4950
4987
  /** Gets the object's size. */
4951
- declare const OBJECT_SCALE: number
4952
- declare const OBJECT_SCRIPT_MEMORY: number
4953
- declare const OBJECT_SCRIPT_TIME: number
4988
+ declare const OBJECT_SCALE: 47
4989
+ declare const OBJECT_SCRIPT_MEMORY: 11
4990
+ declare const OBJECT_SCRIPT_TIME: 12
4954
4991
  /** This is a flag used with llGetObjectDetails to get the number of avatars selecting any part of the object */
4955
- declare const OBJECT_SELECT_COUNT: number
4956
- declare const OBJECT_SERVER_COST: number
4992
+ declare const OBJECT_SELECT_COUNT: 37
4993
+ declare const OBJECT_SERVER_COST: 14
4957
4994
  /** This is a flag used with llGetObjectDetails to get the number of avatars sitting on the object */
4958
- declare const OBJECT_SIT_COUNT: number
4959
- declare const OBJECT_STREAMING_COST: number
4995
+ declare const OBJECT_SIT_COUNT: 38
4996
+ declare const OBJECT_STREAMING_COST: 15
4960
4997
  /** Returns boolean, indicating if object is a temp attachment. */
4961
- declare const OBJECT_TEMP_ATTACHED: number
4998
+ declare const OBJECT_TEMP_ATTACHED: 34
4962
4999
  /** Returns boolean, detailing if temporary is enabled or disabled on the object. */
4963
- declare const OBJECT_TEMP_ON_REZ: number
5000
+ declare const OBJECT_TEMP_ON_REZ: 23
4964
5001
  /** Gets an objects hover text. */
4965
- declare const OBJECT_TEXT: number
5002
+ declare const OBJECT_TEXT: 44
4966
5003
  /** Gets the alpha of an objects hover text. */
4967
- declare const OBJECT_TEXT_ALPHA: number
5004
+ declare const OBJECT_TEXT_ALPHA: 49
4968
5005
  /** Gets the color of an objects hover text. */
4969
- declare const OBJECT_TEXT_COLOR: number
5006
+ declare const OBJECT_TEXT_COLOR: 48
4970
5007
  /** Gets the total inventory count of the object. The script and target object must be owned by the same owner */
4971
- declare const OBJECT_TOTAL_INVENTORY_COUNT: number
4972
- declare const OBJECT_TOTAL_SCRIPT_COUNT: number
5008
+ declare const OBJECT_TOTAL_INVENTORY_COUNT: 31
5009
+ declare const OBJECT_TOTAL_SCRIPT_COUNT: 10
4973
5010
  declare const OBJECT_UNKNOWN_DETAIL: number
4974
5011
  /** Gets the object's velocity. */
4975
- declare const OBJECT_VELOCITY: number
5012
+ declare const OBJECT_VELOCITY: 5
4976
5013
  /** Returned for avatars. */
4977
5014
  declare const OPT_AVATAR: number
4978
5015
  /** Returned for pathfinding characters. */
@@ -5004,33 +5041,33 @@ declare const PARCEL_COUNT_SELECTED: number
5004
5041
  declare const PARCEL_COUNT_TEMP: number
5005
5042
  declare const PARCEL_COUNT_TOTAL: number
5006
5043
  /** The parcel's area, in square meters. (5 chars.). */
5007
- declare const PARCEL_DETAILS_AREA: number
5044
+ declare const PARCEL_DETAILS_AREA: 4
5008
5045
  /** The description of the parcel. (127 chars). */
5009
- declare const PARCEL_DETAILS_DESC: number
5046
+ declare const PARCEL_DETAILS_DESC: 1
5010
5047
  /** Flags set on the parcel */
5011
- declare const PARCEL_DETAILS_FLAGS: number
5048
+ declare const PARCEL_DETAILS_FLAGS: 12
5012
5049
  /** The parcel group's key. (36 chars.). */
5013
- declare const PARCEL_DETAILS_GROUP: number
5050
+ declare const PARCEL_DETAILS_GROUP: 3
5014
5051
  /** The parcel's key. (36 chars.). */
5015
- declare const PARCEL_DETAILS_ID: number
5052
+ declare const PARCEL_DETAILS_ID: 5
5016
5053
  /** Lookat vector set for teleport routing. */
5017
- declare const PARCEL_DETAILS_LANDING_LOOKAT: number
5054
+ declare const PARCEL_DETAILS_LANDING_LOOKAT: 10
5018
5055
  /** The parcel's landing point, if any. */
5019
- declare const PARCEL_DETAILS_LANDING_POINT: number
5056
+ declare const PARCEL_DETAILS_LANDING_POINT: 9
5020
5057
  /** The name of the parcel. (63 chars.). */
5021
- declare const PARCEL_DETAILS_NAME: number
5058
+ declare const PARCEL_DETAILS_NAME: 0
5022
5059
  /** The parcel owner's key. (36 chars.). */
5023
- declare const PARCEL_DETAILS_OWNER: number
5060
+ declare const PARCEL_DETAILS_OWNER: 2
5024
5061
  /** The parcel's prim capacity. */
5025
- declare const PARCEL_DETAILS_PRIM_CAPACITY: number
5062
+ declare const PARCEL_DETAILS_PRIM_CAPACITY: 7
5026
5063
  /** The number of prims used on this parcel. */
5027
- declare const PARCEL_DETAILS_PRIM_USED: number
5064
+ declare const PARCEL_DETAILS_PRIM_USED: 8
5028
5065
  /** There are restrictions on this parcel that may impact script execution. */
5029
- declare const PARCEL_DETAILS_SCRIPT_DANGER: number
5066
+ declare const PARCEL_DETAILS_SCRIPT_DANGER: 13
5030
5067
  /** The parcel's avatar visibility setting. (1 char.). */
5031
- declare const PARCEL_DETAILS_SEE_AVATARS: number
5068
+ declare const PARCEL_DETAILS_SEE_AVATARS: 6
5032
5069
  /** Parcel's teleport routing setting. */
5033
- declare const PARCEL_DETAILS_TP_ROUTING: number
5070
+ declare const PARCEL_DETAILS_TP_ROUTING: 11
5034
5071
  declare const PARCEL_FLAG_ALLOW_ALL_OBJECT_ENTRY: number
5035
5072
  declare const PARCEL_FLAG_ALLOW_CREATE_GROUP_OBJECTS: number
5036
5073
  declare const PARCEL_FLAG_ALLOW_CREATE_OBJECTS: number
@@ -5140,14 +5177,14 @@ declare const PI_BY_TWO: number
5140
5177
  * Prim parameter for restricting manual standing for seated avatars in an experience.
5141
5178
  * Ignored if the avatar was not seated via a call to llSitOnLink.
5142
5179
  */
5143
- declare const PRIM_ALLOW_UNSIT: number
5180
+ declare const PRIM_ALLOW_UNSIT: 39
5144
5181
  /**
5145
5182
  * Prim parameter for materials using integer face, integer alpha_mode, integer alpha_cutoff.
5146
5183
  * Defines how the alpha channel of the diffuse texture should be rendered.
5147
5184
  * Valid options for alpha_mode are PRIM_ALPHA_MODE_BLEND, _NONE, _MASK, and _EMISSIVE.
5148
5185
  * alpha_cutoff is used only for PRIM_ALPHA_MODE_MASK.
5149
5186
  */
5150
- declare const PRIM_ALPHA_MODE: number
5187
+ declare const PRIM_ALPHA_MODE: 38
5151
5188
  /**
5152
5189
  * Prim parameter setting for PRIM_ALPHA_MODE.
5153
5190
  * Indicates that the diffuse texture's alpha channel should be rendered as alpha-blended.
@@ -5179,7 +5216,7 @@ declare const PRIM_BUMP_DISKS: number
5179
5216
  declare const PRIM_BUMP_GRAVEL: number
5180
5217
  declare const PRIM_BUMP_LARGETILE: number
5181
5218
  declare const PRIM_BUMP_NONE: number
5182
- declare const PRIM_BUMP_SHINY: number
5219
+ declare const PRIM_BUMP_SHINY: 19
5183
5220
  declare const PRIM_BUMP_SIDING: number
5184
5221
  declare const PRIM_BUMP_STONE: number
5185
5222
  declare const PRIM_BUMP_STUCCO: number
@@ -5188,26 +5225,26 @@ declare const PRIM_BUMP_TILE: number
5188
5225
  declare const PRIM_BUMP_WEAVE: number
5189
5226
  declare const PRIM_BUMP_WOOD: number
5190
5227
  /** @deprecated Not implemented. */
5191
- declare const PRIM_CAST_SHADOWS: number
5228
+ declare const PRIM_CAST_SHADOWS: 24
5192
5229
  /** [PRIM_CLICK_ACTION, integer CLICK_ACTION_*] */
5193
- declare const PRIM_CLICK_ACTION: number
5230
+ declare const PRIM_CLICK_ACTION: 43
5194
5231
  /** Collision sound uuid and volume for this prim */
5195
5232
  declare const PRIM_COLLISION_SOUND: number
5196
5233
  /** [PRIM_COLOR, integer face, vector color, float alpha]integer face – face number or ALL_SIDESvector color – color in RGB <R, G, B> (<0.0, 0.0, 0.0> = black, <1.0, 1.0, 1.0> = white)float alpha – from 0.0 (clear) to 1.0 (solid) (0.0 <= alpha <= 1.0) */
5197
- declare const PRIM_COLOR: number
5234
+ declare const PRIM_COLOR: 18
5198
5235
  /** Damage and damage type assigned to this prim. */
5199
- declare const PRIM_DAMAGE: number
5236
+ declare const PRIM_DAMAGE: 51
5200
5237
  /** [PRIM_DESC, string description] */
5201
- declare const PRIM_DESC: number
5238
+ declare const PRIM_DESC: 28
5202
5239
  /** [ PRIM_FLEXIBLE, integer boolean, integer softness, float gravity, float friction, float wind, float tension, vector force ]integer boolean – TRUE enables, FALSE disablesinteger softness – ranges from 0 to 3float gravity – ranges from -10.0 to 10.0float friction – ranges from 0.0 to 10.0float wind – ranges from 0.0 to 10.0float tension – ranges from 0.0 to 10.0vector force */
5203
- declare const PRIM_FLEXIBLE: number
5240
+ declare const PRIM_FLEXIBLE: 21
5204
5241
  /** [ PRIM_FULLBRIGHT, integer face, integer boolean ] */
5205
- declare const PRIM_FULLBRIGHT: number
5242
+ declare const PRIM_FULLBRIGHT: 20
5206
5243
  /**
5207
5244
  * PRIM_GLOW is used to get or set the glow status of the face.
5208
5245
  * [ PRIM_GLOW, integer face, float intensity ]
5209
5246
  */
5210
- declare const PRIM_GLOW: number
5247
+ declare const PRIM_GLOW: 25
5211
5248
  /** Prim parameter setting for PRIM_GLTF_BASE_COLOR alpha mode "BLEND". */
5212
5249
  declare const PRIM_GLTF_ALPHA_MODE_BLEND: number
5213
5250
  /** Prim parameter setting for PRIM_GLTF_BASE_COLOR alpha mode "MASK". */
@@ -5219,23 +5256,23 @@ declare const PRIM_GLTF_ALPHA_MODE_OPAQUE: number
5219
5256
  * Valid options for alpha_mode are PRIM_ALPHA_MODE_BLEND, _NONE, and _MASK.
5220
5257
  * alpha_cutoff is used only for PRIM_ALPHA_MODE_MASK.
5221
5258
  */
5222
- declare const PRIM_GLTF_BASE_COLOR: number
5259
+ declare const PRIM_GLTF_BASE_COLOR: 48
5223
5260
  /** Prim parameter for GLTF materials using integer face, string texture, vector repeats, vector offsets, float rotation_in_radians, vector color */
5224
- declare const PRIM_GLTF_EMISSIVE: number
5261
+ declare const PRIM_GLTF_EMISSIVE: 46
5225
5262
  /** Prim parameter for GLTF materials using integer face, string texture, vector repeats, vector offsets, float rotation_in_radians, float metallic_factor, float roughness_factor */
5226
- declare const PRIM_GLTF_METALLIC_ROUGHNESS: number
5263
+ declare const PRIM_GLTF_METALLIC_ROUGHNESS: 47
5227
5264
  /** Prim parameter for GLTF materials using integer face, string texture, vector repeats, vector offsets, float rotation_in_radians */
5228
- declare const PRIM_GLTF_NORMAL: number
5265
+ declare const PRIM_GLTF_NORMAL: 45
5229
5266
  /** Health value for this prim */
5230
- declare const PRIM_HEALTH: number
5267
+ declare const PRIM_HEALTH: 52
5231
5268
  declare const PRIM_HOLE_CIRCLE: number
5232
5269
  declare const PRIM_HOLE_DEFAULT: number
5233
5270
  declare const PRIM_HOLE_SQUARE: number
5234
5271
  declare const PRIM_HOLE_TRIANGLE: number
5235
5272
  /** [ PRIM_LINK_TARGET, integer link_target ]Used to get or set multiple links with a single PrimParameters call. */
5236
- declare const PRIM_LINK_TARGET: number
5273
+ declare const PRIM_LINK_TARGET: 34
5237
5274
  /** [ PRIM_MATERIAL, integer PRIM_MATERIAL_* ] */
5238
- declare const PRIM_MATERIAL: number
5275
+ declare const PRIM_MATERIAL: 2
5239
5276
  declare const PRIM_MATERIAL_DENSITY: number
5240
5277
  declare const PRIM_MATERIAL_FLESH: number
5241
5278
  declare const PRIM_MATERIAL_FRICTION: number
@@ -5293,15 +5330,15 @@ declare const PRIM_MEDIA_WHITELIST_ENABLE: number
5293
5330
  /** Integer. Gets/Sets the width of the media in pixels. */
5294
5331
  declare const PRIM_MEDIA_WIDTH_PIXELS: number
5295
5332
  /** [ PRIM_NAME, string name ] */
5296
- declare const PRIM_NAME: number
5333
+ declare const PRIM_NAME: 27
5297
5334
  /** Prim parameter for materials using integer face, string texture, vector repeats, vector offsets, float rotation_in_radians */
5298
- declare const PRIM_NORMAL: number
5335
+ declare const PRIM_NORMAL: 37
5299
5336
  /** [ PRIM_OMEGA, vector axis, float spinrate, float gain ]vector axis – arbitrary axis to rotate the object aroundfloat spinrate – rate of rotation in radians per secondfloat gain – also modulates the final spinrate and disables the rotation behavior if zero */
5300
- declare const PRIM_OMEGA: number
5337
+ declare const PRIM_OMEGA: 32
5301
5338
  /** [ PRIM_PHANTOM, integer boolean ] */
5302
- declare const PRIM_PHANTOM: number
5339
+ declare const PRIM_PHANTOM: 5
5303
5340
  /** [ PRIM_PHYSICS, integer boolean ] */
5304
- declare const PRIM_PHYSICS: number
5341
+ declare const PRIM_PHYSICS: 3
5305
5342
  /** Use the convex hull of the prim shape for physics (this is the default for mesh objects). */
5306
5343
  declare const PRIM_PHYSICS_SHAPE_CONVEX: number
5307
5344
  /** Ignore this prim in the physics shape. NB: This cannot be applied to the root prim. */
@@ -5309,17 +5346,17 @@ declare const PRIM_PHYSICS_SHAPE_NONE: number
5309
5346
  /** Use the normal prim shape for physics (this is the default for all non-mesh objects). */
5310
5347
  declare const PRIM_PHYSICS_SHAPE_PRIM: number
5311
5348
  /** Allows you to set the physics shape type of a prim via lsl. Permitted values are:PRIM_PHYSICS_SHAPE_NONE, PRIM_PHYSICS_SHAPE_PRIM, PRIM_PHYSICS_SHAPE_CONVEX */
5312
- declare const PRIM_PHYSICS_SHAPE_TYPE: number
5349
+ declare const PRIM_PHYSICS_SHAPE_TYPE: 30
5313
5350
  /** [ PRIM_POINT_LIGHT, integer boolean, vector linear_color, float intensity, float radius, float falloff ]integer boolean – TRUE enables, FALSE disablesvector linear_color – linear color in RGB <R, G, B&> (<0.0, 0.0, 0.0> = black, <1.0, 1.0, 1.0> = white)float intensity – ranges from 0.0 to 1.0float radius – ranges from 0.1 to 20.0float falloff – ranges from 0.01 to 2.0 */
5314
- declare const PRIM_POINT_LIGHT: number
5351
+ declare const PRIM_POINT_LIGHT: 23
5315
5352
  /** [ PRIM_POSITION, vector position ]vector position – position in region or local coordinates depending upon the situation */
5316
- declare const PRIM_POSITION: number
5353
+ declare const PRIM_POSITION: 6
5317
5354
  /** [ PRIM_POS_LOCAL, vector position ]vector position - position in local coordinates */
5318
- declare const PRIM_POS_LOCAL: number
5355
+ declare const PRIM_POS_LOCAL: 33
5319
5356
  /** [ PRIM_PROJECTOR, string texture, float fov, float focus, float ambiance ] */
5320
- declare const PRIM_PROJECTOR: number
5357
+ declare const PRIM_PROJECTOR: 42
5321
5358
  /** Allows you to configure the object as a custom-placed reflection probe, for image-based lighting (IBL). Only objects in the influence volume of the reflection probe object are affected. */
5322
- declare const PRIM_REFLECTION_PROBE: number
5359
+ declare const PRIM_REFLECTION_PROBE: 44
5323
5360
  /** This is a flag option used with llGetPrimitiveParams and related functions when the parameter is PRIM_REFLECTION_PROBE. When set, the reflection probe is a box. When unset, the reflection probe is a sphere. */
5324
5361
  declare const PRIM_REFLECTION_PROBE_BOX: number
5325
5362
  /** This is a flag option used with llGetPrimitiveParams and related functions when the parameter is PRIM_REFLECTION_PROBE. When set, the reflection probe includes avatars in IBL effects. When unset, the reflection probe excludes avatars. */
@@ -5327,16 +5364,16 @@ declare const PRIM_REFLECTION_PROBE_DYNAMIC: number
5327
5364
  /** This is a flag option used with llGetPrimitiveParams and related functions when the parameter is PRIM_REFLECTION_PROBE. When set, the reflection probe acts as a mirror. */
5328
5365
  declare const PRIM_REFLECTION_PROBE_MIRROR: number
5329
5366
  /** [ PRIM_RENDER_MATERIAL, integer face, string material ] */
5330
- declare const PRIM_RENDER_MATERIAL: number
5367
+ declare const PRIM_RENDER_MATERIAL: 49
5331
5368
  /** [ PRIM_ROT_LOCAL, rotation global_rot ] */
5332
- declare const PRIM_ROTATION: number
5369
+ declare const PRIM_ROTATION: 8
5333
5370
  /** [ PRIM_ROT_LOCAL, rotation local_rot ] */
5334
- declare const PRIM_ROT_LOCAL: number
5371
+ declare const PRIM_ROT_LOCAL: 29
5335
5372
  /**
5336
5373
  * Prim parameter for restricting manual sitting on this prim.
5337
5374
  * Sitting must be initiated via call to llSitOnLink.
5338
5375
  */
5339
- declare const PRIM_SCRIPTED_SIT_ONLY: number
5376
+ declare const PRIM_SCRIPTED_SIT_ONLY: 40
5340
5377
  /** Mesh is animated. */
5341
5378
  declare const PRIM_SCULPT_FLAG_ANIMESH: number
5342
5379
  /** Render inside out (inverts the normals). */
@@ -5353,33 +5390,33 @@ declare const PRIM_SHINY_HIGH: number
5353
5390
  declare const PRIM_SHINY_LOW: number
5354
5391
  declare const PRIM_SHINY_MEDIUM: number
5355
5392
  declare const PRIM_SHINY_NONE: number
5356
- declare const PRIM_SIT_FLAGS: number
5393
+ declare const PRIM_SIT_FLAGS: 50
5357
5394
  /** [ PRIM_SIT_TARGET, integer boolean, vector offset, rotation rot ] */
5358
- declare const PRIM_SIT_TARGET: number
5395
+ declare const PRIM_SIT_TARGET: 41
5359
5396
  /** [ PRIM_SIZE, vector size ] */
5360
- declare const PRIM_SIZE: number
5397
+ declare const PRIM_SIZE: 7
5361
5398
  /** [ PRIM_SLICE, vector slice ] */
5362
- declare const PRIM_SLICE: number
5399
+ declare const PRIM_SLICE: 35
5363
5400
  /** Prim parameter for materials using integer face, string texture, vector repeats, vector offsets, float rotation_in_radians, vector color, integer glossy, integer environment */
5364
- declare const PRIM_SPECULAR: number
5365
- declare const PRIM_TEMP_ON_REZ: number
5401
+ declare const PRIM_SPECULAR: 36
5402
+ declare const PRIM_TEMP_ON_REZ: 4
5366
5403
  /** [ PRIM_TEXGEN, integer face, PRIM_TEXGEN_* ] */
5367
- declare const PRIM_TEXGEN: number
5404
+ declare const PRIM_TEXGEN: 22
5368
5405
  declare const PRIM_TEXGEN_DEFAULT: number
5369
5406
  declare const PRIM_TEXGEN_PLANAR: number
5370
5407
  /** [ PRIM_TEXT, string text, vector color, float alpha ] */
5371
- declare const PRIM_TEXT: number
5408
+ declare const PRIM_TEXT: 26
5372
5409
  /** [ PRIM_TEXTURE, integer face, string texture, vector repeats, vector offsets, float rotation_in_radians ] */
5373
- declare const PRIM_TEXTURE: number
5374
- declare const PRIM_TYPE: number
5375
- declare const PRIM_TYPE_BOX: number
5376
- declare const PRIM_TYPE_CYLINDER: number
5377
- declare const PRIM_TYPE_PRISM: number
5378
- declare const PRIM_TYPE_RING: number
5379
- declare const PRIM_TYPE_SCULPT: number
5380
- declare const PRIM_TYPE_SPHERE: number
5381
- declare const PRIM_TYPE_TORUS: number
5382
- declare const PRIM_TYPE_TUBE: number
5410
+ declare const PRIM_TEXTURE: 17
5411
+ declare const PRIM_TYPE: 9
5412
+ declare const PRIM_TYPE_BOX: 0
5413
+ declare const PRIM_TYPE_CYLINDER: 1
5414
+ declare const PRIM_TYPE_PRISM: 2
5415
+ declare const PRIM_TYPE_RING: 6
5416
+ declare const PRIM_TYPE_SCULPT: 7
5417
+ declare const PRIM_TYPE_SPHERE: 3
5418
+ declare const PRIM_TYPE_TORUS: 4
5419
+ declare const PRIM_TYPE_TUBE: 5
5383
5420
  /** Disables profiling */
5384
5421
  declare const PROFILE_NONE: number
5385
5422
  /** Enables memory profiling */
@@ -5392,21 +5429,21 @@ declare const PSYS_PART_BF_ONE_MINUS_SOURCE_COLOR: number
5392
5429
  declare const PSYS_PART_BF_SOURCE_ALPHA: number
5393
5430
  declare const PSYS_PART_BF_SOURCE_COLOR: number
5394
5431
  declare const PSYS_PART_BF_ZERO: number
5395
- declare const PSYS_PART_BLEND_FUNC_DEST: number
5396
- declare const PSYS_PART_BLEND_FUNC_SOURCE: number
5432
+ declare const PSYS_PART_BLEND_FUNC_DEST: 25
5433
+ declare const PSYS_PART_BLEND_FUNC_SOURCE: 24
5397
5434
  /** Particles bounce off of a plane at the objects Z height. */
5398
5435
  declare const PSYS_PART_BOUNCE_MASK: number
5399
5436
  /** The particle glows. */
5400
5437
  declare const PSYS_PART_EMISSIVE_MASK: number
5401
5438
  /** A float which determines the ending alpha of the object. */
5402
- declare const PSYS_PART_END_ALPHA: number
5439
+ declare const PSYS_PART_END_ALPHA: 4
5403
5440
  /** A vector <r, g, b> which determines the ending color of the object. */
5404
- declare const PSYS_PART_END_COLOR: number
5405
- declare const PSYS_PART_END_GLOW: number
5441
+ declare const PSYS_PART_END_COLOR: 3
5442
+ declare const PSYS_PART_END_GLOW: 27
5406
5443
  /** A vector <sx, sy, z>, which is the ending size of the particle billboard in meters (z is ignored). */
5407
- declare const PSYS_PART_END_SCALE: number
5444
+ declare const PSYS_PART_END_SCALE: 6
5408
5445
  /** Each particle that is emitted by the particle system is simulated based on the following flags. To use multiple flags, bitwise or (|) them together. */
5409
- declare const PSYS_PART_FLAGS: number
5446
+ declare const PSYS_PART_FLAGS: 0
5410
5447
  /** The particle position is relative to the source objects position. */
5411
5448
  declare const PSYS_PART_FOLLOW_SRC_MASK: number
5412
5449
  /** The particle orientation is rotated so the vertical axis faces towards the particle velocity. */
@@ -5416,47 +5453,47 @@ declare const PSYS_PART_INTERP_COLOR_MASK: number
5416
5453
  /** Interpolate the particle scale from the start value to the end value. */
5417
5454
  declare const PSYS_PART_INTERP_SCALE_MASK: number
5418
5455
  /** Age in seconds of a particle at which it dies. */
5419
- declare const PSYS_PART_MAX_AGE: number
5456
+ declare const PSYS_PART_MAX_AGE: 7
5420
5457
  declare const PSYS_PART_RIBBON_MASK: number
5421
5458
  /** A float which determines the starting alpha of the object. */
5422
- declare const PSYS_PART_START_ALPHA: number
5459
+ declare const PSYS_PART_START_ALPHA: 2
5423
5460
  /** A vector <r, g, b> which determines the starting color of the object. */
5424
- declare const PSYS_PART_START_COLOR: number
5425
- declare const PSYS_PART_START_GLOW: number
5461
+ declare const PSYS_PART_START_COLOR: 1
5462
+ declare const PSYS_PART_START_GLOW: 26
5426
5463
  /** A vector <sx, sy, z>, which is the starting size of the particle billboard in meters (z is ignored). */
5427
- declare const PSYS_PART_START_SCALE: number
5464
+ declare const PSYS_PART_START_SCALE: 5
5428
5465
  declare const PSYS_PART_TARGET_LINEAR_MASK: number
5429
5466
  /** The particle heads towards the location of the target object as defined by PSYS_SRC_TARGET_KEY. */
5430
5467
  declare const PSYS_PART_TARGET_POS_MASK: number
5431
5468
  /** Particles have their velocity damped towards the wind velocity. */
5432
5469
  declare const PSYS_PART_WIND_MASK: number
5433
5470
  /** A vector <x, y, z> which is the acceleration to apply on particles. */
5434
- declare const PSYS_SRC_ACCEL: number
5471
+ declare const PSYS_SRC_ACCEL: 8
5435
5472
  /** Area in radians specifying where particles will NOT be created (for ANGLE patterns) */
5436
- declare const PSYS_SRC_ANGLE_BEGIN: number
5473
+ declare const PSYS_SRC_ANGLE_BEGIN: 22
5437
5474
  /** Area in radians filled with particles (for ANGLE patterns) (if lower than PSYS_SRC_ANGLE_BEGIN, acts as PSYS_SRC_ANGLE_BEGIN itself, and PSYS_SRC_ANGLE_BEGIN acts as PSYS_SRC_ANGLE_END). */
5438
- declare const PSYS_SRC_ANGLE_END: number
5475
+ declare const PSYS_SRC_ANGLE_END: 23
5439
5476
  /** How many particles to release in a burst. */
5440
- declare const PSYS_SRC_BURST_PART_COUNT: number
5477
+ declare const PSYS_SRC_BURST_PART_COUNT: 15
5441
5478
  /** What distance from the center of the object to create the particles. */
5442
- declare const PSYS_SRC_BURST_RADIUS: number
5479
+ declare const PSYS_SRC_BURST_RADIUS: 16
5443
5480
  /** How often to release a particle burst (float seconds). */
5444
- declare const PSYS_SRC_BURST_RATE: number
5481
+ declare const PSYS_SRC_BURST_RATE: 13
5445
5482
  /** Maximum speed that a particle should be moving. */
5446
- declare const PSYS_SRC_BURST_SPEED_MAX: number
5483
+ declare const PSYS_SRC_BURST_SPEED_MAX: 18
5447
5484
  /** Minimum speed that a particle should be moving. */
5448
- declare const PSYS_SRC_BURST_SPEED_MIN: number
5485
+ declare const PSYS_SRC_BURST_SPEED_MIN: 17
5449
5486
  /** Specifies the inner angle of the arc created by the PSYS_SRC_PATTERN_ANGLE or PSYS_SRC_PATTERN_ANGLE_CONE source pattern.The area specified will NOT have particles in it. */
5450
- declare const PSYS_SRC_INNERANGLE: number
5487
+ declare const PSYS_SRC_INNERANGLE: 10
5451
5488
  /** How long this particle system should last, 0.0 means forever. */
5452
- declare const PSYS_SRC_MAX_AGE: number
5489
+ declare const PSYS_SRC_MAX_AGE: 19
5453
5490
  declare const PSYS_SRC_OBJ_REL_MASK: number
5454
5491
  /** Sets the angular velocity to rotate the axis that SRC_PATTERN_ANGLE and SRC_PATTERN_ANGLE_CONE use. */
5455
- declare const PSYS_SRC_OMEGA: number
5492
+ declare const PSYS_SRC_OMEGA: 21
5456
5493
  /** Specifies the outer angle of the arc created by the PSYS_SRC_PATTERN_ANGLE or PSYS_SRC_PATTERN_ANGLE_CONE source pattern.The area between the outer and inner angle will be filled with particles. */
5457
- declare const PSYS_SRC_OUTERANGLE: number
5494
+ declare const PSYS_SRC_OUTERANGLE: 11
5458
5495
  /** The pattern which is used to generate particles.Use one of the following values: PSYS_SRC_PATTERN Values. */
5459
- declare const PSYS_SRC_PATTERN: number
5496
+ declare const PSYS_SRC_PATTERN: 9
5460
5497
  /** Shoot particles across a 2 dimensional area defined by the arc created from PSYS_SRC_OUTERANGLE. There will be an open area defined by PSYS_SRC_INNERANGLE within the larger arc. */
5461
5498
  declare const PSYS_SRC_PATTERN_ANGLE: number
5462
5499
  /** Shoot particles out in a 3 dimensional cone with an outer arc of PSYS_SRC_OUTERANGLE and an inner open area defined by PSYS_SRC_INNERANGLE. */
@@ -5467,9 +5504,9 @@ declare const PSYS_SRC_PATTERN_DROP: number
5467
5504
  /** Shoot particles out in all directions, using the burst parameters. */
5468
5505
  declare const PSYS_SRC_PATTERN_EXPLODE: number
5469
5506
  /** The key of a target object to move towards if PSYS_PART_TARGET_POS_MASK is enabled. */
5470
- declare const PSYS_SRC_TARGET_KEY: number
5507
+ declare const PSYS_SRC_TARGET_KEY: 20
5471
5508
  /** An asset name for the texture to use for the particles. */
5472
- declare const PSYS_SRC_TEXTURE: number
5509
+ declare const PSYS_SRC_TEXTURE: 12
5473
5510
  /** PUBLIC_CHANNEL is an integer constant that, when passed to llSay, llWhisper, or llShout as a channel parameter, will print text to the publicly heard chat channel. */
5474
5511
  declare const PUBLIC_CHANNEL: number
5475
5512
  /** Selects a random destination near the offset. */
@@ -5507,17 +5544,17 @@ declare const RAD_TO_DEG: number
5507
5544
  declare const RCERR_CAST_TIME_EXCEEDED: number
5508
5545
  declare const RCERR_SIM_PERF_LOW: number
5509
5546
  declare const RCERR_UNKNOWN: number
5510
- declare const RC_DATA_FLAGS: number
5511
- declare const RC_DETECT_PHANTOM: number
5547
+ declare const RC_DATA_FLAGS: 2
5548
+ declare const RC_DETECT_PHANTOM: 1
5512
5549
  declare const RC_GET_LINK_NUM: number
5513
5550
  declare const RC_GET_NORMAL: number
5514
5551
  declare const RC_GET_ROOT_KEY: number
5515
- declare const RC_MAX_HITS: number
5552
+ declare const RC_MAX_HITS: 3
5516
5553
  declare const RC_REJECT_AGENTS: number
5517
5554
  declare const RC_REJECT_LAND: number
5518
5555
  declare const RC_REJECT_NONPHYSICAL: number
5519
5556
  declare const RC_REJECT_PHYSICAL: number
5520
- declare const RC_REJECT_TYPES: number
5557
+ declare const RC_REJECT_TYPES: 0
5521
5558
  declare const REGION_FLAG_ALLOW_DAMAGE: number
5522
5559
  declare const REGION_FLAG_ALLOW_DIRECT_TELEPORT: number
5523
5560
  declare const REGION_FLAG_BLOCK_FLY: number
@@ -5541,13 +5578,13 @@ declare const RESTITUTION: number
5541
5578
  /** Play animation in reverse direction. */
5542
5579
  declare const REVERSE: number
5543
5580
  /** Acceleration forced applied to the rezzed object. [vector force, integer rel] */
5544
- declare const REZ_ACCEL: number
5581
+ declare const REZ_ACCEL: 5
5545
5582
  /** Damage applied by the object when it collides with an agent. [float damage] */
5546
- declare const REZ_DAMAGE: number
5583
+ declare const REZ_DAMAGE: 8
5547
5584
  /** Set the damage type applied when this object collides. [integer damage_type] */
5548
- declare const REZ_DAMAGE_TYPE: number
5585
+ declare const REZ_DAMAGE_TYPE: 12
5549
5586
  /** Rez flags to set on the newly rezzed object. [integer flags] */
5550
- declare const REZ_FLAGS: number
5587
+ declare const REZ_FLAGS: 1
5551
5588
  /** Prevent grabbing the object. */
5552
5589
  declare const REZ_FLAG_BLOCK_GRAB_OBJECT: number
5553
5590
  /** Object will die after its first collision. */
@@ -5565,24 +5602,24 @@ declare const REZ_FLAG_PHYSICAL: number
5565
5602
  /** Flag the object as temp on rez. */
5566
5603
  declare const REZ_FLAG_TEMP: number
5567
5604
  /** Prevent the object from rotating around some axes. [vector locks] */
5568
- declare const REZ_LOCK_AXES: number
5605
+ declare const REZ_LOCK_AXES: 11
5569
5606
  /** Omega applied to the rezzed object. [vector axis, integer rel, float spin, float gain] */
5570
- declare const REZ_OMEGA: number
5607
+ declare const REZ_OMEGA: 7
5571
5608
  /** Integer value to pass to the object as its rez parameter. [integer param] */
5572
- declare const REZ_PARAM: number
5609
+ declare const REZ_PARAM: 0
5573
5610
  /** A string value to pass to the object as its rez parameter. [string param] */
5574
- declare const REZ_PARAM_STRING: number
5611
+ declare const REZ_PARAM_STRING: 13
5575
5612
  /** Position at which to rez the new object. [vector position, integer rel, integer atroot] */
5576
- declare const REZ_POS: number
5613
+ declare const REZ_POS: 2
5577
5614
  /** Rotation applied to newly rezzed object. [rotation rot, integer rel] */
5578
- declare const REZ_ROT: number
5615
+ declare const REZ_ROT: 3
5579
5616
  /** Sound attached to the rezzed object. [string name, float volume, integer loop] */
5580
- declare const REZ_SOUND: number
5617
+ declare const REZ_SOUND: 9
5581
5618
  /** Sound played by the object on a collision. [string name, float volume] */
5582
- declare const REZ_SOUND_COLLIDE: number
5619
+ declare const REZ_SOUND_COLLIDE: 10
5583
5620
  declare const REZ_TORQUE: number
5584
5621
  /** Initial velocity of rezzed object. [vector vel, integer rel, integer inherit] */
5585
- declare const REZ_VEL: number
5622
+ declare const REZ_VEL: 4
5586
5623
  /** Animate texture rotation. */
5587
5624
  declare const ROTATE: number
5588
5625
  /** Animate the texture scale. */
@@ -6042,3 +6079,512 @@ declare const XP_ERROR_THROTTLED: number
6042
6079
  declare const XP_ERROR_UNKNOWN_ERROR: number
6043
6080
  declare const ZERO_ROTATION: Quaternion
6044
6081
  declare const ZERO_VECTOR: Vector
6082
+
6083
+ /** Maps each constant to the tuple of arguments that follow it. */
6084
+ interface PrimParamMap {
6085
+ [PRIM_NAME]: [name: string]
6086
+ [PRIM_DESC]: [description: string]
6087
+ [PRIM_SLICE]: [slice: Vector]
6088
+ [PRIM_PHYSICS_SHAPE_TYPE]: [type: number]
6089
+ [PRIM_MATERIAL]: [flag: number]
6090
+ [PRIM_PHYSICS]: [enabled: boolean]
6091
+ [PRIM_TEMP_ON_REZ]: [enabled: boolean]
6092
+ [PRIM_PHANTOM]: [enabled: boolean]
6093
+ [PRIM_POSITION]: [position: Vector]
6094
+ [PRIM_POS_LOCAL]: [position: Vector]
6095
+ [PRIM_ROTATION]: [rot: Quaternion]
6096
+ [PRIM_ROT_LOCAL]: [rot: Quaternion]
6097
+ [PRIM_SIZE]: [size: Vector]
6098
+ [PRIM_TEXTURE]: [
6099
+ face: number,
6100
+ texture: string,
6101
+ repeats: Vector,
6102
+ offsets: Vector,
6103
+ rotationInRadians: number,
6104
+ ]
6105
+ [PRIM_RENDER_MATERIAL]: [face: number, renderMaterial: string]
6106
+ [PRIM_TEXT]: [text: string, color: Vector, alpha: number]
6107
+ [PRIM_COLOR]: [face: number, color: Vector, alpha: number]
6108
+ [PRIM_BUMP_SHINY]: [face: number, shiny: number, bump: number]
6109
+ [PRIM_POINT_LIGHT]: [
6110
+ enabled: boolean,
6111
+ linearColor: Vector,
6112
+ intensity: number,
6113
+ radius: number,
6114
+ falloff: number,
6115
+ ]
6116
+ [PRIM_REFLECTION_PROBE]: [enabled: boolean, ambiance: number, clipDistance: number, flags: number]
6117
+ [PRIM_FULLBRIGHT]: [face: number, enabled: boolean]
6118
+ [PRIM_FLEXIBLE]: [
6119
+ enabled: boolean,
6120
+ softness: number,
6121
+ gravity: number,
6122
+ friction: number,
6123
+ wind: number,
6124
+ tension: number,
6125
+ force: Vector,
6126
+ ]
6127
+ [PRIM_TEXGEN]: [face: number, type: number]
6128
+ [PRIM_GLOW]: [face: number, intensity: number]
6129
+ [PRIM_OMEGA]: [axis: Vector, spinrate: number, gain: number]
6130
+ [PRIM_NORMAL]: [
6131
+ face: number,
6132
+ texture: string,
6133
+ repeats: Vector,
6134
+ offsets: Vector,
6135
+ rotationInRadians: number,
6136
+ ]
6137
+ [PRIM_SPECULAR]: [
6138
+ face: number,
6139
+ texture: string,
6140
+ repeats: Vector,
6141
+ offsets: Vector,
6142
+ rotationInRadians: number,
6143
+ color: Vector,
6144
+ glossiness: number,
6145
+ environment: number,
6146
+ ]
6147
+ [PRIM_ALPHA_MODE]: [face: number, alphaMode: number, maskCutoff: number]
6148
+ [PRIM_LINK_TARGET]: [linkTarget: number]
6149
+ [PRIM_CAST_SHADOWS]: [enabled: boolean]
6150
+ [PRIM_ALLOW_UNSIT]: [enabled: boolean]
6151
+ [PRIM_SCRIPTED_SIT_ONLY]: [enabled: boolean]
6152
+ [PRIM_SIT_TARGET]: [enabled: boolean, offset: Vector, rot: Quaternion]
6153
+ [PRIM_PROJECTOR]: [texture: string, fov: number, focus: number, ambiance: number]
6154
+ [PRIM_CLICK_ACTION]: [action: number]
6155
+ [PRIM_GLTF_BASE_COLOR]: [
6156
+ face: number,
6157
+ texture: string,
6158
+ repeats: Vector,
6159
+ offsets: Vector,
6160
+ rotationInRadians: number,
6161
+ linearColor: Vector,
6162
+ alpha: number,
6163
+ gltfAlphaMode: number,
6164
+ alphaMaskCutoff: number,
6165
+ doubleSided: number,
6166
+ ]
6167
+ [PRIM_GLTF_NORMAL]: [
6168
+ face: number,
6169
+ texture: string,
6170
+ repeats: Vector,
6171
+ offsets: Vector,
6172
+ rotationInRadians: number,
6173
+ ]
6174
+ [PRIM_GLTF_METALLIC_ROUGHNESS]: [
6175
+ face: number,
6176
+ texture: string,
6177
+ repeats: Vector,
6178
+ offsets: Vector,
6179
+ rotationInRadians: number,
6180
+ metallicFactor: number,
6181
+ roughnessFactor: number,
6182
+ ]
6183
+ [PRIM_GLTF_EMISSIVE]: [
6184
+ face: number,
6185
+ texture: string,
6186
+ repeats: Vector,
6187
+ offsets: Vector,
6188
+ rotationInRadians: number,
6189
+ linearEmissiveTint: Vector,
6190
+ ]
6191
+ [PRIM_SIT_FLAGS]: [flags: number]
6192
+ [PRIM_DAMAGE]: [damage: number, damageType: number]
6193
+ [PRIM_HEALTH]: [health: number]
6194
+ }
6195
+
6196
+ /** Maps each sub-dispatch constant to the tuple of arguments that follow it. */
6197
+ interface PrimTypeShapeMap {
6198
+ [PRIM_TYPE_BOX]: [
6199
+ holeShape: number,
6200
+ cut: Vector,
6201
+ hollow: number,
6202
+ twist: Vector,
6203
+ topSize: Vector,
6204
+ topShear: Vector,
6205
+ ]
6206
+ [PRIM_TYPE_CYLINDER]: [
6207
+ holeShape: number,
6208
+ cut: Vector,
6209
+ hollow: number,
6210
+ twist: Vector,
6211
+ topSize: Vector,
6212
+ topShear: Vector,
6213
+ ]
6214
+ [PRIM_TYPE_PRISM]: [
6215
+ holeShape: number,
6216
+ cut: Vector,
6217
+ hollow: number,
6218
+ twist: Vector,
6219
+ topSize: Vector,
6220
+ topShear: Vector,
6221
+ ]
6222
+ [PRIM_TYPE_SPHERE]: [
6223
+ holeShape: number,
6224
+ cut: Vector,
6225
+ hollow: number,
6226
+ twist: Vector,
6227
+ dimple: Vector,
6228
+ ]
6229
+ [PRIM_TYPE_TORUS]: [
6230
+ holeShape: number,
6231
+ cut: Vector,
6232
+ hollow: number,
6233
+ twist: Vector,
6234
+ holeSize: Vector,
6235
+ topShear: Vector,
6236
+ advancedCut: Vector,
6237
+ taper: Vector,
6238
+ revolutions: number,
6239
+ radiusOffset: number,
6240
+ skew: number,
6241
+ ]
6242
+ [PRIM_TYPE_TUBE]: [
6243
+ holeShape: number,
6244
+ cut: Vector,
6245
+ hollow: number,
6246
+ twist: Vector,
6247
+ holeSize: Vector,
6248
+ topShear: Vector,
6249
+ advancedCut: Vector,
6250
+ taper: Vector,
6251
+ revolutions: number,
6252
+ radiusOffset: number,
6253
+ skew: number,
6254
+ ]
6255
+ [PRIM_TYPE_RING]: [
6256
+ holeShape: number,
6257
+ cut: Vector,
6258
+ hollow: number,
6259
+ twist: Vector,
6260
+ holeSize: Vector,
6261
+ topShear: Vector,
6262
+ advancedCut: Vector,
6263
+ taper: Vector,
6264
+ revolutions: number,
6265
+ radiusOffset: number,
6266
+ skew: number,
6267
+ ]
6268
+ [PRIM_TYPE_SCULPT]: [map: string, type: number]
6269
+ }
6270
+
6271
+ /** Recursive type that validates a flat parameter list for PrimParam constants. */
6272
+ type ParsePrimParams<T extends readonly unknown[]> = T extends readonly []
6273
+ ? []
6274
+ : T extends readonly [infer K, ...infer Rest]
6275
+ ? K extends typeof PRIM_TYPE
6276
+ ? Rest extends readonly [infer S, ...infer ShapeRest]
6277
+ ? S extends keyof PrimTypeShapeMap
6278
+ ? ShapeRest extends readonly [...PrimTypeShapeMap[S], ...infer Remaining]
6279
+ ? [flag: K, shape: S, ...PrimTypeShapeMap[S], ...ParsePrimParams<Remaining>]
6280
+ : never
6281
+ : never
6282
+ : never
6283
+ : K extends keyof PrimParamMap
6284
+ ? Rest extends readonly [...PrimParamMap[K], ...infer Remaining]
6285
+ ? [flag: K, ...PrimParamMap[K], ...ParsePrimParams<Remaining>]
6286
+ : never
6287
+ : never
6288
+ : never
6289
+
6290
+ /** Maps each constant to the tuple of arguments that follow it. */
6291
+ interface PrimParamGetMap {
6292
+ [PRIM_NAME]: []
6293
+ [PRIM_DESC]: []
6294
+ [PRIM_SLICE]: []
6295
+ [PRIM_PHYSICS_SHAPE_TYPE]: []
6296
+ [PRIM_MATERIAL]: []
6297
+ [PRIM_PHYSICS]: []
6298
+ [PRIM_TEMP_ON_REZ]: []
6299
+ [PRIM_PHANTOM]: []
6300
+ [PRIM_POSITION]: []
6301
+ [PRIM_POS_LOCAL]: []
6302
+ [PRIM_ROTATION]: []
6303
+ [PRIM_ROT_LOCAL]: []
6304
+ [PRIM_SIZE]: []
6305
+ [PRIM_TEXTURE]: [face: number]
6306
+ [PRIM_RENDER_MATERIAL]: [face: number]
6307
+ [PRIM_TEXT]: []
6308
+ [PRIM_COLOR]: [face: number]
6309
+ [PRIM_BUMP_SHINY]: [face: number]
6310
+ [PRIM_FULLBRIGHT]: [face: number]
6311
+ [PRIM_FLEXIBLE]: []
6312
+ [PRIM_TEXGEN]: [face: number]
6313
+ [PRIM_POINT_LIGHT]: []
6314
+ [PRIM_REFLECTION_PROBE]: []
6315
+ [PRIM_GLOW]: [face: number]
6316
+ [PRIM_OMEGA]: []
6317
+ [PRIM_NORMAL]: [face: number]
6318
+ [PRIM_SPECULAR]: [face: number]
6319
+ [PRIM_ALPHA_MODE]: [face: number]
6320
+ [PRIM_LINK_TARGET]: [linkTarget: number]
6321
+ [PRIM_CAST_SHADOWS]: []
6322
+ [PRIM_ALLOW_UNSIT]: []
6323
+ [PRIM_SCRIPTED_SIT_ONLY]: []
6324
+ [PRIM_SIT_TARGET]: []
6325
+ [PRIM_PROJECTOR]: []
6326
+ [PRIM_CLICK_ACTION]: []
6327
+ [PRIM_GLTF_BASE_COLOR]: [face: number]
6328
+ [PRIM_GLTF_NORMAL]: [face: number]
6329
+ [PRIM_GLTF_METALLIC_ROUGHNESS]: [face: number]
6330
+ [PRIM_GLTF_EMISSIVE]: [face: number]
6331
+ [PRIM_SIT_FLAGS]: []
6332
+ [PRIM_DAMAGE]: []
6333
+ [PRIM_HEALTH]: []
6334
+ }
6335
+
6336
+ /** Recursive type that validates a flat parameter list for PrimParamGet constants. */
6337
+ type ParsePrimParamGets<T extends readonly unknown[]> = T extends readonly []
6338
+ ? []
6339
+ : T extends readonly [infer K, ...infer Rest]
6340
+ ? K extends keyof PrimParamGetMap
6341
+ ? Rest extends readonly [...PrimParamGetMap[K], ...infer Remaining]
6342
+ ? [flag: K, ...PrimParamGetMap[K], ...ParsePrimParamGets<Remaining>]
6343
+ : never
6344
+ : never
6345
+ : never
6346
+
6347
+ /** Maps each constant to the tuple of arguments that follow it. */
6348
+ interface HttpParamMap {
6349
+ [HTTP_METHOD]: [method: string]
6350
+ [HTTP_MIMETYPE]: [mimeType: string]
6351
+ [HTTP_BODY_MAXLENGTH]: [length: number]
6352
+ [HTTP_VERIFY_CERT]: [verify: number]
6353
+ [HTTP_VERBOSE_THROTTLE]: [noisy: number]
6354
+ [HTTP_CUSTOM_HEADER]: [name: string, value: string]
6355
+ [HTTP_PRAGMA_NO_CACHE]: [sendHeader: number]
6356
+ [HTTP_USER_AGENT]: [user: string]
6357
+ [HTTP_ACCEPT]: [mimeType: string]
6358
+ [HTTP_EXTENDED_ERROR]: [extended: number]
6359
+ }
6360
+
6361
+ /** Recursive type that validates a flat parameter list for HttpParam constants. */
6362
+ type ParseHttpParams<T extends readonly unknown[]> = T extends readonly []
6363
+ ? []
6364
+ : T extends readonly [infer K, ...infer Rest]
6365
+ ? K extends keyof HttpParamMap
6366
+ ? Rest extends readonly [...HttpParamMap[K], ...infer Remaining]
6367
+ ? [flag: K, ...HttpParamMap[K], ...ParseHttpParams<Remaining>]
6368
+ : never
6369
+ : never
6370
+ : never
6371
+
6372
+ /** Maps each constant to the tuple of arguments that follow it. */
6373
+ interface ParticleSystemParamMap {
6374
+ [PSYS_PART_FLAGS]: [flags: number]
6375
+ [PSYS_SRC_PATTERN]: [pattern: number]
6376
+ [PSYS_SRC_BURST_RADIUS]: [radius: number]
6377
+ [PSYS_SRC_ANGLE_BEGIN]: [angleBegin: number]
6378
+ [PSYS_SRC_ANGLE_END]: [angleEnd: number]
6379
+ [PSYS_SRC_INNERANGLE]: [angleInner: number]
6380
+ [PSYS_SRC_OUTERANGLE]: [angleOuter: number]
6381
+ [PSYS_SRC_TARGET_KEY]: [target: UUID]
6382
+ [PSYS_PART_START_COLOR]: [colorStart: Vector]
6383
+ [PSYS_PART_END_COLOR]: [colorEnd: Vector]
6384
+ [PSYS_PART_START_ALPHA]: [alphaStart: number]
6385
+ [PSYS_PART_END_ALPHA]: [alphaEnd: number]
6386
+ [PSYS_PART_START_SCALE]: [scaleStart: Vector]
6387
+ [PSYS_PART_END_SCALE]: [scaleEnd: Vector]
6388
+ [PSYS_SRC_TEXTURE]: [texture: string]
6389
+ [PSYS_PART_START_GLOW]: [glowStart: number]
6390
+ [PSYS_PART_END_GLOW]: [glowEnd: number]
6391
+ [PSYS_PART_BLEND_FUNC_SOURCE]: [bfSource: number]
6392
+ [PSYS_PART_BLEND_FUNC_DEST]: [bfDest: number]
6393
+ [PSYS_SRC_MAX_AGE]: [durationSystem: number]
6394
+ [PSYS_PART_MAX_AGE]: [durationParticle: number]
6395
+ [PSYS_SRC_BURST_RATE]: [burstSleep: number]
6396
+ [PSYS_SRC_BURST_PART_COUNT]: [burstParticleCount: number]
6397
+ [PSYS_SRC_ACCEL]: [acceleration: Vector]
6398
+ [PSYS_SRC_OMEGA]: [omega: Vector]
6399
+ [PSYS_SRC_BURST_SPEED_MIN]: [speedMin: number]
6400
+ [PSYS_SRC_BURST_SPEED_MAX]: [speedMax: number]
6401
+ }
6402
+
6403
+ /** Recursive type that validates a flat parameter list for ParticleSystemParam constants. */
6404
+ type ParseParticleSystemParams<T extends readonly unknown[]> = T extends readonly []
6405
+ ? []
6406
+ : T extends readonly [infer K, ...infer Rest]
6407
+ ? K extends keyof ParticleSystemParamMap
6408
+ ? Rest extends readonly [...ParticleSystemParamMap[K], ...infer Remaining]
6409
+ ? [flag: K, ...ParticleSystemParamMap[K], ...ParseParticleSystemParams<Remaining>]
6410
+ : never
6411
+ : never
6412
+ : never
6413
+
6414
+ /** Maps each constant to the tuple of arguments that follow it. */
6415
+ interface CameraParamMap {
6416
+ [CAMERA_ACTIVE]: [isActive: boolean]
6417
+ [CAMERA_BEHINDNESS_ANGLE]: [degrees: number]
6418
+ [CAMERA_BEHINDNESS_LAG]: [seconds: number]
6419
+ [CAMERA_DISTANCE]: [meters: number]
6420
+ [CAMERA_FOCUS]: [position: Vector]
6421
+ [CAMERA_FOCUS_LAG]: [seconds: number]
6422
+ [CAMERA_FOCUS_LOCKED]: [isLocked: number]
6423
+ [CAMERA_FOCUS_OFFSET]: [meters: Vector]
6424
+ [CAMERA_FOCUS_THRESHOLD]: [meters: number]
6425
+ [CAMERA_PITCH]: [degrees: number]
6426
+ [CAMERA_POSITION]: [position: Vector]
6427
+ [CAMERA_POSITION_LAG]: [seconds: number]
6428
+ [CAMERA_POSITION_LOCKED]: [isLocked: number]
6429
+ [CAMERA_POSITION_THRESHOLD]: [meters: number]
6430
+ }
6431
+
6432
+ /** Recursive type that validates a flat parameter list for CameraParam constants. */
6433
+ type ParseCameraParams<T extends readonly unknown[]> = T extends readonly []
6434
+ ? []
6435
+ : T extends readonly [infer K, ...infer Rest]
6436
+ ? K extends keyof CameraParamMap
6437
+ ? Rest extends readonly [...CameraParamMap[K], ...infer Remaining]
6438
+ ? [flag: K, ...CameraParamMap[K], ...ParseCameraParams<Remaining>]
6439
+ : never
6440
+ : never
6441
+ : never
6442
+
6443
+ /** Maps each constant to the tuple of arguments that follow it. */
6444
+ interface CastRayParamMap {
6445
+ [RC_REJECT_TYPES]: [filter: number]
6446
+ [RC_DATA_FLAGS]: [flags: number]
6447
+ [RC_MAX_HITS]: [maxHits: number]
6448
+ [RC_DETECT_PHANTOM]: [detectPhantom: number]
6449
+ }
6450
+
6451
+ /** Recursive type that validates a flat parameter list for CastRayParam constants. */
6452
+ type ParseCastRayParams<T extends readonly unknown[]> = T extends readonly []
6453
+ ? []
6454
+ : T extends readonly [infer K, ...infer Rest]
6455
+ ? K extends keyof CastRayParamMap
6456
+ ? Rest extends readonly [...CastRayParamMap[K], ...infer Remaining]
6457
+ ? [flag: K, ...CastRayParamMap[K], ...ParseCastRayParams<Remaining>]
6458
+ : never
6459
+ : never
6460
+ : never
6461
+
6462
+ /** Maps each constant to the tuple of arguments that follow it. */
6463
+ interface CharacterParamMap {
6464
+ [CHARACTER_DESIRED_SPEED]: [desiredSpeed: number]
6465
+ [CHARACTER_RADIUS]: [radius: number]
6466
+ [CHARACTER_LENGTH]: [length: number]
6467
+ [CHARACTER_ORIENTATION]: [orientation: number]
6468
+ [CHARACTER_TYPE]: [type: number]
6469
+ [CHARACTER_AVOIDANCE_MODE]: [avoidanceMode: number]
6470
+ [CHARACTER_MAX_ACCEL]: [maxAccel: number]
6471
+ [CHARACTER_MAX_DECEL]: [maxDecel: number]
6472
+ [CHARACTER_DESIRED_TURN_SPEED]: [desiredTurnSpeed: number]
6473
+ [CHARACTER_MAX_TURN_RADIUS]: [maxTurnRadius: number]
6474
+ [CHARACTER_MAX_SPEED]: [maxSpeed: number]
6475
+ [CHARACTER_ACCOUNT_FOR_SKIPPED_FRAMES]: [accountForSkippedFrames: number]
6476
+ [CHARACTER_STAY_WITHIN_PARCEL]: [stayWithinParcel: number]
6477
+ }
6478
+
6479
+ /** Recursive type that validates a flat parameter list for CharacterParam constants. */
6480
+ type ParseCharacterParams<T extends readonly unknown[]> = T extends readonly []
6481
+ ? []
6482
+ : T extends readonly [infer K, ...infer Rest]
6483
+ ? K extends keyof CharacterParamMap
6484
+ ? Rest extends readonly [...CharacterParamMap[K], ...infer Remaining]
6485
+ ? [flag: K, ...CharacterParamMap[K], ...ParseCharacterParams<Remaining>]
6486
+ : never
6487
+ : never
6488
+ : never
6489
+
6490
+ /** Maps each constant to the tuple of arguments that follow it. */
6491
+ interface RezParamMap {
6492
+ [REZ_PARAM]: [param: number]
6493
+ [REZ_FLAGS]: [flags: number]
6494
+ [REZ_POS]: [pos: Vector, relative: number, atRoot: number]
6495
+ [REZ_ROT]: [rot: Quaternion, relative: number]
6496
+ [REZ_VEL]: [velocity: Vector, local: number, inherit: number]
6497
+ [REZ_ACCEL]: [force: Vector, local: number]
6498
+ [REZ_OMEGA]: [axis: Vector, local: number, spin: number, gain: number]
6499
+ [REZ_DAMAGE]: [damage: number]
6500
+ [REZ_SOUND]: [sound: string, volume: number, loop: number]
6501
+ [REZ_SOUND_COLLIDE]: [sound: string, volume: number]
6502
+ [REZ_LOCK_AXES]: [locks: Vector]
6503
+ [REZ_DAMAGE_TYPE]: [damageType: number]
6504
+ [REZ_PARAM_STRING]: [startParam: string]
6505
+ }
6506
+
6507
+ /** Recursive type that validates a flat parameter list for RezParam constants. */
6508
+ type ParseRezParams<T extends readonly unknown[]> = T extends readonly []
6509
+ ? []
6510
+ : T extends readonly [infer K, ...infer Rest]
6511
+ ? K extends keyof RezParamMap
6512
+ ? Rest extends readonly [...RezParamMap[K], ...infer Remaining]
6513
+ ? [flag: K, ...RezParamMap[K], ...ParseRezParams<Remaining>]
6514
+ : never
6515
+ : never
6516
+ : never
6517
+
6518
+ /** Valid constants for ObjectDetail functions. */
6519
+ type ObjectDetailFlag =
6520
+ | typeof OBJECT_NAME
6521
+ | typeof OBJECT_DESC
6522
+ | typeof OBJECT_POS
6523
+ | typeof OBJECT_ROT
6524
+ | typeof OBJECT_VELOCITY
6525
+ | typeof OBJECT_OWNER
6526
+ | typeof OBJECT_GROUP
6527
+ | typeof OBJECT_CREATOR
6528
+ | typeof OBJECT_RUNNING_SCRIPT_COUNT
6529
+ | typeof OBJECT_TOTAL_SCRIPT_COUNT
6530
+ | typeof OBJECT_SCRIPT_MEMORY
6531
+ | typeof OBJECT_SCRIPT_TIME
6532
+ | typeof OBJECT_PRIM_EQUIVALENCE
6533
+ | typeof OBJECT_SERVER_COST
6534
+ | typeof OBJECT_STREAMING_COST
6535
+ | typeof OBJECT_PHYSICS_COST
6536
+ | typeof OBJECT_CHARACTER_TIME
6537
+ | typeof OBJECT_ROOT
6538
+ | typeof OBJECT_ATTACHED_POINT
6539
+ | typeof OBJECT_PATHFINDING_TYPE
6540
+ | typeof OBJECT_PHYSICS
6541
+ | typeof OBJECT_PHANTOM
6542
+ | typeof OBJECT_TEMP_ON_REZ
6543
+ | typeof OBJECT_RENDER_WEIGHT
6544
+ | typeof OBJECT_HOVER_HEIGHT
6545
+ | typeof OBJECT_BODY_SHAPE_TYPE
6546
+ | typeof OBJECT_LAST_OWNER_ID
6547
+ | typeof OBJECT_CLICK_ACTION
6548
+ | typeof OBJECT_OMEGA
6549
+ | typeof OBJECT_PRIM_COUNT
6550
+ | typeof OBJECT_TOTAL_INVENTORY_COUNT
6551
+ | typeof OBJECT_REZZER_KEY
6552
+ | typeof OBJECT_GROUP_TAG
6553
+ | typeof OBJECT_TEMP_ATTACHED
6554
+ | typeof OBJECT_ATTACHED_SLOTS_AVAILABLE
6555
+ | typeof OBJECT_CREATION_TIME
6556
+ | typeof OBJECT_SELECT_COUNT
6557
+ | typeof OBJECT_SIT_COUNT
6558
+ | typeof OBJECT_ANIMATED_COUNT
6559
+ | typeof OBJECT_ANIMATED_SLOTS_AVAILABLE
6560
+ | typeof OBJECT_ACCOUNT_LEVEL
6561
+ | typeof OBJECT_MATERIAL
6562
+ | typeof OBJECT_MASS
6563
+ | typeof OBJECT_TEXT
6564
+ | typeof OBJECT_REZ_TIME
6565
+ | typeof OBJECT_LINK_NUMBER
6566
+ | typeof OBJECT_SCALE
6567
+ | typeof OBJECT_TEXT_COLOR
6568
+ | typeof OBJECT_TEXT_ALPHA
6569
+ | typeof OBJECT_HEALTH
6570
+ | typeof OBJECT_DAMAGE
6571
+ | typeof OBJECT_DAMAGE_TYPE
6572
+ | typeof OBJECT_PERMS
6573
+ | typeof OBJECT_PERMS_COMBINED
6574
+
6575
+ /** Valid constants for ParcelDetail functions. */
6576
+ type ParcelDetailFlag =
6577
+ | typeof PARCEL_DETAILS_NAME
6578
+ | typeof PARCEL_DETAILS_DESC
6579
+ | typeof PARCEL_DETAILS_OWNER
6580
+ | typeof PARCEL_DETAILS_GROUP
6581
+ | typeof PARCEL_DETAILS_AREA
6582
+ | typeof PARCEL_DETAILS_ID
6583
+ | typeof PARCEL_DETAILS_SEE_AVATARS
6584
+ | typeof PARCEL_DETAILS_PRIM_CAPACITY
6585
+ | typeof PARCEL_DETAILS_PRIM_USED
6586
+ | typeof PARCEL_DETAILS_LANDING_POINT
6587
+ | typeof PARCEL_DETAILS_LANDING_LOOKAT
6588
+ | typeof PARCEL_DETAILS_TP_ROUTING
6589
+ | typeof PARCEL_DETAILS_FLAGS
6590
+ | typeof PARCEL_DETAILS_SCRIPT_DANGER