Skip to main content

AvatarEditorUtils

Provides utilities to query the AvatarEditorService with a promise wrapper.

Types

AvatarItemBundledItemDetails

interface AvatarItemBundledItemDetails {
Ownedboolean
Idnumber
Namestring
Typestring
}

PremiumPricingItemDetails

interface PremiumPricingItemDetails {
PremiumDiscountPercentagenumber
PremiumPriceInRobuxnumber
}

AvatarItemDetails

interface AvatarItemDetails {
IsForRentboolean
ExpectedSellerIdnumber
Ownedboolean
IsPurchasableboolean
Idnumber
ItemType"Asset" | "Bundle" | string
AssetType"Image" | string
BundleType"BodyParts" | string
Namestring
Descriptionstring
ProductIdnumber
Genres{string}
ItemStatus{string}
ItemRestrictions{"ThirteenPlus"}
CreatorType"User" | string
CreatorTargetIdnumber
CreatorNamestring
Pricenumber
PremiumPricingPremiumPricingItemDetails
LowestPricenumber
PriceStatusstring
UnitsAvailableForConsumptionnumber
PurchaseCountnumber
FavoriteCountnumber
}

A table with a variety of information about avatar items and details. https://create.roblox.com/docs/reference/engine/classes/AvatarEditorService#GetItemDetails

AvatarRulesWearableAssetType

interface AvatarRulesWearableAssetType {
MaxNumbernumber
Idnumber
Namestring
}

AvatarRulesBodyColor

interface AvatarRulesBodyColor {
BrickColorId0
NexColorstring
Namestring
}

AvatarRuleDefaultClothingAssetLists

interface AvatarRuleDefaultClothingAssetLists {
DefaultShirtAssetIds{number}
DefaultPantAssetIds{number}
}

AvatarRules

interface AvatarRules {
PlayerAvatarTypes"R6" | "R15" | string
Scalestable
WearableAssetTypes":{AvatarRulesWearableAssetType}
BodyColorsPalette":{AvatarRulesBodyColor}
BasicBodyColorsPalette":{AvatarRulesBodyColor}
MinimumDeltaEBodyColorDifferencenumber
ProportionsAndBodyTypeEnabledForUserboolean
DefaultClothingAssetLists":AvatarRuleDefaultClothingAssetLists
BundlesEnabledForUserboolean
EmotesEnabledForUserboolean
}

Functions

promiseItemDetails

AvatarEditorUtils.promiseItemDetails(
itemIdnumber,
itemTypeAvatarItemType
) → Promise<AvatarItemDetails>

This function returns the item details for the given item. It accepts two parameters - the first indicating the ID of the item being retrieved and the second indicating its Enum.ItemType.

promiseBatchItemDetails

AvatarEditorUtils.promiseBatchItemDetails(
itemIds{number},
itemTypeAvatarItemType
) → Promise<{{AvatarItemDetails}>}

Gets the item details for a list of items at once. More efficient than AvatarEditorService.GetItemDetails if you need to get all the item details of a list.

promiseCheckApplyDefaultClothing

AvatarEditorUtils.promiseCheckApplyDefaultClothing(humanoidDescriptionHumanoidDescription) → Promise<HumanoidDescription?>

Returns a new HumanoidDescription with the Shirt and Pants properties updated if necessary. Returns nil if default clothing was not needed.

Default clothing is necessary if the HumanoidDescription does not currently have Shirt and Pants equipped and the body colors are too similar.

promiseConformToAvatarRules

AvatarEditorUtils.promiseConformToAvatarRules(humanoidDescriptionHumanoidDescription) → Promise<HumanoidDescription>

Probably makes the humanoid description conform to avatar rules.

promiseAvatarRules

AvatarEditorUtils.promiseAvatarRules() → Promise<AvatarRules>

Returns the platform Avatar rules for things such as scaling, default shirts and pants, number of wearable assets.

