import { Vector3 } from '../Vector3'; import { UUID } from '../UUID'; import { Quaternion } from '../Quaternion'; import type { Tree } from '../../enums/Tree'; import { Vector4 } from '../Vector4'; import { TextureEntry } from '../TextureEntry'; import { Color4 } from '../Color4'; import { ParticleSystem } from '../ParticleSystem'; import type { ITreeBoundingBox } from '../interfaces/ITreeBoundingBox'; import type { NameValue } from '../NameValue'; import type * as Long from 'long'; import type { IGameObjectData } from '../interfaces/IGameObjectData'; import type { XMLElement } from 'xmlbuilder'; import type { Region } from '../Region'; import { InventoryItem } from '../InventoryItem'; import { TextureAnim } from './TextureAnim'; import { ExtraParams } from './ExtraParams'; import { PrimFlags } from '../../enums/PrimFlags'; import type { PhysicsShapeType } from '../../enums/PhysicsShapeType'; import { PCode } from '../../enums/PCode'; import type { SoundFlags } from '../../enums/SoundFlags'; import { DeRezDestination } from '../../enums/DeRezDestination'; import { AttachmentPoint } from '../../enums/AttachmentPoint'; import type { InventoryFolder } from '../InventoryFolder'; import { Subject } from 'rxjs'; import { PermissionMask } from '../../enums/PermissionMask'; export declare class GameObject implements IGameObjectData { dateReceived: Date; rtreeEntry?: ITreeBoundingBox; textureAnim: TextureAnim; extraParams: ExtraParams; deleted: boolean; creatorID?: UUID; creationDate?: Long; baseMask?: number; ownerMask?: number; groupMask?: number; groupID?: UUID; everyoneMask?: number; nextOwnerMask?: number; ownershipCost?: number; saleType?: number; salePrice?: number; aggregatePerms?: number; aggregatePermTextures?: number; aggregatePermTexturesOwner?: number; category: number; inventorySerial: number; itemID: UUID; folderID: UUID; fromTaskID: UUID; lastOwnerID: UUID; name?: string; description?: string; touchName?: string; sitName?: string; textureID?: string; resolvedAt?: number; resolvedInventory: boolean; totalChildren?: number; landImpact?: number; calculatedLandImpact?: number; physicaImpact?: number; resourceImpact?: number; linkResourceImpact?: number; linkPhysicsImpact?: number; limitingType?: string; children?: GameObject[]; ID: number; FullID: UUID; ParentID?: number; _ownerID: UUID; IsAttachment: boolean; NameValue: Map; PCode: PCode; State?: number; CRC?: number; Material?: number; ClickAction?: number; Scale?: Vector3; Flags?: PrimFlags; PathCurve?: number; ProfileCurve?: number; PathBegin?: number; PathEnd?: number; PathScaleX?: number; PathScaleY?: number; PathShearX?: number; PathShearY?: number; PathTwist?: number; PathTwistBegin?: number; PathRadiusOffset?: number; PathTaperX?: number; PathTaperY?: number; PathRevolutions?: number; PathSkew?: number; ProfileBegin?: number; ProfileEnd?: number; ProfileHollow?: number; TextureEntry?: TextureEntry; Text?: string; TextColor?: Color4; MediaURL?: string; JointType?: number; JointPivot?: Vector3; JointAxisOrAnchor?: Vector3; Position?: Vector3; Rotation?: Quaternion; AttachedPos?: Vector3; AttachedRot?: Quaternion; CollisionPlane?: Vector4; Velocity?: Vector3; Acceleration?: Vector3; AngularVelocity?: Vector3; TreeSpecies?: Tree; Sound?: UUID; SoundGain?: number; SoundFlags?: SoundFlags; SoundRadius?: number; Particles?: ParticleSystem; density?: number; friction?: number; gravityMultiplier?: number; physicsShapeType?: PhysicsShapeType; restitution?: number; attachmentPoint: AttachmentPoint; lastAttachPoint: number; inventory: InventoryItem[]; linksetData?: Map; region: Region; resolveAttempts: number; childrenPopulated: boolean; claimedForBuild: boolean; createdSelected: boolean; isMarkedRoot: boolean; onTextureUpdate: Subject; get OwnerID(): UUID; set OwnerID(owner: UUID); constructor(); static fromXML(xml: any): Promise; static deRezObjects(region: Region, objects: GameObject[], destination: DeRezDestination, transactionID: UUID, destFolder: UUID): Promise; static takeManyToInventory(region: Region, objects: GameObject[], folder?: InventoryFolder): Promise; waitForTextureUpdate(timeout?: number): Promise; rezScript(name: string, description: string, perms?: PermissionMask): Promise; updateInventory(): Promise; hasNameValueEntry(key: string): boolean; getNameValueEntry(key: string): string; setIfDefined(def?: number, v?: number): number; setShape(PathCurve?: number, ProfileCurve?: number, PathBegin?: number, PathEnd?: number, PathScaleX?: number, PathScaleY?: number, PathShearX?: number, PathShearY?: number, PathTwist?: number, PathTwistBegin?: number, PathRadiusOffset?: number, PathTaperX?: number, PathTaperY?: number, PathRevolutions?: number, PathSkew?: number, ProfileBegin?: number, ProfileEnd?: number, ProfileHollow?: number): Promise; setName(name: string): Promise; setGeometry(pos?: Vector3, rot?: Quaternion, scale?: Vector3, wholeLinkset?: boolean): Promise; linkTo(rootObj: GameObject): Promise; linkFrom(objects: GameObject[]): Promise; setDescription(desc: string): Promise; setTextureEntry(e: TextureEntry): Promise; setTextureAndMediaURL(): Promise; setExtraParams(ex: ExtraParams): Promise; populateChildren(): void; exportXMLElement(rootNode?: string, skipInventory?: boolean, skipResolve?: boolean): Promise; exportXML(rootNode?: string, skipInventory?: boolean, skipResolve?: boolean): Promise; toJSON(): IGameObjectData; setObjectData(data: Buffer): void; deRezObject(destination: DeRezDestination, transactionID: UUID, destFolder: UUID): Promise; takeToInventory(folder?: InventoryFolder): Promise; dropInventoryIntoContents(inventoryItem: InventoryItem | UUID): Promise; waitForInventoryUpdate(inventorySerial?: number): Promise; select(): Promise; deselect(): Promise; removeTaskInventory(itemKey: UUID): Promise; removeTaskInventory(itemName: string): Promise; private static partFromXMLJS; private waitForTaskInventory; private getInventoryXML; private getXML; }