{
    "description": {
        "author": "Salesforce",
        "text": [
            "Component that displays animated loading stars with optional assistive text.",
            "Contains three star SVG elements with twinkling animations and fade-in effects.",
            "Selector: experience_ui_gen_canvas-loading-stars"
        ]
    },
    "shadow": {
        "elements": [
            {
                "name": "starContainer",
                "selector": {
                    "css": ".star-container"
                },
                "type": "container",
                "description": "Main container that holds all the star elements and assistive text",
                "wait": true,
                "elements": [
                    {
                        "name": "star1",
                        "selector": {
                            "css": ".star1"
                        },
                        "description": "First animated star SVG element",
                        "wait": true
                    },
                    {
                        "name": "star2",
                        "selector": {
                            "css": ".star2"
                        },
                        "description": "Second animated star SVG element with delayed animation",
                        "wait": true
                    },
                    {
                        "name": "star3",
                        "selector": {
                            "css": ".star3"
                        },
                        "description": "Third animated star SVG element with longest delay",
                        "wait": true
                    },
                    {
                        "name": "assistiveText",
                        "selector": {
                            "css": ".slds-assistive-text"
                        },
                        "description": "Screen reader accessible text element that displays the loading message",
                        "wait": false
                    }
                ]
            }
        ]
    },
    "methods": [
        {
            "name": "areAllStarsPresent",
            "description": {
                "text": [
                    "Check if all three star elements are present in the DOM"
                ],
                "return": "boolean"
            },
            "compose": [
                {
                    "element": "star1",
                    "apply": "isPresent"
                },
                {
                    "element": "star2",
                    "apply": "isPresent"
                },
                {
                    "element": "star3",
                    "apply": "isPresent"
                }
            ]
        },
        {
            "name": "isAssistiveTextPresent",
            "description": {
                "text": [
                    "Check if the assistive text element is present"
                ],
                "return": "boolean"
            },
            "compose": [
                {
                    "element": "assistiveText",
                    "apply": "isPresent"
                }
            ]
        },
        {
            "name": "getAssistiveText",
            "description": {
                "text": [
                    "Get the text content from the assistive text element"
                ],
                "return": "string"
            },
            "compose": [
                {
                    "element": "assistiveText",
                    "apply": "getText"
                }
            ]
        }
    ]
}