https://create.roblox.com/docs/reference/engine/classes/AvatarEditorService#GetAvatarRules

promiseIsFavorited

AvatarEditorUtils.promiseIsFavorited(
itemIdnumber,
itemTypeAvatarItemType
) → Promise<boolean>

This function returns if the Players.LocalPlayer has favorited the given bundle or asset.

promiseSearchCatalog

AvatarEditorUtils.promiseSearchCatalog(catalogSearchParamsCatalogSearchParams) → Promise<CatalogPages>

This function returns if the Players.LocalPlayer has favorited the given bundle or asset.

promiseInventoryPages

AvatarEditorUtils.promiseInventoryPages(assetTypes{AvatarAssetType}) → Promise<InventoryPages>

Returns an InventoryPages object with information about owned items in the users inventory with the given AvatarAssetTypes.

promiseOutfitPages

AvatarEditorUtils.promiseOutfitPages(
outfitSourceOutfitSource,
outfitTypeOutfitType
) → Promise<OutfitPages>

This function returns outfit data for the Players.LocalPlayer. This would be used with Players.GetHumanoidDescriptionFromOutfitId to update the players character to the outfit. Access to this would also depend on AvatarEditorService.PromptAllowInventoryReadAccess being accepted by the user.

promiseRecommendedAssets

AvatarEditorUtils.promiseRecommendedAssets(
assetTypeAvatarAssetType,
contextAssetIdnumber?--

Optional. if not provided just gives recommendations in general

) → Promise<{number}>

This function returns a list of recommendations based on the given AssetType.

https://create.roblox.com/docs/reference/engine/classes/AvatarEditorService#GetRecommendedAssets

warning

This API surface currently returns "AvatarEditorService is not yet enabled" when queried outside of approved games.

promiseRecommendedBundles

AvatarEditorUtils.promiseRecommendedBundles(bundleIdnumber) → Promise<{number}>

This function returns a list of recommended bundles for a given bundle id.

promptAllowInventoryReadAccess

AvatarEditorUtils.promptAllowInventoryReadAccess() → Promise<AvatarPromptResult>

Prompts the Players.LocalPlayer to allow the developer to read what items the user has in their inventory and other avatar editor related information. The prompt needs to be confirmed by the user for the developer to use AvatarEditorService:GetInventory(), AvatarEditorService:GetOutfits() and AvatarEditorService:GetFavorite(). Permission does not persist between sessions.

promptCreateOutfit

AvatarEditorUtils.promptCreateOutfit() → Promise<AvatarPromptResult>

Prompts the Players.LocalPlayer to save the given HumanoidDescription as an outfit.

promptDeleteOutfit

AvatarEditorUtils.promptDeleteOutfit(outfitIdnumber) → Promise<AvatarPromptResult>

Prompts the Players.LocalPlayer to delete the given outfit.

promptRenameOutfit

AvatarEditorUtils.promptRenameOutfit(outfitIdnumber) → Promise<AvatarPromptResult>

Prompts the Players.LocalPlayer to delete the given outfit.

promptSaveAvatar

AvatarEditorUtils.promptSaveAvatar(
humanoidDescriptionHumanoidDescription,
) → Promise<AvatarPromptResult>

promptSetFavorite

AvatarEditorUtils.promptSetFavorite(
itemIdnumber,
itemTypeAvatarItemType,
shouldFavoriteboolean
) → Promise<AvatarPromptResult>

This function prompts the Players.LocalPlayer to favorite or unfavorite the given asset or bundle.

promptUpdateOutfit

AvatarEditorUtils.promptUpdateOutfit(
outfitIdnumber,
updatedOutfitHumanoidDescription,
) → Promise<AvatarPromptResult>

Prompts the Players.LocalPlayer to update the given outfit with the given HumanoidDescription.

