# AssetService

Roblox Engine API class from Roblox Studio 0.744.0.7441077 (version-7aaa6838d36c4448).

- Inherits from, nearest first: [Instance](https://rapi.sleaze.dev/classes/Instance.md), [Object](https://rapi.sleaze.dev/classes/Object.md)
- Tags: Not creatable, Service
- Memory category: Instances
- HTML page: https://rapi.sleaze.dev/classes/AssetService/
- Roblox documentation: https://create.roblox.com/docs/reference/engine/classes/AssetService

A non-replicated service that handles asset-related queries to the Roblox web API.

## Properties

### AllowInsertFreeAssets

```luau
AssetService.AllowInsertFreeAssets: boolean
```

- Tags: Roblox script security

Controls whether [`AssetService:LoadAssetAsync()`](https://rapi.sleaze.dev/classes/AssetService.md) can load assets that are not owned by the experience creator.

## Methods

### CachePartOperationsAsync

```luau
AssetService:CachePartOperationsAsync(partOperations: { any })
```

- Tags: Yields, Roblox script security

### CanEditAssetAsync

```luau
AssetService:CanEditAssetAsync(content: Content): boolean
```

- Tags: Yields, Roblox script security

### ComposeDecalAsync

```luau
AssetService:ComposeDecalAsync(decal: Decal, layers: { any })
```

- Tags: Yields

Modifies an existing [`Decal`](https://rapi.sleaze.dev/classes/Decal.md) to contain a composite PBR textures created by layering the provided textures in the order they are provided in the `layers` array. Textures layer based on the alpha value of the color map.

Parameters:

- `decal`: A [`Decal`](https://rapi.sleaze.dev/classes/Decal.md) instance that will be modified to contain a representation of the layers. Any existing maps on this instance will be cleared.
- `layers`: An array of dictionary tables that maps PBR names to [`Content`](https://rapi.sleaze.dev/index/types/Content.md) IDs.

### CreateAssetAsync

```luau
AssetService:CreateAssetAsync(object: Object, assetType: Enum.AssetType, requestParameters: { [string]: any }? = nil): ...any
```

- Tags: Yields, Capabilities: AssetCreateUpdate

Uploads a new asset to Roblox from the given object.

Parameters:

- `object`: The object to be created as an asset.
- `assetType`: Currently supported types are:

- `AssetType.Model` – with `object` as any valid [`Instance`](https://rapi.sleaze.dev/classes/Instance.md) root.
- `AssetType.Plugin` – with `object` as any valid [`Instance`](https://rapi.sleaze.dev/classes/Instance.md) root.
- `AssetType.Mesh` – with `object` as any valid [`EditableMesh`](https://rapi.sleaze.dev/classes/EditableMesh.md) root.
- `AssetType.Image` – with `object` as any valid [`EditableImage`](https://rapi.sleaze.dev/classes/EditableImage.md) root.
- `requestParameters`: Options table containing asset metadata:

- [`Name`](https://rapi.sleaze.dev/classes/Instance.md) – Name of the asset as a string. Defaults to `[object.Name]`.
- `Description` – Description of the asset as a string. Defaults to `"Created with AssetService:CreateAssetAsync"`.
- `CreatorId` – ID of the asset creator as a number. Defaults to the logged in Roblox Studio user for Plugin context. Required for Open Cloud Luau Execution context.
- `CreatorType` – `AssetCreatorType` indicating the type of asset creator. Defaults to `AssetCreatorType.User` in Plugin context. Required for Open Cloud Luau Execution context.
- `IsPackage` – Boolean value, only applicable to the `AssetType.Model` type. Defaults to `true`.

Returns: The `CreateAssetResult` and asset ID pair if successful.

### CreateAssetVersionAsync

```luau
AssetService:CreateAssetVersionAsync(object: Object, assetType: Enum.AssetType, assetId: number, requestParameters: { [string]: any }? = nil): ...any
```

- Tags: Yields, Capabilities: AssetCreateUpdate

Uploads a new version for an existing asset from the given object.

Parameters:

- `object`: The object to be created as an asset.
- `assetType`: Currently supported types are:

- `AssetType.Model` – with `object` as any valid [`Instance`](https://rapi.sleaze.dev/classes/Instance.md) root.
- `AssetType.Plugin` – with `object` as any valid [`Instance`](https://rapi.sleaze.dev/classes/Instance.md) root.
- `AssetType.Mesh` – with `object` as any valid [`EditableMesh`](https://rapi.sleaze.dev/classes/EditableMesh.md) root.
- `AssetType.Image` – with `object` as any valid [`EditableImage`](https://rapi.sleaze.dev/classes/EditableImage.md) root.
- `assetId`: The ID of the asset for the new version.
- `requestParameters`: Options table containing asset metadata:

- [`Name`](https://rapi.sleaze.dev/classes/Instance.md) – A [`string`](https://rapi.sleaze.dev/index/types/string.md). Name of the asset. Default: object.Name.
- `Description` – A [`string`](https://rapi.sleaze.dev/index/types/string.md). Description of the asset. Default: "Created with AssetService:CreateAssetAsync".
- `CreatorId` – A `number`. ID of the asset creator. Default: The logged in Roblox Studio user for Plugin context. Required for Open Cloud Luau Execution context.
- `CreatorType` – A `AssetCreatorType`. Type of asset creator. Default: `AssetCreatorType.User` in Plugin context. Required for Open Cloud Luau Execution context.
- `IsPackage` – A [`bool`](https://rapi.sleaze.dev/index/types/bool.md). Only applicable to the `AssetType.Model` type. Default: true.

Returns: The `CreateAssetResult` and asset version number pair if successful.

### CreateDataModelContentAsync

```luau
AssetService:CreateDataModelContentAsync(content: Content, options: { [string]: any }?): ...any
```

- Tags: Yields, Capabilities: DynamicGeneration

Creates ephemeral, [`DataModel`](https://rapi.sleaze.dev/classes/DataModel.md)-scoped content from the provided content input.

Parameters:

- `content`: Reference to the input content. Currently, this only supports [`Content`](https://rapi.sleaze.dev/index/types/Content.md) wrapping a [`EditableMesh`](https://rapi.sleaze.dev/classes/EditableMesh.md) or [`EditableImage`](https://rapi.sleaze.dev/classes/EditableImage.md).
- `options`: Optional dictionary containing configuration controls for the created [`DataModel`](https://rapi.sleaze.dev/classes/DataModel.md) content. Currently no controls are surfaced and this parameter exists for future functionality.

Returns: A tuple containing an `CreateContentResult` indicating the success or failure of the request, and the resulting [`DataModel`](https://rapi.sleaze.dev/classes/DataModel.md)-scoped `Opaque` [`Content`](https://rapi.sleaze.dev/index/types/Content.md).

### CreateDecalAsync

```luau
AssetService:CreateDecalAsync(content: { [string]: any }): Decal
```

- Tags: Yields, Capabilities: Basic

Creates a new [`Decal`](https://rapi.sleaze.dev/classes/Decal.md) object using the provided [`EditableImage`](https://rapi.sleaze.dev/classes/EditableImage.md) content maps.

Parameters:

- `content`: Dictionary containing one or more of the following key-value pairs. Each value must be a [`Content`](https://rapi.sleaze.dev/index/types/Content.md) object containing a [`EditableImage`](https://rapi.sleaze.dev/classes/EditableImage.md):

- `TextureContent` — The decal's color texture.
- `NormalMapContent` — The decal's normal map.
- `MetalnessMapContent` — The decal's metalness map.
- `RoughnessMapContent` — The decal's roughness map.

Returns: A new [`Decal`](https://rapi.sleaze.dev/classes/Decal.md) instance with the given maps from the `content` parameter.

### CreateEditableImage

```luau
AssetService:CreateEditableImage(editableImageOptions: { [string]: any }?): EditableImage
```

- Tags: Capabilities: DynamicGeneration

Creates a new [`EditableImage`](https://rapi.sleaze.dev/classes/EditableImage.md).

Parameters:

- `editableImageOptions`: Options table containing controls for the method:

- `Size` – A [`Vector2`](https://rapi.sleaze.dev/index/types/Vector2.md) that specifies the image's desired width and height.

Returns: The new [`EditableImage`](https://rapi.sleaze.dev/classes/EditableImage.md), or `nil` if the device-specific editable memory budget is exhausted.

### CreateEditableImageAsync

```luau
AssetService:CreateEditableImageAsync(content: Content, editableImageOptions: { [string]: any }?): EditableImage
```

- Tags: Yields, Capabilities: AssetRead

Creates a new [`EditableImage`](https://rapi.sleaze.dev/classes/EditableImage.md) object populated with the given image.

Parameters:

- `content`: Reference to asset content stored externally or as an object within the place, wrapping a single value of one of the supported `ContentSourceType` values.
- `editableImageOptions`: Table containing options for the created [`EditableImage`](https://rapi.sleaze.dev/classes/EditableImage.md). Currently no options are available since resizing via `Size` is not supported.

Returns: A new [`EditableImage`](https://rapi.sleaze.dev/classes/EditableImage.md) containing the provided image.

### CreateEditableImageFromDownloadAsync

```luau
AssetService:CreateEditableImageFromDownloadAsync(url: string): EditableImage
```

- Tags: Yields, Roblox script security

### CreateEditableMesh

```luau
AssetService:CreateEditableMesh(editableMeshOptions: { [string]: any }?): EditableMesh
```

- Tags: Capabilities: DynamicGeneration

Creates a new, empty [`EditableMesh`](https://rapi.sleaze.dev/classes/EditableMesh.md).

Parameters:

- `editableMeshOptions`: Table containing options for the created [`EditableMesh`](https://rapi.sleaze.dev/classes/EditableMesh.md). Currently no options are available since `FixedSize` will always be `false` for empty editable meshes.

Returns: The new [`EditableMesh`](https://rapi.sleaze.dev/classes/EditableMesh.md), or `nil` if the device-specific editable memory budget is exhausted.

### CreateEditableMeshAsync

```luau
AssetService:CreateEditableMeshAsync(content: Content, editableMeshOptions: { [string]: any }?): EditableMesh
```

- Tags: Yields, Capabilities: AssetRead

Returns a new [`EditableMesh`](https://rapi.sleaze.dev/classes/EditableMesh.md) object created from an existing mesh content ID.

Parameters:

- `content`: Reference to asset content stored externally or as an object within the place, wrapping a single value of one of the supported `ContentSourceType` values.
- `editableMeshOptions`: Options table containing controls for the method:

- `FixedSize` – A [`bool`](https://rapi.sleaze.dev/index/types/bool.md). Default value is `true`, and the returned [`EditableMesh`](https://rapi.sleaze.dev/classes/EditableMesh.md) will not allow you to add or remove vertices, only modify their values. Set to `false` if the ability to change the mesh topology is required, at the expense of using more memory.

Returns: The new [`EditableMesh`](https://rapi.sleaze.dev/classes/EditableMesh.md) object.

### CreateMeshPartAsync

```luau
AssetService:CreateMeshPartAsync(meshContent: Content, options: { [string]: any }? = nil): MeshPart
```

- Tags: Yields, Capabilities: Basic

Creates a new [`MeshPart`](https://rapi.sleaze.dev/classes/MeshPart.md) with a specified mesh ID and an optional table of fidelity values.

Parameters:

- `meshContent`: Reference to asset content stored externally or as an object within the place, wrapping a single value of one of the supported `ContentSourceType` values.
- `options`: Options table containing one or more controls for the method:

- `CollisionFidelity` – The value of `CollisionFidelity` in the resulting part. Defaults to `CollisionFidelity.Default` if the option is absent or the `options` table is `nil`.
- `RenderFidelity` – The value of `RenderFidelity` in the resulting part. Defaults to `RenderFidelity.Automatic` if the option is absent or the `options` table is `nil`.
- `FluidFidelity` – The value of `FluidFidelity` in the resulting part. Defaults to `FluidFidelity.Automatic` if the option is absent or the `options` table is `nil`.

Returns: The new [`MeshPart`](https://rapi.sleaze.dev/classes/MeshPart.md) with the specified mesh and fidelity settings applied.

### CreatePlaceAsync

```luau
AssetService:CreatePlaceAsync(placeName: string, templatePlaceID: number, description: string? = ""): number
```

- Tags: Yields, Capabilities: AssetCreateUpdate

Clones a place through the given `templatePlaceID`.

Parameters:

- `placeName`: Name of the new place.
- `templatePlaceID`: `PlaceId` of the place to clone.
- `description`: Description of the new place.

Returns: `PlaceId` of the new place.

### CreatePlaceInPlayerInventoryAsync

```luau
AssetService:CreatePlaceInPlayerInventoryAsync(player: Instance, placeName: string, templatePlaceID: number, description: string? = ""): number
```

- Tags: Yields, Capabilities: AssetCreateUpdate

Clones a place through the given `templatePlaceID` and puts it into the inventory of the given player.

Parameters:

- `player`: The [`Player`](https://rapi.sleaze.dev/classes/Player.md) whose inventory receives the cloned place.
- `placeName`: Name for the new place.
- `templatePlaceID`: `PlaceId` of the place to clone.
- `description`: Description for the new place.

Returns: `PlaceId` of the new place.

### CreateSurfaceAppearanceAsync

```luau
AssetService:CreateSurfaceAppearanceAsync(content: { [string]: any }): SurfaceAppearance
```

- Tags: Yields, Capabilities: Basic

Creates a new [`SurfaceAppearance`](https://rapi.sleaze.dev/classes/SurfaceAppearance.md) object using the provided content maps.

Parameters:

- `content`: Dictionary containing the following key-value pairs:

- `ColorMap` — A [`Content`](https://rapi.sleaze.dev/index/types/Content.md) object that contains the color map. Default is `nil`.
- `MetalnessMap` — A [`Content`](https://rapi.sleaze.dev/index/types/Content.md) object that contains the metalness map. If more than one channel is present, only the red channel is used. Default is `nil`.
- `NormalMap` — A [`Content`](https://rapi.sleaze.dev/index/types/Content.md) object that contains the normal map. Default is `nil`.
- `RoughnessMap` — A [`Content`](https://rapi.sleaze.dev/index/types/Content.md) object that contains the roughness map. If more than one channel is present, only the red channel is used. Default is `nil`.
- `EmissiveMask` — A [`Content`](https://rapi.sleaze.dev/index/types/Content.md) object that contains the emissive mask. If more than one channel is present, only the red channel is used. Default is `nil`.

Returns: A new [`SurfaceAppearance`](https://rapi.sleaze.dev/classes/SurfaceAppearance.md) instance with the given maps from the `content` parameter.

### CreateTextContentAsync

```luau
AssetService:CreateTextContentAsync(text: string): Content
```

- Tags: Yields, Roblox script security

### CreateTextureAsync

```luau
AssetService:CreateTextureAsync(content: { [string]: any }): Texture
```

- Tags: Yields, Capabilities: Basic

### DeserializeInstance

```luau
AssetService:DeserializeInstance(serializedInstance: string): Instance
```

- Tags: Roblox script security

### FetchAssetWithFormat

```luau
AssetService:FetchAssetWithFormat(url: string, assetFormat: string, options: { [string]: any }?): { Instance }
```

- Tags: Yields, Roblox script security

### GetAssetIdsForPackageAsync

```luau
AssetService:GetAssetIdsForPackageAsync(packageAssetId: number): { any }
```

- Tags: Yields, Capabilities: AssetRead

Returns an array of asset IDs that are contained in a specified package.

Parameters:

- `packageAssetId`: The asset ID of the package to query.

Returns: Asset IDs that are contained in a specified package.

### GetAudioMetadataAsync

```luau
AssetService:GetAudioMetadataAsync(idList: { any }): { any }
```

- Tags: Yields, Capabilities: AssetRead

Provides relevant metadata about a specific audio source.

Parameters:

- `idList`: Array of asset or content IDs for which to retrieve metadata. Max batch size is 30.

Returns: Array of dictionary tables in the same order as the request, where each dictionary contains the following metadata for its asset/content:

- `AssetId` (string)
- `Title` (string)
- `Artist` (string)
- `Duration` (number) in seconds
- `AudioType` (`AudioSubType`)

 Note that if an error occurs on fetching metadata for any of the requested assets, for example the asset ID doesn't exist, its dictionary table is still included in the returned array but it only contains the `AssetId` field for reference purposes. Additionally, if the `AudioType` cannot be determined for a given asset (perhaps because it's private audio), the resulting dictionary will not contain an `AudioType` entry.

### GetBundleDetailsAsync

```luau
AssetService:GetBundleDetailsAsync(bundleId: number): { [string]: any }
```

- Tags: Yields, Capabilities: AssetRead

Returns details of the contents of specified bundle.

Parameters:

- `bundleId`: The ID of the specified bundle.

Returns: Dictionary with the following key-value pairs containing details about the specified bundle:

- `Id` — Bundle ID (same as passed `bundleId` argument)
- [`Name`](https://rapi.sleaze.dev/classes/Instance.md) — Bundle name
- `Description` — Bundle description
- `BundleType` — String representing the `BundleType`, for example `"BodyParts"` or `"DynamicHead"`
- `Items` — Array of items in the bundle, each with details represented through the following keys:
- `Id` — Item ID
- [`Name`](https://rapi.sleaze.dev/classes/Instance.md) — Item name
- `Type` — Item type such as `"Asset"`
- `AssetType` — String representing the `AvatarAssetType`
- `SupportsHeadShapes` — Whether the asset supports head shape swapping. Only present if `AssetType` is `"DynamicHead"`.

### GetGamePlacesAsync

```luau
AssetService:GetGamePlacesAsync(): Instance
```

- Tags: Yields, Capabilities: AssetRead

Returns a [`StandardPages`](https://rapi.sleaze.dev/classes/StandardPages.md) object which contains the name and `PlaceId` of places within the current experience.

Returns: A [`StandardPages`](https://rapi.sleaze.dev/classes/StandardPages.md) object whose pages contain the name and `PlaceId` of each place in the current experience.

### GetOpaqueContentMetadataMap

```luau
AssetService:GetOpaqueContentMetadataMap(opaqueContent: Content): { [string]: any }
```

- Tags: Roblox script security

### LoadAssetAsync

```luau
AssetService:LoadAssetAsync(assetId: number): Instance
```

- Tags: Yields, Capabilities: LoadUnownedAsset

Loads a [`Model`](https://rapi.sleaze.dev/classes/Model.md) instance given its asset ID. This is the modern replacement for [`InsertService:LoadAsset()`](https://rapi.sleaze.dev/classes/InsertService.md) and supports loading third-party assets.

Parameters:

- `assetId`: The asset ID number of the asset being loaded.

Returns: A [`Model`](https://rapi.sleaze.dev/classes/Model.md) instance containing the loaded asset.

### PromptCreatePlatformContentAsync

```luau
AssetService:PromptCreatePlatformContentAsync(player: Player, object: Object, assetType: Enum.AssetType): ...any
```

- Tags: Yields, Capabilities: AssetCreateUpdate

Allows in-experience asset creation for users by prompting a publish dialog.

Parameters:

- `player`: The user who submits an asset creation.
- `object`: The asset to be created. Currently can't contain scripts or nest non-public assets.
- `assetType`: The asset type. Currently can only be `AssetType.Model`.

Returns: The `PromptCreatePlatformContentResult` and asset ID pair if successful.

### PromptImportAnimationClipFromVideoAsync

```luau
AssetService:PromptImportAnimationClipFromVideoAsync(player: Player, progressCallback: (...any) -> ...any): ...any
```

- Tags: Yields, Capabilities: AssetManagement

Prompts the specified player to select and upload a video, which is then converted into an [`AnimationClip`](https://rapi.sleaze.dev/classes/AnimationClip.md).

Parameters:

- `player`: The player who is prompted, on their own client, to select and upload a video. The player's consent is required before the video is uploaded.
- `progressCallback`: A function that receives status updates (an `AnimationClipFromVideoStatus` value) while the video is uploaded and processed.

Returns: A tuple containing an `AnimationClipFromVideoStatus` describing the outcome and, on success, the resulting [`AnimationClip`](https://rapi.sleaze.dev/classes/AnimationClip.md) (`nil` otherwise).

### ReadTextContentAsync

```luau
AssetService:ReadTextContentAsync(content: Content): string
```

- Tags: Yields, Roblox script security

### SavePlaceAsync

```luau
AssetService:SavePlaceAsync(requestParameters: { [string]: any }?)
```

- Tags: Yields, Capabilities: AssetCreateUpdate

Saves the state of the current place.

Parameters:

- `requestParameters`: Optional dictionary that includes `SaveWithoutPublish`, a boolean indicating whether to save with publish or without publish, and `PlaceId`, the destination place ID to save over. An example usage would be: AssetService:SavePlaceAsync({PlaceId = 1, SaveWithoutPublish = true}). If PlaceId is not provided, the default behavior will save over the current original place which is calling SavePlaceAsync. If SaveWithoutPublish is not provided, the default behavior is SaveWithoutPublish=false.

### SearchAudioAsync

```luau
AssetService:SearchAudioAsync(searchParameters: AudioSearchParams): AudioPages
```

- Tags: Yields, Capabilities: AssetRead

Finds audio assets matching a variety of search criteria.

Parameters:

- `searchParameters`: A [`AudioSearchParams`](https://rapi.sleaze.dev/classes/AudioSearchParams.md) object defining the search criteria such as keyword, title, artist, audio type, and duration range.

Returns: An [`AudioPages`](https://rapi.sleaze.dev/classes/AudioPages.md) object containing the paginated results of the audio search.

### GetAssetIdsForPackage

```luau
AssetService:GetAssetIdsForPackage(packageAssetId: number): { any }
```

- Tags: Deprecated, Yields, Capabilities: AssetRead
- Use instead: [`AssetService.GetAssetIdsForPackageAsync`](https://rapi.sleaze.dev/classes/AssetService.md)

**Deprecated:** Use [`GetAssetIdsForPackageAsync()`](https://rapi.sleaze.dev/classes/AssetService.md) instead.

Returns an array of asset IDs that are contained in a specified package.

Parameters:

- `packageAssetId`: The asset ID of the package to query.

Returns: Asset IDs that are contained in a specified package.

### GetCreatorAssetID

```luau
AssetService:GetCreatorAssetID(creationID: number): number
```

- Tags: Deprecated, Yields, Capabilities: AssetRead

**Deprecated:** This item is deprecated and no longer functions correctly. Do not use it for new work.

Returns the UserId of the account who created the creationID asset.

Parameters:

- `creationID`: The asset ID to look up for creator information.

Returns: The [`Player.UserId`](https://rapi.sleaze.dev/classes/Player.md) of the account that created the asset.

### SearchAudio

```luau
AssetService:SearchAudio(searchParameters: AudioSearchParams): AudioPages
```

- Tags: Deprecated, Yields, Capabilities: AssetRead
- Use instead: [`AssetService.SearchAudioAsync`](https://rapi.sleaze.dev/classes/AssetService.md)

**Deprecated:** Use [`SearchAudioAsync()`](https://rapi.sleaze.dev/classes/AssetService.md) instead.

Finds audio assets matching a variety of search criteria.

Parameters:

- `searchParameters`: A [`AudioSearchParams`](https://rapi.sleaze.dev/classes/AudioSearchParams.md) object defining the search criteria such as keyword, title, artist, audio type, and duration range.

Returns: An [`AudioPages`](https://rapi.sleaze.dev/classes/AudioPages.md) object containing the paginated results of the audio search.

## Events

### AudioMetadataFailedResponse

```luau
AssetService.AudioMetadataFailedResponse: RBXScriptSignal<(requestid: number)>
```

- Tags: Roblox script security

### AudioMetadataRequest

```luau
AssetService.AudioMetadataRequest: RBXScriptSignal<(requestid: number, request: { any })>
```

- Tags: Roblox script security

### AudioMetadataResponse

```luau
AssetService.AudioMetadataResponse: RBXScriptSignal<(requestid: number, response: { any })>
```

- Tags: Roblox script security

### OpenPublishResultModal

```luau
AssetService.OpenPublishResultModal: RBXScriptSignal<(resultType: Enum.PromptCreatePlatformContentResult)>
```

- Tags: Roblox script security

## Inherited members

- From [Instance](https://rapi.sleaze.dev/classes/Instance.md): `Archivable`, `archivable`, `Attributes`, `AttributesReplicate`, `AttributesSerialize`, `HistoryId`, `Name`, `Parent`, `PredictionMode`, `PropertyStatusStudio`, `RobloxLocked`, `SerializedOverrides`, `SourceAssetId`, `Tags`, `UniqueId`, `numExpectedDirectChildren`, `DataCost`, `Capabilities`, `DefinesCapabilities`, `IsInSandbox`, `Sandboxed`, `AddTag`, `ClearAllChildren`, `Clone`, `Destroy`, `FindFirstAncestor`, `FindFirstAncestorOfClass`, `FindFirstAncestorWhichIsA`, `FindFirstChild`, `FindFirstChildOfClass`, `FindFirstChildWhichIsA`, `FindFirstDescendant`, `GetActor`, `GetAttribute`, `GetAttributeChangedSignal`, `GetAttributes`, `GetChildren`, `GetDebugId`, `GetDescendants`, `GetFullName`, `GetStyled`, `GetStyledPropertyChangedSignal`, `GetTags`, `HasTag`, `IsAncestorOf`, `IsDescendantOf`, `IsPropertyModified`, `QueryDescendants`, `RemoveTag`, `ResetPropertyToDefault`, `SetAttribute`, `WaitForChild`, `Remove`, `children`, `clone`, `destroy`, `findFirstChild`, `getChildren`, `isDescendantOf`, `remove`, `AncestryChanged`, `AttributeChanged`, `ChildAdded`, `ChildRemoved`, `DescendantAdded`, `DescendantRemoving`, `Destroying`, `StyledPropertiesChanged`, `childAdded`
- From [Object](https://rapi.sleaze.dev/classes/Object.md): `ClassName`, `className`, `GetPropertyChangedSignal`, `IsA`, `isA`, `Changed`
