{
  "$schema": "http://json.schemastore.org/web-types",
  "name": "@cps-elements/web",
  "version": "0.24.0",
  "description-markup": "markdown",
  "framework-config": {
    "enable-when": {
      "node-packages": [
        "@cps-elements/web"
      ]
    }
  },
  "contributions": {
    "html": {
      "elements": [
        {
          "name": "cps-accordion",
          "description": "",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/accordion",
          "js": {
            "properties": [
              {
                "name": "hasSlotController",
                "value": {}
              },
              {
                "name": "localize",
                "value": {}
              },
              {
                "name": "header",
                "value": {
                  "type": "HTMLButtonElement"
                }
              },
              {
                "name": "content",
                "value": {
                  "type": "HTMLDivElement"
                }
              },
              {
                "name": "open",
                "description": "Indica se o _accordion_ está aberto, ou seja, se o seu conteúdo interno está sendo exibido. Você pode alternar este atributo, manualmente ou reativamente. Opcionalmente, pode utilizar os métodos `show()` e `hide()` se preferir uma abordagem imperativa, e este atributo refletirá o estado aberto do _accordion_ em tempo real.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "subtitle",
                "description": "Um subtítulo opcional para o cabeçalho do _accordion_.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "title",
                "description": "O título obrigatório do cabeçalho do _accordion_.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "handleOpenChange",
                "value": {}
              },
              {
                "name": "show",
                "description": "Exibe o conteúdo associado a este _accordion_.",
                "value": {}
              },
              {
                "name": "hide",
                "description": "Oculta o conteúdo associado a este _accordion_.",
                "value": {}
              },
              {
                "name": "click",
                "description": "Simula um _click_ no cabeçalho.",
                "value": {}
              },
              {
                "name": "focus",
                "description": "Coloca o foco no cabeçalho.",
                "value": {}
              },
              {
                "name": "blur",
                "description": "Remove o foco do cabeçalho.",
                "value": {}
              }
            ],
            "events": [
              {
                "name": "cps-show",
                "description": "Emitido quando o _accordion_ de opções começa a ser exibida."
              },
              {
                "name": "cps-after-show",
                "description": "Emitido após o _accordion_ de opções ser exibida e todas as animações terem sido concluídas."
              },
              {
                "name": "cps-hide",
                "description": "Emitido quando o _accordion_ de opções começa a ser ocultada."
              },
              {
                "name": "cps-after-hide",
                "description": "Emitido após o _accordion_ de opções ser ocultada e todas as animações terem sido concluídas."
              }
            ]
          },
          "attributes": [
            {
              "name": "open",
              "description": "Indica se o _accordion_ está aberto, ou seja, se o seu conteúdo interno está sendo exibido. Você pode alternar este atributo, manualmente ou reativamente. Opcionalmente, pode utilizar os métodos `show()` e `hide()` se preferir uma abordagem imperativa, e este atributo refletirá o estado aberto do _accordion_ em tempo real.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "subtitle",
              "description": "Um subtítulo opcional para o cabeçalho do _accordion_.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "title",
              "description": "O título obrigatório do cabeçalho do _accordion_.",
              "value": {
                "type": "string"
              }
            }
          ]
        },
        {
          "name": "cps-accordion-group",
          "description": "",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/accordion-group",
          "js": {
            "properties": [
              {
                "name": "activeAccordion",
                "value": {
                  "type": "CpsAccordion | undefined"
                }
              },
              {
                "name": "accordions",
                "value": {
                  "type": "CpsAccordion[]"
                }
              },
              {
                "name": "multiple",
                "description": "Permite que múltiplos _accordions_ sejam abertos simultaneamente.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "getAllAccordions",
                "value": {}
              },
              {
                "name": "setActiveAccordion",
                "value": {}
              },
              {
                "name": "handleClick",
                "value": {}
              }
            ],
            "events": []
          },
          "attributes": [
            {
              "name": "multiple",
              "description": "Permite que múltiplos _accordions_ sejam abertos simultaneamente.",
              "value": {
                "type": "boolean"
              }
            }
          ]
        },
        {
          "name": "cps-avatar",
          "description": "",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/avatar",
          "js": {
            "properties": [
              {
                "name": "localize",
                "value": {}
              },
              {
                "name": "hasError",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "generatedInitials",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "generatedBackground",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "src",
                "description": "O caminho da imagem principal a ser utilizada como avatar.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "srcset",
                "description": "O atributo `srcset` opcional do elemento `<img>`, para diferentes resoluções ou tamanhos de imagem.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "label",
                "description": "Um rótulo que descreve a imagem, comumente o nome da entidade representada pelo avatar (por exemplo,\no nome de uma pessoa). Também é utilizado para geração de iniciais, caso `initials` seja `auto`.\nMesmo que não seja, considere como um atributo obrigatório, para acessibilidade apropriada do avatar.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "initials",
                "description": "Quando vazio (o padrão), nenhuma inicial é exibida, e o _slot_ `icon` é utilizado.\nQuando `auto`, as iniciais são geradas automaticamente a partir do `label`.\nCaso contrário, as iniciais são definidas explicitamente neste atributo.",
                "value": {
                  "type": "'auto' | string"
                }
              },
              {
                "name": "loading",
                "description": "O atributo `loading` do elemento `<img>` que exibe a imagem do avatar.",
                "value": {
                  "type": "'eager' | 'lazy'"
                }
              },
              {
                "name": "shape",
                "description": "Define a forma do avatar, circular por padrão.",
                "value": {
                  "type": "'circle' | 'square' | 'rounded'"
                }
              },
              {
                "name": "color",
                "description": "Quando `auto` (o padrão), a cor de fundo do avatar é gerada automaticamente a partir do `label`.\nQuando `none`, nenhuma cor de fundo é exibida (usando então um cinza neutro intermediário).\nCaso contrário, a cor de fundo é definida explicitamente neste atributo.",
                "value": {
                  "type": "'auto' | 'none' | string"
                }
              },
              {
                "name": "noTooltip",
                "description": "Se verdadeiro, desativa completamente a exibição de dica de ferramenta com o conteúdo do `label`.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "size",
                "description": "O tamanho do avatar. Por padrão, o tamanho é calculado como o dobro do tamanho de fonte do elemento pai.",
                "value": {
                  "type": "| 'inherit'\n    | 'stamp'\n    | 'caption'\n    | 'label'\n    | 'body'\n    | 'body-emphasized'\n    | 'body-strong'\n    | 'body-large'\n    | 'subtitle'\n    | 'title'\n    | 'heading'\n    | 'display'"
                }
              },
              {
                "name": "handleSrcChange",
                "value": {}
              },
              {
                "name": "handleImageError",
                "value": {}
              },
              {
                "name": "handleLabelChange",
                "value": {}
              },
              {
                "name": "handleRangeChanges",
                "value": {}
              },
              {
                "name": "updateInitials",
                "value": {}
              },
              {
                "name": "updateBackground",
                "value": {}
              },
              {
                "name": "getHash",
                "value": {}
              },
              {
                "name": "normalizeHash",
                "value": {}
              }
            ],
            "events": []
          },
          "attributes": [
            {
              "name": "src",
              "description": "O caminho da imagem principal a ser utilizada como avatar.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "srcset",
              "description": "O atributo `srcset` opcional do elemento `<img>`, para diferentes resoluções ou tamanhos de imagem.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "label",
              "description": "Um rótulo que descreve a imagem, comumente o nome da entidade representada pelo avatar (por exemplo,\no nome de uma pessoa). Também é utilizado para geração de iniciais, caso `initials` seja `auto`.\nMesmo que não seja, considere como um atributo obrigatório, para acessibilidade apropriada do avatar.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "initials",
              "description": "Quando vazio (o padrão), nenhuma inicial é exibida, e o _slot_ `icon` é utilizado.\nQuando `auto`, as iniciais são geradas automaticamente a partir do `label`.\nCaso contrário, as iniciais são definidas explicitamente neste atributo.",
              "value": {
                "type": "'auto' | string"
              }
            },
            {
              "name": "loading",
              "description": "O atributo `loading` do elemento `<img>` que exibe a imagem do avatar.",
              "value": {
                "type": "'eager' | 'lazy'"
              }
            },
            {
              "name": "shape",
              "description": "Define a forma do avatar, circular por padrão.",
              "value": {
                "type": "'circle' | 'square' | 'rounded'"
              }
            },
            {
              "name": "color",
              "description": "Quando `auto` (o padrão), a cor de fundo do avatar é gerada automaticamente a partir do `label`.\nQuando `none`, nenhuma cor de fundo é exibida (usando então um cinza neutro intermediário).\nCaso contrário, a cor de fundo é definida explicitamente neste atributo.",
              "value": {
                "type": "'auto' | 'none' | string"
              }
            },
            {
              "name": "no-tooltip",
              "description": "Se verdadeiro, desativa completamente a exibição de dica de ferramenta com o conteúdo do `label`.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "size",
              "description": "O tamanho do avatar. Por padrão, o tamanho é calculado como o dobro do tamanho de fonte do elemento pai.",
              "value": {
                "type": "| 'inherit'\n    | 'stamp'\n    | 'caption'\n    | 'label'\n    | 'body'\n    | 'body-emphasized'\n    | 'body-strong'\n    | 'body-large'\n    | 'subtitle'\n    | 'title'\n    | 'heading'\n    | 'display'"
              }
            }
          ]
        },
        {
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/",
          "js": {
            "properties": [],
            "events": []
          },
          "attributes": []
        },
        {
          "name": "cps-background",
          "description": "",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/background",
          "js": {
            "properties": [
              {
                "name": "variant",
                "description": "O tipo de variação visual do plano de fundo.",
                "value": {
                  "type": "'base' | 'acrylic' | 'blurred'"
                }
              },
              {
                "name": "centered",
                "description": "Automaticamente centraliza o conteúdo do plano de fundo.",
                "value": {
                  "type": "boolean"
                }
              }
            ],
            "events": []
          },
          "attributes": [
            {
              "name": "variant",
              "description": "O tipo de variação visual do plano de fundo.",
              "value": {
                "type": "'base' | 'acrylic' | 'blurred'"
              }
            },
            {
              "name": "centered",
              "description": "Automaticamente centraliza o conteúdo do plano de fundo.",
              "value": {
                "type": "boolean"
              }
            }
          ]
        },
        {
          "name": "cps-badge",
          "description": "",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/badge",
          "js": {
            "properties": [
              {
                "name": "hasSlotController",
                "value": {}
              },
              {
                "name": "variant",
                "description": "A variante temática do _badge_.",
                "value": {
                  "type": "'neutral' | 'informative' | 'warning' | 'critical' | 'success'"
                }
              },
              {
                "name": "icon",
                "description": "Exibe ícone automático de acordo com a variante, ao invés de permitir conteúdo arbitrário no _badge_.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "square",
                "description": "Força o _badge_ a um formato retangular, sem arredondamento de bordas.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "pulse",
                "description": "Efeito pulsante para chamar atenção extra.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "hasSingleCharacter",
                "value": {}
              },
              {
                "name": "hasIcon",
                "value": {}
              }
            ],
            "events": []
          },
          "attributes": [
            {
              "name": "variant",
              "description": "A variante temática do _badge_.",
              "value": {
                "type": "'neutral' | 'informative' | 'warning' | 'critical' | 'success'"
              }
            },
            {
              "name": "icon",
              "description": "Exibe ícone automático de acordo com a variante, ao invés de permitir conteúdo arbitrário no _badge_.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "square",
              "description": "Força o _badge_ a um formato retangular, sem arredondamento de bordas.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "pulse",
              "description": "Efeito pulsante para chamar atenção extra.",
              "value": {
                "type": "boolean"
              }
            }
          ]
        },
        {
          "name": "cps-button",
          "description": "",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/button",
          "js": {
            "properties": [
              {
                "name": "formControlController",
                "value": {}
              },
              {
                "name": "hasSlotController",
                "value": {}
              },
              {
                "name": "localize",
                "value": {}
              },
              {
                "name": "button",
                "value": {
                  "type": "HTMLButtonElement | HTMLAnchorElement"
                }
              },
              {
                "name": "isFocused",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "invalid",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "title",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "variant",
                "description": "A variante visual para apresentação do botão.",
                "value": {
                  "type": "'default' | 'accent' | 'transparent'"
                }
              },
              {
                "name": "size",
                "description": "O tamanho do botão.",
                "value": {
                  "type": "'small' | 'medium' | 'large'"
                }
              },
              {
                "name": "caret",
                "description": "Apresenta um sinalizador de menu ao final do botão. Usado para indicar que o botão dispara um menu de contexto ou algum comportamento similar.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "disabled",
                "description": "Desabilita o botão.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "waiting",
                "description": "Apresenta o botão em estado de carregamento.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "rounded",
                "description": "Arredondamento dos cantos do botão, com o padrão sendo bordas arredondas em `4px`.",
                "value": {
                  "type": "'default' | 'corner' | 'full'"
                }
              },
              {
                "name": "type",
                "description": "O tipo do botão. Observe que o valor padrão é `button` ao invés de `submit`, o oposto de como um\n`<button>` nativo se comporta. Quando `submit`, o botão auto-submete o `<form>` em que estiver contido.",
                "value": {
                  "type": "'button' | 'submit' | 'reset'"
                }
              },
              {
                "name": "name",
                "description": "O nome do botão, submetido em par _name_/_value_ com os dados do formulário,\nsomente se este botão for o submissor. Ignorado quando `href` está presente.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "value",
                "description": "O valor do botão, submetido em par _name_/_value_ com os dados do formulário,\nsomente se este botão for o submissor. Ignorado quando `href` está presente.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "href",
                "description": "Quando definido, o botão será renderizado como um elemento `<a>` com este `href` definido, ao invés de um elemento `<button>`.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "target",
                "description": "Informa o navegador qual o alvo de abertura do _link_. Usado somente se `href` estiver presente.",
                "value": {
                  "type": "'_blank' | '_parent' | '_self' | '_top'"
                }
              },
              {
                "name": "rel",
                "description": "Quando usando `href`, este atributo irá mapear o valor do atributo `rel` subjacente com o valor\npadrão `noreferrer noopener`, por questões de segurança. No entanto, se você estiver usando `target`\npara apontar para uma guia/janela específica, isso impedirá que ele funcione corretamente.\nPara este cenário específico, defina como vazio ou altere o valor de `rel` para outro valor.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "download",
                "description": "Informa o navegador para baixar o arquivo vinculado, com o nome definido aqui. Usado somente se `href` estiver presente.",
                "value": {
                  "type": "string | undefined"
                }
              },
              {
                "name": "form",
                "description": "O formulário \"dono\" deste botão. Se não informado, o formulário mais próximo na hierarquia\naté este botão será utilizado. Se informado, o valor deve ser um `id` único de um formulário\nexistente no documento.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "formAction",
                "description": "Usado para sobrescrever o atributo `action` do formulário \"dono\" deste botão.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "formEnctype",
                "description": "Usado para sobrescrever o atributo `enctype` do formulário \"dono\" deste botão.",
                "value": {
                  "type": "'application/x-www-form-urlencoded' | 'multipart/form-data' | 'text/plain'"
                }
              },
              {
                "name": "formMethod",
                "description": "Usado para sobrescrever o atributo `method` do formulário \"dono\" deste botão.",
                "value": {
                  "type": "'post' | 'get'"
                }
              },
              {
                "name": "formNoValidate",
                "description": "Usado para sobrescrever o atributo `novalidate` do formulário \"dono\" deste botão.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "formTarget",
                "description": "Usado para sobrescrever o atributo `target` do formulário \"dono\" deste botão.",
                "value": {
                  "type": "'_self' | '_blank' | '_parent' | '_top' | string"
                }
              },
              {
                "name": "validity",
                "description": "Obtém o objeto de estado de validade do botão.",
                "value": {}
              },
              {
                "name": "validationMessage",
                "description": "Obtém a mensagem de validação do botão.",
                "value": {}
              },
              {
                "name": "handleBlur",
                "value": {}
              },
              {
                "name": "handleFocus",
                "value": {}
              },
              {
                "name": "handleClick",
                "value": {}
              },
              {
                "name": "handleHostClick",
                "value": {}
              },
              {
                "name": "handleInvalid",
                "value": {}
              },
              {
                "name": "isButton",
                "value": {}
              },
              {
                "name": "isLink",
                "value": {}
              },
              {
                "name": "handleDisabledChange",
                "value": {}
              },
              {
                "name": "click",
                "description": "Simula um _click_ no botão.",
                "value": {}
              },
              {
                "name": "focus",
                "description": "Coloca o foco no botão.",
                "value": {}
              },
              {
                "name": "blur",
                "description": "Remove o foco do botão.",
                "value": {}
              },
              {
                "name": "checkValidity",
                "description": "Verifica a validade em um formulário, sem exibir uma mensagem de validação. Retorna `true` quando válido, e `false` quando inválido.",
                "value": {}
              },
              {
                "name": "getForm",
                "description": "Obtém o formulário associado com este componente, se algum estiver.",
                "value": {}
              },
              {
                "name": "reportValidity",
                "description": "Verifica a validade em um formulário, e exibe as mensagem de validação do navegador caso o resultado seja inválido.",
                "value": {}
              },
              {
                "name": "setCustomValidity",
                "description": "Define uma mensagem de validação personalizada. Passar uma `string` vazia como argumento restaura a validade do elemento.",
                "value": {}
              }
            ],
            "events": [
              {
                "name": "cps-blur",
                "description": "Emitido quando o botão perde o foco."
              },
              {
                "name": "cps-focus",
                "description": "Emitido quando o botão obtém o foco."
              },
              {
                "name": "cps-invalid",
                "description": "Emitido quando o elemento de formulário foi checado sobre sua validade, e suas condições não foram satisfeitas."
              }
            ]
          },
          "attributes": [
            {
              "name": "title",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "variant",
              "description": "A variante visual para apresentação do botão.",
              "value": {
                "type": "'default' | 'accent' | 'transparent'"
              }
            },
            {
              "name": "size",
              "description": "O tamanho do botão.",
              "value": {
                "type": "'small' | 'medium' | 'large'"
              }
            },
            {
              "name": "caret",
              "description": "Apresenta um sinalizador de menu ao final do botão. Usado para indicar que o botão dispara um menu de contexto ou algum comportamento similar.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "disabled",
              "description": "Desabilita o botão.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "waiting",
              "description": "Apresenta o botão em estado de carregamento.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "rounded",
              "description": "Arredondamento dos cantos do botão, com o padrão sendo bordas arredondas em `4px`.",
              "value": {
                "type": "'default' | 'corner' | 'full'"
              }
            },
            {
              "name": "type",
              "description": "O tipo do botão. Observe que o valor padrão é `button` ao invés de `submit`, o oposto de como um\n`<button>` nativo se comporta. Quando `submit`, o botão auto-submete o `<form>` em que estiver contido.",
              "value": {
                "type": "'button' | 'submit' | 'reset'"
              }
            },
            {
              "name": "name",
              "description": "O nome do botão, submetido em par _name_/_value_ com os dados do formulário,\nsomente se este botão for o submissor. Ignorado quando `href` está presente.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "value",
              "description": "O valor do botão, submetido em par _name_/_value_ com os dados do formulário,\nsomente se este botão for o submissor. Ignorado quando `href` está presente.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "href",
              "description": "Quando definido, o botão será renderizado como um elemento `<a>` com este `href` definido, ao invés de um elemento `<button>`.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "target",
              "description": "Informa o navegador qual o alvo de abertura do _link_. Usado somente se `href` estiver presente.",
              "value": {
                "type": "'_blank' | '_parent' | '_self' | '_top'"
              }
            },
            {
              "name": "rel",
              "description": "Quando usando `href`, este atributo irá mapear o valor do atributo `rel` subjacente com o valor\npadrão `noreferrer noopener`, por questões de segurança. No entanto, se você estiver usando `target`\npara apontar para uma guia/janela específica, isso impedirá que ele funcione corretamente.\nPara este cenário específico, defina como vazio ou altere o valor de `rel` para outro valor.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "download",
              "description": "Informa o navegador para baixar o arquivo vinculado, com o nome definido aqui. Usado somente se `href` estiver presente.",
              "value": {
                "type": "string | undefined"
              }
            },
            {
              "name": "form",
              "description": "O formulário \"dono\" deste botão. Se não informado, o formulário mais próximo na hierarquia\naté este botão será utilizado. Se informado, o valor deve ser um `id` único de um formulário\nexistente no documento.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "formaction",
              "description": "Usado para sobrescrever o atributo `action` do formulário \"dono\" deste botão.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "formenctype",
              "description": "Usado para sobrescrever o atributo `enctype` do formulário \"dono\" deste botão.",
              "value": {
                "type": "'application/x-www-form-urlencoded' | 'multipart/form-data' | 'text/plain'"
              }
            },
            {
              "name": "formmethod",
              "description": "Usado para sobrescrever o atributo `method` do formulário \"dono\" deste botão.",
              "value": {
                "type": "'post' | 'get'"
              }
            },
            {
              "name": "formnovalidate",
              "description": "Usado para sobrescrever o atributo `novalidate` do formulário \"dono\" deste botão.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "formtarget",
              "description": "Usado para sobrescrever o atributo `target` do formulário \"dono\" deste botão.",
              "value": {
                "type": "'_self' | '_blank' | '_parent' | '_top' | string"
              }
            }
          ]
        },
        {
          "name": "cps-button-group",
          "description": "",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/button-group",
          "js": {
            "properties": [
              {
                "name": "defaultSlot",
                "value": {
                  "type": "HTMLSlotElement"
                }
              },
              {
                "name": "disableRole",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "label",
                "description": "Um rótulo descritivo para o grupo de botões. Este não será exibido na interface, mas será anunciado\npor dispositivos de acessibilidade durante a interação com o controle, sendo fortemente recomendado.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "handleFocus",
                "value": {}
              },
              {
                "name": "handleBlur",
                "value": {}
              },
              {
                "name": "handleMouseOver",
                "value": {}
              },
              {
                "name": "handleMouseOut",
                "value": {}
              },
              {
                "name": "handleSlotChange",
                "value": {}
              }
            ],
            "events": []
          },
          "attributes": [
            {
              "name": "label",
              "description": "Um rótulo descritivo para o grupo de botões. Este não será exibido na interface, mas será anunciado\npor dispositivos de acessibilidade durante a interação com o controle, sendo fortemente recomendado.",
              "value": {
                "type": "string"
              }
            }
          ]
        },
        {
          "name": "cps-calendar",
          "description": "",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/calendar",
          "js": {
            "properties": [
              {
                "name": "localize",
                "value": {}
              },
              {
                "name": "calendar",
                "value": {
                  "type": "HTMLElement"
                }
              },
              {
                "name": "calendarGrid",
                "value": {
                  "type": "HTMLElement"
                }
              },
              {
                "name": "value",
                "description": "A data selecionada no formato ISO 8601 (ex: \"2025-07-28\").\nQuando não definida, nenhuma data estará selecionada.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "min",
                "description": "A data mínima selecionável no formato ISO 8601 (ex: \"2025-07-28\").\nDatas anteriores serão desabilitadas.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "max",
                "description": "A data máxima selecionável no formato ISO 8601 (ex: \"2025-07-28\").\nDatas posteriores serão desabilitadas.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "hideFooter",
                "description": "Determina se o rodapé do calendário deve ser ocultado.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "hideOutside",
                "description": "Determina se células fora do intervalo principal (dias fora do mês ou anos fora da década) devem ser ocultadas.\nPor padrão, células fora do intervalo principal são exibidas.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "firstDayOfWeek",
                "description": "Primeiro dia da semana no calendário, podendo ser: `'sunday'`, `'monday'`, `'tuesday'`, `'wednesday'`, `'thursday'`, `'friday'`, `'saturday'`.\nCaso não informado, o primeiro dia da semana será determinado automaticamente com base no idioma do usuário.",
                "value": {
                  "type": "'sunday' | 'monday' | 'tuesday' | 'wednesday' | 'thursday' | 'friday' | 'saturday' | null"
                }
              },
              {
                "name": "disableWeekdays",
                "description": "Dias da semana desabilitados no calendário, no formato `'sunday'`, `'monday'`, `'tuesday'`, `'wednesday'`, `'thursday'`, `'friday'`, `'saturday'`.\nAceita um único dia, ou uma lista de dias da semana separados por vírgula.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "disableDates",
                "description": "Datas específicas desabilitadas no calendário.\nAceita uma ou mais datas no formato ISO 8601 (YYYY-MM-DD), separadas por vírgula.\nExemplo: `disable-dates=\"2023-03-13,2023-03-14,2023-03-24\"` desabilita as datas 13, 14 e 24 de março de 2023.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "currentMonth",
                "value": {
                  "type": "number"
                }
              },
              {
                "name": "currentYear",
                "value": {
                  "type": "number"
                }
              },
              {
                "name": "selectedDate",
                "value": {
                  "type": "Date | null"
                }
              },
              {
                "name": "calendarData",
                "value": {
                  "type": "{\n    day: number;\n    month: number;\n    year: number;\n    isOutsideMonth: boolean;\n    isToday: boolean;\n    isSelected: boolean;\n    isDisabled: boolean;\n    date: Date;\n  }[][]"
                }
              },
              {
                "name": "focusedCell",
                "value": {
                  "type": "{ row: number; col: number } | null"
                }
              },
              {
                "name": "currentView",
                "value": {
                  "type": "'days' | 'months' | 'years'"
                }
              },
              {
                "name": "previousView",
                "value": {
                  "type": "'days' | 'months' | 'years' | null"
                }
              },
              {
                "name": "previous",
                "description": "Navega para o mês, ano ou década anterior, dependendo da visualização atual.",
                "value": {}
              },
              {
                "name": "next",
                "description": "Navega para o próximo mês, ano ou década, dependendo da visualização atual.",
                "value": {}
              },
              {
                "name": "clear",
                "description": "Limpa a data selecionada no calendário.",
                "value": {}
              },
              {
                "name": "today",
                "description": "Define a data atual como a data selecionada no calendário.",
                "value": {}
              },
              {
                "name": "initializeCalendar",
                "value": {}
              },
              {
                "name": "parseDate",
                "value": {}
              },
              {
                "name": "handleValueChange",
                "value": {}
              },
              {
                "name": "areDatesEqual",
                "value": {}
              },
              {
                "name": "formatDateToISO",
                "value": {}
              },
              {
                "name": "updateCalendarSelection",
                "value": {}
              },
              {
                "name": "handleOptionsChange",
                "value": {}
              },
              {
                "name": "getFirstDayOfWeekIndex",
                "value": {}
              },
              {
                "name": "generateCalendarData",
                "value": {}
              },
              {
                "name": "handleDayClick",
                "value": {}
              },
              {
                "name": "handleMonthClick",
                "value": {}
              },
              {
                "name": "handleYearClick",
                "value": {}
              },
              {
                "name": "focusCurrentCell",
                "value": {}
              },
              {
                "name": "handleGridKeyDown",
                "value": {}
              },
              {
                "name": "toggleView",
                "value": {}
              },
              {
                "name": "renderDaysGrid",
                "value": {}
              },
              {
                "name": "renderMonthsGrid",
                "value": {}
              },
              {
                "name": "renderYearsGrid",
                "value": {}
              },
              {
                "name": "renderHeader",
                "value": {}
              },
              {
                "name": "renderFooter",
                "value": {}
              }
            ],
            "events": [
              {
                "name": "cps-change",
                "description": "Emitido quando o valor selecionado muda ou quando o mês/ano visualizado é alterado."
              }
            ]
          },
          "attributes": [
            {
              "name": "value",
              "description": "A data selecionada no formato ISO 8601 (ex: \"2025-07-28\").\nQuando não definida, nenhuma data estará selecionada.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "min",
              "description": "A data mínima selecionável no formato ISO 8601 (ex: \"2025-07-28\").\nDatas anteriores serão desabilitadas.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "max",
              "description": "A data máxima selecionável no formato ISO 8601 (ex: \"2025-07-28\").\nDatas posteriores serão desabilitadas.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "hide-footer",
              "description": "Determina se o rodapé do calendário deve ser ocultado.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "hide-outside",
              "description": "Determina se células fora do intervalo principal (dias fora do mês ou anos fora da década) devem ser ocultadas.\nPor padrão, células fora do intervalo principal são exibidas.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "first-day-of-week",
              "description": "Primeiro dia da semana no calendário, podendo ser: `'sunday'`, `'monday'`, `'tuesday'`, `'wednesday'`, `'thursday'`, `'friday'`, `'saturday'`.\nCaso não informado, o primeiro dia da semana será determinado automaticamente com base no idioma do usuário.",
              "value": {
                "type": "'sunday' | 'monday' | 'tuesday' | 'wednesday' | 'thursday' | 'friday' | 'saturday' | null"
              }
            },
            {
              "name": "disable-weekdays",
              "description": "Dias da semana desabilitados no calendário, no formato `'sunday'`, `'monday'`, `'tuesday'`, `'wednesday'`, `'thursday'`, `'friday'`, `'saturday'`.\nAceita um único dia, ou uma lista de dias da semana separados por vírgula.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "disable-dates",
              "description": "Datas específicas desabilitadas no calendário.\nAceita uma ou mais datas no formato ISO 8601 (YYYY-MM-DD), separadas por vírgula.\nExemplo: `disable-dates=\"2023-03-13,2023-03-14,2023-03-24\"` desabilita as datas 13, 14 e 24 de março de 2023.",
              "value": {
                "type": "string"
              }
            }
          ]
        },
        {
          "name": "cps-card",
          "description": "",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/card",
          "js": {
            "properties": [
              {
                "name": "hasSlotController",
                "value": {}
              },
              {
                "name": "card",
                "value": {
                  "type": "HTMLDivElement"
                }
              },
              {
                "name": "elevation",
                "description": "Opcionalmente sobrescreve a elevação usada para projeção de sombra, mudando a aparência padrão definida pela variante.",
                "value": {
                  "type": "'none' | 'sm' | 'md' | 'lg' | 'xl' | '2xl' | undefined"
                }
              },
              {
                "name": "rounded",
                "description": "Define o padrão de arredondamento dos cantos do _card_.",
                "value": {
                  "type": "| 'none'\n    | 'full'\n    | 'start'\n    | 'end'\n    | 'top'\n    | 'bottom'\n    | 'top-start'\n    | 'top-end'\n    | 'bottom-start'\n    | 'bottom-end'"
                }
              },
              {
                "name": "variant",
                "description": "O tipo de variação visual do _card_.",
                "value": {
                  "type": "'primary' | 'secondary' | 'tertiary' | 'on-blurred'"
                }
              },
              {
                "name": "actionable",
                "description": "Indica se o _card_ é acionável pelo usuário (podendo ser interagido,\npor exemplo, com _mouse_ e teclado).",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "click",
                "description": "Simula um _click_ no elemento.",
                "value": {}
              },
              {
                "name": "focus",
                "description": "Coloca o foco no elemento.",
                "value": {}
              },
              {
                "name": "blur",
                "description": "Remove o foco do elemento.",
                "value": {}
              }
            ],
            "events": []
          },
          "attributes": [
            {
              "name": "elevation",
              "description": "Opcionalmente sobrescreve a elevação usada para projeção de sombra, mudando a aparência padrão definida pela variante.",
              "value": {
                "type": "'none' | 'sm' | 'md' | 'lg' | 'xl' | '2xl' | undefined"
              }
            },
            {
              "name": "rounded",
              "description": "Define o padrão de arredondamento dos cantos do _card_.",
              "value": {
                "type": "| 'none'\n    | 'full'\n    | 'start'\n    | 'end'\n    | 'top'\n    | 'bottom'\n    | 'top-start'\n    | 'top-end'\n    | 'bottom-start'\n    | 'bottom-end'"
              }
            },
            {
              "name": "variant",
              "description": "O tipo de variação visual do _card_.",
              "value": {
                "type": "'primary' | 'secondary' | 'tertiary' | 'on-blurred'"
              }
            },
            {
              "name": "actionable",
              "description": "Indica se o _card_ é acionável pelo usuário (podendo ser interagido,\npor exemplo, com _mouse_ e teclado).",
              "value": {
                "type": "boolean"
              }
            }
          ]
        },
        {
          "name": "cps-checkbox",
          "description": "",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/checkbox",
          "js": {
            "properties": [
              {
                "name": "formControlController",
                "value": {}
              },
              {
                "name": "hasSlotController",
                "value": {}
              },
              {
                "name": "input",
                "value": {
                  "type": "HTMLInputElement"
                }
              },
              {
                "name": "hasFocus",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "generatedId",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "title",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "id",
                "description": "O identificador único do campo, usado como estratégia de vinculação ao rótulo e/ou texto de apoio anexado.\nSe não for fornecido, um UUID é gerado automaticamente.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "name",
                "description": "O nome do campo, submetido em par _name_/_value_ com os dados do formulário.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "value",
                "description": "O valor do campo, submetido em par _name_/_value_ com os dados do formulário.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "label",
                "description": "O rótulo do campo. Se você precisar injetar HTML, use o _slot_ `label` em vez disso.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "size",
                "description": "O tamanho do campo.",
                "value": {
                  "type": "'small' | 'medium' | 'large'"
                }
              },
              {
                "name": "disabled",
                "description": "Desabilita o campo.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "checked",
                "description": "Determina o estado de checagem do campo, ou seja, quando presente, o campo encontra-se marcado.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "indeterminate",
                "description": "Apresenta o campo em estado indeterminado.\nIsso é geralmente aplicado a caixas de seleção que representam o cabeçalho\nde um comportamento \"Selecionar todos/nenhum\", quando as caixas de seleção\nassociadas podem ter mistura de estados marcados e desmarcados.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "defaultChecked",
                "description": "O valor padrão do controle de formulário. Usado principalmente para redefinir o campo.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "form",
                "description": "O formulário \"dono\" deste controle de formulário. Se não informado, o formulário mais próximo na hierarquia\naté este elemento será utilizado. Se informado, o valor deve ser um `id` único de um formulário\nexistente no documento.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "required",
                "description": "Torna o campo como sendo de preenchimento obrigatório.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "validity",
                "description": "Obtém o objeto de estado de validade do campo.",
                "value": {}
              },
              {
                "name": "validationMessage",
                "description": "Obtém a mensagem de validação do campo.",
                "value": {}
              },
              {
                "name": "handleIdChange",
                "value": {}
              },
              {
                "name": "handleClick",
                "value": {}
              },
              {
                "name": "handleBlur",
                "value": {}
              },
              {
                "name": "handleInput",
                "value": {}
              },
              {
                "name": "handleInvalid",
                "value": {}
              },
              {
                "name": "handleFocus",
                "value": {}
              },
              {
                "name": "handleDisabledChange",
                "value": {}
              },
              {
                "name": "handleStateChange",
                "value": {}
              },
              {
                "name": "click",
                "description": "Simula um _click_ no campo.",
                "value": {}
              },
              {
                "name": "focus",
                "description": "Coloca o foco no campo.",
                "value": {}
              },
              {
                "name": "blur",
                "description": "Remove o foco do campo.",
                "value": {}
              },
              {
                "name": "checkValidity",
                "description": "Verifica a validade em um formulário, sem exibir uma mensagem de validação. Retorna `true` quando válido, e `false` quando inválido.",
                "value": {}
              },
              {
                "name": "getForm",
                "description": "Obtém o formulário associado com este componente, se algum estiver.",
                "value": {}
              },
              {
                "name": "reportValidity",
                "description": "Verifica a validade em um formulário, e exibe as mensagem de validação do navegador caso o resultado seja inválido.",
                "value": {}
              },
              {
                "name": "setCustomValidity",
                "description": "Define uma mensagem de validação personalizada. Passar uma `string` vazia como argumento restaura a validade do elemento.",
                "value": {}
              }
            ],
            "events": [
              {
                "name": "cps-blur",
                "description": "Emitido quando o controle perde o foco."
              },
              {
                "name": "cps-change",
                "description": "Emitido quando a alteração do valor do controle é confirmada pelo usuário."
              },
              {
                "name": "cps-focus",
                "description": "Emitido quando o controle obtém o foco."
              },
              {
                "name": "cps-input",
                "description": "Emitido quando o controle recebe entrada de dados."
              },
              {
                "name": "cps-invalid",
                "description": "Emitido quando o elemento de formulário foi checado sobre sua validade, e suas condições não foram satisfeitas."
              }
            ]
          },
          "attributes": [
            {
              "name": "title",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "id",
              "description": "O identificador único do campo, usado como estratégia de vinculação ao rótulo e/ou texto de apoio anexado.\nSe não for fornecido, um UUID é gerado automaticamente.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "name",
              "description": "O nome do campo, submetido em par _name_/_value_ com os dados do formulário.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "value",
              "description": "O valor do campo, submetido em par _name_/_value_ com os dados do formulário.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "label",
              "description": "O rótulo do campo. Se você precisar injetar HTML, use o _slot_ `label` em vez disso.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "size",
              "description": "O tamanho do campo.",
              "value": {
                "type": "'small' | 'medium' | 'large'"
              }
            },
            {
              "name": "disabled",
              "description": "Desabilita o campo.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "checked",
              "description": "Determina o estado de checagem do campo, ou seja, quando presente, o campo encontra-se marcado.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "indeterminate",
              "description": "Apresenta o campo em estado indeterminado.\nIsso é geralmente aplicado a caixas de seleção que representam o cabeçalho\nde um comportamento \"Selecionar todos/nenhum\", quando as caixas de seleção\nassociadas podem ter mistura de estados marcados e desmarcados.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "form",
              "description": "O formulário \"dono\" deste controle de formulário. Se não informado, o formulário mais próximo na hierarquia\naté este elemento será utilizado. Se informado, o valor deve ser um `id` único de um formulário\nexistente no documento.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "required",
              "description": "Torna o campo como sendo de preenchimento obrigatório.",
              "value": {
                "type": "boolean"
              }
            }
          ]
        },
        {
          "name": "cps-chip",
          "description": "",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/chip",
          "js": {
            "properties": [
              {
                "name": "localize",
                "value": {}
              },
              {
                "name": "variant",
                "description": "A variante visual para apresentação do _chip_.",
                "value": {
                  "type": "'neutral' | 'informative' | 'warning' | 'critical' | 'success'"
                }
              },
              {
                "name": "size",
                "description": "O tamanho do _chip_.",
                "value": {
                  "type": "'small' | 'medium' | 'large'"
                }
              },
              {
                "name": "removable",
                "description": "Marca o _chip_ como removível, exibindo-se um botão de remoção junto ao conteúdo interno.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "handleRemoveClick",
                "value": {}
              }
            ],
            "events": [
              {
                "name": "cps-remove",
                "description": "Emitido quando o botão de remoção do _chip_ `removable` é acionado."
              }
            ]
          },
          "attributes": [
            {
              "name": "variant",
              "description": "A variante visual para apresentação do _chip_.",
              "value": {
                "type": "'neutral' | 'informative' | 'warning' | 'critical' | 'success'"
              }
            },
            {
              "name": "size",
              "description": "O tamanho do _chip_.",
              "value": {
                "type": "'small' | 'medium' | 'large'"
              }
            },
            {
              "name": "removable",
              "description": "Marca o _chip_ como removível, exibindo-se um botão de remoção junto ao conteúdo interno.",
              "value": {
                "type": "boolean"
              }
            }
          ]
        },
        {
          "name": "cps-dialog",
          "description": "",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/dialog",
          "js": {
            "properties": [
              {
                "name": "hasSlotController",
                "value": {}
              },
              {
                "name": "localize",
                "value": {}
              },
              {
                "name": "modal",
                "value": {
                  "type": "Modal"
                }
              },
              {
                "name": "originalTrigger",
                "value": {
                  "type": "HTMLElement | null"
                }
              },
              {
                "name": "dialog",
                "value": {
                  "type": "HTMLElement"
                }
              },
              {
                "name": "panel",
                "value": {
                  "type": "HTMLElement"
                }
              },
              {
                "name": "backdrop",
                "value": {
                  "type": "HTMLElement"
                }
              },
              {
                "name": "open",
                "description": "Indica se a caixa de diálogo está aberta ou não. Você pode alternar este atributo para mostrar e ocultar a caixa de diálogo, ou pode\nusar os métodos `show()` e `hide()` e este atributo refletirá o estado aberto da caixa de diálogo.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "closable",
                "description": "Habilita a exibição de um botão de fechar no cabeçalho, como uma forma ainda mais evidente ao usuário de que a caixa de diálogo pode ser fechada.\nNão possui efeito caso não haja cabeçalho, ou seja, se não houver valor no atributo `label` e não houver conteúdo no _slot_ `label`.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "label",
                "description": "O rótulo da caixa de diálogo exibido no cabeçalho. Você deve sempre incluir um rótulo relevante para\nacessibilidade adequada. Se você precisar exibir HTML, use o slot `label` em vez disso.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "ariaLabel",
                "description": "O rótulo de acessibilidade para o diálogo. Se não for especificado, o atributo `label` será usado.\nÉ altamente recomendável definir este atributo, caso não haja um valor definido para o atributo `label`.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "returnValue",
                "description": "O valor de retorno do diálogo, similar ao `returnValue` de um elemento de diálogo nativo.\nEste valor é definido quando o diálogo é fechado e pode ser usado para determinar qual ação\nfoi tomada pelo usuário.",
                "value": {
                  "type": "string | boolean | undefined"
                }
              },
              {
                "name": "setupFooterButtons",
                "value": {}
              },
              {
                "name": "handleFooterButtonClick",
                "value": {}
              },
              {
                "name": "handleDocumentKeyDown",
                "value": {}
              },
              {
                "name": "playAnimation",
                "value": {}
              },
              {
                "name": "requestClose",
                "value": {}
              },
              {
                "name": "addOpenListeners",
                "value": {}
              },
              {
                "name": "removeOpenListeners",
                "value": {}
              },
              {
                "name": "handleFormSubmission",
                "value": {}
              },
              {
                "name": "handleOpenChange",
                "value": {}
              },
              {
                "name": "show",
                "description": "Mostra a caixa de diálogo.",
                "value": {}
              },
              {
                "name": "close",
                "description": "Fecha a caixa de diálogo, opcionalmente definindo um valor de retorno.",
                "value": {}
              }
            ],
            "events": [
              {
                "name": "cps-show",
                "description": "Emitido quando a caixa de diálogo começa a ser aberta."
              },
              {
                "name": "cps-after-show",
                "description": "Emitido após a caixa de diálogo ser aberta e todas as animações serem concluídas."
              },
              {
                "name": "cps-close",
                "description": "Emitido quando a caixa de diálogo começa a ser fechada."
              },
              {
                "name": "cps-after-close",
                "description": "Emitido após a caixa de diálogo ser fechada e todas as animações serem concluídas."
              },
              {
                "name": "cps-initial-focus",
                "description": "Emitido quando a caixa de diálogo é aberta e está pronta para receber foco. Chamar `event.preventDefault()` impedirá o foco e permitirá que você o defina em um elemento diferente, como um campo de entrada."
              },
              {
                "name": "cps-request-close",
                "description": "Emitido quando o usuário tenta fechar a caixa de diálogo clicando no botão de fechar, clicando na sobreposição ou pressionando Escape. Chamar `event.preventDefault()` manterá a caixa de diálogo aberta. Evite usar isso a menos que fechar a caixa de diálogo resulte em comportamento destrutivo, como perda de dados."
              }
            ]
          },
          "attributes": [
            {
              "name": "open",
              "description": "Indica se a caixa de diálogo está aberta ou não. Você pode alternar este atributo para mostrar e ocultar a caixa de diálogo, ou pode\nusar os métodos `show()` e `hide()` e este atributo refletirá o estado aberto da caixa de diálogo.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "closable",
              "description": "Habilita a exibição de um botão de fechar no cabeçalho, como uma forma ainda mais evidente ao usuário de que a caixa de diálogo pode ser fechada.\nNão possui efeito caso não haja cabeçalho, ou seja, se não houver valor no atributo `label` e não houver conteúdo no _slot_ `label`.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "label",
              "description": "O rótulo da caixa de diálogo exibido no cabeçalho. Você deve sempre incluir um rótulo relevante para\nacessibilidade adequada. Se você precisar exibir HTML, use o slot `label` em vez disso.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "aria-label",
              "description": "O rótulo de acessibilidade para o diálogo. Se não for especificado, o atributo `label` será usado.\nÉ altamente recomendável definir este atributo, caso não haja um valor definido para o atributo `label`.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "returnValue",
              "description": "O valor de retorno do diálogo, similar ao `returnValue` de um elemento de diálogo nativo.\nEste valor é definido quando o diálogo é fechado e pode ser usado para determinar qual ação\nfoi tomada pelo usuário.",
              "value": {
                "type": "string | boolean | undefined"
              }
            }
          ]
        },
        {
          "description": "Displays an alert dialog using a `CpsDialog` instance.",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/",
          "js": {
            "properties": [],
            "events": []
          },
          "attributes": []
        },
        {
          "description": "Displays a confirm dialog using a `CpsDialog` instance.",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/",
          "js": {
            "properties": [],
            "events": []
          },
          "attributes": []
        },
        {
          "name": "cps-drawer",
          "description": "",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/drawer",
          "js": {
            "properties": [
              {
                "name": "hasSlotController",
                "value": {}
              },
              {
                "name": "localize",
                "value": {}
              },
              {
                "name": "modal",
                "value": {
                  "type": "Modal"
                }
              },
              {
                "name": "originalTrigger",
                "value": {
                  "type": "HTMLElement | null"
                }
              },
              {
                "name": "drawer",
                "value": {
                  "type": "HTMLElement"
                }
              },
              {
                "name": "panel",
                "value": {
                  "type": "HTMLElement"
                }
              },
              {
                "name": "backdrop",
                "value": {
                  "type": "HTMLElement"
                }
              },
              {
                "name": "open",
                "description": "Indica se a gaveta de navegação está aberta ou não.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "closable",
                "description": "Habilita a exibição de um botão de fechar no cabeçalho, como uma forma ainda mais evidente ao usuário de que a caixa de diálogo pode ser fechada.\nNão possui efeito caso não haja cabeçalho, ou seja, se não houver valor no atributo `label` e não houver conteúdo no _slot_ `label`.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "label",
                "description": "O rótulo da caixa de diálogo exibido no cabeçalho. Você deve sempre incluir um rótulo relevante para\nacessibilidade adequada. Se você precisar exibir HTML, use o slot `label` em vez disso.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "ariaLabel",
                "description": "O rótulo de acessibilidade para o diálogo. Se não for especificado, o atributo `label` será usado.\nÉ altamente recomendável definir este atributo, caso não haja um valor definido para o atributo `label`.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "placement",
                "description": "Direção de onde a gaveta de navegação será exibida.",
                "value": {
                  "type": "'top' | 'end' | 'bottom' | 'start'"
                }
              },
              {
                "name": "contained",
                "description": "Por padrão, a gaveta de navegação é uma sobreposição sobre toda a página.\nUsando este atributo, ela passa a ser contida dentro de seu elemento pai.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "playAnimation",
                "value": {}
              },
              {
                "name": "requestClose",
                "value": {}
              },
              {
                "name": "addOpenListeners",
                "value": {}
              },
              {
                "name": "removeOpenListeners",
                "value": {}
              },
              {
                "name": "handleDocumentKeyDown",
                "value": {}
              },
              {
                "name": "handleOpenChange",
                "value": {}
              },
              {
                "name": "show",
                "description": "Mostra a gaveta de navegação.",
                "value": {}
              },
              {
                "name": "close",
                "description": "Fecha a gaveta de navegação.",
                "value": {}
              }
            ],
            "events": [
              {
                "name": "cps-show",
                "description": "Emitido quando a gaveta de navegação começa a ser aberta."
              },
              {
                "name": "cps-after-show",
                "description": "Emitido após a gaveta de navegação ser aberta e todas as animações serem concluídas."
              },
              {
                "name": "cps-close",
                "description": "Emitido quando a gaveta de navegação começa a ser fechada."
              },
              {
                "name": "cps-after-close",
                "description": "Emitido após a gaveta de navegação ser fechada e todas as animações serem concluídas."
              },
              {
                "name": "cps-initial-focus",
                "description": "Emitido quando a gaveta de navegação é aberta e está pronta para receber foco. Chamar `event.preventDefault()` impedirá o foco e permitirá que você o defina em um elemento diferente, como um campo de entrada."
              },
              {
                "name": "cps-request-close",
                "description": "Emitido quando o usuário tenta fechar a gaveta de navegação clicando no botão de fechar, clicando na sobreposição ou pressionando Escape. Chamar `event.preventDefault()` manterá a gaveta de navegação aberta. Evite usar isso a menos que fechar a gaveta de navegação resulte em comportamento destrutivo, como perda de dados."
              }
            ]
          },
          "attributes": [
            {
              "name": "open",
              "description": "Indica se a gaveta de navegação está aberta ou não.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "closable",
              "description": "Habilita a exibição de um botão de fechar no cabeçalho, como uma forma ainda mais evidente ao usuário de que a caixa de diálogo pode ser fechada.\nNão possui efeito caso não haja cabeçalho, ou seja, se não houver valor no atributo `label` e não houver conteúdo no _slot_ `label`.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "label",
              "description": "O rótulo da caixa de diálogo exibido no cabeçalho. Você deve sempre incluir um rótulo relevante para\nacessibilidade adequada. Se você precisar exibir HTML, use o slot `label` em vez disso.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "aria-label",
              "description": "O rótulo de acessibilidade para o diálogo. Se não for especificado, o atributo `label` será usado.\nÉ altamente recomendável definir este atributo, caso não haja um valor definido para o atributo `label`.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "placement",
              "description": "Direção de onde a gaveta de navegação será exibida.",
              "value": {
                "type": "'top' | 'end' | 'bottom' | 'start'"
              }
            },
            {
              "name": "contained",
              "description": "Por padrão, a gaveta de navegação é uma sobreposição sobre toda a página.\nUsando este atributo, ela passa a ser contida dentro de seu elemento pai.",
              "value": {
                "type": "boolean"
              }
            }
          ]
        },
        {
          "name": "cps-dropdown",
          "description": "",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/dropdown",
          "js": {
            "properties": [
              {
                "name": "localize",
                "value": {}
              },
              {
                "name": "typeToSelectString",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "typeToSelectTimeout",
                "value": {
                  "type": "number"
                }
              },
              {
                "name": "flyout",
                "value": {
                  "type": "CpsFlyout"
                }
              },
              {
                "name": "field",
                "value": {
                  "type": "HTMLSlotElement"
                }
              },
              {
                "name": "displaySpan",
                "value": {
                  "type": "HTMLSpanElement"
                }
              },
              {
                "name": "valueInput",
                "value": {
                  "type": "HTMLInputElement"
                }
              },
              {
                "name": "menu",
                "value": {
                  "type": "HTMLSlotElement"
                }
              },
              {
                "name": "hasFocus",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "generatedId",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "displayText",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "currentOption",
                "value": {
                  "type": "CpsOption"
                }
              },
              {
                "name": "selectedOptions",
                "value": {
                  "type": "CpsOption[]"
                }
              },
              {
                "name": "id",
                "description": "O identificador único do campo, usado como estratégia de vinculação ao rótulo e/ou texto de apoio anexado.\nSe não for fornecido, um UUID é gerado automaticamente.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "value",
                "description": "O valor do campo, permite recuperar ou definir uma opção selecionada.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "size",
                "description": "O tamanho do campo.",
                "value": {
                  "type": "'small' | 'medium' | 'large'"
                }
              },
              {
                "name": "placeholder",
                "description": "Texto de espaço reservado para exibir uma dica quando o campo estiver vazio.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "keepPlaceholder",
                "description": "Define se o espaço reservado deve ser exibido permanentemente,\nindependentemente de uma opção estar selecionada.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "disabled",
                "description": "Desabilita o campo.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "clearable",
                "description": "Adiciona um botão de limpar exibido quando o campo não estiver vazio.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "open",
                "description": "Indica se o menu de seleção de opções está aberto. Você pode alternar este atributo, manualmente ou reativamente, para mostrar e ocultar o menu. Opcionalmente, pode utilizar os métodos `show()` e `hide()` se preferir uma abordagem imperativa, e este atributo refletirá o estado aberto do menu em tempo real.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "strategy",
                "description": "Estratégia a nível de CSS do posicionamento do menu. A estratégia `absolute` funciona bem na maioria dos casos, mas se rolagem externa causar o corte do menu (se um elemento pai for `overflow` igual a `auto` ou `scroll`), usar uma estratégia de posição `fixed` pode contornar o problema. Entretanto, posicionamento fixo pode não funcionar em todos os cenários, portanto deve ser habilitado apenas quando necessário, e testado com atenção.",
                "value": {
                  "type": "'absolute' | 'fixed'"
                }
              },
              {
                "name": "placement",
                "description": "O posicionamento preferido do menu de seleção em relação ao campo base. Observe que o posicionamento real poderá variar, se o posicionamento desejado não for viável, no intuito de manter o painel dentro da área de visualização.",
                "value": {
                  "type": "'top' | 'bottom'"
                }
              },
              {
                "name": "forgetSelection",
                "description": "Indica se o menu de seleção de opções deve esquecer a seleção atual após o fechamento. Isso pode ser útil para menus que servem apenas como um seletor visual, mas com funcionalidade totalmente personalizada após a seleção.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "handleIdChange",
                "value": {}
              },
              {
                "name": "addOpenListeners",
                "value": {}
              },
              {
                "name": "removeOpenListeners",
                "value": {}
              },
              {
                "name": "handleFocus",
                "value": {}
              },
              {
                "name": "handleBlur",
                "value": {}
              },
              {
                "name": "handleDocumentFocusIn",
                "value": {}
              },
              {
                "name": "handleDocumentKeyDown",
                "value": {}
              },
              {
                "name": "handleDocumentMouseDown",
                "value": {}
              },
              {
                "name": "handleTriggerMouseDown",
                "value": {}
              },
              {
                "name": "handleTriggerKeyDown",
                "value": {}
              },
              {
                "name": "handleClearClick",
                "value": {}
              },
              {
                "name": "handleClearMouseDown",
                "value": {}
              },
              {
                "name": "handleOptionClick",
                "value": {}
              },
              {
                "name": "handleDefaultSlotChange",
                "value": {}
              },
              {
                "name": "getAllLabels",
                "value": {}
              },
              {
                "name": "getAllOptions",
                "value": {}
              },
              {
                "name": "getFirstOption",
                "value": {}
              },
              {
                "name": "setCurrentOption",
                "value": {}
              },
              {
                "name": "setSelectedOptions",
                "value": {}
              },
              {
                "name": "selectionChanged",
                "value": {}
              },
              {
                "name": "handleDisabledChange",
                "value": {}
              },
              {
                "name": "handleValueChange",
                "value": {}
              },
              {
                "name": "handleOpenChange",
                "value": {}
              },
              {
                "name": "show",
                "description": "Exibe o menu seletor de opções.",
                "value": {}
              },
              {
                "name": "hide",
                "description": "Oculta o menu seletor de opções.",
                "value": {}
              },
              {
                "name": "focus",
                "description": "Coloca o foco no campo.",
                "value": {}
              },
              {
                "name": "blur",
                "description": "Remove o foco do campo.",
                "value": {}
              }
            ],
            "events": [
              {
                "name": "cps-change",
                "description": "Emitido quando a alteração do valor do controle é confirmada pelo usuário."
              },
              {
                "name": "cps-clear",
                "description": "Emitido quando o botão de limpar é ativado (caso `clearable` esteja em uso)."
              },
              {
                "name": "cps-focus",
                "description": "Emitido quando o controle obtém o foco."
              },
              {
                "name": "cps-blur",
                "description": "Emitido quando o controle perde o foco."
              },
              {
                "name": "cps-show",
                "description": "Emitido quando a lista suspensa de opções começa a ser exibida."
              },
              {
                "name": "cps-after-show",
                "description": "Emitido após a lista suspensa de opções ser exibida e todas as animações terem sido concluídas."
              },
              {
                "name": "cps-hide",
                "description": "Emitido quando a lista suspensa de opções começa a ser ocultada."
              },
              {
                "name": "cps-after-hide",
                "description": "Emitido após a lista suspensa de opções ser ocultada e todas as animações terem sido concluídas."
              }
            ]
          },
          "attributes": [
            {
              "name": "id",
              "description": "O identificador único do campo, usado como estratégia de vinculação ao rótulo e/ou texto de apoio anexado.\nSe não for fornecido, um UUID é gerado automaticamente.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "value",
              "description": "O valor do campo, permite recuperar ou definir uma opção selecionada.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "size",
              "description": "O tamanho do campo.",
              "value": {
                "type": "'small' | 'medium' | 'large'"
              }
            },
            {
              "name": "placeholder",
              "description": "Texto de espaço reservado para exibir uma dica quando o campo estiver vazio.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "keep-placeholder",
              "description": "Define se o espaço reservado deve ser exibido permanentemente,\nindependentemente de uma opção estar selecionada.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "disabled",
              "description": "Desabilita o campo.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "clearable",
              "description": "Adiciona um botão de limpar exibido quando o campo não estiver vazio.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "open",
              "description": "Indica se o menu de seleção de opções está aberto. Você pode alternar este atributo, manualmente ou reativamente, para mostrar e ocultar o menu. Opcionalmente, pode utilizar os métodos `show()` e `hide()` se preferir uma abordagem imperativa, e este atributo refletirá o estado aberto do menu em tempo real.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "strategy",
              "description": "Estratégia a nível de CSS do posicionamento do menu. A estratégia `absolute` funciona bem na maioria dos casos, mas se rolagem externa causar o corte do menu (se um elemento pai for `overflow` igual a `auto` ou `scroll`), usar uma estratégia de posição `fixed` pode contornar o problema. Entretanto, posicionamento fixo pode não funcionar em todos os cenários, portanto deve ser habilitado apenas quando necessário, e testado com atenção.",
              "value": {
                "type": "'absolute' | 'fixed'"
              }
            },
            {
              "name": "placement",
              "description": "O posicionamento preferido do menu de seleção em relação ao campo base. Observe que o posicionamento real poderá variar, se o posicionamento desejado não for viável, no intuito de manter o painel dentro da área de visualização.",
              "value": {
                "type": "'top' | 'bottom'"
              }
            },
            {
              "name": "forget-selection",
              "description": "Indica se o menu de seleção de opções deve esquecer a seleção atual após o fechamento. Isso pode ser útil para menus que servem apenas como um seletor visual, mas com funcionalidade totalmente personalizada após a seleção.",
              "value": {
                "type": "boolean"
              }
            }
          ]
        },
        {
          "name": "cps-flyout",
          "description": "",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/flyout",
          "js": {
            "properties": [
              {
                "name": "anchorElement",
                "value": {
                  "type": "Element | VirtualElement | null"
                }
              },
              {
                "name": "cleanup",
                "value": {
                  "type": "ReturnType<typeof autoUpdate> | undefined"
                }
              },
              {
                "name": "container",
                "description": "A referência ao elemento _flyout_ interno. Útil para animar e estilizar o flyout com JavaScript.",
                "value": {
                  "type": "HTMLElement"
                }
              },
              {
                "name": "arrowElement",
                "value": {
                  "type": "HTMLElement"
                }
              },
              {
                "name": "anchor",
                "description": "O elemento ao qual o _flyout_ será ancorado. Se o elemento estiver fora da estrutura hierárquica do _flyout_, você pode fornecer a esta propriedade o `id` deste elemento, uma instância direta dele no DOM, ou ainda um `VirtualElement`. Caso contrário, se a âncora pode ser contida junto à estrutura hierárquica do próprio _flyout_, use o _slot_ `anchor` em vez disso.",
                "value": {
                  "type": "Element | string | VirtualElement"
                }
              },
              {
                "name": "active",
                "description": "Ativa a lógica de posicionamento e mostra o _flyout_.\nQuando este atributo é removido, a lógica de posicionamento é desativada e o _flyout_ será ocultado.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "placement",
                "description": "O posicionamento preferido do _flyout_ em relação à âncora. Observe que o posicionamento real poderá variar, se o posicionamento desejado não for viável, no intuito de manter o painel dentro da área de visualização.",
                "value": {
                  "type": "| 'top'\n    | 'top-start'\n    | 'top-end'\n    | 'bottom'\n    | 'bottom-start'\n    | 'bottom-end'\n    | 'right'\n    | 'right-start'\n    | 'right-end'\n    | 'left'\n    | 'left-start'\n    | 'left-end'"
                }
              },
              {
                "name": "strategy",
                "description": "Estratégia a nível de CSS do posicionamento do _flyout_. A estratégia `absolute` funciona bem na maioria dos casos, mas se rolagem externa causar o corte do _flyout_ (se um elemento pai for `overflow` igual a `auto` ou `scroll`), usar uma estratégia de posição `fixed` pode contornar o problema. Entretanto, posicionamento fixo pode não funcionar em todos os cenários, portanto deve ser habilitado apenas quando necessário, e testado com atenção.",
                "value": {
                  "type": "'absolute' | 'fixed'"
                }
              },
              {
                "name": "distance",
                "description": "A distância em pixels do _flyout_ em relação à sua âncora, para afastá-lo ou aproximá-lo da âncora.\nPor exemplo, se `placement` for `top` ou `bottom`, `distance` definirá a distância do _flyout_ no eixo vertical.",
                "value": {
                  "type": "number"
                }
              },
              {
                "name": "skidding",
                "description": "A distância em pixels do _flyout_ no eixo de deslocamento de sua âncora.\nPor exemplo, se `placement` for `top` ou `bottom`, `skidding` definirá a distância do _flyout_ no eixo horizontal.",
                "value": {
                  "type": "number"
                }
              },
              {
                "name": "arrow",
                "description": "Anexa uma seta ao _flyout_, para que apresente um estilo balão.\nO tamanho e a cor da seta podem ser personalizados usando as variáveis CSS `--arrow-size` e `--arrow-color`.\nPara personalizações adicionais, você também pode selecionar a seta para estilização\nusando `::part(arrow)` em sua folha de estilos.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "arrowPlacement",
                "description": "O posicionamento da seta.\nO padrão é `anchor`, que alinhará a seta o mais próximo possível do centro da âncora,\nconsiderando o espaço disponível e o `arrow-padding`.\nUm valor de `start`, `end` ou `center` alinhará a seta ao início, ao fim ou ao centro do _flyout_.",
                "value": {
                  "type": "'start' | 'end' | 'center' | 'anchor'"
                }
              },
              {
                "name": "arrowPadding",
                "description": "A quantidade de espaço entre a seta e as bordas do _flyout_.\nSe o _flyout_ tiver um `border-radius`, por exemplo,\nisso evitará que a seta ultrapasse o início do arredondamento.",
                "value": {
                  "type": "number"
                }
              },
              {
                "name": "flip",
                "description": "Quando definido, o _flyout_ será girado automaticamente para caber no espaço disponível.\nVocê pode usar `flipFallbackPlacements` para configurar ainda mais como o posicionamento alternativo é determinado.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "flipFallbackPlacements",
                "description": "Se o posicionamento preferido não atender, o _flyout_ será testado nestes posicionamentos alternativos,\naté que um atenda. Deve ser uma `String` de qualquer número de posicionamentos separados por um espaço,\npor exemplo, `\"top bottom left\"`. Se nenhum posicionamento atender,\na estratégia de posicionamento alternativo será usada em vez disso.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "flipFallbackStrategy",
                "description": "Quando nem o posicionamento preferido nem os posicionamentos alternativos se encaixam,\neste valor será usado para determinar se o _flyout_ deve ser posicionado usando o\nmelhor ajuste disponível com base no espaço disponível ou\ncomo foi inicialmente definido por seu `placement`.",
                "value": {
                  "type": "'best-fit' | 'initial'"
                }
              },
              {
                "name": "flipBoundary",
                "description": "A fronteira de giro descreve o(s) elemento(s) de colisão que serão verificados em casos de cortes,\nquando o _flyout_ precisar girar para se acomodar. Por padrão, a fronteira inclui ancestrais com rolagem\nque fariam com que o elemento fosse cortado. Se necessário, você pode alterar a fronteira passando uma\nreferência à instância de um ou mais elementos nesta propriedade.",
                "value": {
                  "type": "Element | Element[]"
                }
              },
              {
                "name": "flipPadding",
                "description": "A quantidade de espaço, em pixels, a ser excedido antes que o comportamento de giro ocorra.",
                "value": {
                  "type": "number"
                }
              },
              {
                "name": "shift",
                "description": "Permite reposicionar o _flyout_ ao longo do seu eixo atual, para mantê-lo à vista quando cortado.\nPor exemplo, um `placement` de `top` farão que o _flyout_ esteja posicionado com seu eixo na horizontal.\nSe a posição do _flyout_ neste eixo transpassar possíveis áreas de corte,\nele se moverá para a esquerda ou para a direita, conforme necessário.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "shiftBoundary",
                "description": "A fronteira de reposicionamento descreve o(s) elemento(s) de colisão que serão verificados em casos de cortes,\nquando o _flyout_ precisar ser reposicionado no seu eixo para se acomodar.\nPor padrão, a fronteira inclui ancestrais com rolagem que fariam com que o elemento fosse cortado.\nSe necessário, você pode alterar a fronteira passando uma referência à instância de\num ou mais elementos nesta propriedade.",
                "value": {
                  "type": "Element | Element[]"
                }
              },
              {
                "name": "shiftPadding",
                "description": "A quantidade de espaço, em pixels, a ser excedido antes que o reposicionamento no eixo ocorra.",
                "value": {
                  "type": "number"
                }
              },
              {
                "name": "autoSize",
                "description": "Quando definido, permite que o _flyout_ automaticamente se redimensione\npara prevenir seu transbordamento ou potenciais cortes por causa de ancestrais com rolagem.",
                "value": {
                  "type": "'horizontal' | 'vertical' | 'both'"
                }
              },
              {
                "name": "sync",
                "description": "Sincroniza a largura ou altura (ou ambos) do _flyout_ com a do seu elemento âncora.",
                "value": {
                  "type": "'exact-width' | 'min-width' | 'exact-height' | 'min-height' | 'exact-both' | 'min-both'"
                }
              },
              {
                "name": "autoSizeBoundary",
                "description": "A fronteira de auto-dimensionamento descreve o(s) elemento(s) de colisão que serão verificados\nem casos de cortes, quando o _flyout_ precisar ser redimensionado para se acomodar.\nPor padrão, a fronteira inclui ancestrais com rolagem que fariam com que o elemento fosse cortado.\nSe necessário, você pode alterar a fronteira passando uma referência à instância de\num ou mais elementos nesta propriedade.",
                "value": {
                  "type": "Element | Element[]"
                }
              },
              {
                "name": "autoSizePadding",
                "description": "A quantidade de espaço, em pixels, a ser excedido antes que o auto-dimensionamento ocorra.",
                "value": {
                  "type": "number"
                }
              },
              {
                "name": "handleAnchorChange",
                "value": {}
              },
              {
                "name": "start",
                "value": {}
              },
              {
                "name": "stop",
                "value": {}
              },
              {
                "name": "reposition",
                "description": "Força o _flyout_ a se recalcular e se reposicionar.",
                "value": {}
              }
            ],
            "events": [
              {
                "name": "cps-reposition",
                "description": "Emitido quando o _flyout_ é reposicionado. Este evento pode disparar numerosas vezes, evite colocar operações custosas em seu _listener_, ou alternativamente considere usar uma estratégia de _debouce_ neste evento."
              }
            ]
          },
          "attributes": [
            {
              "name": "anchor",
              "description": "O elemento ao qual o _flyout_ será ancorado. Se o elemento estiver fora da estrutura hierárquica do _flyout_, você pode fornecer a esta propriedade o `id` deste elemento, uma instância direta dele no DOM, ou ainda um `VirtualElement`. Caso contrário, se a âncora pode ser contida junto à estrutura hierárquica do próprio _flyout_, use o _slot_ `anchor` em vez disso.",
              "value": {
                "type": "Element | string | VirtualElement"
              }
            },
            {
              "name": "active",
              "description": "Ativa a lógica de posicionamento e mostra o _flyout_.\nQuando este atributo é removido, a lógica de posicionamento é desativada e o _flyout_ será ocultado.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "placement",
              "description": "O posicionamento preferido do _flyout_ em relação à âncora. Observe que o posicionamento real poderá variar, se o posicionamento desejado não for viável, no intuito de manter o painel dentro da área de visualização.",
              "value": {
                "type": "| 'top'\n    | 'top-start'\n    | 'top-end'\n    | 'bottom'\n    | 'bottom-start'\n    | 'bottom-end'\n    | 'right'\n    | 'right-start'\n    | 'right-end'\n    | 'left'\n    | 'left-start'\n    | 'left-end'"
              }
            },
            {
              "name": "strategy",
              "description": "Estratégia a nível de CSS do posicionamento do _flyout_. A estratégia `absolute` funciona bem na maioria dos casos, mas se rolagem externa causar o corte do _flyout_ (se um elemento pai for `overflow` igual a `auto` ou `scroll`), usar uma estratégia de posição `fixed` pode contornar o problema. Entretanto, posicionamento fixo pode não funcionar em todos os cenários, portanto deve ser habilitado apenas quando necessário, e testado com atenção.",
              "value": {
                "type": "'absolute' | 'fixed'"
              }
            },
            {
              "name": "distance",
              "description": "A distância em pixels do _flyout_ em relação à sua âncora, para afastá-lo ou aproximá-lo da âncora.\nPor exemplo, se `placement` for `top` ou `bottom`, `distance` definirá a distância do _flyout_ no eixo vertical.",
              "value": {
                "type": "number"
              }
            },
            {
              "name": "skidding",
              "description": "A distância em pixels do _flyout_ no eixo de deslocamento de sua âncora.\nPor exemplo, se `placement` for `top` ou `bottom`, `skidding` definirá a distância do _flyout_ no eixo horizontal.",
              "value": {
                "type": "number"
              }
            },
            {
              "name": "arrow",
              "description": "Anexa uma seta ao _flyout_, para que apresente um estilo balão.\nO tamanho e a cor da seta podem ser personalizados usando as variáveis CSS `--arrow-size` e `--arrow-color`.\nPara personalizações adicionais, você também pode selecionar a seta para estilização\nusando `::part(arrow)` em sua folha de estilos.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "arrow-placement",
              "description": "O posicionamento da seta.\nO padrão é `anchor`, que alinhará a seta o mais próximo possível do centro da âncora,\nconsiderando o espaço disponível e o `arrow-padding`.\nUm valor de `start`, `end` ou `center` alinhará a seta ao início, ao fim ou ao centro do _flyout_.",
              "value": {
                "type": "'start' | 'end' | 'center' | 'anchor'"
              }
            },
            {
              "name": "arrow-padding",
              "description": "A quantidade de espaço entre a seta e as bordas do _flyout_.\nSe o _flyout_ tiver um `border-radius`, por exemplo,\nisso evitará que a seta ultrapasse o início do arredondamento.",
              "value": {
                "type": "number"
              }
            },
            {
              "name": "flip",
              "description": "Quando definido, o _flyout_ será girado automaticamente para caber no espaço disponível.\nVocê pode usar `flipFallbackPlacements` para configurar ainda mais como o posicionamento alternativo é determinado.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "flip-fallback-placements",
              "description": "Se o posicionamento preferido não atender, o _flyout_ será testado nestes posicionamentos alternativos,\naté que um atenda. Deve ser uma `String` de qualquer número de posicionamentos separados por um espaço,\npor exemplo, `\"top bottom left\"`. Se nenhum posicionamento atender,\na estratégia de posicionamento alternativo será usada em vez disso.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "flip-fallback-strategy",
              "description": "Quando nem o posicionamento preferido nem os posicionamentos alternativos se encaixam,\neste valor será usado para determinar se o _flyout_ deve ser posicionado usando o\nmelhor ajuste disponível com base no espaço disponível ou\ncomo foi inicialmente definido por seu `placement`.",
              "value": {
                "type": "'best-fit' | 'initial'"
              }
            },
            {
              "name": "flipBoundary",
              "description": "A fronteira de giro descreve o(s) elemento(s) de colisão que serão verificados em casos de cortes,\nquando o _flyout_ precisar girar para se acomodar. Por padrão, a fronteira inclui ancestrais com rolagem\nque fariam com que o elemento fosse cortado. Se necessário, você pode alterar a fronteira passando uma\nreferência à instância de um ou mais elementos nesta propriedade.",
              "value": {
                "type": "Element | Element[]"
              }
            },
            {
              "name": "flip-padding",
              "description": "A quantidade de espaço, em pixels, a ser excedido antes que o comportamento de giro ocorra.",
              "value": {
                "type": "number"
              }
            },
            {
              "name": "shift",
              "description": "Permite reposicionar o _flyout_ ao longo do seu eixo atual, para mantê-lo à vista quando cortado.\nPor exemplo, um `placement` de `top` farão que o _flyout_ esteja posicionado com seu eixo na horizontal.\nSe a posição do _flyout_ neste eixo transpassar possíveis áreas de corte,\nele se moverá para a esquerda ou para a direita, conforme necessário.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "shiftBoundary",
              "description": "A fronteira de reposicionamento descreve o(s) elemento(s) de colisão que serão verificados em casos de cortes,\nquando o _flyout_ precisar ser reposicionado no seu eixo para se acomodar.\nPor padrão, a fronteira inclui ancestrais com rolagem que fariam com que o elemento fosse cortado.\nSe necessário, você pode alterar a fronteira passando uma referência à instância de\num ou mais elementos nesta propriedade.",
              "value": {
                "type": "Element | Element[]"
              }
            },
            {
              "name": "shift-padding",
              "description": "A quantidade de espaço, em pixels, a ser excedido antes que o reposicionamento no eixo ocorra.",
              "value": {
                "type": "number"
              }
            },
            {
              "name": "auto-size",
              "description": "Quando definido, permite que o _flyout_ automaticamente se redimensione\npara prevenir seu transbordamento ou potenciais cortes por causa de ancestrais com rolagem.",
              "value": {
                "type": "'horizontal' | 'vertical' | 'both'"
              }
            },
            {
              "name": "sync",
              "description": "Sincroniza a largura ou altura (ou ambos) do _flyout_ com a do seu elemento âncora.",
              "value": {
                "type": "'exact-width' | 'min-width' | 'exact-height' | 'min-height' | 'exact-both' | 'min-both'"
              }
            },
            {
              "name": "autoSizeBoundary",
              "description": "A fronteira de auto-dimensionamento descreve o(s) elemento(s) de colisão que serão verificados\nem casos de cortes, quando o _flyout_ precisar ser redimensionado para se acomodar.\nPor padrão, a fronteira inclui ancestrais com rolagem que fariam com que o elemento fosse cortado.\nSe necessário, você pode alterar a fronteira passando uma referência à instância de\num ou mais elementos nesta propriedade.",
              "value": {
                "type": "Element | Element[]"
              }
            },
            {
              "name": "auto-size-padding",
              "description": "A quantidade de espaço, em pixels, a ser excedido antes que o auto-dimensionamento ocorra.",
              "value": {
                "type": "number"
              }
            }
          ]
        },
        {
          "name": "cps-format-bytes",
          "description": "",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/format-bytes",
          "js": {
            "properties": [
              {
                "name": "localize",
                "value": {}
              },
              {
                "name": "value",
                "description": "O número (valor bruto em _bytes_ ou _bits_) a ser formatado.",
                "value": {
                  "type": "number"
                }
              },
              {
                "name": "unit",
                "description": "O tipo de unidade a ser considerado para as conversões de valores.",
                "value": {
                  "type": "'byte' | 'bit'"
                }
              },
              {
                "name": "display",
                "description": "Determina como formatar o resultado, por exemplo, \"100 bytes\", \"100 b\" ou \"100b\".",
                "value": {
                  "type": "'long' | 'short' | 'narrow'"
                }
              },
              {
                "name": "_convertToBytes",
                "value": {}
              },
              {
                "name": "_formatBytes",
                "value": {}
              }
            ],
            "events": []
          },
          "attributes": [
            {
              "name": "value",
              "description": "O número (valor bruto em _bytes_ ou _bits_) a ser formatado.",
              "value": {
                "type": "number"
              }
            },
            {
              "name": "unit",
              "description": "O tipo de unidade a ser considerado para as conversões de valores.",
              "value": {
                "type": "'byte' | 'bit'"
              }
            },
            {
              "name": "display",
              "description": "Determina como formatar o resultado, por exemplo, \"100 bytes\", \"100 b\" ou \"100b\".",
              "value": {
                "type": "'long' | 'short' | 'narrow'"
              }
            }
          ]
        },
        {
          "name": "cps-format-date",
          "description": "",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/format-date",
          "js": {
            "properties": [
              {
                "name": "localize",
                "value": {}
              },
              {
                "name": "date",
                "description": "A data/hora a ser formatada. Se não for definida, a data e hora atuais serão usadas.\nAo passar um texto, é altamente recomendado usar o formato ISO 8601 para garantir\nque os fusos horários sejam tratados corretamente. Para converter uma data para este\nformato em JavaScript, use [`date.toISOString()`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toISOString).",
                "value": {
                  "type": "Date | string"
                }
              },
              {
                "name": "weekday",
                "description": "O formato para exibir o dia da semana.",
                "value": {
                  "type": "'narrow' | 'short' | 'long'"
                }
              },
              {
                "name": "era",
                "description": "O formato para exibir a era.",
                "value": {
                  "type": "'narrow' | 'short' | 'long'"
                }
              },
              {
                "name": "year",
                "description": "O formato para exibir o ano.",
                "value": {
                  "type": "'numeric' | '2-digit'"
                }
              },
              {
                "name": "month",
                "description": "O formato para exibir o mês.",
                "value": {
                  "type": "'numeric' | '2-digit' | 'narrow' | 'short' | 'long'"
                }
              },
              {
                "name": "day",
                "description": "O formato para exibir o dia.",
                "value": {
                  "type": "'numeric' | '2-digit'"
                }
              },
              {
                "name": "hour",
                "description": "O formato para exibir a hora.",
                "value": {
                  "type": "'numeric' | '2-digit'"
                }
              },
              {
                "name": "minute",
                "description": "O formato para exibir os minutos.",
                "value": {
                  "type": "'numeric' | '2-digit'"
                }
              },
              {
                "name": "second",
                "description": "O formato para exibir os segundos.",
                "value": {
                  "type": "'numeric' | '2-digit'"
                }
              },
              {
                "name": "timeZoneName",
                "description": "O formato para exibir o nome do fuso horário.",
                "value": {
                  "type": "'short' | 'long'"
                }
              },
              {
                "name": "timeZone",
                "description": "O fuso horário no qual o horário será expresso.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "hourFormat",
                "description": "O formato para exibir a hora.",
                "value": {
                  "type": "'auto' | '12' | '24'"
                }
              }
            ],
            "events": []
          },
          "attributes": [
            {
              "name": "date",
              "description": "A data/hora a ser formatada. Se não for definida, a data e hora atuais serão usadas.\nAo passar um texto, é altamente recomendado usar o formato ISO 8601 para garantir\nque os fusos horários sejam tratados corretamente. Para converter uma data para este\nformato em JavaScript, use [`date.toISOString()`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toISOString).",
              "value": {
                "type": "Date | string"
              }
            },
            {
              "name": "weekday",
              "description": "O formato para exibir o dia da semana.",
              "value": {
                "type": "'narrow' | 'short' | 'long'"
              }
            },
            {
              "name": "era",
              "description": "O formato para exibir a era.",
              "value": {
                "type": "'narrow' | 'short' | 'long'"
              }
            },
            {
              "name": "year",
              "description": "O formato para exibir o ano.",
              "value": {
                "type": "'numeric' | '2-digit'"
              }
            },
            {
              "name": "month",
              "description": "O formato para exibir o mês.",
              "value": {
                "type": "'numeric' | '2-digit' | 'narrow' | 'short' | 'long'"
              }
            },
            {
              "name": "day",
              "description": "O formato para exibir o dia.",
              "value": {
                "type": "'numeric' | '2-digit'"
              }
            },
            {
              "name": "hour",
              "description": "O formato para exibir a hora.",
              "value": {
                "type": "'numeric' | '2-digit'"
              }
            },
            {
              "name": "minute",
              "description": "O formato para exibir os minutos.",
              "value": {
                "type": "'numeric' | '2-digit'"
              }
            },
            {
              "name": "second",
              "description": "O formato para exibir os segundos.",
              "value": {
                "type": "'numeric' | '2-digit'"
              }
            },
            {
              "name": "time-zone-name",
              "description": "O formato para exibir o nome do fuso horário.",
              "value": {
                "type": "'short' | 'long'"
              }
            },
            {
              "name": "time-zone",
              "description": "O fuso horário no qual o horário será expresso.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "hour-format",
              "description": "O formato para exibir a hora.",
              "value": {
                "type": "'auto' | '12' | '24'"
              }
            }
          ]
        },
        {
          "name": "cps-format-number",
          "description": "",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/format-number",
          "js": {
            "properties": [
              {
                "name": "localize",
                "value": {}
              },
              {
                "name": "value",
                "description": "O número a ser formatado.",
                "value": {
                  "type": "number"
                }
              },
              {
                "name": "type",
                "description": "O estilo de formatação a ser utilizado.",
                "value": {
                  "type": "'currency' | 'decimal' | 'percent'"
                }
              },
              {
                "name": "noGrouping",
                "description": "Desativa os separadores de agrupamento.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "currency",
                "description": "O código de moeda [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) a ser utilizado na formatação.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "currencyDisplay",
                "description": "Definição sobre como exibir a moeda.",
                "value": {
                  "type": "'symbol' | 'narrowSymbol' | 'code' | 'name'"
                }
              },
              {
                "name": "minimumIntegerDigits",
                "description": "O número mínimo de dígitos inteiros a ser utilizado. Valores possíveis são 1-21.",
                "value": {
                  "type": "number"
                }
              },
              {
                "name": "minimumFractionDigits",
                "description": "O número mínimo de dígitos fracionários a ser utilizado. Valores possíveis de 0 a 100.",
                "value": {
                  "type": "number"
                }
              },
              {
                "name": "maximumFractionDigits",
                "description": "O número máximo de dígitos fracionários a ser utilizado. Valores possíveis de 0 a 100.",
                "value": {
                  "type": "number"
                }
              },
              {
                "name": "minimumSignificantDigits",
                "description": "O número mínimo de dígitos significativos a ser utilizado. Valores possíveis de 1 a 21.",
                "value": {
                  "type": "number"
                }
              },
              {
                "name": "maximumSignificantDigits",
                "description": "O número máximo de dígitos significativos a ser utilizado. Valores possíveis de 1 a 21.",
                "value": {
                  "type": "number"
                }
              }
            ],
            "events": []
          },
          "attributes": [
            {
              "name": "value",
              "description": "O número a ser formatado.",
              "value": {
                "type": "number"
              }
            },
            {
              "name": "type",
              "description": "O estilo de formatação a ser utilizado.",
              "value": {
                "type": "'currency' | 'decimal' | 'percent'"
              }
            },
            {
              "name": "no-grouping",
              "description": "Desativa os separadores de agrupamento.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "currency",
              "description": "O código de moeda [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) a ser utilizado na formatação.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "currency-display",
              "description": "Definição sobre como exibir a moeda.",
              "value": {
                "type": "'symbol' | 'narrowSymbol' | 'code' | 'name'"
              }
            },
            {
              "name": "minimum-integer-digits",
              "description": "O número mínimo de dígitos inteiros a ser utilizado. Valores possíveis são 1-21.",
              "value": {
                "type": "number"
              }
            },
            {
              "name": "minimum-fraction-digits",
              "description": "O número mínimo de dígitos fracionários a ser utilizado. Valores possíveis de 0 a 100.",
              "value": {
                "type": "number"
              }
            },
            {
              "name": "maximum-fraction-digits",
              "description": "O número máximo de dígitos fracionários a ser utilizado. Valores possíveis de 0 a 100.",
              "value": {
                "type": "number"
              }
            },
            {
              "name": "minimum-significant-digits",
              "description": "O número mínimo de dígitos significativos a ser utilizado. Valores possíveis de 1 a 21.",
              "value": {
                "type": "number"
              }
            },
            {
              "name": "maximum-significant-digits",
              "description": "O número máximo de dígitos significativos a ser utilizado. Valores possíveis de 1 a 21.",
              "value": {
                "type": "number"
              }
            }
          ]
        },
        {
          "name": "cps-format-relative-time",
          "description": "",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/format-relative-time",
          "js": {
            "properties": [
              {
                "name": "localize",
                "value": {}
              },
              {
                "name": "updateTimeout",
                "value": {
                  "type": "number"
                }
              },
              {
                "name": "isoTime",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "relativeTime",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "titleTime",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "date",
                "description": "A data a partir da qual calcular o tempo. Se não for definida, a data e hora atuais serão usadas.\nAo passar um texto, é altamente recomendado usar o formato ISO 8601 para garantir\nque os fusos horários sejam tratados corretamente. Para converter uma data para este\nformato em JavaScript, use [`date.toISOString()`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toISOString).",
                "value": {
                  "type": "Date | string"
                }
              },
              {
                "name": "format",
                "description": "O estilo de formatação a ser usado.\nAlguns idiomas exibem os mesmos valores entre os formatos, exatamente o caso do português.",
                "value": {
                  "type": "'long' | 'short' | 'narrow'"
                }
              },
              {
                "name": "numeric",
                "description": "Quando `false`, valores textuais, como \"ontem\" e \"amanhã\", serão usados quando possível.\nQuando `true`, somente números explícitos, como \"há 1 dia\" e \"em 1 dia\", serão usados.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "sync",
                "description": "Mantém o valor exibido atualizado conforme o tempo passa.",
                "value": {
                  "type": "boolean"
                }
              }
            ],
            "events": []
          },
          "attributes": [
            {
              "name": "date",
              "description": "A data a partir da qual calcular o tempo. Se não for definida, a data e hora atuais serão usadas.\nAo passar um texto, é altamente recomendado usar o formato ISO 8601 para garantir\nque os fusos horários sejam tratados corretamente. Para converter uma data para este\nformato em JavaScript, use [`date.toISOString()`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toISOString).",
              "value": {
                "type": "Date | string"
              }
            },
            {
              "name": "format",
              "description": "O estilo de formatação a ser usado.\nAlguns idiomas exibem os mesmos valores entre os formatos, exatamente o caso do português.",
              "value": {
                "type": "'long' | 'short' | 'narrow'"
              }
            },
            {
              "name": "numeric",
              "description": "Quando `false`, valores textuais, como \"ontem\" e \"amanhã\", serão usados quando possível.\nQuando `true`, somente números explícitos, como \"há 1 dia\" e \"em 1 dia\", serão usados.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "sync",
              "description": "Mantém o valor exibido atualizado conforme o tempo passa.",
              "value": {
                "type": "boolean"
              }
            }
          ]
        },
        {
          "description": "Configuration for the available time units.\nEach unit has a maximum time difference it can represent, a value in milliseconds, and the unit name.",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/",
          "js": {
            "properties": [],
            "events": []
          },
          "attributes": []
        },
        {
          "description": "Calculates the time remaining until the next occurrence of a specified time unit.",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/",
          "js": {
            "properties": [],
            "events": []
          },
          "attributes": []
        },
        {
          "name": "cps-icon",
          "description": "",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/icon",
          "js": {
            "properties": [
              {
                "name": "svg",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "name",
                "description": "Nome do ícone a renderizar. Os nomes disponíveis dependem da biblioteca de ícones que está sendo utilizada.",
                "value": {
                  "type": "string | undefined"
                }
              },
              {
                "name": "src",
                "description": "URL de um arquivo SVG externo a carregar como ícone. Tenha certeza de confiar no conteúdo do arquivo que está\nincorporando, uma vez que seu código interno será executado pelo navegador, o que pode proporcionar ataques XSS\nse for carregado um arquivo malicioso.",
                "value": {
                  "type": "string | undefined"
                }
              },
              {
                "name": "label",
                "description": "Descrição alternativa para ferramentas de acessibilidade.\nSe omitido, será um ícone puramente visual, ignorado por tecnologias assistivas.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "library",
                "description": "Nome da biblioteca previamente registrada, a ser utilizada para carregar este ícone,\natravés de seu `name`. Se omitido, a biblioteca `default` é utilizada.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "getUrl",
                "value": {}
              },
              {
                "name": "handleLabelChange",
                "value": {}
              },
              {
                "name": "setIcon",
                "value": {}
              }
            ],
            "events": [
              {
                "name": "cps-load",
                "description": "Emitido quando o ícone foi carregado."
              },
              {
                "name": "cps-error",
                "description": "Emitido quando o ícone falha para carregar devido a um erro."
              }
            ]
          },
          "attributes": [
            {
              "name": "name",
              "description": "Nome do ícone a renderizar. Os nomes disponíveis dependem da biblioteca de ícones que está sendo utilizada.",
              "value": {
                "type": "string | undefined"
              }
            },
            {
              "name": "src",
              "description": "URL de um arquivo SVG externo a carregar como ícone. Tenha certeza de confiar no conteúdo do arquivo que está\nincorporando, uma vez que seu código interno será executado pelo navegador, o que pode proporcionar ataques XSS\nse for carregado um arquivo malicioso.",
              "value": {
                "type": "string | undefined"
              }
            },
            {
              "name": "label",
              "description": "Descrição alternativa para ferramentas de acessibilidade.\nSe omitido, será um ícone puramente visual, ignorado por tecnologias assistivas.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "library",
              "description": "Nome da biblioteca previamente registrada, a ser utilizada para carregar este ícone,\natravés de seu `name`. Se omitido, a biblioteca `default` é utilizada.",
              "value": {
                "type": "string"
              }
            }
          ]
        },
        {
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/",
          "js": {
            "properties": [],
            "events": []
          },
          "attributes": []
        },
        {
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/",
          "js": {
            "properties": [],
            "events": []
          },
          "attributes": []
        },
        {
          "description": "Adds an icon to the list of watched icons.",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/",
          "js": {
            "properties": [],
            "events": []
          },
          "attributes": []
        },
        {
          "description": "Removes an icon from the list of watched icons.",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/",
          "js": {
            "properties": [],
            "events": []
          },
          "attributes": []
        },
        {
          "description": "Returns a library from the registry.",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/",
          "js": {
            "properties": [],
            "events": []
          },
          "attributes": []
        },
        {
          "description": "Adds an icon library to the registry, or overrides an existing one.",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/",
          "js": {
            "properties": [],
            "events": []
          },
          "attributes": []
        },
        {
          "description": "Removes an icon library from the registry.",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/",
          "js": {
            "properties": [],
            "events": []
          },
          "attributes": []
        },
        {
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/",
          "js": {
            "properties": [],
            "events": []
          },
          "attributes": []
        },
        {
          "name": "cps-icon-button",
          "description": "",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/icon-button",
          "js": {
            "properties": [
              {
                "name": "button",
                "value": {
                  "type": "HTMLButtonElement | HTMLAnchorElement"
                }
              },
              {
                "name": "isFocused",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "size",
                "description": "O tamanho do botão.",
                "value": {
                  "type": "'small' | 'medium' | 'large'"
                }
              },
              {
                "name": "label",
                "description": "Descrição alternativa para ferramentas de acessibilidade. Não omita este atributo,\npois botões são elementos de interação e, desta forma, precisam ser lidos apropriadamente\npor ferramentas de acessibilidade.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "name",
                "description": "Nome do ícone a renderizar. Os nomes disponíveis dependem da biblioteca de ícones que está sendo utilizada.",
                "value": {
                  "type": "string | undefined"
                }
              },
              {
                "name": "library",
                "description": "Nome da biblioteca previamente registrada, a ser utilizada para carregar este ícone,\natravés de seu `name`. Se omitido, a biblioteca `default` é utilizada.",
                "value": {
                  "type": "string | undefined"
                }
              },
              {
                "name": "src",
                "description": "URL de um arquivo SVG externo a carregar como ícone. Tenha certeza de confiar no conteúdo do arquivo que está\nincorporando, uma vez que seu código interno será executado pelo navegador, o que pode proporcionar ataques XSS\nse for carregado um arquivo malicioso.",
                "value": {
                  "type": "string | undefined"
                }
              },
              {
                "name": "href",
                "description": "Quando definido, o botão será renderizado como um elemento `<a>` com este `href` definido, ao invés de um elemento `<button>`.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "target",
                "description": "Informa o navegador qual o alvo de abertura do _link_. Usado somente se `href` estiver presente.",
                "value": {
                  "type": "'_blank' | '_parent' | '_self' | '_top'"
                }
              },
              {
                "name": "rel",
                "description": "Quando usando `href`, este atributo irá mapear o valor do atributo `rel` subjacente com o valor\npadrão `noreferrer noopener`, por questões de segurança. No entanto, se você estiver usando `target`\npara apontar para uma guia/janela específica, isso impedirá que ele funcione corretamente.\nPara este cenário específico, defina como vazio ou altere o valor de `rel` para outro valor.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "download",
                "description": "Informa o navegador para baixar o arquivo vinculado, com o nome definido aqui. Usado somente se `href` estiver presente.",
                "value": {
                  "type": "string | undefined"
                }
              },
              {
                "name": "disabled",
                "description": "Desabilita o botão.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "handleBlur",
                "value": {}
              },
              {
                "name": "handleFocus",
                "value": {}
              },
              {
                "name": "handleClick",
                "value": {}
              },
              {
                "name": "click",
                "description": "Simula um _click_ no botão.",
                "value": {}
              },
              {
                "name": "focus",
                "description": "Coloca o foco no botão.",
                "value": {}
              },
              {
                "name": "blur",
                "description": "Remove o foco do botão.",
                "value": {}
              }
            ],
            "events": [
              {
                "name": "cps-blur",
                "description": "Emitido quando o botão perde o foco."
              },
              {
                "name": "cps-focus",
                "description": "Emitido quando o botão obtém o foco."
              }
            ]
          },
          "attributes": [
            {
              "name": "size",
              "description": "O tamanho do botão.",
              "value": {
                "type": "'small' | 'medium' | 'large'"
              }
            },
            {
              "name": "label",
              "description": "Descrição alternativa para ferramentas de acessibilidade. Não omita este atributo,\npois botões são elementos de interação e, desta forma, precisam ser lidos apropriadamente\npor ferramentas de acessibilidade.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "name",
              "description": "Nome do ícone a renderizar. Os nomes disponíveis dependem da biblioteca de ícones que está sendo utilizada.",
              "value": {
                "type": "string | undefined"
              }
            },
            {
              "name": "library",
              "description": "Nome da biblioteca previamente registrada, a ser utilizada para carregar este ícone,\natravés de seu `name`. Se omitido, a biblioteca `default` é utilizada.",
              "value": {
                "type": "string | undefined"
              }
            },
            {
              "name": "src",
              "description": "URL de um arquivo SVG externo a carregar como ícone. Tenha certeza de confiar no conteúdo do arquivo que está\nincorporando, uma vez que seu código interno será executado pelo navegador, o que pode proporcionar ataques XSS\nse for carregado um arquivo malicioso.",
              "value": {
                "type": "string | undefined"
              }
            },
            {
              "name": "href",
              "description": "Quando definido, o botão será renderizado como um elemento `<a>` com este `href` definido, ao invés de um elemento `<button>`.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "target",
              "description": "Informa o navegador qual o alvo de abertura do _link_. Usado somente se `href` estiver presente.",
              "value": {
                "type": "'_blank' | '_parent' | '_self' | '_top'"
              }
            },
            {
              "name": "rel",
              "description": "Quando usando `href`, este atributo irá mapear o valor do atributo `rel` subjacente com o valor\npadrão `noreferrer noopener`, por questões de segurança. No entanto, se você estiver usando `target`\npara apontar para uma guia/janela específica, isso impedirá que ele funcione corretamente.\nPara este cenário específico, defina como vazio ou altere o valor de `rel` para outro valor.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "download",
              "description": "Informa o navegador para baixar o arquivo vinculado, com o nome definido aqui. Usado somente se `href` estiver presente.",
              "value": {
                "type": "string | undefined"
              }
            },
            {
              "name": "disabled",
              "description": "Desabilita o botão.",
              "value": {
                "type": "boolean"
              }
            }
          ]
        },
        {
          "name": "cps-include",
          "description": "",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/include",
          "js": {
            "properties": [
              {
                "name": "src",
                "description": "A localização do arquivo HTML a ser incluído. Tenha certeza de que pode confiar no conteúdo\nque você está incluindo, já que será executado como código no navegador após o carregamento,\no que implica em possíveis ataques XSS.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "mode",
                "description": "O modo _cross origin_ a ser utilizado para o carregamento do arquivo.",
                "value": {
                  "type": "'cors' | 'no-cors' | 'same-origin'"
                }
              },
              {
                "name": "allowScripts",
                "description": "Permite que _scripts_ incluídos no HTML importado sejam executados. Tenha certeza de que pode\nconfiar no conteúdo que você está incluindo, já que será executado como código no navegador\napós o carregamento, o que implica em possíveis ataques XSS.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "executeScript",
                "value": {}
              },
              {
                "name": "handleSrcChange",
                "value": {}
              }
            ],
            "events": [
              {
                "name": "cps-load",
                "description": "Emitido quando o arquivo incluído foi carregado."
              },
              {
                "name": "cps-error",
                "description": "Emitido quando o arquivo incluído falha durante o carregamento."
              }
            ]
          },
          "attributes": [
            {
              "name": "src",
              "description": "A localização do arquivo HTML a ser incluído. Tenha certeza de que pode confiar no conteúdo\nque você está incluindo, já que será executado como código no navegador após o carregamento,\no que implica em possíveis ataques XSS.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "mode",
              "description": "O modo _cross origin_ a ser utilizado para o carregamento do arquivo.",
              "value": {
                "type": "'cors' | 'no-cors' | 'same-origin'"
              }
            },
            {
              "name": "allow-scripts",
              "description": "Permite que _scripts_ incluídos no HTML importado sejam executados. Tenha certeza de que pode\nconfiar no conteúdo que você está incluindo, já que será executado como código no navegador\napós o carregamento, o que implica em possíveis ataques XSS.",
              "value": {
                "type": "boolean"
              }
            }
          ]
        },
        {
          "description": "Fetches an include file from a remote source. Caching is enabled so the origin is only pinged once.",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/",
          "js": {
            "properties": [],
            "events": []
          },
          "attributes": []
        },
        {
          "name": "cps-input",
          "description": "",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/input",
          "js": {
            "properties": [
              {
                "name": "formControlController",
                "value": {}
              },
              {
                "name": "hasSlotController",
                "value": {}
              },
              {
                "name": "localize",
                "value": {}
              },
              {
                "name": "input",
                "value": {
                  "type": "HTMLInputElement"
                }
              },
              {
                "name": "hasFocus",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "generatedId",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "title",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "type",
                "description": "O tipo do campo. Funciona da mesma forma que um elemento `<input>` nativo,\nmas apenas um subconjunto de tipos é suportado. O padrão é `text`.",
                "value": {
                  "type": "'date' | 'datetime-local' | 'email' | 'hidden' | 'number' | 'password' | 'search' | 'tel' | 'text' | 'time' | 'url'"
                }
              },
              {
                "name": "id",
                "description": "O identificador único do campo, usado como estratégia de vinculação ao rótulo e/ou texto de apoio anexado.\nSe não for fornecido, um UUID é gerado automaticamente.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "name",
                "description": "O nome do campo, submetido em par _name_/_value_ com os dados do formulário.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "value",
                "description": "O valor do campo, submetido em par _name_/_value_ com os dados do formulário.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "defaultValue",
                "description": "O valor padrão do controle de formulário. Usado principalmente para redefinir o campo.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "size",
                "description": "O tamanho do campo.",
                "value": {
                  "type": "'small' | 'medium' | 'large'"
                }
              },
              {
                "name": "label",
                "description": "O rótulo do campo. Se você precisar injetar HTML, use o _slot_ `label` em vez disso.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "helpText",
                "description": "O texto de apoio do campo. Se você precisar injetar HTML, use o _slot_ `help-text` em vez disso.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "clearable",
                "description": "Adiciona um botão de limpar exibido quando o campo não estiver vazio.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "disabled",
                "description": "Desabilita o campo.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "placeholder",
                "description": "Texto de espaço reservado para exibir uma dica quando o campo estiver vazio.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "readonly",
                "description": "Torna o campo somente leitura.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "passwordToggle",
                "description": "Adiciona um botão de alternância de visibilidade de senha. Aplicável somente se `type` for `password`.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "passwordVisible",
                "description": "Determina se uma senha em preenchimento está visível como texto plano neste momento. Aplicável somente se `type` for `password`.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "noSpinButtons",
                "description": "Força ocultar os botões de incremento/decremento nativos do navegador para entradas numéricas. Aplicável somente se `type` for `number`.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "form",
                "description": "O formulário \"dono\" deste controle de formulário. Se não informado, o formulário mais próximo na hierarquia\naté este elemento será utilizado. Se informado, o valor deve ser um `id` único de um formulário\nexistente no documento.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "required",
                "description": "Torna o campo como sendo de preenchimento obrigatório.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "pattern",
                "description": "Uma expressão regular para validar a entrada do campo.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "minlength",
                "description": "O tamanho mínimo de caracteres que serão considerados válidos.",
                "value": {
                  "type": "number"
                }
              },
              {
                "name": "maxlength",
                "description": "O tamanho máximo de caracteres que serão considerados válidos.",
                "value": {
                  "type": "number"
                }
              },
              {
                "name": "min",
                "description": "O valor mínimo que será considerado válido. Aplicável somente se `type` for `date` ou `number`.",
                "value": {
                  "type": "number | string"
                }
              },
              {
                "name": "max",
                "description": "O valor máximo que será considerado válido. Aplicável somente se `type` for `date` ou `number`.",
                "value": {
                  "type": "number | string"
                }
              },
              {
                "name": "step",
                "description": "Especifica a granularidade que o valor deve obedecer, ou o valor especial `any` que significa que nenhum passo é\nimplicado, permitindo qualquer valor numérico. Aplicável somente se `type` for `date` ou `number`.",
                "value": {
                  "type": "number | 'any'"
                }
              },
              {
                "name": "autocapitalize",
                "description": "Controla se e como a entrada de texto é capitalizada enquanto inserida pelo usuário.",
                "value": {
                  "type": "'off' | 'none' | 'on' | 'sentences' | 'words' | 'characters'"
                }
              },
              {
                "name": "autocorrect",
                "description": "Indica se o recurso de correção automática do navegador deve ser utilizado.",
                "value": {
                  "type": "'off' | 'on'"
                }
              },
              {
                "name": "autocomplete",
                "description": "Especifica quais permissões o navegador tem para fornecer assistência no preenchimento dos valores do campo.\nConsulte\n[esta documentação no MDN](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete) para a lista de valores disponíveis.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "autofocus",
                "description": "Indica que o campo deve receber foco assim que a página for carregada.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "enterkeyhint",
                "description": "Utilizado para definir a aparência e o comportamento da tela `Enter` em teclados virtuais.",
                "value": {
                  "type": "'enter' | 'done' | 'go' | 'next' | 'previous' | 'search' | 'send'"
                }
              },
              {
                "name": "spellcheck",
                "description": "Habilita correção ortográfica no campo.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "inputmode",
                "description": "Informa o navegador qual o tipo de dados esperado para ser inserido pelo usuário. Isso permite que o navegador\napresente o teclado virtual apropriado para o tipo de dados em dispositivos móveis.",
                "value": {
                  "type": "'none' | 'text' | 'decimal' | 'numeric' | 'tel' | 'search' | 'email' | 'url'"
                }
              },
              {
                "name": "valueAsDate",
                "description": "Obtém ou define o valor atual como um objeto `Date`. Retorna `null` se o valor não puder ser convertido.",
                "value": {}
              },
              {
                "name": "valueAsNumber",
                "description": "Obtém ou define o valor atual como um número. Retorna `NaN` se o valor não puder ser convertido.",
                "value": {}
              },
              {
                "name": "validity",
                "description": "Obtém o objeto de estado de validade do campo.",
                "value": {}
              },
              {
                "name": "validationMessage",
                "description": "Obtém a mensagem de validação do campo.",
                "value": {}
              },
              {
                "name": "handleIdChange",
                "value": {}
              },
              {
                "name": "handleBlur",
                "value": {}
              },
              {
                "name": "handleChange",
                "value": {}
              },
              {
                "name": "handleClearClick",
                "value": {}
              },
              {
                "name": "handleBaseClick",
                "value": {}
              },
              {
                "name": "handleClick",
                "value": {}
              },
              {
                "name": "handleFocus",
                "value": {}
              },
              {
                "name": "handleInput",
                "value": {}
              },
              {
                "name": "handleInvalid",
                "value": {}
              },
              {
                "name": "handleKeyDown",
                "value": {}
              },
              {
                "name": "handlePasswordToggle",
                "value": {}
              },
              {
                "name": "handleDisabledChange",
                "value": {}
              },
              {
                "name": "handleStepChange",
                "value": {}
              },
              {
                "name": "handleValueChange",
                "value": {}
              },
              {
                "name": "focus",
                "description": "Coloca o foco no campo.",
                "value": {}
              },
              {
                "name": "blur",
                "description": "Remove o foco do campo.",
                "value": {}
              },
              {
                "name": "select",
                "description": "Seleciona todo o texto existente no campo.",
                "value": {}
              },
              {
                "name": "setSelectionRange",
                "description": "Define as posições de início e término da seleção de texto do campo (índices baseados em `0`).",
                "value": {}
              },
              {
                "name": "setRangeText",
                "description": "Atualiza um intervalo de texto do campo com o novo valor informado (índices baseados em `0`).",
                "value": {}
              },
              {
                "name": "showPicker",
                "description": "Exibe o menu seletor de opções nativo do navegador, de acordo com o `type` do campo (funciona apenas se o navegador suportar um menu seletor para o tipo de entrada em questão).",
                "value": {}
              },
              {
                "name": "stepUp",
                "description": "Incrementa o valor de um campo numérico pelo valor do atributo `step` (somente se o `type` definido for `number`).",
                "value": {}
              },
              {
                "name": "stepDown",
                "description": "Decrementa o valor de um campo numérico pelo valor do atributo `step` (somente se o `type` definido for `number`).",
                "value": {}
              },
              {
                "name": "checkValidity",
                "description": "Verifica a validade em um formulário, sem exibir uma mensagem de validação. Retorna `true` quando válido, e `false` quando inválido.",
                "value": {}
              },
              {
                "name": "getForm",
                "description": "Obtém o formulário associado com este componente, se algum estiver.",
                "value": {}
              },
              {
                "name": "reportValidity",
                "description": "Verifica a validade em um formulário, e exibe as mensagem de validação do navegador caso o resultado seja inválido.",
                "value": {}
              },
              {
                "name": "setCustomValidity",
                "description": "Define uma mensagem de validação personalizada. Passar uma `string` vazia como argumento restaura a validade do elemento.",
                "value": {}
              },
              {
                "name": "typeError",
                "value": {}
              }
            ],
            "events": [
              {
                "name": "cps-blur",
                "description": "Emitido quando o controle perde o foco."
              },
              {
                "name": "cps-change",
                "description": "Emitido quando a alteração do valor do controle é confirmada pelo usuário."
              },
              {
                "name": "cps-clear",
                "description": "Emitido quando o botão de limpar é ativado (caso `clearable` esteja em uso)."
              },
              {
                "name": "cps-focus",
                "description": "Emitido quando o controle obtém o foco."
              },
              {
                "name": "cps-input",
                "description": "Emitido quando o controle recebe entrada de dados."
              },
              {
                "name": "cps-invalid",
                "description": "Emitido quando o elemento de formulário foi checado sobre sua validade, e suas condições não foram satisfeitas."
              }
            ]
          },
          "attributes": [
            {
              "name": "title",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "type",
              "description": "O tipo do campo. Funciona da mesma forma que um elemento `<input>` nativo,\nmas apenas um subconjunto de tipos é suportado. O padrão é `text`.",
              "value": {
                "type": "'date' | 'datetime-local' | 'email' | 'hidden' | 'number' | 'password' | 'search' | 'tel' | 'text' | 'time' | 'url'"
              }
            },
            {
              "name": "id",
              "description": "O identificador único do campo, usado como estratégia de vinculação ao rótulo e/ou texto de apoio anexado.\nSe não for fornecido, um UUID é gerado automaticamente.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "name",
              "description": "O nome do campo, submetido em par _name_/_value_ com os dados do formulário.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "value",
              "description": "O valor do campo, submetido em par _name_/_value_ com os dados do formulário.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "size",
              "description": "O tamanho do campo.",
              "value": {
                "type": "'small' | 'medium' | 'large'"
              }
            },
            {
              "name": "label",
              "description": "O rótulo do campo. Se você precisar injetar HTML, use o _slot_ `label` em vez disso.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "help-text",
              "description": "O texto de apoio do campo. Se você precisar injetar HTML, use o _slot_ `help-text` em vez disso.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "clearable",
              "description": "Adiciona um botão de limpar exibido quando o campo não estiver vazio.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "disabled",
              "description": "Desabilita o campo.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "placeholder",
              "description": "Texto de espaço reservado para exibir uma dica quando o campo estiver vazio.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "readonly",
              "description": "Torna o campo somente leitura.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "password-toggle",
              "description": "Adiciona um botão de alternância de visibilidade de senha. Aplicável somente se `type` for `password`.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "password-visible",
              "description": "Determina se uma senha em preenchimento está visível como texto plano neste momento. Aplicável somente se `type` for `password`.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "no-spin-buttons",
              "description": "Força ocultar os botões de incremento/decremento nativos do navegador para entradas numéricas. Aplicável somente se `type` for `number`.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "form",
              "description": "O formulário \"dono\" deste controle de formulário. Se não informado, o formulário mais próximo na hierarquia\naté este elemento será utilizado. Se informado, o valor deve ser um `id` único de um formulário\nexistente no documento.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "required",
              "description": "Torna o campo como sendo de preenchimento obrigatório.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "pattern",
              "description": "Uma expressão regular para validar a entrada do campo.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "minlength",
              "description": "O tamanho mínimo de caracteres que serão considerados válidos.",
              "value": {
                "type": "number"
              }
            },
            {
              "name": "maxlength",
              "description": "O tamanho máximo de caracteres que serão considerados válidos.",
              "value": {
                "type": "number"
              }
            },
            {
              "name": "min",
              "description": "O valor mínimo que será considerado válido. Aplicável somente se `type` for `date` ou `number`.",
              "value": {
                "type": "number | string"
              }
            },
            {
              "name": "max",
              "description": "O valor máximo que será considerado válido. Aplicável somente se `type` for `date` ou `number`.",
              "value": {
                "type": "number | string"
              }
            },
            {
              "name": "step",
              "description": "Especifica a granularidade que o valor deve obedecer, ou o valor especial `any` que significa que nenhum passo é\nimplicado, permitindo qualquer valor numérico. Aplicável somente se `type` for `date` ou `number`.",
              "value": {
                "type": "number | 'any'"
              }
            },
            {
              "name": "autocapitalize",
              "description": "Controla se e como a entrada de texto é capitalizada enquanto inserida pelo usuário.",
              "value": {
                "type": "'off' | 'none' | 'on' | 'sentences' | 'words' | 'characters'"
              }
            },
            {
              "name": "autocorrect",
              "description": "Indica se o recurso de correção automática do navegador deve ser utilizado.",
              "value": {
                "type": "'off' | 'on'"
              }
            },
            {
              "name": "autocomplete",
              "description": "Especifica quais permissões o navegador tem para fornecer assistência no preenchimento dos valores do campo.\nConsulte\n[esta documentação no MDN](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete) para a lista de valores disponíveis.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "autofocus",
              "description": "Indica que o campo deve receber foco assim que a página for carregada.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "enterkeyhint",
              "description": "Utilizado para definir a aparência e o comportamento da tela `Enter` em teclados virtuais.",
              "value": {
                "type": "'enter' | 'done' | 'go' | 'next' | 'previous' | 'search' | 'send'"
              }
            },
            {
              "name": "spellcheck",
              "description": "Habilita correção ortográfica no campo.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "inputmode",
              "description": "Informa o navegador qual o tipo de dados esperado para ser inserido pelo usuário. Isso permite que o navegador\napresente o teclado virtual apropriado para o tipo de dados em dispositivos móveis.",
              "value": {
                "type": "'none' | 'text' | 'decimal' | 'numeric' | 'tel' | 'search' | 'email' | 'url'"
              }
            }
          ]
        },
        {
          "name": "cps-label",
          "description": "",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/label",
          "js": {
            "properties": [
              {
                "name": "variant",
                "description": "A variante temática do _label_.",
                "value": {
                  "type": "| 'primary'\n    | 'secondary'\n    | 'tertiary'\n    | 'disabled'\n    | 'brand-primary'\n    | 'brand-secondary'\n    | 'brand-tertiary'\n    | 'inverted-primary'\n    | 'inverted-secondary'\n    | 'inverted-disabled'"
                }
              },
              {
                "name": "size",
                "description": "O tamanho do texto do _label_. Por padrão, o tamanho é herdado do elemento pai.",
                "value": {
                  "type": "| 'inherit'\n    | 'stamp'\n    | 'caption'\n    | 'label'\n    | 'body'\n    | 'body-emphasized'\n    | 'body-strong'\n    | 'body-large'\n    | 'subtitle'\n    | 'title'\n    | 'heading'\n    | 'display'"
                }
              },
              {
                "name": "tag",
                "description": "O elemento HTML desejado para a renderização do _label_.",
                "value": {
                  "type": "'span' | 'small' | 'i' | 'b' | 'em' | 'strong' | 'label' | 'p' | 'div'"
                }
              }
            ],
            "events": []
          },
          "attributes": [
            {
              "name": "variant",
              "description": "A variante temática do _label_.",
              "value": {
                "type": "| 'primary'\n    | 'secondary'\n    | 'tertiary'\n    | 'disabled'\n    | 'brand-primary'\n    | 'brand-secondary'\n    | 'brand-tertiary'\n    | 'inverted-primary'\n    | 'inverted-secondary'\n    | 'inverted-disabled'"
              }
            },
            {
              "name": "size",
              "description": "O tamanho do texto do _label_. Por padrão, o tamanho é herdado do elemento pai.",
              "value": {
                "type": "| 'inherit'\n    | 'stamp'\n    | 'caption'\n    | 'label'\n    | 'body'\n    | 'body-emphasized'\n    | 'body-strong'\n    | 'body-large'\n    | 'subtitle'\n    | 'title'\n    | 'heading'\n    | 'display'"
              }
            },
            {
              "name": "tag",
              "description": "O elemento HTML desejado para a renderização do _label_.",
              "value": {
                "type": "'span' | 'small' | 'i' | 'b' | 'em' | 'strong' | 'label' | 'p' | 'div'"
              }
            }
          ]
        },
        {
          "name": "cps-link",
          "description": "",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/link",
          "js": {
            "properties": [
              {
                "name": "hasSlotController",
                "value": {}
              },
              {
                "name": "localize",
                "value": {}
              },
              {
                "name": "link",
                "value": {
                  "type": "HTMLAnchorElement"
                }
              },
              {
                "name": "disabled",
                "description": "Desabilita o _link_.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "href",
                "description": "O destino do _link_, podendo ser tanto um caminho relativo ao documento atual,\npara navegação interna, quanto um caminho absoluto para navegação externa.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "size",
                "description": "O tamanho do texto do _link_. Por padrão, o tamanho é herdado do elemento pai.",
                "value": {
                  "type": "| 'inherit'\n    | 'stamp'\n    | 'caption'\n    | 'label'\n    | 'body'\n    | 'body-emphasized'\n    | 'body-strong'\n    | 'body-large'\n    | 'subtitle'\n    | 'title'\n    | 'heading'\n    | 'display'"
                }
              },
              {
                "name": "target",
                "description": "O alvo do _link_, podendo ser `_self`, `_blank`, `_parent`, `_top`, ou um nome de janela ou _frame_ específico.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "handleClick",
                "value": {}
              },
              {
                "name": "handleBlur",
                "value": {}
              },
              {
                "name": "handleFocus",
                "value": {}
              },
              {
                "name": "click",
                "description": "Simula um _click_ no elemento.",
                "value": {}
              },
              {
                "name": "focus",
                "description": "Coloca o foco no _link_.",
                "value": {}
              },
              {
                "name": "blur",
                "description": "Remove o foco do _link_.",
                "value": {}
              }
            ],
            "events": [
              {
                "name": "cps-blur",
                "description": "Emitido quando o _link_ perde o foco."
              },
              {
                "name": "cps-focus",
                "description": "Emitido quando o _link_ obtém o foco."
              }
            ]
          },
          "attributes": [
            {
              "name": "disabled",
              "description": "Desabilita o _link_.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "href",
              "description": "O destino do _link_, podendo ser tanto um caminho relativo ao documento atual,\npara navegação interna, quanto um caminho absoluto para navegação externa.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "size",
              "description": "O tamanho do texto do _link_. Por padrão, o tamanho é herdado do elemento pai.",
              "value": {
                "type": "| 'inherit'\n    | 'stamp'\n    | 'caption'\n    | 'label'\n    | 'body'\n    | 'body-emphasized'\n    | 'body-strong'\n    | 'body-large'\n    | 'subtitle'\n    | 'title'\n    | 'heading'\n    | 'display'"
              }
            },
            {
              "name": "target",
              "description": "O alvo do _link_, podendo ser `_self`, `_blank`, `_parent`, `_top`, ou um nome de janela ou _frame_ específico.",
              "value": {
                "type": "string"
              }
            }
          ]
        },
        {
          "name": "cps-logo",
          "description": "",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/logo",
          "js": {
            "properties": [
              {
                "name": "type",
                "description": "O tipo de _logo_ a ser renderizado.",
                "value": {
                  "type": "| 'cps'\n    | 'cps-asscom'\n    | 'cps-cgtic'\n    | 'cps-sucar'\n    | 'elements'\n    | 'sp-horizontal'\n    | 'sp-vertical'"
                }
              },
              {
                "name": "variant",
                "description": "A variante temática do _logo_.",
                "value": {
                  "type": "'default' | 'monochromatic' | 'monochromatic-inverted'"
                }
              }
            ],
            "events": []
          },
          "attributes": [
            {
              "name": "type",
              "description": "O tipo de _logo_ a ser renderizado.",
              "value": {
                "type": "| 'cps'\n    | 'cps-asscom'\n    | 'cps-cgtic'\n    | 'cps-sucar'\n    | 'elements'\n    | 'sp-horizontal'\n    | 'sp-vertical'"
              }
            },
            {
              "name": "variant",
              "description": "A variante temática do _logo_.",
              "value": {
                "type": "'default' | 'monochromatic' | 'monochromatic-inverted'"
              }
            }
          ]
        },
        {
          "name": "cps-menu",
          "description": "",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/menu",
          "js": {
            "properties": [
              {
                "name": "defaultSlot",
                "value": {
                  "type": "HTMLSlotElement"
                }
              },
              {
                "name": "handleClick",
                "value": {}
              },
              {
                "name": "handleKeyDown",
                "value": {}
              },
              {
                "name": "handleMouseDown",
                "value": {}
              },
              {
                "name": "handleSlotChange",
                "value": {}
              },
              {
                "name": "isMenuItem",
                "value": {}
              }
            ],
            "events": [
              {
                "name": "cps-select",
                "description": "Emitido quando um item de menu interno é selecionado."
              }
            ]
          },
          "attributes": []
        },
        {
          "name": "cps-menu-item",
          "description": "",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/menu-item",
          "js": {
            "properties": [
              {
                "name": "cachedTextLabel",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "defaultSlot",
                "value": {
                  "type": "HTMLSlotElement"
                }
              },
              {
                "name": "menuItem",
                "value": {
                  "type": "HTMLElement"
                }
              },
              {
                "name": "type",
                "description": "O tipo de item de menu a ser renderizado. Para usar o estado `checked`, o valor deste atributo deve ter sido definido como `checkbox`.",
                "value": {
                  "type": "'normal' | 'checkbox'"
                }
              },
              {
                "name": "checked",
                "description": "Determina se o _checkbox_ do item de menu está selecionado (aplicável somente se o atributo `type` for `checked`).",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "value",
                "description": "Um valor único para identificar o item de menu, podendo programaticamente auxiliar na determinação de quando cada item de menu é selecionado, através do evento `cps-select` do `<cps-menu>` pai deste item.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "disabled",
                "description": "Desabilita o item de menu.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "handleHostClick",
                "value": {}
              },
              {
                "name": "handleDefaultSlotChange",
                "value": {}
              },
              {
                "name": "handleCheckedChange",
                "value": {}
              },
              {
                "name": "handleDisabledChange",
                "value": {}
              },
              {
                "name": "handleTypeChange",
                "value": {}
              },
              {
                "name": "getTextLabel",
                "description": "Obtém o texto literal a partir do conteúdo do _slot_ padrão do item de menu.",
                "value": {}
              }
            ],
            "events": []
          },
          "attributes": [
            {
              "name": "type",
              "description": "O tipo de item de menu a ser renderizado. Para usar o estado `checked`, o valor deste atributo deve ter sido definido como `checkbox`.",
              "value": {
                "type": "'normal' | 'checkbox'"
              }
            },
            {
              "name": "checked",
              "description": "Determina se o _checkbox_ do item de menu está selecionado (aplicável somente se o atributo `type` for `checked`).",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "value",
              "description": "Um valor único para identificar o item de menu, podendo programaticamente auxiliar na determinação de quando cada item de menu é selecionado, através do evento `cps-select` do `<cps-menu>` pai deste item.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "disabled",
              "description": "Desabilita o item de menu.",
              "value": {
                "type": "boolean"
              }
            }
          ]
        },
        {
          "name": "cps-menu-label",
          "description": "",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/menu-label",
          "js": {
            "properties": [],
            "events": []
          },
          "attributes": []
        },
        {
          "name": "cps-mutation-observer",
          "description": "",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/mutation-observer",
          "js": {
            "properties": [
              {
                "name": "mutationObserver",
                "value": {
                  "type": "MutationObserver"
                }
              },
              {
                "name": "attr",
                "description": "Observa alterações em atributos.\nPara observar todos os atributos, use `*`.\nPara atributos específicos, separe-os por vírgula, por exemplo, `attr=\"class,id,title\"`.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "attrOldValue",
                "description": "Indica se o valor anterior do atributo deve ser registrado ao monitorar alterações.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "charData",
                "description": "Observa alterações nos dados de caracteres textuais contidos no nó.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "charDataOldValue",
                "description": "Indica se o valor anterior do texto do nó deve ser registrado.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "childList",
                "description": "Observa a adição ou remoção de novos nós filhos.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "disabled",
                "description": "Desativa o observador.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "handleMutation",
                "value": {}
              },
              {
                "name": "startObserver",
                "value": {}
              },
              {
                "name": "stopObserver",
                "value": {}
              },
              {
                "name": "handleDisabledChange",
                "value": {}
              },
              {
                "name": "handleChange",
                "value": {}
              }
            ],
            "events": [
              {
                "name": "cps-mutation",
                "description": "Emitido quando ocorre uma mutação."
              }
            ]
          },
          "attributes": [
            {
              "name": "attr",
              "description": "Observa alterações em atributos.\nPara observar todos os atributos, use `*`.\nPara atributos específicos, separe-os por vírgula, por exemplo, `attr=\"class,id,title\"`.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "attr-old-value",
              "description": "Indica se o valor anterior do atributo deve ser registrado ao monitorar alterações.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "char-data",
              "description": "Observa alterações nos dados de caracteres textuais contidos no nó.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "char-data-old-value",
              "description": "Indica se o valor anterior do texto do nó deve ser registrado.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "child-list",
              "description": "Observa a adição ou remoção de novos nós filhos.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "disabled",
              "description": "Desativa o observador.",
              "value": {
                "type": "boolean"
              }
            }
          ]
        },
        {
          "name": "cps-notification",
          "description": "",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/notification",
          "js": {
            "properties": [
              {
                "name": "autoHideTimeout",
                "value": {
                  "type": "number"
                }
              },
              {
                "name": "hasSlotController",
                "value": {}
              },
              {
                "name": "localize",
                "value": {}
              },
              {
                "name": "base",
                "value": {
                  "type": "HTMLElement"
                }
              },
              {
                "name": "open",
                "description": "Indica se a notificação está aberta. Você pode alternar este atributo, manualmente ou reativamente, para mostrar e ocultar a notificação. Opcionalmente, pode utilizar os métodos `show()` e `hide()` se preferir uma abordagem imperativa, e este atributo refletirá o estado aberto da notificação em tempo real.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "closable",
                "description": "Habilita a exibição de um botão de fechar para que o usuário possa ocultar a notificação imediatamente.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "variant",
                "description": "A variante visual para apresentação da notificação.",
                "value": {
                  "type": "'neutral' | 'informative' | 'warning' | 'critical' | 'success'"
                }
              },
              {
                "name": "icon",
                "description": "Exibe ícone automático de acordo com a variante, ao invés de utilizar o _slot_ `icon`.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "duration",
                "description": "A duração, em milissegundos, que a notificação será exibida antes de se ocultar automaticamente. Caso o usuário interaja com a notificação antes dela se ocultar (por exemplo, movendo o _mouse_ sobre ela), o temporizador será reiniciado. O padrão `Infinity` significa que a notificação não se ocultará automaticamente.",
                "value": {}
              },
              {
                "name": "restartAutoHide",
                "value": {}
              },
              {
                "name": "handleCloseClick",
                "value": {}
              },
              {
                "name": "handleMouseMove",
                "value": {}
              },
              {
                "name": "handleOpenChange",
                "value": {}
              },
              {
                "name": "handleDurationChange",
                "value": {}
              },
              {
                "name": "show",
                "description": "Exibe a notificação, no local onde foi definida através de seu HTML e CSS.",
                "value": {}
              },
              {
                "name": "hide",
                "description": "Oculta a notificação, caso esta esteja visível.",
                "value": {}
              },
              {
                "name": "toast",
                "description": "Exibe a notificação como um _toast_. Isto irá mover a notificação para fora de sua posição no DOM e, quando ocultada, ela será removida do DOM completamente. Ao armazenar uma referência à notificação, você pode reutilizá-la chamando este método novamente. Retorna uma `Promise`que será resolvida após a notificação ser ocultada.",
                "value": {}
              },
              {
                "name": "hasIcon",
                "value": {}
              }
            ],
            "events": [
              {
                "name": "cps-show",
                "description": "Emitido quando a notificação aparece."
              },
              {
                "name": "cps-after-show",
                "description": "Emitido após a notificação aparecer e todas as animações terem sido completadas."
              },
              {
                "name": "cps-hide",
                "description": "Emitido quando a notificação some."
              },
              {
                "name": "cps-after-hide",
                "description": "Emitido após a notificação sumir e todas as animações terem sido completadas."
              }
            ]
          },
          "attributes": [
            {
              "name": "open",
              "description": "Indica se a notificação está aberta. Você pode alternar este atributo, manualmente ou reativamente, para mostrar e ocultar a notificação. Opcionalmente, pode utilizar os métodos `show()` e `hide()` se preferir uma abordagem imperativa, e este atributo refletirá o estado aberto da notificação em tempo real.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "closable",
              "description": "Habilita a exibição de um botão de fechar para que o usuário possa ocultar a notificação imediatamente.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "variant",
              "description": "A variante visual para apresentação da notificação.",
              "value": {
                "type": "'neutral' | 'informative' | 'warning' | 'critical' | 'success'"
              }
            },
            {
              "name": "icon",
              "description": "Exibe ícone automático de acordo com a variante, ao invés de utilizar o _slot_ `icon`.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "duration",
              "description": "A duração, em milissegundos, que a notificação será exibida antes de se ocultar automaticamente. Caso o usuário interaja com a notificação antes dela se ocultar (por exemplo, movendo o _mouse_ sobre ela), o temporizador será reiniciado. O padrão `Infinity` significa que a notificação não se ocultará automaticamente.",
              "value": {}
            }
          ]
        },
        {
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/",
          "js": {
            "properties": [],
            "events": []
          },
          "attributes": []
        },
        {
          "name": "cps-option",
          "description": "",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/option",
          "js": {
            "properties": [
              {
                "name": "cachedTextLabel",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "current",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "selected",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "hasHover",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "type",
                "value": {
                  "type": "'normal' | 'checkbox'"
                }
              },
              {
                "name": "value",
                "description": "Um valor único para identificar a opção. Quando é selecionada, o controle de formulário contendo a opção receberá este valor. O valor deve ser único dentre outras opções no mesmo controle. Os valores não podem conter espaços, pois espaços são usados como separadores em controles com seleção múltipla.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "disabled",
                "description": "Desabilita a opção.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "handleDefaultSlotChange",
                "value": {}
              },
              {
                "name": "handleMouseEnter",
                "value": {}
              },
              {
                "name": "handleMouseLeave",
                "value": {}
              },
              {
                "name": "handleDisabledChange",
                "value": {}
              },
              {
                "name": "handleSelectedChange",
                "value": {}
              },
              {
                "name": "handleValueChange",
                "value": {}
              },
              {
                "name": "getTextLabel",
                "description": "Obtém o texto literal a partir do conteúdo do _slot_ padrão da opção.",
                "value": {}
              }
            ],
            "events": []
          },
          "attributes": [
            {
              "name": "value",
              "description": "Um valor único para identificar a opção. Quando é selecionada, o controle de formulário contendo a opção receberá este valor. O valor deve ser único dentre outras opções no mesmo controle. Os valores não podem conter espaços, pois espaços são usados como separadores em controles com seleção múltipla.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "disabled",
              "description": "Desabilita a opção.",
              "value": {
                "type": "boolean"
              }
            }
          ]
        },
        {
          "name": "cps-progress",
          "description": "",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/progress",
          "js": {
            "properties": [
              {
                "name": "localize",
                "value": {}
              },
              {
                "name": "value",
                "description": "O progresso atual como uma porcentagem, de `0` a `100`. Se não informado, considera-se que a barra de progresso está em estado `indeterminate`.",
                "value": {
                  "type": "number | undefined"
                }
              },
              {
                "name": "status",
                "description": "O estado de progresso, para coloração contextual da barra de progresso.",
                "value": {
                  "type": "'default' | 'pause' | 'success' | 'error'"
                }
              },
              {
                "name": "label",
                "description": "Um rótulo descritivo para a barra de progresso. Este não será exibido na interface, mas será anunciado por dispositivos de acessibilidade durante a interação com o controle, sendo fortemente recomendado.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "indeterminate",
                "description": "É possível setar programaticamente o estado `indeterminate` como `true`, o que causa a remoção do atributo `value`. Não tem efeito como atributo, pois simplesmente não informar o atributo `value` já é suficiente.",
                "value": {
                  "type": "boolean"
                }
              }
            ],
            "events": []
          },
          "attributes": [
            {
              "name": "value",
              "description": "O progresso atual como uma porcentagem, de `0` a `100`. Se não informado, considera-se que a barra de progresso está em estado `indeterminate`.",
              "value": {
                "type": "number | undefined"
              }
            },
            {
              "name": "status",
              "description": "O estado de progresso, para coloração contextual da barra de progresso.",
              "value": {
                "type": "'default' | 'pause' | 'success' | 'error'"
              }
            },
            {
              "name": "label",
              "description": "Um rótulo descritivo para a barra de progresso. Este não será exibido na interface, mas será anunciado por dispositivos de acessibilidade durante a interação com o controle, sendo fortemente recomendado.",
              "value": {
                "type": "string"
              }
            }
          ]
        },
        {
          "name": "cps-radio",
          "description": "",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/radio",
          "js": {
            "properties": [
              {
                "name": "hasSlotController",
                "value": {}
              },
              {
                "name": "hasFocus",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "generatedId",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "title",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "id",
                "description": "O identificador único do campo, usado como estratégia de vinculação ao rótulo e/ou texto de apoio anexado.\nSe não for fornecido, um UUID é gerado automaticamente.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "value",
                "description": "O valor do campo, submetido em par _name_/_value_ com os dados do formulário.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "name",
                "description": "O nome do campo, submetido em par _name_/_value_ com os dados do formulário.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "label",
                "description": "O rótulo do campo. Se você precisar injetar HTML, use o _slot_ `label` em vez disso.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "size",
                "description": "O tamanho do campo.",
                "value": {
                  "type": "'small' | 'medium' | 'large'"
                }
              },
              {
                "name": "disabled",
                "description": "Desabilita o campo.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "checked",
                "description": "Determina o estado de checagem do campo, ou seja, quando presente, o campo encontra-se marcado.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "handleIdChange",
                "value": {}
              },
              {
                "name": "addEventListeners",
                "value": {}
              },
              {
                "name": "removeEventListeners",
                "value": {}
              },
              {
                "name": "handleBlur",
                "value": {}
              },
              {
                "name": "handleClick",
                "value": {}
              },
              {
                "name": "handleFocus",
                "value": {}
              },
              {
                "name": "setInitialAttributes",
                "value": {}
              },
              {
                "name": "handleCheckedChange",
                "value": {}
              },
              {
                "name": "handleDisabledChange",
                "value": {}
              }
            ],
            "events": [
              {
                "name": "cps-blur",
                "description": "Emitido quando o controle perde o foco."
              },
              {
                "name": "cps-focus",
                "description": "Emitido quando o controle obtém o foco."
              }
            ]
          },
          "attributes": [
            {
              "name": "title",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "id",
              "description": "O identificador único do campo, usado como estratégia de vinculação ao rótulo e/ou texto de apoio anexado.\nSe não for fornecido, um UUID é gerado automaticamente.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "value",
              "description": "O valor do campo, submetido em par _name_/_value_ com os dados do formulário.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "name",
              "description": "O nome do campo, submetido em par _name_/_value_ com os dados do formulário.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "label",
              "description": "O rótulo do campo. Se você precisar injetar HTML, use o _slot_ `label` em vez disso.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "size",
              "description": "O tamanho do campo.",
              "value": {
                "type": "'small' | 'medium' | 'large'"
              }
            },
            {
              "name": "disabled",
              "description": "Desabilita o campo.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "checked",
              "description": "Determina o estado de checagem do campo, ou seja, quando presente, o campo encontra-se marcado.",
              "value": {
                "type": "boolean"
              }
            }
          ]
        },
        {
          "name": "cps-radio-group",
          "description": "",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/radio-group",
          "js": {
            "properties": [
              {
                "name": "formControlController",
                "value": {}
              },
              {
                "name": "hasSlotController",
                "value": {}
              },
              {
                "name": "customValidityMessage",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "validationTimeout",
                "value": {
                  "type": "number"
                }
              },
              {
                "name": "defaultSlot",
                "value": {
                  "type": "HTMLSlotElement"
                }
              },
              {
                "name": "validationInput",
                "value": {
                  "type": "HTMLInputElement"
                }
              },
              {
                "name": "hasButtonGroup",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "errorMessage",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "generatedId",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "defaultValue",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "id",
                "description": "O identificador único do campo, usado como estratégia de vinculação ao rótulo e/ou texto de apoio anexado.\nSe não for fornecido, um UUID é gerado automaticamente.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "label",
                "description": "O rótulo do campo. Obrigatório para acessibilidade adequada. Se você precisar injetar HTML, use o _slot_ `label` em vez disso.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "helpText",
                "description": "O texto de apoio do campo. Se você precisar injetar HTML, use o _slot_ `help-text` em vez disso.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "name",
                "description": "O nome do campo, submetido em par _name_/_value_ com os dados do formulário.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "value",
                "description": "O valor do campo, submetido em par _name_/_value_ com os dados do formulário.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "size",
                "description": "O tamanho do campo. Este tamanho será aplicado a todos os elementos filhos `<cps-radio>` ou `<cps-toggle-button>`.",
                "value": {
                  "type": "'small' | 'medium' | 'large'"
                }
              },
              {
                "name": "form",
                "description": "O formulário \"dono\" deste controle de formulário. Se não informado, o formulário mais próximo na hierarquia\naté este elemento será utilizado. Se informado, o valor deve ser um `id` único de um formulário\nexistente no documento.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "required",
                "description": "Torna o campo como sendo de preenchimento obrigatório, garantindo que um `<cps-radio>` ou um `<cps-toggle-button>` internos esteja marcado.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "validity",
                "description": "Obtém o objeto de estado de validade do campo.",
                "value": {}
              },
              {
                "name": "validationMessage",
                "description": "Obtém a mensagem de validação do campo.",
                "value": {}
              },
              {
                "name": "handleIdChange",
                "value": {}
              },
              {
                "name": "getAllRadios",
                "value": {}
              },
              {
                "name": "handleRadioClick",
                "value": {}
              },
              {
                "name": "handleKeyDown",
                "value": {}
              },
              {
                "name": "handleLabelClick",
                "value": {}
              },
              {
                "name": "handleInvalid",
                "value": {}
              },
              {
                "name": "adjustFocusableRadios",
                "value": {}
              },
              {
                "name": "syncRadios",
                "value": {}
              },
              {
                "name": "updateCheckedRadio",
                "value": {}
              },
              {
                "name": "handleSizeChange",
                "value": {}
              },
              {
                "name": "handleValueChange",
                "value": {}
              },
              {
                "name": "checkValidity",
                "description": "Verifica a validade em um formulário, sem exibir uma mensagem de validação. Retorna `true` quando válido, e `false` quando inválido.",
                "value": {}
              },
              {
                "name": "getForm",
                "description": "Obtém o formulário associado com este componente, se algum estiver.",
                "value": {}
              },
              {
                "name": "reportValidity",
                "description": "Verifica a validade em um formulário, e exibe as mensagem de validação do navegador caso o resultado seja inválido.",
                "value": {}
              },
              {
                "name": "setCustomValidity",
                "description": "Define uma mensagem de validação personalizada. Passar uma `string` vazia como argumento restaura a validade do elemento.",
                "value": {}
              }
            ],
            "events": [
              {
                "name": "cps-change",
                "description": "Emitido quando a alteração do valor do controle é confirmada pelo usuário."
              },
              {
                "name": "cps-input",
                "description": "Emitido quando o controle recebe entrada de dados."
              },
              {
                "name": "cps-invalid",
                "description": "Emitido quando o elemento de formulário foi checado sobre sua validade, e suas condições não foram satisfeitas."
              }
            ]
          },
          "attributes": [
            {
              "name": "id",
              "description": "O identificador único do campo, usado como estratégia de vinculação ao rótulo e/ou texto de apoio anexado.\nSe não for fornecido, um UUID é gerado automaticamente.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "label",
              "description": "O rótulo do campo. Obrigatório para acessibilidade adequada. Se você precisar injetar HTML, use o _slot_ `label` em vez disso.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "help-text",
              "description": "O texto de apoio do campo. Se você precisar injetar HTML, use o _slot_ `help-text` em vez disso.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "name",
              "description": "O nome do campo, submetido em par _name_/_value_ com os dados do formulário.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "value",
              "description": "O valor do campo, submetido em par _name_/_value_ com os dados do formulário.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "size",
              "description": "O tamanho do campo. Este tamanho será aplicado a todos os elementos filhos `<cps-radio>` ou `<cps-toggle-button>`.",
              "value": {
                "type": "'small' | 'medium' | 'large'"
              }
            },
            {
              "name": "form",
              "description": "O formulário \"dono\" deste controle de formulário. Se não informado, o formulário mais próximo na hierarquia\naté este elemento será utilizado. Se informado, o valor deve ser um `id` único de um formulário\nexistente no documento.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "required",
              "description": "Torna o campo como sendo de preenchimento obrigatório, garantindo que um `<cps-radio>` ou um `<cps-toggle-button>` internos esteja marcado.",
              "value": {
                "type": "boolean"
              }
            }
          ]
        },
        {
          "name": "cps-range",
          "description": "",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/range",
          "js": {
            "properties": [
              {
                "name": "formControlController",
                "value": {}
              },
              {
                "name": "hasSlotController",
                "value": {}
              },
              {
                "name": "input",
                "value": {
                  "type": "HTMLInputElement"
                }
              },
              {
                "name": "range",
                "value": {
                  "type": "HTMLElement"
                }
              },
              {
                "name": "track",
                "value": {
                  "type": "HTMLElement"
                }
              },
              {
                "name": "generatedId",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "isFocused",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "isTooltipOpen",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "hasInitialValueBeenProcessed",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "isDragging",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "tooltipTimeoutId",
                "value": {
                  "type": "NodeJS.Timeout | null"
                }
              },
              {
                "name": "label",
                "description": "O rótulo do campo. Se você precisar injetar HTML, use o _slot_ `label` em vez disso.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "ariaLabel",
                "description": "O rótulo de acessibilidade para a intervalo. Necessário apenas se um `label` visual não for fornecido.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "helpText",
                "description": "O texto de apoio do campo. Se você precisar injetar HTML, use o _slot_ `help-text` em vez disso.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "name",
                "description": "O nome do campo, submetido em par _name_/_value_ com os dados do formulário.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "value",
                "description": "O valor do campo, submetido em par _name_/_value_ com os dados do formulário. Deve ser um valor entre `min` e `max`.",
                "value": {
                  "type": "number"
                }
              },
              {
                "name": "defaultValue",
                "description": "O valor padrão do controle de formulário. Usado principalmente para redefinir o campo.",
                "value": {
                  "type": "number"
                }
              },
              {
                "name": "size",
                "description": "O tamanho do campo.",
                "value": {
                  "type": "'small' | 'medium' | 'large'"
                }
              },
              {
                "name": "min",
                "description": "O valor mínimo do intervalo, por padrão `0`. Deve ser menor que `max`.",
                "value": {
                  "type": "number"
                }
              },
              {
                "name": "max",
                "description": "O valor máximo do intervalo, por padrão `100`. Deve ser maior que `min`.",
                "value": {
                  "type": "number"
                }
              },
              {
                "name": "step",
                "description": "A precisão para a qual arredondar, por padrão `1`. Altere para permitir intervalos decimais.",
                "value": {
                  "type": "number"
                }
              },
              {
                "name": "disabled",
                "description": "Desabilita o campo.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "readonly",
                "description": "Torna o campo somente leitura.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "required",
                "description": "Torna o campo como sendo de preenchimento obrigatório.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "form",
                "description": "O formulário \"dono\" deste controle de formulário. Se não informado, o formulário mais próximo na hierarquia\naté este elemento será utilizado. Se informado, o valor deve ser um `id` único de um formulário\nexistente no documento.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "noTooltip",
                "description": "Se verdadeiro, desativa completamente a exibição de dica de ferramenta durante a interação com o campo.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "validity",
                "description": "Obtém o objeto de estado de validade do campo.",
                "value": {}
              },
              {
                "name": "validationMessage",
                "description": "Obtém a mensagem de validação do campo.",
                "value": {}
              },
              {
                "name": "handleIdChange",
                "value": {}
              },
              {
                "name": "handleValueChange",
                "value": {}
              },
              {
                "name": "handleDisabledChange",
                "value": {}
              },
              {
                "name": "handleReadonlyChange",
                "value": {}
              },
              {
                "name": "handleMinChange",
                "value": {}
              },
              {
                "name": "handleMaxChange",
                "value": {}
              },
              {
                "name": "checkValidity",
                "description": "Verifica a validade em um formulário, sem exibir uma mensagem de validação. Retorna `true` quando válido, e `false` quando inválido.",
                "value": {}
              },
              {
                "name": "getForm",
                "description": "Obtém o formulário associado com este componente, se algum estiver.",
                "value": {}
              },
              {
                "name": "reportValidity",
                "description": "Verifica a validade em um formulário, e exibe as mensagem de validação do navegador caso o resultado seja inválido.",
                "value": {}
              },
              {
                "name": "setCustomValidity",
                "description": "Define uma mensagem de validação personalizada. Passar uma `string` vazia como argumento restaura a validade do elemento.",
                "value": {}
              },
              {
                "name": "focus",
                "description": "Coloca o foco no campo.",
                "value": {}
              },
              {
                "name": "blur",
                "description": "Remove o foco do campo.",
                "value": {}
              },
              {
                "name": "normalizeValue",
                "value": {}
              },
              {
                "name": "handleValueChangeEffects",
                "value": {}
              },
              {
                "name": "handleFocus",
                "value": {}
              },
              {
                "name": "handleBlur",
                "value": {}
              },
              {
                "name": "handleInvalid",
                "value": {}
              },
              {
                "name": "getValueFromMouse",
                "value": {}
              },
              {
                "name": "getEffectiveStep",
                "value": {}
              },
              {
                "name": "clampValue",
                "value": {}
              },
              {
                "name": "getMidpoint",
                "value": {}
              },
              {
                "name": "valueFromPercent",
                "value": {}
              },
              {
                "name": "percentFromValue",
                "value": {}
              },
              {
                "name": "snapToStep",
                "value": {}
              },
              {
                "name": "clampCurrentValue",
                "value": {}
              },
              {
                "name": "clearTooltipTimeout",
                "value": {}
              },
              {
                "name": "scheduleTooltipHide",
                "value": {}
              },
              {
                "name": "handleInteraction",
                "value": {}
              },
              {
                "name": "handleKeyDown",
                "value": {}
              },
              {
                "name": "handleClick",
                "value": {}
              },
              {
                "name": "handleLabelClick",
                "value": {}
              },
              {
                "name": "handlePointerDown",
                "value": {}
              },
              {
                "name": "handlePointerMove",
                "value": {}
              },
              {
                "name": "handlePointerUp",
                "value": {}
              },
              {
                "name": "renderSlider",
                "value": {}
              }
            ],
            "events": [
              {
                "name": "cps-change",
                "description": "Emitido quando a alteração do valor do controle é confirmada."
              },
              {
                "name": "cps-focus",
                "description": "Emitido quando o controle obtém o foco."
              },
              {
                "name": "cps-blur",
                "description": "Emitido quando o controle perde o foco."
              },
              {
                "name": "cps-invalid",
                "description": "Emitido quando o elemento de formulário foi checado sobre sua validade, e suas condições não foram satisfeitas."
              }
            ]
          },
          "attributes": [
            {
              "name": "label",
              "description": "O rótulo do campo. Se você precisar injetar HTML, use o _slot_ `label` em vez disso.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "aria-label",
              "description": "O rótulo de acessibilidade para a intervalo. Necessário apenas se um `label` visual não for fornecido.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "help-text",
              "description": "O texto de apoio do campo. Se você precisar injetar HTML, use o _slot_ `help-text` em vez disso.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "name",
              "description": "O nome do campo, submetido em par _name_/_value_ com os dados do formulário.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "value",
              "description": "O valor do campo, submetido em par _name_/_value_ com os dados do formulário. Deve ser um valor entre `min` e `max`.",
              "value": {
                "type": "number"
              }
            },
            {
              "name": "size",
              "description": "O tamanho do campo.",
              "value": {
                "type": "'small' | 'medium' | 'large'"
              }
            },
            {
              "name": "min",
              "description": "O valor mínimo do intervalo, por padrão `0`. Deve ser menor que `max`.",
              "value": {
                "type": "number"
              }
            },
            {
              "name": "max",
              "description": "O valor máximo do intervalo, por padrão `100`. Deve ser maior que `min`.",
              "value": {
                "type": "number"
              }
            },
            {
              "name": "step",
              "description": "A precisão para a qual arredondar, por padrão `1`. Altere para permitir intervalos decimais.",
              "value": {
                "type": "number"
              }
            },
            {
              "name": "disabled",
              "description": "Desabilita o campo.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "readonly",
              "description": "Torna o campo somente leitura.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "required",
              "description": "Torna o campo como sendo de preenchimento obrigatório.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "form",
              "description": "O formulário \"dono\" deste controle de formulário. Se não informado, o formulário mais próximo na hierarquia\naté este elemento será utilizado. Se informado, o valor deve ser um `id` único de um formulário\nexistente no documento.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "no-tooltip",
              "description": "Se verdadeiro, desativa completamente a exibição de dica de ferramenta durante a interação com o campo.",
              "value": {
                "type": "boolean"
              }
            }
          ]
        },
        {
          "name": "cps-rating",
          "description": "",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/rating",
          "js": {
            "properties": [
              {
                "name": "formControlController",
                "value": {}
              },
              {
                "name": "hasSlotController",
                "value": {}
              },
              {
                "name": "input",
                "value": {
                  "type": "HTMLInputElement"
                }
              },
              {
                "name": "rating",
                "value": {
                  "type": "HTMLElement"
                }
              },
              {
                "name": "hoverValue",
                "value": {
                  "type": "number"
                }
              },
              {
                "name": "isHovering",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "isFocused",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "generatedId",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "label",
                "description": "O rótulo do campo. Se você precisar injetar HTML, use o _slot_ `label` em vez disso.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "ariaLabel",
                "description": "O rótulo de acessibilidade para a classificação. Necessário apenas se um `label` visual não for fornecido.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "helpText",
                "description": "O texto de apoio do campo. Se você precisar injetar HTML, use o _slot_ `help-text` em vez disso.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "name",
                "description": "O nome do campo, submetido em par _name_/_value_ com os dados do formulário.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "value",
                "description": "O valor do campo, submetido em par _name_/_value_ com os dados do formulário.",
                "value": {
                  "type": "number"
                }
              },
              {
                "name": "defaultValue",
                "description": "O valor padrão do controle de formulário. Usado principalmente para redefinir o campo.",
                "value": {
                  "type": "number"
                }
              },
              {
                "name": "size",
                "description": "O tamanho do campo.",
                "value": {
                  "type": "'small' | 'medium' | 'large'"
                }
              },
              {
                "name": "max",
                "description": "O valor máximo da classificação, por padrão `5`. Deve ser no mínimo `1`.",
                "value": {
                  "type": "number"
                }
              },
              {
                "name": "step",
                "description": "A precisão para a qual arredondar, por padrão `1`. Para permitir meias estrelas, defina como `0.5`.",
                "value": {
                  "type": "number"
                }
              },
              {
                "name": "symbol",
                "description": "O símbolo usado para representar cada unidade de classificação.",
                "value": {
                  "type": "'star' | 'heart'"
                }
              },
              {
                "name": "disabled",
                "description": "Desabilita o campo.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "readonly",
                "description": "Torna o campo somente leitura.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "required",
                "description": "Torna o campo como sendo de preenchimento obrigatório.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "form",
                "description": "O formulário \"dono\" deste controle de formulário. Se não informado, o formulário mais próximo na hierarquia\naté este elemento será utilizado. Se informado, o valor deve ser um `id` único de um formulário\nexistente no documento.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "validity",
                "description": "Obtém o objeto de estado de validade do campo.",
                "value": {}
              },
              {
                "name": "validationMessage",
                "description": "Obtém a mensagem de validação do campo.",
                "value": {}
              },
              {
                "name": "handleIdChange",
                "value": {}
              },
              {
                "name": "handleBlur",
                "value": {}
              },
              {
                "name": "handleFocus",
                "value": {}
              },
              {
                "name": "handleInvalid",
                "value": {}
              },
              {
                "name": "getValueFromMouse",
                "value": {}
              },
              {
                "name": "getRoundedValue",
                "value": {}
              },
              {
                "name": "handleKeyDown",
                "value": {}
              },
              {
                "name": "handleMouseEnter",
                "value": {}
              },
              {
                "name": "handleMouseLeave",
                "value": {}
              },
              {
                "name": "handleMouseMove",
                "value": {}
              },
              {
                "name": "handleClick",
                "value": {}
              },
              {
                "name": "handleLabelClick",
                "value": {}
              },
              {
                "name": "handleValueChange",
                "value": {}
              },
              {
                "name": "handleDisabledChange",
                "value": {}
              },
              {
                "name": "handleReadonlyChange",
                "value": {}
              },
              {
                "name": "checkValidity",
                "description": "Verifica a validade em um formulário, sem exibir uma mensagem de validação. Retorna `true` quando válido, e `false` quando inválido.",
                "value": {}
              },
              {
                "name": "getForm",
                "description": "Obtém o formulário associado com este componente, se algum estiver.",
                "value": {}
              },
              {
                "name": "reportValidity",
                "description": "Verifica a validade em um formulário, e exibe as mensagem de validação do navegador caso o resultado seja inválido.",
                "value": {}
              },
              {
                "name": "setCustomValidity",
                "description": "Define uma mensagem de validação personalizada. Passar uma `string` vazia como argumento restaura a validade do elemento.",
                "value": {}
              },
              {
                "name": "focus",
                "description": "Coloca o foco no campo.",
                "value": {}
              },
              {
                "name": "blur",
                "description": "Remove o foco do campo.",
                "value": {}
              },
              {
                "name": "renderItems",
                "value": {}
              }
            ],
            "events": [
              {
                "name": "cps-change",
                "description": "Emitido quando a alteração do valor do controle é confirmada."
              },
              {
                "name": "cps-focus",
                "description": "Emitido quando o controle obtém o foco."
              },
              {
                "name": "cps-blur",
                "description": "Emitido quando o controle perde o foco."
              },
              {
                "name": "cps-invalid",
                "description": "Emitido quando o elemento de formulário foi checado sobre sua validade, e suas condições não foram satisfeitas."
              }
            ]
          },
          "attributes": [
            {
              "name": "label",
              "description": "O rótulo do campo. Se você precisar injetar HTML, use o _slot_ `label` em vez disso.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "aria-label",
              "description": "O rótulo de acessibilidade para a classificação. Necessário apenas se um `label` visual não for fornecido.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "help-text",
              "description": "O texto de apoio do campo. Se você precisar injetar HTML, use o _slot_ `help-text` em vez disso.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "name",
              "description": "O nome do campo, submetido em par _name_/_value_ com os dados do formulário.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "value",
              "description": "O valor do campo, submetido em par _name_/_value_ com os dados do formulário.",
              "value": {
                "type": "number"
              }
            },
            {
              "name": "size",
              "description": "O tamanho do campo.",
              "value": {
                "type": "'small' | 'medium' | 'large'"
              }
            },
            {
              "name": "max",
              "description": "O valor máximo da classificação, por padrão `5`. Deve ser no mínimo `1`.",
              "value": {
                "type": "number"
              }
            },
            {
              "name": "step",
              "description": "A precisão para a qual arredondar, por padrão `1`. Para permitir meias estrelas, defina como `0.5`.",
              "value": {
                "type": "number"
              }
            },
            {
              "name": "symbol",
              "description": "O símbolo usado para representar cada unidade de classificação.",
              "value": {
                "type": "'star' | 'heart'"
              }
            },
            {
              "name": "disabled",
              "description": "Desabilita o campo.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "readonly",
              "description": "Torna o campo somente leitura.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "required",
              "description": "Torna o campo como sendo de preenchimento obrigatório.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "form",
              "description": "O formulário \"dono\" deste controle de formulário. Se não informado, o formulário mais próximo na hierarquia\naté este elemento será utilizado. Se informado, o valor deve ser um `id` único de um formulário\nexistente no documento.",
              "value": {
                "type": "string"
              }
            }
          ]
        },
        {
          "name": "cps-resize-observer",
          "description": "",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/resize-observer",
          "js": {
            "properties": [
              {
                "name": "resizeObserver",
                "value": {
                  "type": "ResizeObserver"
                }
              },
              {
                "name": "observedElements",
                "value": {
                  "type": "HTMLElement[]"
                }
              },
              {
                "name": "disabled",
                "description": "Desativa o observador.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "handleSlotChange",
                "value": {}
              },
              {
                "name": "startObserver",
                "value": {}
              },
              {
                "name": "stopObserver",
                "value": {}
              },
              {
                "name": "handleDisabledChange",
                "value": {}
              }
            ],
            "events": [
              {
                "name": "cps-resize",
                "description": "Emitido quando um elemento é redimensionado."
              }
            ]
          },
          "attributes": [
            {
              "name": "disabled",
              "description": "Desativa o observador.",
              "value": {
                "type": "boolean"
              }
            }
          ]
        },
        {
          "name": "cps-select",
          "description": "",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/select",
          "js": {
            "properties": [
              {
                "name": "formControlController",
                "value": {}
              },
              {
                "name": "hasSlotController",
                "value": {}
              },
              {
                "name": "localize",
                "value": {}
              },
              {
                "name": "typeToSelectString",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "typeToSelectTimeout",
                "value": {
                  "type": "number"
                }
              },
              {
                "name": "flyout",
                "value": {
                  "type": "CpsFlyout"
                }
              },
              {
                "name": "field",
                "value": {
                  "type": "HTMLSlotElement"
                }
              },
              {
                "name": "displayInput",
                "value": {
                  "type": "HTMLInputElement"
                }
              },
              {
                "name": "valueInput",
                "value": {
                  "type": "HTMLInputElement"
                }
              },
              {
                "name": "menu",
                "value": {
                  "type": "HTMLSlotElement"
                }
              },
              {
                "name": "hasFocus",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "generatedId",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "displayLabel",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "currentOption",
                "value": {
                  "type": "CpsOption"
                }
              },
              {
                "name": "selectedOptions",
                "value": {
                  "type": "CpsOption[]"
                }
              },
              {
                "name": "id",
                "description": "O identificador único do campo, usado como estratégia de vinculação ao rótulo e/ou texto de apoio anexado.\nSe não for fornecido, um UUID é gerado automaticamente.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "name",
                "description": "O nome do campo, submetido em par _name_/_value_ com os dados do formulário.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "value",
                "description": "O valor do campo, submetido em par _name_/_value_ com os dados do formulário.\nQuando `multiple` é habilitado, o valor será uma lista de valores delimitados por espaço com base nas opções selecionadas.",
                "value": {
                  "type": "string | string[]"
                }
              },
              {
                "name": "defaultValue",
                "description": "O valor padrão do controle de formulário. Usado principalmente para redefinir o campo.",
                "value": {
                  "type": "string | string[]"
                }
              },
              {
                "name": "size",
                "description": "O tamanho do campo.",
                "value": {
                  "type": "'small' | 'medium' | 'large'"
                }
              },
              {
                "name": "placeholder",
                "description": "Texto de espaço reservado para exibir uma dica quando o campo estiver vazio.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "multiple",
                "description": "Habilita a possibilidade de selecionar mais de uma opção.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "maxOptionsVisible",
                "description": "O número máximo de opções selecionadas a serem exibidas no campo principal, quando `multiple` é usado.\nApós o limite, apresenta um _chip_ exibindo `+n` (sendo `n` o número de opções selecionadas mas não exibidas).\nO valor padrão é `0`, e significa nenhum limite (todas as opções selecionadas são exibidas).",
                "value": {
                  "type": "number"
                }
              },
              {
                "name": "disabled",
                "description": "Desabilita o campo.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "clearable",
                "description": "Adiciona um botão de limpar exibido quando o campo não estiver vazio.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "open",
                "description": "Indica se o menu de seleção de opções está aberto. Você pode alternar este atributo, manualmente ou reativamente, para mostrar e ocultar o menu. Opcionalmente, pode utilizar os métodos `show()` e `hide()` se preferir uma abordagem imperativa, e este atributo refletirá o estado aberto do menu em tempo real.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "strategy",
                "description": "Estratégia a nível de CSS do posicionamento do menu. A estratégia `absolute` funciona bem na maioria dos casos, mas se rolagem externa causar o corte do menu (se um elemento pai for `overflow` igual a `auto` ou `scroll`), usar uma estratégia de posição `fixed` pode contornar o problema. Entretanto, posicionamento fixo pode não funcionar em todos os cenários, portanto deve ser habilitado apenas quando necessário, e testado com atenção.",
                "value": {
                  "type": "'absolute' | 'fixed'"
                }
              },
              {
                "name": "label",
                "description": "O rótulo do campo. Se você precisar injetar HTML, use o _slot_ `label` em vez disso.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "placement",
                "description": "O posicionamento preferido do menu de seleção em relação ao campo base. Observe que o posicionamento real poderá variar, se o posicionamento desejado não for viável, no intuito de manter o painel dentro da área de visualização.",
                "value": {
                  "type": "'top' | 'bottom'"
                }
              },
              {
                "name": "helpText",
                "description": "O texto de apoio do campo. Se você precisar injetar HTML, use o _slot_ `help-text` em vez disso.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "form",
                "description": "O formulário \"dono\" deste controle de formulário. Se não informado, o formulário mais próximo na hierarquia\naté este elemento será utilizado. Se informado, o valor deve ser um `id` único de um formulário\nexistente no documento.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "required",
                "description": "Torna o campo como sendo de preenchimento obrigatório.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "validity",
                "description": "Obtém o objeto de estado de validade do campo.",
                "value": {}
              },
              {
                "name": "validationMessage",
                "description": "Obtém a mensagem de validação do campo.",
                "value": {}
              },
              {
                "name": "handleIdChange",
                "value": {}
              },
              {
                "name": "addOpenListeners",
                "value": {}
              },
              {
                "name": "removeOpenListeners",
                "value": {}
              },
              {
                "name": "handleFocus",
                "value": {}
              },
              {
                "name": "handleBlur",
                "value": {}
              },
              {
                "name": "handleDocumentFocusIn",
                "value": {}
              },
              {
                "name": "handleDocumentKeyDown",
                "value": {}
              },
              {
                "name": "handleDocumentMouseDown",
                "value": {}
              },
              {
                "name": "handleComboboxMouseDown",
                "value": {}
              },
              {
                "name": "handleComboboxKeyDown",
                "value": {}
              },
              {
                "name": "handleClearClick",
                "value": {}
              },
              {
                "name": "handleClearMouseDown",
                "value": {}
              },
              {
                "name": "handleOptionClick",
                "value": {}
              },
              {
                "name": "handleDefaultSlotChange",
                "value": {}
              },
              {
                "name": "handleTagRemove",
                "value": {}
              },
              {
                "name": "getAllLabels",
                "value": {}
              },
              {
                "name": "getAllOptions",
                "value": {}
              },
              {
                "name": "getFirstOption",
                "value": {}
              },
              {
                "name": "setCurrentOption",
                "value": {}
              },
              {
                "name": "setSelectedOptions",
                "value": {}
              },
              {
                "name": "toggleOptionSelection",
                "value": {}
              },
              {
                "name": "selectionChanged",
                "value": {}
              },
              {
                "name": "handleInvalid",
                "value": {}
              },
              {
                "name": "handleDisabledChange",
                "value": {}
              },
              {
                "name": "handleValueChange",
                "value": {}
              },
              {
                "name": "handleOpenChange",
                "value": {}
              },
              {
                "name": "show",
                "description": "Exibe o menu seletor de opções.",
                "value": {}
              },
              {
                "name": "hide",
                "description": "Oculta o menu seletor de opções.",
                "value": {}
              },
              {
                "name": "checkValidity",
                "description": "Verifica a validade em um formulário, sem exibir uma mensagem de validação. Retorna `true` quando válido, e `false` quando inválido.",
                "value": {}
              },
              {
                "name": "getForm",
                "description": "Obtém o formulário associado com este componente, se algum estiver.",
                "value": {}
              },
              {
                "name": "reportValidity",
                "description": "Verifica a validade em um formulário, e exibe as mensagem de validação do navegador caso o resultado seja inválido.",
                "value": {}
              },
              {
                "name": "setCustomValidity",
                "description": "Define uma mensagem de validação personalizada. Passar uma `string` vazia como argumento restaura a validade do elemento.",
                "value": {}
              },
              {
                "name": "focus",
                "description": "Coloca o foco no campo.",
                "value": {}
              },
              {
                "name": "blur",
                "description": "Remove o foco do campo.",
                "value": {}
              }
            ],
            "events": [
              {
                "name": "cps-change",
                "description": "Emitido quando a alteração do valor do controle é confirmada pelo usuário."
              },
              {
                "name": "cps-clear",
                "description": "Emitido quando o botão de limpar é ativado (caso `clearable` esteja em uso)."
              },
              {
                "name": "cps-input",
                "description": "Emitido quando o controle recebe entrada de dados."
              },
              {
                "name": "cps-focus",
                "description": "Emitido quando o controle obtém o foco."
              },
              {
                "name": "cps-blur",
                "description": "Emitido quando o controle perde o foco."
              },
              {
                "name": "cps-show",
                "description": "Emitido quando a lista suspensa de opções começa a ser exibida."
              },
              {
                "name": "cps-after-show",
                "description": "Emitido após a lista suspensa de opções ser exibida e todas as animações terem sido concluídas."
              },
              {
                "name": "cps-hide",
                "description": "Emitido quando a lista suspensa de opções começa a ser ocultada."
              },
              {
                "name": "cps-after-hide",
                "description": "Emitido após a lista suspensa de opções ser ocultada e todas as animações terem sido concluídas."
              },
              {
                "name": "cps-invalid",
                "description": "Emitido quando o elemento de formulário foi checado sobre sua validade, e suas condições não foram satisfeitas."
              }
            ]
          },
          "attributes": [
            {
              "name": "id",
              "description": "O identificador único do campo, usado como estratégia de vinculação ao rótulo e/ou texto de apoio anexado.\nSe não for fornecido, um UUID é gerado automaticamente.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "name",
              "description": "O nome do campo, submetido em par _name_/_value_ com os dados do formulário.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "value",
              "description": "O valor do campo, submetido em par _name_/_value_ com os dados do formulário.\nQuando `multiple` é habilitado, o valor será uma lista de valores delimitados por espaço com base nas opções selecionadas.",
              "value": {
                "type": "string | string[]"
              }
            },
            {
              "name": "size",
              "description": "O tamanho do campo.",
              "value": {
                "type": "'small' | 'medium' | 'large'"
              }
            },
            {
              "name": "placeholder",
              "description": "Texto de espaço reservado para exibir uma dica quando o campo estiver vazio.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "multiple",
              "description": "Habilita a possibilidade de selecionar mais de uma opção.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "max-options-visible",
              "description": "O número máximo de opções selecionadas a serem exibidas no campo principal, quando `multiple` é usado.\nApós o limite, apresenta um _chip_ exibindo `+n` (sendo `n` o número de opções selecionadas mas não exibidas).\nO valor padrão é `0`, e significa nenhum limite (todas as opções selecionadas são exibidas).",
              "value": {
                "type": "number"
              }
            },
            {
              "name": "disabled",
              "description": "Desabilita o campo.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "clearable",
              "description": "Adiciona um botão de limpar exibido quando o campo não estiver vazio.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "open",
              "description": "Indica se o menu de seleção de opções está aberto. Você pode alternar este atributo, manualmente ou reativamente, para mostrar e ocultar o menu. Opcionalmente, pode utilizar os métodos `show()` e `hide()` se preferir uma abordagem imperativa, e este atributo refletirá o estado aberto do menu em tempo real.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "strategy",
              "description": "Estratégia a nível de CSS do posicionamento do menu. A estratégia `absolute` funciona bem na maioria dos casos, mas se rolagem externa causar o corte do menu (se um elemento pai for `overflow` igual a `auto` ou `scroll`), usar uma estratégia de posição `fixed` pode contornar o problema. Entretanto, posicionamento fixo pode não funcionar em todos os cenários, portanto deve ser habilitado apenas quando necessário, e testado com atenção.",
              "value": {
                "type": "'absolute' | 'fixed'"
              }
            },
            {
              "name": "label",
              "description": "O rótulo do campo. Se você precisar injetar HTML, use o _slot_ `label` em vez disso.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "placement",
              "description": "O posicionamento preferido do menu de seleção em relação ao campo base. Observe que o posicionamento real poderá variar, se o posicionamento desejado não for viável, no intuito de manter o painel dentro da área de visualização.",
              "value": {
                "type": "'top' | 'bottom'"
              }
            },
            {
              "name": "help-text",
              "description": "O texto de apoio do campo. Se você precisar injetar HTML, use o _slot_ `help-text` em vez disso.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "form",
              "description": "O formulário \"dono\" deste controle de formulário. Se não informado, o formulário mais próximo na hierarquia\naté este elemento será utilizado. Se informado, o valor deve ser um `id` único de um formulário\nexistente no documento.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "required",
              "description": "Torna o campo como sendo de preenchimento obrigatório.",
              "value": {
                "type": "boolean"
              }
            }
          ]
        },
        {
          "name": "cps-separator",
          "description": "",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/separator",
          "js": {
            "properties": [
              {
                "name": "hasSlotController",
                "value": {}
              },
              {
                "name": "vertical",
                "description": "Desenha o separador em uma orientação vertical, ao invés do padrão horizontal.",
                "value": {
                  "type": "boolean"
                }
              }
            ],
            "events": []
          },
          "attributes": [
            {
              "name": "vertical",
              "description": "Desenha o separador em uma orientação vertical, ao invés do padrão horizontal.",
              "value": {
                "type": "boolean"
              }
            }
          ]
        },
        {
          "name": "cps-skeleton",
          "description": "",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/skeleton",
          "js": {
            "properties": [
              {
                "name": "effect",
                "description": "Determina o efeito visual de carregamento do indicador.",
                "value": {
                  "type": "'sheen' | 'pulse' | 'none'"
                }
              },
              {
                "name": "rounded",
                "description": "Arredondamento dos cantos, com o padrão sendo bordas arredondas em `4px`.",
                "value": {
                  "type": "'default' | 'corner' | 'full' | 'none'"
                }
              }
            ],
            "events": []
          },
          "attributes": [
            {
              "name": "effect",
              "description": "Determina o efeito visual de carregamento do indicador.",
              "value": {
                "type": "'sheen' | 'pulse' | 'none'"
              }
            },
            {
              "name": "rounded",
              "description": "Arredondamento dos cantos, com o padrão sendo bordas arredondas em `4px`.",
              "value": {
                "type": "'default' | 'corner' | 'full' | 'none'"
              }
            }
          ]
        },
        {
          "name": "cps-spinner",
          "description": "",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/spinner",
          "js": {
            "properties": [
              {
                "name": "localize",
                "value": {}
              }
            ],
            "events": []
          },
          "attributes": []
        },
        {
          "name": "cps-switch",
          "description": "",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/switch",
          "js": {
            "properties": [
              {
                "name": "formControlController",
                "value": {}
              },
              {
                "name": "hasSlotController",
                "value": {}
              },
              {
                "name": "input",
                "value": {
                  "type": "HTMLInputElement"
                }
              },
              {
                "name": "hasFocus",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "generatedId",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "title",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "id",
                "description": "O identificador único do campo, usado como estratégia de vinculação ao rótulo e/ou texto de apoio anexado.\nSe não for fornecido, um UUID é gerado automaticamente.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "name",
                "description": "O nome do campo, submetido em par _name_/_value_ com os dados do formulário.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "value",
                "description": "O valor do campo, submetido em par _name_/_value_ com os dados do formulário.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "label",
                "description": "O rótulo do campo. Se você precisar injetar HTML, use o _slot_ `label` em vez disso.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "size",
                "description": "O tamanho do campo.",
                "value": {
                  "type": "'small' | 'medium' | 'large'"
                }
              },
              {
                "name": "disabled",
                "description": "Desabilita o campo.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "checked",
                "description": "Determina o estado de checagem do campo, ou seja, quando presente, o campo encontra-se marcado.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "defaultChecked",
                "description": "O valor padrão do controle de formulário. Usado principalmente para redefinir o campo.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "form",
                "description": "O formulário \"dono\" deste controle de formulário. Se não informado, o formulário mais próximo na hierarquia\naté este elemento será utilizado. Se informado, o valor deve ser um `id` único de um formulário\nexistente no documento.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "required",
                "description": "Torna o campo como sendo de preenchimento obrigatório.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "fluid",
                "description": "Adiciona posicionamento fluido ao rótulo, permitindo que ocupe todo o espaço disponível à esquerda, automaticamente movendo o interruptor para a direita.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "validity",
                "description": "Obtém o objeto de estado de validade do campo.",
                "value": {}
              },
              {
                "name": "validationMessage",
                "description": "Obtém a mensagem de validação do campo.",
                "value": {}
              },
              {
                "name": "handleIdChange",
                "value": {}
              },
              {
                "name": "handleClick",
                "value": {}
              },
              {
                "name": "handleBlur",
                "value": {}
              },
              {
                "name": "handleInput",
                "value": {}
              },
              {
                "name": "handleInvalid",
                "value": {}
              },
              {
                "name": "handleFocus",
                "value": {}
              },
              {
                "name": "handleDisabledChange",
                "value": {}
              },
              {
                "name": "handleStateChange",
                "value": {}
              },
              {
                "name": "click",
                "description": "Simula um _click_ no campo.",
                "value": {}
              },
              {
                "name": "focus",
                "description": "Coloca o foco no campo.",
                "value": {}
              },
              {
                "name": "blur",
                "description": "Remove o foco do campo.",
                "value": {}
              },
              {
                "name": "checkValidity",
                "description": "Verifica a validade em um formulário, sem exibir uma mensagem de validação. Retorna `true` quando válido, e `false` quando inválido.",
                "value": {}
              },
              {
                "name": "getForm",
                "description": "Obtém o formulário associado com este componente, se algum estiver.",
                "value": {}
              },
              {
                "name": "reportValidity",
                "description": "Verifica a validade em um formulário, e exibe as mensagem de validação do navegador caso o resultado seja inválido.",
                "value": {}
              },
              {
                "name": "setCustomValidity",
                "description": "Define uma mensagem de validação personalizada. Passar uma `string` vazia como argumento restaura a validade do elemento.",
                "value": {}
              }
            ],
            "events": [
              {
                "name": "cps-blur",
                "description": "Emitido quando o controle perde o foco."
              },
              {
                "name": "cps-change",
                "description": "Emitido quando a alteração do valor do controle é confirmada pelo usuário."
              },
              {
                "name": "cps-focus",
                "description": "Emitido quando o controle obtém o foco."
              },
              {
                "name": "cps-input",
                "description": "Emitido quando o controle recebe entrada de dados."
              },
              {
                "name": "cps-invalid",
                "description": "Emitido quando o elemento de formulário foi checado sobre sua validade, e suas condições não foram satisfeitas."
              }
            ]
          },
          "attributes": [
            {
              "name": "title",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "id",
              "description": "O identificador único do campo, usado como estratégia de vinculação ao rótulo e/ou texto de apoio anexado.\nSe não for fornecido, um UUID é gerado automaticamente.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "name",
              "description": "O nome do campo, submetido em par _name_/_value_ com os dados do formulário.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "value",
              "description": "O valor do campo, submetido em par _name_/_value_ com os dados do formulário.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "label",
              "description": "O rótulo do campo. Se você precisar injetar HTML, use o _slot_ `label` em vez disso.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "size",
              "description": "O tamanho do campo.",
              "value": {
                "type": "'small' | 'medium' | 'large'"
              }
            },
            {
              "name": "disabled",
              "description": "Desabilita o campo.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "checked",
              "description": "Determina o estado de checagem do campo, ou seja, quando presente, o campo encontra-se marcado.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "form",
              "description": "O formulário \"dono\" deste controle de formulário. Se não informado, o formulário mais próximo na hierarquia\naté este elemento será utilizado. Se informado, o valor deve ser um `id` único de um formulário\nexistente no documento.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "required",
              "description": "Torna o campo como sendo de preenchimento obrigatório.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "fluid",
              "description": "Adiciona posicionamento fluido ao rótulo, permitindo que ocupe todo o espaço disponível à esquerda, automaticamente movendo o interruptor para a direita.",
              "value": {
                "type": "boolean"
              }
            }
          ]
        },
        {
          "name": "cps-tab-group",
          "description": "",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/tab-group",
          "js": {
            "properties": [
              {
                "name": "localize",
                "value": {}
              },
              {
                "name": "activeTab",
                "value": {
                  "type": "CpsTabItem | undefined"
                }
              },
              {
                "name": "mutationObserver",
                "value": {
                  "type": "MutationObserver"
                }
              },
              {
                "name": "resizeObserver",
                "value": {
                  "type": "ResizeObserver"
                }
              },
              {
                "name": "tabs",
                "value": {
                  "type": "CpsTabItem[]"
                }
              },
              {
                "name": "panels",
                "value": {
                  "type": "CpsTabPanel[]"
                }
              },
              {
                "name": "tabGroup",
                "value": {
                  "type": "HTMLElement"
                }
              },
              {
                "name": "body",
                "value": {
                  "type": "HTMLSlotElement"
                }
              },
              {
                "name": "nav",
                "value": {
                  "type": "HTMLElement"
                }
              },
              {
                "name": "indicator",
                "value": {
                  "type": "HTMLElement"
                }
              },
              {
                "name": "hasScrollControls",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "placement",
                "description": "O posicionamento das abas dentro do grupo.",
                "value": {
                  "type": "'top' | 'bottom' | 'start' | 'end'"
                }
              },
              {
                "name": "activation",
                "description": "Quando definido como `auto`, navegar pelas abas com as teclas de seta mostrará instantaneamente o painel de abas correspondente. Quando definido como `manual`, a aba receberá foco, mas não será exibida até que o usuário pressione a barra de espaço ou tecle `Enter`.",
                "value": {
                  "type": "'auto' | 'manual'"
                }
              },
              {
                "name": "noScrollControls",
                "description": "Desabilita as setas indicativas de rolagem automática quando as abas transbordarem em relação ao espaço disponível na área de navegação do grupo de abas.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "getAllTabs",
                "value": {}
              },
              {
                "name": "getAllPanels",
                "value": {}
              },
              {
                "name": "getActiveTab",
                "value": {}
              },
              {
                "name": "handleClick",
                "value": {}
              },
              {
                "name": "handleKeyDown",
                "value": {}
              },
              {
                "name": "handleScrollToStart",
                "value": {}
              },
              {
                "name": "handleScrollToEnd",
                "value": {}
              },
              {
                "name": "setActiveTab",
                "value": {}
              },
              {
                "name": "setAriaLabels",
                "value": {}
              },
              {
                "name": "repositionIndicator",
                "value": {}
              },
              {
                "name": "syncTabsAndPanels",
                "value": {}
              },
              {
                "name": "updateScrollControls",
                "value": {}
              },
              {
                "name": "syncIndicator",
                "value": {}
              },
              {
                "name": "show",
                "description": "Força a seleção da aba especificada, através do nome de seu painel.",
                "value": {}
              }
            ],
            "events": [
              {
                "name": "cps-tab-show",
                "description": "Emitido quando o painel de uma aba é exibido."
              },
              {
                "name": "cps-tab-hide",
                "description": "Emitido quando o painel de uma aba é ocultado."
              }
            ]
          },
          "attributes": [
            {
              "name": "placement",
              "description": "O posicionamento das abas dentro do grupo.",
              "value": {
                "type": "'top' | 'bottom' | 'start' | 'end'"
              }
            },
            {
              "name": "activation",
              "description": "Quando definido como `auto`, navegar pelas abas com as teclas de seta mostrará instantaneamente o painel de abas correspondente. Quando definido como `manual`, a aba receberá foco, mas não será exibida até que o usuário pressione a barra de espaço ou tecle `Enter`.",
              "value": {
                "type": "'auto' | 'manual'"
              }
            },
            {
              "name": "no-scroll-controls",
              "description": "Desabilita as setas indicativas de rolagem automática quando as abas transbordarem em relação ao espaço disponível na área de navegação do grupo de abas.",
              "value": {
                "type": "boolean"
              }
            }
          ]
        },
        {
          "name": "cps-tab-item",
          "description": "",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/tab-item",
          "js": {
            "properties": [
              {
                "name": "hasSlotController",
                "value": {}
              },
              {
                "name": "localize",
                "value": {}
              },
              {
                "name": "attrId",
                "value": {
                  "type": "number"
                }
              },
              {
                "name": "componentId",
                "value": {}
              },
              {
                "name": "tab",
                "value": {
                  "type": "HTMLElement"
                }
              },
              {
                "name": "panel",
                "description": "Nome do painel de abas associado à aba. O painel deve estar no mesmo grupo de abas.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "selected",
                "description": "Determinada que a aba está selecionada, representando que o painel atrelado a ela está marcado.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "placement",
                "description": "O posicionamento da aba dentro de seu grupo, para a correta renderização de bordas nas posições ideais.",
                "value": {
                  "type": "'top' | 'bottom' | 'start' | 'end'"
                }
              },
              {
                "name": "closable",
                "description": "Habilita a exibição de um botão de fechar para que o usuário possa remover a aba.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "fluid",
                "description": "Força a aba a fluir através de seu contêiner.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "disabled",
                "description": "Desabilita a aba.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "handleCloseClick",
                "value": {}
              },
              {
                "name": "handleSelectedChange",
                "value": {}
              },
              {
                "name": "handleDisabledChange",
                "value": {}
              },
              {
                "name": "focus",
                "description": "Coloca o foco na aba.",
                "value": {}
              },
              {
                "name": "blur",
                "description": "Remove o foco da aba.",
                "value": {}
              }
            ],
            "events": [
              {
                "name": "cps-close",
                "description": "Emitido quando o botão de fechar da aba `closable` é acionado."
              }
            ]
          },
          "attributes": [
            {
              "name": "panel",
              "description": "Nome do painel de abas associado à aba. O painel deve estar no mesmo grupo de abas.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "selected",
              "description": "Determinada que a aba está selecionada, representando que o painel atrelado a ela está marcado.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "placement",
              "description": "O posicionamento da aba dentro de seu grupo, para a correta renderização de bordas nas posições ideais.",
              "value": {
                "type": "'top' | 'bottom' | 'start' | 'end'"
              }
            },
            {
              "name": "closable",
              "description": "Habilita a exibição de um botão de fechar para que o usuário possa remover a aba.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "fluid",
              "description": "Força a aba a fluir através de seu contêiner.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "disabled",
              "description": "Desabilita a aba.",
              "value": {
                "type": "boolean"
              }
            }
          ]
        },
        {
          "name": "cps-tab-panel",
          "description": "",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/tab-panel",
          "js": {
            "properties": [
              {
                "name": "attrId",
                "value": {
                  "type": "number"
                }
              },
              {
                "name": "componentId",
                "value": {}
              },
              {
                "name": "name",
                "description": "O nome do painel, deve ser único dentro de um mesmo grupo de abas.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "selected",
                "description": "Quando verdadeiro, o painel é exibido.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "handleSelectedChanged",
                "value": {}
              }
            ],
            "events": []
          },
          "attributes": [
            {
              "name": "name",
              "description": "O nome do painel, deve ser único dentro de um mesmo grupo de abas.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "selected",
              "description": "Quando verdadeiro, o painel é exibido.",
              "value": {
                "type": "boolean"
              }
            }
          ]
        },
        {
          "name": "cps-textarea",
          "description": "",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/textarea",
          "js": {
            "properties": [
              {
                "name": "formControlController",
                "value": {}
              },
              {
                "name": "hasSlotController",
                "value": {}
              },
              {
                "name": "resizeObserver",
                "value": {
                  "type": "ResizeObserver"
                }
              },
              {
                "name": "textarea",
                "value": {
                  "type": "HTMLTextAreaElement"
                }
              },
              {
                "name": "hasFocus",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "generatedId",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "title",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "id",
                "description": "O identificador único do campo, usado como estratégia de vinculação ao rótulo e/ou texto de apoio anexado.\nSe não for fornecido, um UUID é gerado automaticamente.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "name",
                "description": "O nome do campo, submetido em par _name_/_value_ com os dados do formulário.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "value",
                "description": "O valor do campo, submetido em par _name_/_value_ com os dados do formulário.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "defaultValue",
                "description": "O valor padrão do controle de formulário. Usado principalmente para redefinir o campo.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "size",
                "description": "O tamanho do campo.",
                "value": {
                  "type": "'small' | 'medium' | 'large'"
                }
              },
              {
                "name": "label",
                "description": "O rótulo do campo. Se você precisar injetar HTML, use o _slot_ `label` em vez disso.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "helpText",
                "description": "O texto de apoio do campo. Se você precisar injetar HTML, use o _slot_ `help-text` em vez disso.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "placeholder",
                "description": "Texto de espaço reservado para exibir uma dica quando o campo estiver vazio.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "rows",
                "description": "O número de linhas para exibir por padrão.",
                "value": {
                  "type": "number"
                }
              },
              {
                "name": "resize",
                "description": "Controla como o campo pode ser redimensionado.",
                "value": {
                  "type": "'none' | 'vertical' | 'auto'"
                }
              },
              {
                "name": "disabled",
                "description": "Desabilita o campo.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "readonly",
                "description": "Torna o campo somente leitura.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "form",
                "description": "O formulário \"dono\" deste controle de formulário. Se não informado, o formulário mais próximo na hierarquia\naté este elemento será utilizado. Se informado, o valor deve ser um `id` único de um formulário\nexistente no documento.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "required",
                "description": "Torna o campo como sendo de preenchimento obrigatório.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "minlength",
                "description": "O tamanho mínimo de caracteres que serão considerados válidos.",
                "value": {
                  "type": "number"
                }
              },
              {
                "name": "maxlength",
                "description": "O tamanho máximo de caracteres que serão considerados válidos.",
                "value": {
                  "type": "number"
                }
              },
              {
                "name": "autocapitalize",
                "description": "Controla se e como a entrada de texto é capitalizada enquanto inserida pelo usuário.",
                "value": {
                  "type": "'off' | 'none' | 'on' | 'sentences' | 'words' | 'characters'"
                }
              },
              {
                "name": "autocorrect",
                "description": "Indica se o recurso de correção automática do navegador deve ser utilizado.",
                "value": {
                  "type": "'off' | 'on'"
                }
              },
              {
                "name": "autocomplete",
                "description": "Especifica quais permissões o navegador tem para fornecer assistência no preenchimento dos valores do campo.\nConsulte\n[esta documentação no MDN](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete) para a lista de valores disponíveis.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "autofocus",
                "description": "Indica que o campo deve receber foco assim que a página for carregada.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "enterkeyhint",
                "description": "Utilizado para definir a aparência e o comportamento da tela `Enter` em teclados virtuais.",
                "value": {
                  "type": "'enter' | 'done' | 'go' | 'next' | 'previous' | 'search' | 'send'"
                }
              },
              {
                "name": "spellcheck",
                "description": "Habilita correção ortográfica no campo.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "inputmode",
                "description": "Informa o navegador qual o tipo de dados esperado para ser inserido pelo usuário. Isso permite que o navegador\napresente o teclado virtual apropriado para o tipo de dados em dispositivos móveis.",
                "value": {
                  "type": "'none' | 'text' | 'decimal' | 'numeric' | 'tel' | 'search' | 'email' | 'url'"
                }
              },
              {
                "name": "validity",
                "description": "Obtém o objeto de estado de validade do campo.",
                "value": {}
              },
              {
                "name": "validationMessage",
                "description": "Obtém a mensagem de validação do campo.",
                "value": {}
              },
              {
                "name": "handleIdChange",
                "value": {}
              },
              {
                "name": "handleBlur",
                "value": {}
              },
              {
                "name": "handleChange",
                "value": {}
              },
              {
                "name": "handleFocus",
                "value": {}
              },
              {
                "name": "handleInput",
                "value": {}
              },
              {
                "name": "handleInvalid",
                "value": {}
              },
              {
                "name": "setTextareaHeight",
                "value": {}
              },
              {
                "name": "handleDisabledChange",
                "value": {}
              },
              {
                "name": "handleRowsChange",
                "value": {}
              },
              {
                "name": "handleValueChange",
                "value": {}
              },
              {
                "name": "focus",
                "description": "Coloca o foco no campo.",
                "value": {}
              },
              {
                "name": "blur",
                "description": "Remove o foco do campo.",
                "value": {}
              },
              {
                "name": "select",
                "description": "Seleciona todo o texto existente no campo.",
                "value": {}
              },
              {
                "name": "scrollPosition",
                "description": "Obtém ou atribui a posição de rolagem do campo.",
                "value": {}
              },
              {
                "name": "setSelectionRange",
                "description": "Define as posições de início e término da seleção de texto do campo (índices baseados em `0`).",
                "value": {}
              },
              {
                "name": "setRangeText",
                "description": "Atualiza um intervalo de texto do campo com o novo valor informado (índices baseados em `0`).",
                "value": {}
              },
              {
                "name": "checkValidity",
                "description": "Verifica a validade em um formulário, sem exibir uma mensagem de validação. Retorna `true` quando válido, e `false` quando inválido.",
                "value": {}
              },
              {
                "name": "getForm",
                "description": "Obtém o formulário associado com este componente, se algum estiver.",
                "value": {}
              },
              {
                "name": "reportValidity",
                "description": "Verifica a validade em um formulário, e exibe as mensagem de validação do navegador caso o resultado seja inválido.",
                "value": {}
              },
              {
                "name": "setCustomValidity",
                "description": "Define uma mensagem de validação personalizada. Passar uma `string` vazia como argumento restaura a validade do elemento.",
                "value": {}
              }
            ],
            "events": [
              {
                "name": "cps-blur",
                "description": "Emitido quando o controle perde o foco."
              },
              {
                "name": "cps-change",
                "description": "Emitido quando a alteração do valor do controle é confirmada pelo usuário."
              },
              {
                "name": "cps-focus",
                "description": "Emitido quando o controle obtém o foco."
              },
              {
                "name": "cps-input",
                "description": "Emitido quando o controle recebe entrada de dados."
              },
              {
                "name": "cps-invalid",
                "description": "Emitido quando o elemento de formulário foi checado sobre sua validade, e suas condições não foram satisfeitas."
              }
            ]
          },
          "attributes": [
            {
              "name": "title",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "id",
              "description": "O identificador único do campo, usado como estratégia de vinculação ao rótulo e/ou texto de apoio anexado.\nSe não for fornecido, um UUID é gerado automaticamente.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "name",
              "description": "O nome do campo, submetido em par _name_/_value_ com os dados do formulário.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "value",
              "description": "O valor do campo, submetido em par _name_/_value_ com os dados do formulário.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "size",
              "description": "O tamanho do campo.",
              "value": {
                "type": "'small' | 'medium' | 'large'"
              }
            },
            {
              "name": "label",
              "description": "O rótulo do campo. Se você precisar injetar HTML, use o _slot_ `label` em vez disso.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "help-text",
              "description": "O texto de apoio do campo. Se você precisar injetar HTML, use o _slot_ `help-text` em vez disso.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "placeholder",
              "description": "Texto de espaço reservado para exibir uma dica quando o campo estiver vazio.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "rows",
              "description": "O número de linhas para exibir por padrão.",
              "value": {
                "type": "number"
              }
            },
            {
              "name": "resize",
              "description": "Controla como o campo pode ser redimensionado.",
              "value": {
                "type": "'none' | 'vertical' | 'auto'"
              }
            },
            {
              "name": "disabled",
              "description": "Desabilita o campo.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "readonly",
              "description": "Torna o campo somente leitura.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "form",
              "description": "O formulário \"dono\" deste controle de formulário. Se não informado, o formulário mais próximo na hierarquia\naté este elemento será utilizado. Se informado, o valor deve ser um `id` único de um formulário\nexistente no documento.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "required",
              "description": "Torna o campo como sendo de preenchimento obrigatório.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "minlength",
              "description": "O tamanho mínimo de caracteres que serão considerados válidos.",
              "value": {
                "type": "number"
              }
            },
            {
              "name": "maxlength",
              "description": "O tamanho máximo de caracteres que serão considerados válidos.",
              "value": {
                "type": "number"
              }
            },
            {
              "name": "autocapitalize",
              "description": "Controla se e como a entrada de texto é capitalizada enquanto inserida pelo usuário.",
              "value": {
                "type": "'off' | 'none' | 'on' | 'sentences' | 'words' | 'characters'"
              }
            },
            {
              "name": "autocorrect",
              "description": "Indica se o recurso de correção automática do navegador deve ser utilizado.",
              "value": {
                "type": "'off' | 'on'"
              }
            },
            {
              "name": "autocomplete",
              "description": "Especifica quais permissões o navegador tem para fornecer assistência no preenchimento dos valores do campo.\nConsulte\n[esta documentação no MDN](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete) para a lista de valores disponíveis.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "autofocus",
              "description": "Indica que o campo deve receber foco assim que a página for carregada.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "enterkeyhint",
              "description": "Utilizado para definir a aparência e o comportamento da tela `Enter` em teclados virtuais.",
              "value": {
                "type": "'enter' | 'done' | 'go' | 'next' | 'previous' | 'search' | 'send'"
              }
            },
            {
              "name": "spellcheck",
              "description": "Habilita correção ortográfica no campo.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "inputmode",
              "description": "Informa o navegador qual o tipo de dados esperado para ser inserido pelo usuário. Isso permite que o navegador\napresente o teclado virtual apropriado para o tipo de dados em dispositivos móveis.",
              "value": {
                "type": "'none' | 'text' | 'decimal' | 'numeric' | 'tel' | 'search' | 'email' | 'url'"
              }
            }
          ]
        },
        {
          "name": "cps-toggle-button",
          "description": "",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/toggle-button",
          "js": {
            "properties": [
              {
                "name": "hasSlotController",
                "value": {}
              },
              {
                "name": "input",
                "value": {
                  "type": "HTMLInputElement"
                }
              },
              {
                "name": "hiddenInput",
                "value": {
                  "type": "HTMLInputElement"
                }
              },
              {
                "name": "hasFocus",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "checked",
                "description": "Determina o estado de checagem do campo, ou seja, quando presente, o campo encontra-se marcado.\n\nQuando utilizado dentro de um `RadioGroup`, o valor do grupo sobrepõe o estado de checagem individual do botão alternável, ou seja, não utilize este atributo quando o botão fizer parte de um _radio group_.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "value",
                "description": "O valor do campo, submetido em par _name_/_value_ com os dados do formulário.\n\nQuando utilizado dentro de um `RadioGroup`, o valor é também utilizado como critério de marcação, mantendo-se o grupo e seus botões em sincronia. Desta forma, o valor deve ser único para cada botão alternável dentro do mesmo grupo.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "disabled",
                "description": "Desabilita o botão alternável.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "size",
                "description": "O tamanho do botão alternável.\n\nQuando usado dentro de um `RadioGroup`, o tamanho será determinado pelo tamanho do grupo, portanto, tipicamente esse atributo pode ser omitido.",
                "value": {
                  "type": "'small' | 'medium' | 'large'"
                }
              },
              {
                "name": "rounded",
                "description": "Arredondamento dos cantos do botão alternável, com o padrão sendo bordas arredondas em `4px`.",
                "value": {
                  "type": "'default' | 'corner' | 'full'"
                }
              },
              {
                "name": "handleBlur",
                "value": {}
              },
              {
                "name": "handleClick",
                "value": {}
              },
              {
                "name": "handleFocus",
                "value": {}
              },
              {
                "name": "handleDisabledChange",
                "value": {}
              },
              {
                "name": "click",
                "description": "Simula um _click_ no botão alternável.",
                "value": {}
              },
              {
                "name": "focus",
                "description": "Coloca o foco no botão alternável.",
                "value": {}
              },
              {
                "name": "blur",
                "description": "Remove o foco do botão alternável.",
                "value": {}
              }
            ],
            "events": [
              {
                "name": "cps-blur",
                "description": "Emitido quando o botão perde o foco."
              },
              {
                "name": "cps-focus",
                "description": "Emitido quando o botão obtém o foco."
              }
            ]
          },
          "attributes": [
            {
              "name": "checked",
              "description": "Determina o estado de checagem do campo, ou seja, quando presente, o campo encontra-se marcado.\n\nQuando utilizado dentro de um `RadioGroup`, o valor do grupo sobrepõe o estado de checagem individual do botão alternável, ou seja, não utilize este atributo quando o botão fizer parte de um _radio group_.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "value",
              "description": "O valor do campo, submetido em par _name_/_value_ com os dados do formulário.\n\nQuando utilizado dentro de um `RadioGroup`, o valor é também utilizado como critério de marcação, mantendo-se o grupo e seus botões em sincronia. Desta forma, o valor deve ser único para cada botão alternável dentro do mesmo grupo.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "disabled",
              "description": "Desabilita o botão alternável.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "size",
              "description": "O tamanho do botão alternável.\n\nQuando usado dentro de um `RadioGroup`, o tamanho será determinado pelo tamanho do grupo, portanto, tipicamente esse atributo pode ser omitido.",
              "value": {
                "type": "'small' | 'medium' | 'large'"
              }
            },
            {
              "name": "rounded",
              "description": "Arredondamento dos cantos do botão alternável, com o padrão sendo bordas arredondas em `4px`.",
              "value": {
                "type": "'default' | 'corner' | 'full'"
              }
            }
          ]
        },
        {
          "name": "cps-tooltip",
          "description": "",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/tooltip",
          "js": {
            "properties": [
              {
                "name": "hoverTimeout",
                "value": {
                  "type": "number"
                }
              },
              {
                "name": "localize",
                "value": {}
              },
              {
                "name": "defaultSlot",
                "value": {
                  "type": "HTMLSlotElement"
                }
              },
              {
                "name": "body",
                "value": {
                  "type": "HTMLElement"
                }
              },
              {
                "name": "flyout",
                "value": {
                  "type": "CpsFlyout"
                }
              },
              {
                "name": "content",
                "description": "O conteúdo da dica de ferramenta. Se precisar exibir conteúdo HTML ao invés de texto simples, use o _slot_ `content` em vez deste atributo.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "placement",
                "description": "O posicionamento preferido da dica de ferramenta.\nObserve que o posicionamento real pode variar conforme necessário,\npara manter a dica de ferramenta dentro da janela de visualização.",
                "value": {
                  "type": "| 'top'\n    | 'top-start'\n    | 'top-end'\n    | 'right'\n    | 'right-start'\n    | 'right-end'\n    | 'bottom'\n    | 'bottom-start'\n    | 'bottom-end'\n    | 'left'\n    | 'left-start'\n    | 'left-end'"
                }
              },
              {
                "name": "disabled",
                "description": "Desabilita a dica de ferramenta, para que ela não seja exibida quando o elemento alvo é interagido.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "distance",
                "description": "A distância em pixels do _flyout_ em relação à seu elemento alvo, para afastá-lo ou aproximá-lo deste.\nPor exemplo, se `placement` for `top` ou `bottom`, `distance` definirá a distância do _flyout_ no eixo vertical.",
                "value": {
                  "type": "number"
                }
              },
              {
                "name": "skidding",
                "description": "A distância em pixels do _flyout_ no eixo de deslocamento de seu elemento alvo.\nPor exemplo, se `placement` for `top` ou `bottom`, `skidding` definirá a distância do _flyout_ no eixo horizontal.",
                "value": {
                  "type": "number"
                }
              },
              {
                "name": "open",
                "description": "Indica se a dica de ferramenta está ou não visível atualmente.\nVocê pode usar isso declarativamente e reativamente, ao invés de precisar\nimperativamente dos métodos `show` e `hide`.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "trigger",
                "description": "Controla como a dica de ferramenta é ativada. As opções possíveis incluem `click`, `hover`, `focus` e `manual`.\nMúltiplas opções podem ser passadas, separando-as com um espaço, exceto o valor `manual`.\nQuando `manual` é usado, a dica de ferramenta deve ser exclusivamente manipulada programaticamente.",
                "value": {
                  "type": "string"
                }
              },
              {
                "name": "hoist",
                "description": "Habilite esta opção para que a dica de ferramenta seja exibida em um contêiner de nível superior\n(usualmente, o `<body>`), ao invés de ser renderizado junto ao seu elemento alvo.\n\nIsso é útil quando você precisa exibir conteúdo que pode ser cortado por um contêiner pai que\ntenha `overflow` `hidden`, `scroll` ou `auto`, ou quando você precisa exibir a dica de ferramenta\nem um contêiner com um `z-index` menor que o do seu elemento alvo.\n\nIçar usa uma estratégia de posicionamento fixo que funciona em muitos cenários,\nmas não em todos, então teste com cautela se precisar habilitar.",
                "value": {
                  "type": "boolean"
                }
              },
              {
                "name": "handleBlur",
                "value": {}
              },
              {
                "name": "handleClick",
                "value": {}
              },
              {
                "name": "handleFocus",
                "value": {}
              },
              {
                "name": "handleKeyDown",
                "value": {}
              },
              {
                "name": "handleMouseOver",
                "value": {}
              },
              {
                "name": "handleMouseOut",
                "value": {}
              },
              {
                "name": "hasTrigger",
                "value": {}
              },
              {
                "name": "handleOpenChange",
                "value": {}
              },
              {
                "name": "handleOptionsChange",
                "value": {}
              },
              {
                "name": "handleDisabledChange",
                "value": {}
              },
              {
                "name": "show",
                "description": "Força a exibição imediata da dica de ferramenta.",
                "value": {}
              },
              {
                "name": "hide",
                "description": "Força a ocultação imediata da dica de ferramenta.",
                "value": {}
              }
            ],
            "events": [
              {
                "name": "cps-show",
                "description": "Emitido quando a dica de ferramenta começa a ser exibida."
              },
              {
                "name": "cps-after-show",
                "description": "Emitido após a dica de ferramenta ser exibida e todas as animações terem sido concluídas."
              },
              {
                "name": "cps-hide",
                "description": "Emitido quando a dica de ferramenta começa a ser ocultada."
              },
              {
                "name": "cps-after-hide",
                "description": "Emitido após a dica de ferramenta ser ocultada e todas as animações terem sido concluídas."
              }
            ]
          },
          "attributes": [
            {
              "name": "content",
              "description": "O conteúdo da dica de ferramenta. Se precisar exibir conteúdo HTML ao invés de texto simples, use o _slot_ `content` em vez deste atributo.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "placement",
              "description": "O posicionamento preferido da dica de ferramenta.\nObserve que o posicionamento real pode variar conforme necessário,\npara manter a dica de ferramenta dentro da janela de visualização.",
              "value": {
                "type": "| 'top'\n    | 'top-start'\n    | 'top-end'\n    | 'right'\n    | 'right-start'\n    | 'right-end'\n    | 'bottom'\n    | 'bottom-start'\n    | 'bottom-end'\n    | 'left'\n    | 'left-start'\n    | 'left-end'"
              }
            },
            {
              "name": "disabled",
              "description": "Desabilita a dica de ferramenta, para que ela não seja exibida quando o elemento alvo é interagido.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "distance",
              "description": "A distância em pixels do _flyout_ em relação à seu elemento alvo, para afastá-lo ou aproximá-lo deste.\nPor exemplo, se `placement` for `top` ou `bottom`, `distance` definirá a distância do _flyout_ no eixo vertical.",
              "value": {
                "type": "number"
              }
            },
            {
              "name": "skidding",
              "description": "A distância em pixels do _flyout_ no eixo de deslocamento de seu elemento alvo.\nPor exemplo, se `placement` for `top` ou `bottom`, `skidding` definirá a distância do _flyout_ no eixo horizontal.",
              "value": {
                "type": "number"
              }
            },
            {
              "name": "open",
              "description": "Indica se a dica de ferramenta está ou não visível atualmente.\nVocê pode usar isso declarativamente e reativamente, ao invés de precisar\nimperativamente dos métodos `show` e `hide`.",
              "value": {
                "type": "boolean"
              }
            },
            {
              "name": "trigger",
              "description": "Controla como a dica de ferramenta é ativada. As opções possíveis incluem `click`, `hover`, `focus` e `manual`.\nMúltiplas opções podem ser passadas, separando-as com um espaço, exceto o valor `manual`.\nQuando `manual` é usado, a dica de ferramenta deve ser exclusivamente manipulada programaticamente.",
              "value": {
                "type": "string"
              }
            },
            {
              "name": "hoist",
              "description": "Habilite esta opção para que a dica de ferramenta seja exibida em um contêiner de nível superior\n(usualmente, o `<body>`), ao invés de ser renderizado junto ao seu elemento alvo.\n\nIsso é útil quando você precisa exibir conteúdo que pode ser cortado por um contêiner pai que\ntenha `overflow` `hidden`, `scroll` ou `auto`, ou quando você precisa exibir a dica de ferramenta\nem um contêiner com um `z-index` menor que o do seu elemento alvo.\n\nIçar usa uma estratégia de posicionamento fixo que funciona em muitos cenários,\nmas não em todos, então teste com cautela se precisar habilitar.",
              "value": {
                "type": "boolean"
              }
            }
          ]
        },
        {
          "name": "cps-visually-hidden",
          "description": "",
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/visually-hidden",
          "js": {
            "properties": [],
            "events": []
          },
          "attributes": []
        },
        {
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/",
          "js": {
            "properties": [],
            "events": []
          },
          "attributes": []
        },
        {
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/",
          "js": {
            "properties": [],
            "events": []
          },
          "attributes": []
        },
        {
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/",
          "js": {
            "properties": [],
            "events": []
          },
          "attributes": []
        },
        {
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/",
          "js": {
            "properties": [],
            "events": []
          },
          "attributes": []
        },
        {
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/",
          "js": {
            "properties": [],
            "events": []
          },
          "attributes": []
        },
        {
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/",
          "js": {
            "properties": [],
            "events": []
          },
          "attributes": []
        },
        {
          "doc-url": "https://cpsrepositorio.github.io/cps-elements/#/componentes/",
          "js": {
            "properties": [],
            "events": []
          },
          "attributes": []
        }
      ]
    }
  }
}