Show raw api
{
    "functions": [
        {
            "name": "promiseItemDetails",
            "desc": "This function returns the item details for the given item.\nIt accepts two parameters - the first indicating the ID of the item being retrieved\nand the second indicating its [Enum.ItemType].",
            "params": [
                {
                    "name": "itemId",
                    "desc": "",
                    "lua_type": "number"
                },
                {
                    "name": "itemType",
                    "desc": "",
                    "lua_type": "AvatarItemType"
                }
            ],
            "returns": [
                {
                    "desc": "",
                    "lua_type": "Promise<AvatarItemDetails>"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 80,
                "path": "src/avatareditorutils/src/Shared/AvatarEditorUtils.lua"
            }
        },
        {
            "name": "promiseBatchItemDetails",
            "desc": "Gets the item details for a list of items at once. More efficient than [AvatarEditorService.GetItemDetails]\nif you need to get all the item details of a list.",
            "params": [
                {
                    "name": "itemIds",
                    "desc": "",
                    "lua_type": "{ number }"
                },
                {
                    "name": "itemType",
                    "desc": "",
                    "lua_type": "AvatarItemType"
                }
            ],
            "returns": [
                {
                    "desc": "",
                    "lua_type": "Promise<{ { AvatarItemDetails } >"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 110,
                "path": "src/avatareditorutils/src/Shared/AvatarEditorUtils.lua"
            }
        },
        {
            "name": "promiseCheckApplyDefaultClothing",
            "desc": "Returns a new HumanoidDescription with the Shirt and Pants properties updated if necessary.\nReturns nil if default clothing was not needed.\n\nDefault clothing is necessary if the HumanoidDescription does not currently have Shirt and\nPants equipped and the body colors are too similar.",
            "params": [
                {
                    "name": "humanoidDescription",
                    "desc": "",
                    "lua_type": "HumanoidDescription"
                }
            ],
            "returns": [
                {
                    "desc": "",
                    "lua_type": "Promise<HumanoidDescription?>"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 142,
                "path": "src/avatareditorutils/src/Shared/AvatarEditorUtils.lua"
            }
        },
        {
            "name": "promiseConformToAvatarRules",
            "desc": "Probably makes the humanoid description conform to avatar rules.",
            "params": [
                {
                    "name": "humanoidDescription",
                    "desc": "",
                    "lua_type": "HumanoidDescription"
                }
            ],
            "returns": [
                {
                    "desc": "",
                    "lua_type": "Promise<HumanoidDescription>"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 173,
                "path": "src/avatareditorutils/src/Shared/AvatarEditorUtils.lua"
            }
        },
        {
            "name": "promiseAvatarRules",
            "desc": "Returns the platform Avatar rules for things such as scaling, default shirts and pants, number of wearable assets.\n\nhttps://create.roblox.com/docs/reference/engine/classes/AvatarEditorService#GetAvatarRules",
            "params": [],
            "returns": [
                {
                    "desc": "",
                    "lua_type": "Promise<AvatarRules>"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 245,
                "path": "src/avatareditorutils/src/Shared/AvatarEditorUtils.lua"
            }
        },
        {
            "name": "promiseIsFavorited",
            "desc": "This function returns if the Players.LocalPlayer has favorited the given bundle or asset.",
            "params": [
                {
                    "name": "itemId",
                    "desc": "",
                    "lua_type": "number"
                },
                {
                    "name": "itemType",
                    "desc": "",
                    "lua_type": "AvatarItemType"
                }
            ],
            "returns": [
                {
                    "desc": "",
                    "lua_type": "Promise<boolean>"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 271,
                "path": "src/avatareditorutils/src/Shared/AvatarEditorUtils.lua"
            }
        },
        {
            "name": "promiseSearchCatalog",
            "desc": "This function returns if the Players.LocalPlayer has favorited the given bundle or asset.",
            "params": [
                {
                    "name": "catalogSearchParams",
                    "desc": "",
                    "lua_type": "CatalogSearchParams"
                }
            ],
            "returns": [
                {
                    "desc": "",
                    "lua_type": "Promise<CatalogPages>"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 299,
                "path": "src/avatareditorutils/src/Shared/AvatarEditorUtils.lua"
            }
        },
        {
            "name": "promiseInventoryPages",
            "desc": "Returns an InventoryPages object with information about owned items in the users inventory with the given AvatarAssetTypes.",
            "params": [
                {
                    "name": "assetTypes",
                    "desc": "",
                    "lua_type": "{ AvatarAssetType }"
                }
            ],
            "returns": [
                {
                    "desc": "",
                    "lua_type": "Promise<InventoryPages>"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 326,
                "path": "src/avatareditorutils/src/Shared/AvatarEditorUtils.lua"
            }
        },
        {
            "name": "promiseOutfitPages",
            "desc": "This function returns outfit data for the Players.LocalPlayer. This would be used with\n[Players.GetHumanoidDescriptionFromOutfitId] to update the players character to the outfit.\nAccess to this would also depend on [AvatarEditorService.PromptAllowInventoryReadAccess]\nbeing accepted by the user.",
            "params": [
                {
                    "name": "outfitSource",
                    "desc": "",
                    "lua_type": "OutfitSource"
                },
                {
                    "name": "outfitType",
                    "desc": "",
                    "lua_type": "OutfitType"
                }
            ],
            "returns": [
                {
                    "desc": "",
                    "lua_type": "Promise<OutfitPages>"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 357,
                "path": "src/avatareditorutils/src/Shared/AvatarEditorUtils.lua"
            }
        },
        {
            "name": "promiseRecommendedAssets",
            "desc": "This function returns a list of recommendations based on the given AssetType.\n\nhttps://create.roblox.com/docs/reference/engine/classes/AvatarEditorService#GetRecommendedAssets\n\n:::warning\nThis API surface currently returns \"AvatarEditorService is not yet enabled\" when queried outside\nof approved games.\n:::",
            "params": [
                {
                    "name": "assetType",
                    "desc": "",
                    "lua_type": "AvatarAssetType"
                },
                {
                    "name": "contextAssetId",
                    "desc": "Optional. if not provided just gives recommendations in general",
                    "lua_type": "number?"
                }
            ],
            "returns": [
                {
                    "desc": "",
                    "lua_type": "Promise<{ number }>"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 393,
                "path": "src/avatareditorutils/src/Shared/AvatarEditorUtils.lua"
            }
        },
        {
            "name": "promiseRecommendedBundles",
            "desc": "This function returns a list of recommended bundles for a given bundle id.",
            "params": [
                {
                    "name": "bundleId",
                    "desc": "",
                    "lua_type": "number"
                }
            ],
            "returns": [
                {
                    "desc": "",
                    "lua_type": "Promise<{ number }>"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 419,
                "path": "src/avatareditorutils/src/Shared/AvatarEditorUtils.lua"
            }
        },
        {
            "name": "promptAllowInventoryReadAccess",
            "desc": "Prompts the Players.LocalPlayer to allow the developer to read what items the user has in their inventory and other\navatar editor related information. The prompt needs to be confirmed by the user for the developer to use\nAvatarEditorService:GetInventory(), AvatarEditorService:GetOutfits() and AvatarEditorService:GetFavorite(). Permission\ndoes not persist between sessions.",
            "params": [],
            "returns": [
                {
                    "desc": "",
                    "lua_type": "Promise<AvatarPromptResult>"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 448,
                "path": "src/avatareditorutils/src/Shared/AvatarEditorUtils.lua"
            }
        },
        {
            "name": "promptCreateOutfit",
            "desc": "Prompts the Players.LocalPlayer to save the given HumanoidDescription as an outfit.",
            "params": [
                {
                    "name": "outfit",
                    "desc": "",
                    "lua_type": "HumanoidDescription"
                },
                {
                    "name": "rigType",
                    "desc": "",
                    "lua_type": "HumanoidRigType"
                }
            ],
            "returns": [
                {
                    "desc": "",
                    "lua_type": "Promise<AvatarPromptResult>"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 479,
                "path": "src/avatareditorutils/src/Shared/AvatarEditorUtils.lua"
            }
        },
        {
            "name": "promptDeleteOutfit",
            "desc": "Prompts the Players.LocalPlayer to delete the given outfit.",
            "params": [
                {
                    "name": "outfitId",
                    "desc": "",
                    "lua_type": "number"
                }
            ],
            "returns": [
                {
                    "desc": "",
                    "lua_type": "Promise<AvatarPromptResult>"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 512,
                "path": "src/avatareditorutils/src/Shared/AvatarEditorUtils.lua"
            }
        },
        {
            "name": "promptRenameOutfit",
            "desc": "Prompts the Players.LocalPlayer to delete the given outfit.",
            "params": [
                {
                    "name": "outfitId",
                    "desc": "",
                    "lua_type": "number"
                }
            ],
            "returns": [
                {
                    "desc": "",
                    "lua_type": "Promise<AvatarPromptResult>"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 544,
                "path": "src/avatareditorutils/src/Shared/AvatarEditorUtils.lua"
            }
        },
        {
            "name": "promptSaveAvatar",
            "desc": "",
            "params": [
                {
                    "name": "humanoidDescription",
                    "desc": "",
                    "lua_type": "HumanoidDescription"
                },
                {
                    "name": "rigType",
                    "desc": "",
                    "lua_type": "HumanoidRigType"
                }
            ],
            "returns": [
                {
                    "desc": "",
                    "lua_type": "Promise<AvatarPromptResult>"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 575,
                "path": "src/avatareditorutils/src/Shared/AvatarEditorUtils.lua"
            }
        },
        {
            "name": "promptSetFavorite",
            "desc": "This function prompts the Players.LocalPlayer to favorite or unfavorite the given asset or bundle.",
            "params": [
                {
                    "name": "itemId",
                    "desc": "",
                    "lua_type": "number"
                },
                {
                    "name": "itemType",
                    "desc": "",
                    "lua_type": "AvatarItemType"
                },
                {
                    "name": "shouldFavorite",
                    "desc": "",
                    "lua_type": "boolean"
                }
            ],
            "returns": [
                {
                    "desc": "",
                    "lua_type": "Promise<AvatarPromptResult>"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 610,
                "path": "src/avatareditorutils/src/Shared/AvatarEditorUtils.lua"
            }
        },
        {
            "name": "promptUpdateOutfit",
            "desc": "Prompts the Players.LocalPlayer to update the given outfit with the given HumanoidDescription.",
            "params": [
                {
                    "name": "outfitId",
                    "desc": "",
                    "lua_type": "number"
                },
                {
                    "name": "updatedOutfit",
                    "desc": "",
                    "lua_type": "HumanoidDescription"
                },
                {
                    "name": "rigType",
                    "desc": "",
                    "lua_type": "HumanoidRigType"
                }
            ],
            "returns": [
                {
                    "desc": "",
                    "lua_type": "Promise<AvatarPromptResult>"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 646,
                "path": "src/avatareditorutils/src/Shared/AvatarEditorUtils.lua"
            }
        }
    ],
    "properties": [],
    "types": [
        {
            "name": "AvatarItemBundledItemDetails",
            "desc": "Holds item details for a bundle\nhttps://create.roblox.com/docs/reference/engine/classes/AvatarEditorService#GetItemDetails",
            "fields": [
                {
                    "name": "Owned",
                    "lua_type": "boolean",
                    "desc": ""
                },
                {
                    "name": "Id",
                    "lua_type": "number",
                    "desc": ""
                },
                {
                    "name": "Name",
                    "lua_type": "string",
                    "desc": ""
                },
                {
                    "name": "Type",
                    "lua_type": "string",
                    "desc": ""
                }
            ],
            "source": {
                "line": 28,
                "path": "src/avatareditorutils/src/Shared/AvatarEditorUtils.lua"
            }
        },
        {
            "name": "PremiumPricingItemDetails",
            "desc": "Holds premium pricing detail\nhttps://create.roblox.com/docs/reference/engine/classes/AvatarEditorService#GetItemDetails",
            "fields": [
                {
                    "name": "PremiumDiscountPercentage",
                    "lua_type": "number",
                    "desc": ""
                },
                {
                    "name": "PremiumPriceInRobux",
                    "lua_type": "number",
                    "desc": ""
                }
            ],
            "source": {
                "line": 37,
                "path": "src/avatareditorutils/src/Shared/AvatarEditorUtils.lua"
            }
        },
        {
            "name": "AvatarItemDetails",
            "desc": "A table with a variety of information about avatar items and details.\nhttps://create.roblox.com/docs/reference/engine/classes/AvatarEditorService#GetItemDetails",
            "fields": [
                {
                    "name": "IsForRent",
                    "lua_type": "boolean",
                    "desc": ""
                },
                {
                    "name": "ExpectedSellerId",
                    "lua_type": "number",
                    "desc": ""
                },
                {
                    "name": "Owned",
                    "lua_type": "boolean",
                    "desc": ""
                },
                {
                    "name": "IsPurchasable",
                    "lua_type": "boolean",
                    "desc": ""
                },
                {
                    "name": "Id",
                    "lua_type": "number",
                    "desc": ""
                },
                {
                    "name": "ItemType",
                    "lua_type": "\"Asset\" | \"Bundle\" | string",
                    "desc": ""
                },
                {
                    "name": "AssetType",
                    "lua_type": "\"Image\" | string",
                    "desc": ""
                },
                {
                    "name": "BundleType",
                    "lua_type": "\"BodyParts\" | string",
                    "desc": ""
                },
                {
                    "name": "Name",
                    "lua_type": "string",
                    "desc": ""
                },
                {
                    "name": "Description",
                    "lua_type": "string",
                    "desc": ""
                },
                {
                    "name": "ProductId",
                    "lua_type": "number",
                    "desc": ""
                },
                {
                    "name": "Genres",
                    "lua_type": "{ string }",
                    "desc": ""
                },
                {
                    "name": "BundledItems",
                    "lua_type": "{ AvatarItemBundledItemDetails }",
                    "desc": ""
                },
                {
                    "name": "ItemStatus",
                    "lua_type": "{ string }",
                    "desc": ""
                },
                {
                    "name": "ItemRestrictions",
                    "lua_type": "{ \"ThirteenPlus\" }",
                    "desc": ""
                },
                {
                    "name": "CreatorType",
                    "lua_type": "\"User\" | string",
                    "desc": ""
                },
                {
                    "name": "CreatorTargetId",
                    "lua_type": "number",
                    "desc": ""
                },
                {
                    "name": "CreatorName",
                    "lua_type": "string",
                    "desc": ""
                },
                {
                    "name": "Price",
                    "lua_type": "number",
                    "desc": ""
                },
                {
                    "name": "PremiumPricing",
                    "lua_type": "PremiumPricingItemDetails",
                    "desc": ""
                },
                {
                    "name": "LowestPrice",
                    "lua_type": "number",
                    "desc": ""
                },
                {
                    "name": "PriceStatus",
                    "lua_type": "string",
                    "desc": ""
                },
                {
                    "name": "UnitsAvailableForConsumption",
                    "lua_type": "number",
                    "desc": ""
                },
                {
                    "name": "PurchaseCount",
                    "lua_type": "number",
                    "desc": ""
                },
                {
                    "name": "FavoriteCount",
                    "lua_type": "number",
                    "desc": ""
                }
            ],
            "source": {
                "line": 70,
                "path": "src/avatareditorutils/src/Shared/AvatarEditorUtils.lua"
            }
        },
        {
            "name": "AvatarRulesWearableAssetType",
            "desc": "https://create.roblox.com/docs/reference/engine/classes/AvatarEditorService#GetAvatarRules",
            "fields": [
                {
                    "name": "MaxNumber",
                    "lua_type": "number",
                    "desc": ""
                },
                {
                    "name": "Id",
                    "lua_type": "number",
                    "desc": ""
                },
                {
                    "name": "Name",
                    "lua_type": "string",
                    "desc": ""
                }
            ],
            "source": {
                "line": 203,
                "path": "src/avatareditorutils/src/Shared/AvatarEditorUtils.lua"
            }
        },
        {
            "name": "AvatarRulesBodyColor",
            "desc": "https://create.roblox.com/docs/reference/engine/classes/AvatarEditorService#GetAvatarRules",
            "fields": [
                {
                    "name": "BrickColorId",
                    "lua_type": "0",
                    "desc": ""
                },
                {
                    "name": "NexColor",
                    "lua_type": "string",
                    "desc": ""
                },
                {
                    "name": "Name",
                    "lua_type": "string",
                    "desc": ""
                }
            ],
            "source": {
                "line": 213,
                "path": "src/avatareditorutils/src/Shared/AvatarEditorUtils.lua"
            }
        },
        {
            "name": "AvatarRuleDefaultClothingAssetLists",
            "desc": "",
            "fields": [
                {
                    "name": "DefaultShirtAssetIds",
                    "lua_type": "{ number }",
                    "desc": ""
                },
                {
                    "name": "DefaultPantAssetIds",
                    "lua_type": "{ number }",
                    "desc": ""
                }
            ],
            "source": {
                "line": 220,
                "path": "src/avatareditorutils/src/Shared/AvatarEditorUtils.lua"
            }
        },
        {
            "name": "AvatarRules",
            "desc": "https://create.roblox.com/docs/reference/engine/classes/AvatarEditorService#GetAvatarRules",
            "fields": [
                {
                    "name": "PlayerAvatarTypes",
                    "lua_type": "\"R6\" | \"R15\" | string",
                    "desc": ""
                },
                {
                    "name": "Scales",
                    "lua_type": "table",
                    "desc": ""
                },
                {
                    "name": "WearableAssetTypes\":",
                    "lua_type": "{ AvatarRulesWearableAssetType }",
                    "desc": ""
                },
                {
                    "name": "BodyColorsPalette\":",
                    "lua_type": "{ AvatarRulesBodyColor }",
                    "desc": ""
                },
                {
                    "name": "BasicBodyColorsPalette\":",
                    "lua_type": "{ AvatarRulesBodyColor }",
                    "desc": ""
                },
                {
                    "name": "MinimumDeltaEBodyColorDifference",
                    "lua_type": "number",
                    "desc": ""
                },
                {
                    "name": "ProportionsAndBodyTypeEnabledForUser",
                    "lua_type": "boolean",
                    "desc": ""
                },
                {
                    "name": "DefaultClothingAssetLists\":",
                    "lua_type": "AvatarRuleDefaultClothingAssetLists",
                    "desc": ""
                },
                {
                    "name": "BundlesEnabledForUser",
                    "lua_type": "boolean",
                    "desc": ""
                },
                {
                    "name": "EmotesEnabledForUser",
                    "lua_type": "boolean",
                    "desc": ""
                }
            ],
            "source": {
                "line": 237,
                "path": "src/avatareditorutils/src/Shared/AvatarEditorUtils.lua"
            }
        }
    ],
    "name": "AvatarEditorUtils",
    "desc": "Provides utilities to query the AvatarEditorService with a promise wrapper.",
    "source": {
        "line": 6,
        "path": "src/avatareditorutils/src/Shared/AvatarEditorUtils.lua"
    }
}