/* eslint-disable */
/* tslint:disable */
/**
 * This is an autogenerated file created by the Stencil compiler.
 * It contains typing information for all components that exist in this project.
 */
import { HTMLStencilElement, JSXBase } from "./stencil-public-runtime";
import { Banner, ConteudoSinalizadoEvent, IdentificadorOpcaoMenu, MenuBannerAlteradoEvent, OpcaoMenu, OpcaoMenuSelecionadaEvent } from "./components/app/app.interfaces";
import { Tamanho } from "./components/comuns/avatar/avatar.interfaces";
import { LogoutEvent } from "./components/conta-usuario/conta-usuario.interfaces";
import { AuthorizationConfig } from "./global/interfaces";
import { MenuHorizontalSelecionadoEvent } from "./components/app/menu-horizontal-item/menu-horizontal-item.interfaces";
import { PainelLateralShowEvent } from "./components/app/menu-painel-lateral/menu-painel-lateral.interfaces";
import { MenuVerticalSelecionadoEvent } from "./components/app/menu-vertical-item/menu-vertical-item.interfaces";
import { NotificacaoComLinkEvent, NotificacaoEvent, NotificacaoLink, TipoNotificacao } from "./components/notificacoes/notificacoes.interfaces";
import { NovidadeLeituraEvent } from "./components/novidades/novidades.interfaces";
import { ItemSelecaoContexto } from "./components/comuns/selecao-contexto/selecao-contexto.interfaces";
import { BlipChatUserInfo } from "./components/suporte/suporte.interfaces";
import { OpcaoUtilitarioSelecionadaEvent, Utilitario } from "./components/utilitarios/utilitarios.interfaces";
export namespace Components {
    interface BthAjuda {
        /**
          * URL para a home da central de ajuda. Por padrão irá obter do env.js
         */
        "centralAjudaHome"?: string;
    }
    interface BthApp {
        /**
          * Permite definir um banner que é exibido acima do menu
         */
        "banner"?: Banner;
        /**
          * Permite customizar a cor de fundo da barra do menu. Por padrão segue a cor da linha dos produtos.
         */
        "menuBgColor": string;
        /**
          * Define se as opções do menu serão exibidas no formato "vertical", caso contrário serão exibidas no formato "horizontal"
         */
        "menuVertical"?: boolean;
        /**
          * Opções de navegação do menu
         */
        "opcoes"?: Array<OpcaoMenu>;
        /**
          * Opções de navegação a serem exibidas no header, ao lado da marca. Funciona de forma independente da navegação principal, e somente se o menu for vertical.
         */
        "opcoesHeader"?: Array<OpcaoMenu>;
        /**
          * Define o estado de ativo para o badge no icone do item do menu
          * @param identificador Identificador do menu
          * @param ativo boolean que indica se deve ou não mostrar
         */
        "setBadgeIcone": (identificador: IdentificadorOpcaoMenu, ativo: boolean) => Promise<void>;
        /**
          * Define o valor do contador de um item do menu
          * @param identificador Identificador do item do menu
          * @param valor Valor do contador
         */
        "setContadorMenu": (identificador: IdentificadorOpcaoMenu, valor: number) => Promise<void>;
        /**
          * Define o estado de ativo para o menu do parâmetro
          * @param identificador Identificador do menu
         */
        "setMenuAtivo": (identificador: IdentificadorOpcaoMenu) => Promise<void>;
    }
    interface BthAvatar {
        /**
          * Define se o avatar possui borda
         */
        "borda"?: boolean;
        /**
          * Define a cor da borda
         */
        "bordaCor"?: string;
        /**
          * Define o raio da borda do avatar. Caso informado, sobrescreve o atributo utilitario 'quadrado'.
         */
        "bordaRaio"?: string;
        /**
          * Define o tamanho da borda
         */
        "bordaTamanho"?: string;
        /**
          * Permite definir a dimensão (largura, altura) em px para o avatar
         */
        "dimensao"?: number;
        /**
          * Define um avatar de ícone conforme biblioteca `"Material Design Icons"`
         */
        "icone"?: string;
        /**
          * Define avatar do tipo iniciais, aceitando até 3 iniciais ou computando as iniciais automaticamente conforme palavras passadas
         */
        "iniciais"?: string;
        /**
          * Define se o avatar terá suas bordas no formato quadrado.  Por padrão é redondo
         */
        "quadrado"?: boolean;
        /**
          * Define a fonte de um avatar de imagem. Aceita imagem e svg.
         */
        "src"?: string;
        /**
          * Define um sub-ícone conforme biblioteca `"Material Design Icons"`
         */
        "subIcone"?: string;
        /**
          * Define o "title" do subícone
         */
        "subIconeTitle": string;
        /**
          * Define o tamanho conforme dimensões pre-definidas para o avatar.  Opções disponíveis: menor (24x24), pequeno (28x28), medio (48x48) e grande (94x94)
         */
        "tamanho"?: Tamanho;
    }
    interface BthContaUsuario {
        /**
          * URL para home da Central de Usuários. Por padrão irá obter do env.js.
         */
        "centralUsuarioHome"?: string;
        /**
          * URL para foto de avatar do usuário
         */
        "fotoUrl": string;
        /**
          * Nome do usuário
         */
        "nome": string;
        /**
          * Usuário ("username" ou "email")
         */
        "usuario": string;
    }
    interface BthEmptyState {
        /**
          * Define se o empty state é para conexão offline
         */
        "offline": boolean;
        /**
          * Define se o empty state é para conexão online
         */
        "online": boolean;
        /**
          * Define se o empty state é para página não encontrada
         */
        "paginaNaoEncontrada": boolean;
        /**
          * Define se o empty state é de tamanho pequeno
         */
        "pequeno": boolean;
        /**
          * Define se o empty state é para registros
         */
        "registros": boolean;
        /**
          * Define se o empty state é para registros com pesquisa
         */
        "registrosPesquisa": boolean;
        /**
          * Define se o empty state está visível
         */
        "show": boolean;
    }
    interface BthIcone {
        /**
          * Especifica o label a ser utilizado para acessibilidade. Por padrão irá assumir o nome do ícone.
         */
        "ariaLabel"?: string;
        /**
          * Cor de preenchimento, no mesmo formato do `"color"` em CSS. Por padrão irá herdar do contexto inserido.
         */
        "cor"?: string;
        /**
          * Identificador do ícone conforme biblioteca `"Material Design Icons"`
         */
        "icone": string;
        /**
          * Tamanho em pixels, no mesmo formato do `"font-size"` em CSS. Por padrão irá herdar do contexto inserido.
         */
        "tamanho": string;
    }
    interface BthLoader {
        /**
          * Define se o loader é inline
         */
        "inline": boolean;
    }
    interface BthMarcaProduto {
        /**
          * Define a área de produtos.
         */
        "area"?: string;
        /**
          * Configuração de autorização. É necessária para o componente poder se autentizar com os serviços.
         */
        "authorization": AuthorizationConfig;
        /**
          * Define se o componente exibirá os produtos, condicionando a busca. Caso informado `false` não irá buscar por produtos.
         */
        "exibirProdutos"?: boolean;
        /**
          * Nome do produto
         */
        "produto": string;
        /**
          * URL para a home da betha store. Por padrão irá obter do env.js
         */
        "storeHome"?: string;
        /**
          * URL para home da suite de usuários. Por padrão irá obter do env.js
         */
        "suiteHome"?: string;
        /**
          * URL para a API de user accounts. Por padrão irá obter do env.js
         */
        "userAccountsApi"?: string;
    }
    interface BthMenuFerramenta {
        /**
          * Descrição
         */
        "descricao": string;
        /**
          * Fecha os paineis abertos
         */
        "fecharPaineisAbertos": () => Promise<void>;
        /**
          * Título do Painel Lateral
         */
        "tituloPainelLateral": string;
    }
    interface BthMenuFerramentaIcone {
        /**
          * Valor que será exibido em uma "badge" próximo ao ícone
         */
        "contador": number;
        /**
          * Ícone conforme biblioteca `"Material Design Icons"`
         */
        "icone": string;
        /**
          * Define se a estilização é "mobile". Por padrão é "desktop".
         */
        "mobile": boolean;
        /**
          * Badge de Status
         */
        "status": 'online' | 'offline' | undefined;
    }
    interface BthMenuHorizontalItem {
        /**
          * Está ativo?
         */
        "ativo": boolean;
        /**
          * Contador  Exibe o valor inforamdo em um badge próximo ao menu
         */
        "contador": number;
        /**
          * Descrição
         */
        "descricao": string;
        /**
          * Identificador
         */
        "identificador": IdentificadorOpcaoMenu;
        /**
          * Possui permissão?
         */
        "possuiPermissao": boolean;
    }
    interface BthMenuPainelLateral {
        /**
          * Cancela o timeout de interação ativo caso exista
         */
        "cancelarAberturaComAnimacao": () => Promise<void>;
        /**
          * Fecha o painel lateral e emite evento para que outros sobrepostos sejam fechados.
         */
        "fecharPaineisAbertos": () => Promise<void>;
        /**
          * Alterna o estado em aberto do painel para o valor do parâmetro após um timeout padrão de interações
         */
        "setShowComAnimacao": (show: boolean) => Promise<void>;
        /**
          * Estado de visibilidade
         */
        "show": boolean;
        /**
          * Título que será exibido no cabeçalho
         */
        "titulo": string;
    }
    interface BthMenuVerticalItem {
        /**
          * Está ativo?
         */
        "ativo": boolean;
        /**
          * Valor que será exibido em uma "badge" próximo ao menu
         */
        "contador": number;
        /**
          * Descrição
         */
        "descricao": string;
        /**
          * Ícone conforme biblioteca `"Material Design Icons"`
         */
        "icone": string;
        /**
          * Identificador
         */
        "identificador": IdentificadorOpcaoMenu;
        /**
          * Identificador do menu agrupador "pai"
         */
        "identificadorPai": IdentificadorOpcaoMenu;
        /**
          * O menu principal está recolhido?  Este parâmetro influência no formato como alguns elementos são exibidos, ex: badge do contador.
         */
        "menuLateralRecolhido": boolean;
        /**
          * Indica se deve aparecer um badge no ícone.
         */
        "possuiBadgeIcone": boolean;
        /**
          * Possui permissão?
         */
        "possuiPermissao": boolean;
        /**
          * Está recolhido?
         */
        "recolhido": boolean;
        /**
          * É um submenu?
         */
        "submenu": boolean;
        /**
          * Possui submenus?
         */
        "submenus"?: Array<OpcaoMenu>;
    }
    interface BthNavbarPillGroup {
        /**
          * Descrição
         */
        "descricao": string;
    }
    interface BthNavbarPillItem {
        /**
          * Está ativo?
         */
        "ativo": boolean;
        /**
          * Descrição
         */
        "descricao": string;
        /**
          * Ícone conforme biblioteca `"Material Design Icons"`
         */
        "icone": string;
        /**
          * Identificador. É enviado no evento de click.
         */
        "identificador": any;
        /**
          * Exibir totalizador?
         */
        "showTotalizador": boolean;
        /**
          * Totalizador
         */
        "totalizador": number;
    }
    interface BthNotificacaoItem {
        /**
          * Link acompanhar
         */
        "acompanharLink": NotificacaoLink;
        /**
          * Link cancelamento
         */
        "cancelamentoLink": NotificacaoLink;
        /**
          * Data e hora
         */
        "dataHora": number;
        /**
          * Ícone
         */
        "icone": string;
        /**
          * Identificador
         */
        "identificador": string;
        /**
          * Origem
         */
        "origem": string;
        /**
          * Percentual do progresso
         */
        "percentualProgresso": number;
        /**
          * Possui progresso?
         */
        "possuiProgresso": boolean;
        /**
          * Prioridade
         */
        "prioridade": number;
        /**
          * Link resultado
         */
        "resultadoLink": NotificacaoLink;
        /**
          * Status
         */
        "status": string;
        /**
          * Texto
         */
        "texto": string;
        /**
          * Tipo de notificação
         */
        "tipo": TipoNotificacao;
    }
    interface BthNotificacoes {
        /**
          * Configuração de autorização. É necessária para o componente poder realizar autentizar com os serviços.
         */
        "authorization": AuthorizationConfig;
        /**
          * URL para a api de notificações. Por padrão irá obter do env.js
         */
        "notificacoesApi"?: string;
        /**
          * URL para o channel websocket de notificações. Por padrão irá obter do env.js
         */
        "notificacoesWs"?: string;
    }
    interface BthNovidadeItem {
        /**
          * Data e hora
         */
        "dataHora": string;
        /**
          * Identificador
         */
        "identificador": string;
        /**
          * Define se já está lida
         */
        "isLida": boolean;
        /**
          * Mensagem
         */
        "mensagem": string;
        /**
          * Título
         */
        "titulo": string;
        /**
          * URL para obter mais informações
         */
        "url": string;
    }
    interface BthNovidades {
        /**
          * Configuração de autorização. É necessária para o componente poder realizar autentizar com os serviços.
         */
        "authorization": AuthorizationConfig;
        /**
          * URL para a api de novidades. Por padrão irá obter do env.js.
         */
        "novidadesApi"?: string;
    }
    interface BthPesquisa {
        /**
          * Configuração de autorização. É necessária para o componente poder autenticar com os serviços.
         */
        "authorization": AuthorizationConfig;
        /**
          * URL para a api de licenças. Por padrão irá obter do env.js.
         */
        "licencasApi"?: string;
        /**
          * URL para a api de pesquisas. Por padrão irá obter do env.js.
         */
        "pesquisaApi"?: string;
    }
    interface BthSelecaoContexto {
        /**
          * Método para buscar os itens de seleção
         */
        "buscar": () => Promise<ItemSelecaoContexto[]>;
        /**
          * Placeholder para o input de pesquisa
         */
        "placeholderPesquisa"?: string;
        /**
          * Método executado ao selecionar algum item da lista
         */
        "selecionar": (item: ItemSelecaoContexto) => Promise<any> | void;
    }
    interface BthSuporte {
        /**
          * Habilita ou desabilita o botão de abrir um chamado no atendimento
         */
        "atendimento": boolean;
        /**
          * Configuração de autorização. É necessária para o componente poder autenticar com os serviços.
         */
        "authorization": AuthorizationConfig;
        /**
          * Habilita ou desabilita o Blip Chat
         */
        "blipChat": boolean;
        /**
          * Usar estilos que este componente fornece
         */
        "blipChatCustomStyle": boolean;
        /**
          * Cor do botão flutuante do Blip Chat
         */
        "blipChatFabButtonColor": string;
        /**
          * Usuário de sessão do Blip Chat
         */
        "blipChatUserInfo": BlipChatUserInfo;
        /**
          * URL para a home da central de ajuda. Por padrão irá obter do env.js
         */
        "centralAjudaHome"?: string;
        /**
          * Indica se a aplicação já possui botão flutuante
         */
        "fabButton": boolean;
        /**
          * Método para testar recebimento de uma mensagem do window para definir o badge de mensagens não vistas, através de um evento do tipo 'BLIP_WEBCHAT_NOTIFICATION' emitido pelo loader do Blip Chat
          * @see https://gitlab.services.betha.cloud/ped/tecnologia/nlp/blip-webchat-loader
         */
        "handleWindowMessage": (data: any) => Promise<void>;
        /**
          * URL para a api de licenças. Por padrão irá obter do env.js.
         */
        "licencasApi"?: string;
        /**
          * Carrega o Blip Chat
         */
        "loadBlipChat": () => Promise<void>;
    }
    interface BthUtilitarios {
        /**
          * Utilitarios
         */
        "utilitarios": Array<Utilitario>;
    }
}
declare global {
    interface HTMLBthAjudaElement extends Components.BthAjuda, HTMLStencilElement {
    }
    var HTMLBthAjudaElement: {
        prototype: HTMLBthAjudaElement;
        new (): HTMLBthAjudaElement;
    };
    interface HTMLBthAppElement extends Components.BthApp, HTMLStencilElement {
    }
    var HTMLBthAppElement: {
        prototype: HTMLBthAppElement;
        new (): HTMLBthAppElement;
    };
    interface HTMLBthAvatarElement extends Components.BthAvatar, HTMLStencilElement {
    }
    var HTMLBthAvatarElement: {
        prototype: HTMLBthAvatarElement;
        new (): HTMLBthAvatarElement;
    };
    interface HTMLBthContaUsuarioElement extends Components.BthContaUsuario, HTMLStencilElement {
    }
    var HTMLBthContaUsuarioElement: {
        prototype: HTMLBthContaUsuarioElement;
        new (): HTMLBthContaUsuarioElement;
    };
    interface HTMLBthEmptyStateElement extends Components.BthEmptyState, HTMLStencilElement {
    }
    var HTMLBthEmptyStateElement: {
        prototype: HTMLBthEmptyStateElement;
        new (): HTMLBthEmptyStateElement;
    };
    interface HTMLBthIconeElement extends Components.BthIcone, HTMLStencilElement {
    }
    var HTMLBthIconeElement: {
        prototype: HTMLBthIconeElement;
        new (): HTMLBthIconeElement;
    };
    interface HTMLBthLoaderElement extends Components.BthLoader, HTMLStencilElement {
    }
    var HTMLBthLoaderElement: {
        prototype: HTMLBthLoaderElement;
        new (): HTMLBthLoaderElement;
    };
    interface HTMLBthMarcaProdutoElement extends Components.BthMarcaProduto, HTMLStencilElement {
    }
    var HTMLBthMarcaProdutoElement: {
        prototype: HTMLBthMarcaProdutoElement;
        new (): HTMLBthMarcaProdutoElement;
    };
    interface HTMLBthMenuFerramentaElement extends Components.BthMenuFerramenta, HTMLStencilElement {
    }
    var HTMLBthMenuFerramentaElement: {
        prototype: HTMLBthMenuFerramentaElement;
        new (): HTMLBthMenuFerramentaElement;
    };
    interface HTMLBthMenuFerramentaIconeElement extends Components.BthMenuFerramentaIcone, HTMLStencilElement {
    }
    var HTMLBthMenuFerramentaIconeElement: {
        prototype: HTMLBthMenuFerramentaIconeElement;
        new (): HTMLBthMenuFerramentaIconeElement;
    };
    interface HTMLBthMenuHorizontalItemElement extends Components.BthMenuHorizontalItem, HTMLStencilElement {
    }
    var HTMLBthMenuHorizontalItemElement: {
        prototype: HTMLBthMenuHorizontalItemElement;
        new (): HTMLBthMenuHorizontalItemElement;
    };
    interface HTMLBthMenuPainelLateralElement extends Components.BthMenuPainelLateral, HTMLStencilElement {
    }
    var HTMLBthMenuPainelLateralElement: {
        prototype: HTMLBthMenuPainelLateralElement;
        new (): HTMLBthMenuPainelLateralElement;
    };
    interface HTMLBthMenuVerticalItemElement extends Components.BthMenuVerticalItem, HTMLStencilElement {
    }
    var HTMLBthMenuVerticalItemElement: {
        prototype: HTMLBthMenuVerticalItemElement;
        new (): HTMLBthMenuVerticalItemElement;
    };
    interface HTMLBthNavbarPillGroupElement extends Components.BthNavbarPillGroup, HTMLStencilElement {
    }
    var HTMLBthNavbarPillGroupElement: {
        prototype: HTMLBthNavbarPillGroupElement;
        new (): HTMLBthNavbarPillGroupElement;
    };
    interface HTMLBthNavbarPillItemElement extends Components.BthNavbarPillItem, HTMLStencilElement {
    }
    var HTMLBthNavbarPillItemElement: {
        prototype: HTMLBthNavbarPillItemElement;
        new (): HTMLBthNavbarPillItemElement;
    };
    interface HTMLBthNotificacaoItemElement extends Components.BthNotificacaoItem, HTMLStencilElement {
    }
    var HTMLBthNotificacaoItemElement: {
        prototype: HTMLBthNotificacaoItemElement;
        new (): HTMLBthNotificacaoItemElement;
    };
    interface HTMLBthNotificacoesElement extends Components.BthNotificacoes, HTMLStencilElement {
    }
    var HTMLBthNotificacoesElement: {
        prototype: HTMLBthNotificacoesElement;
        new (): HTMLBthNotificacoesElement;
    };
    interface HTMLBthNovidadeItemElement extends Components.BthNovidadeItem, HTMLStencilElement {
    }
    var HTMLBthNovidadeItemElement: {
        prototype: HTMLBthNovidadeItemElement;
        new (): HTMLBthNovidadeItemElement;
    };
    interface HTMLBthNovidadesElement extends Components.BthNovidades, HTMLStencilElement {
    }
    var HTMLBthNovidadesElement: {
        prototype: HTMLBthNovidadesElement;
        new (): HTMLBthNovidadesElement;
    };
    interface HTMLBthPesquisaElement extends Components.BthPesquisa, HTMLStencilElement {
    }
    var HTMLBthPesquisaElement: {
        prototype: HTMLBthPesquisaElement;
        new (): HTMLBthPesquisaElement;
    };
    interface HTMLBthSelecaoContextoElement extends Components.BthSelecaoContexto, HTMLStencilElement {
    }
    var HTMLBthSelecaoContextoElement: {
        prototype: HTMLBthSelecaoContextoElement;
        new (): HTMLBthSelecaoContextoElement;
    };
    interface HTMLBthSuporteElement extends Components.BthSuporte, HTMLStencilElement {
    }
    var HTMLBthSuporteElement: {
        prototype: HTMLBthSuporteElement;
        new (): HTMLBthSuporteElement;
    };
    interface HTMLBthUtilitariosElement extends Components.BthUtilitarios, HTMLStencilElement {
    }
    var HTMLBthUtilitariosElement: {
        prototype: HTMLBthUtilitariosElement;
        new (): HTMLBthUtilitariosElement;
    };
    interface HTMLElementTagNameMap {
        "bth-ajuda": HTMLBthAjudaElement;
        "bth-app": HTMLBthAppElement;
        "bth-avatar": HTMLBthAvatarElement;
        "bth-conta-usuario": HTMLBthContaUsuarioElement;
        "bth-empty-state": HTMLBthEmptyStateElement;
        "bth-icone": HTMLBthIconeElement;
        "bth-loader": HTMLBthLoaderElement;
        "bth-marca-produto": HTMLBthMarcaProdutoElement;
        "bth-menu-ferramenta": HTMLBthMenuFerramentaElement;
        "bth-menu-ferramenta-icone": HTMLBthMenuFerramentaIconeElement;
        "bth-menu-horizontal-item": HTMLBthMenuHorizontalItemElement;
        "bth-menu-painel-lateral": HTMLBthMenuPainelLateralElement;
        "bth-menu-vertical-item": HTMLBthMenuVerticalItemElement;
        "bth-navbar-pill-group": HTMLBthNavbarPillGroupElement;
        "bth-navbar-pill-item": HTMLBthNavbarPillItemElement;
        "bth-notificacao-item": HTMLBthNotificacaoItemElement;
        "bth-notificacoes": HTMLBthNotificacoesElement;
        "bth-novidade-item": HTMLBthNovidadeItemElement;
        "bth-novidades": HTMLBthNovidadesElement;
        "bth-pesquisa": HTMLBthPesquisaElement;
        "bth-selecao-contexto": HTMLBthSelecaoContextoElement;
        "bth-suporte": HTMLBthSuporteElement;
        "bth-utilitarios": HTMLBthUtilitariosElement;
    }
}
declare namespace LocalJSX {
    interface BthAjuda {
        /**
          * URL para a home da central de ajuda. Por padrão irá obter do env.js
         */
        "centralAjudaHome"?: string;
    }
    interface BthApp {
        /**
          * Permite definir um banner que é exibido acima do menu
         */
        "banner"?: Banner;
        /**
          * Permite customizar a cor de fundo da barra do menu. Por padrão segue a cor da linha dos produtos.
         */
        "menuBgColor"?: string;
        /**
          * Define se as opções do menu serão exibidas no formato "vertical", caso contrário serão exibidas no formato "horizontal"
         */
        "menuVertical"?: boolean;
        /**
          * É emitido quando o componente de menu possuir alterações na propriedade de banner
         */
        "onBannerAlterado"?: (event: CustomEvent<MenuBannerAlteradoEvent>) => void;
        /**
          * É emitido quando o botão do banner é clicado
         */
        "onBotaoBannerAcionado"?: (event: CustomEvent<void>) => void;
        /**
          * É emitido quando alguma opção do menu for selecionada
         */
        "onOpcaoMenuSelecionada"?: (event: CustomEvent<OpcaoMenuSelecionadaEvent>) => void;
        /**
          * Opções de navegação do menu
         */
        "opcoes"?: Array<OpcaoMenu>;
        /**
          * Opções de navegação a serem exibidas no header, ao lado da marca. Funciona de forma independente da navegação principal, e somente se o menu for vertical.
         */
        "opcoesHeader"?: Array<OpcaoMenu>;
    }
    interface BthAvatar {
        /**
          * Define se o avatar possui borda
         */
        "borda"?: boolean;
        /**
          * Define a cor da borda
         */
        "bordaCor"?: string;
        /**
          * Define o raio da borda do avatar. Caso informado, sobrescreve o atributo utilitario 'quadrado'.
         */
        "bordaRaio"?: string;
        /**
          * Define o tamanho da borda
         */
        "bordaTamanho"?: string;
        /**
          * Permite definir a dimensão (largura, altura) em px para o avatar
         */
        "dimensao"?: number;
        /**
          * Define um avatar de ícone conforme biblioteca `"Material Design Icons"`
         */
        "icone"?: string;
        /**
          * Define avatar do tipo iniciais, aceitando até 3 iniciais ou computando as iniciais automaticamente conforme palavras passadas
         */
        "iniciais"?: string;
        /**
          * É emitido quando houver erro ao carregar a imagem
         */
        "onImageLoadError"?: (event: CustomEvent<any>) => void;
        /**
          * Define se o avatar terá suas bordas no formato quadrado.  Por padrão é redondo
         */
        "quadrado"?: boolean;
        /**
          * Define a fonte de um avatar de imagem. Aceita imagem e svg.
         */
        "src"?: string;
        /**
          * Define um sub-ícone conforme biblioteca `"Material Design Icons"`
         */
        "subIcone"?: string;
        /**
          * Define o "title" do subícone
         */
        "subIconeTitle"?: string;
        /**
          * Define o tamanho conforme dimensões pre-definidas para o avatar.  Opções disponíveis: menor (24x24), pequeno (28x28), medio (48x48) e grande (94x94)
         */
        "tamanho"?: Tamanho;
    }
    interface BthContaUsuario {
        /**
          * URL para home da Central de Usuários. Por padrão irá obter do env.js.
         */
        "centralUsuarioHome"?: string;
        /**
          * URL para foto de avatar do usuário
         */
        "fotoUrl"?: string;
        /**
          * Nome do usuário
         */
        "nome"?: string;
        /**
          * É emitido ao clicar em Sair ("logout")
         */
        "onLogout"?: (event: CustomEvent<LogoutEvent>) => void;
        /**
          * Usuário ("username" ou "email")
         */
        "usuario"?: string;
    }
    interface BthEmptyState {
        /**
          * Define se o empty state é para conexão offline
         */
        "offline"?: boolean;
        /**
          * Define se o empty state é para conexão online
         */
        "online"?: boolean;
        /**
          * Define se o empty state é para página não encontrada
         */
        "paginaNaoEncontrada"?: boolean;
        /**
          * Define se o empty state é de tamanho pequeno
         */
        "pequeno"?: boolean;
        /**
          * Define se o empty state é para registros
         */
        "registros"?: boolean;
        /**
          * Define se o empty state é para registros com pesquisa
         */
        "registrosPesquisa"?: boolean;
        /**
          * Define se o empty state está visível
         */
        "show"?: boolean;
    }
    interface BthIcone {
        /**
          * Especifica o label a ser utilizado para acessibilidade. Por padrão irá assumir o nome do ícone.
         */
        "ariaLabel"?: string;
        /**
          * Cor de preenchimento, no mesmo formato do `"color"` em CSS. Por padrão irá herdar do contexto inserido.
         */
        "cor"?: string;
        /**
          * Identificador do ícone conforme biblioteca `"Material Design Icons"`
         */
        "icone": string;
        /**
          * Tamanho em pixels, no mesmo formato do `"font-size"` em CSS. Por padrão irá herdar do contexto inserido.
         */
        "tamanho"?: string;
    }
    interface BthLoader {
        /**
          * Define se o loader é inline
         */
        "inline"?: boolean;
    }
    interface BthMarcaProduto {
        /**
          * Define a área de produtos.
         */
        "area"?: string;
        /**
          * Configuração de autorização. É necessária para o componente poder se autentizar com os serviços.
         */
        "authorization"?: AuthorizationConfig;
        /**
          * Define se o componente exibirá os produtos, condicionando a busca. Caso informado `false` não irá buscar por produtos.
         */
        "exibirProdutos"?: boolean;
        /**
          * Nome do produto
         */
        "produto": string;
        /**
          * URL para a home da betha store. Por padrão irá obter do env.js
         */
        "storeHome"?: string;
        /**
          * URL para home da suite de usuários. Por padrão irá obter do env.js
         */
        "suiteHome"?: string;
        /**
          * URL para a API de user accounts. Por padrão irá obter do env.js
         */
        "userAccountsApi"?: string;
    }
    interface BthMenuFerramenta {
        /**
          * Descrição
         */
        "descricao"?: string;
        /**
          * Título do Painel Lateral
         */
        "tituloPainelLateral"?: string;
    }
    interface BthMenuFerramentaIcone {
        /**
          * Valor que será exibido em uma "badge" próximo ao ícone
         */
        "contador"?: number;
        /**
          * Ícone conforme biblioteca `"Material Design Icons"`
         */
        "icone"?: string;
        /**
          * Define se a estilização é "mobile". Por padrão é "desktop".
         */
        "mobile"?: boolean;
        /**
          * Badge de Status
         */
        "status"?: 'online' | 'offline' | undefined;
    }
    interface BthMenuHorizontalItem {
        /**
          * Está ativo?
         */
        "ativo"?: boolean;
        /**
          * Contador  Exibe o valor inforamdo em um badge próximo ao menu
         */
        "contador"?: number;
        /**
          * Descrição
         */
        "descricao"?: string;
        /**
          * Identificador
         */
        "identificador"?: IdentificadorOpcaoMenu;
        /**
          * É emitido quando o menu é selecionado
         */
        "onMenuHorizontalSelecionado"?: (event: CustomEvent<MenuHorizontalSelecionadoEvent>) => void;
        /**
          * Possui permissão?
         */
        "possuiPermissao"?: boolean;
    }
    interface BthMenuPainelLateral {
        /**
          * É toda vez em que o estado de exibição ("show") for alterado
         */
        "onPainelLateralShow"?: (event: CustomEvent<PainelLateralShowEvent>) => void;
        /**
          * Estado de visibilidade
         */
        "show"?: boolean;
        /**
          * Título que será exibido no cabeçalho
         */
        "titulo"?: string;
    }
    interface BthMenuVerticalItem {
        /**
          * Está ativo?
         */
        "ativo"?: boolean;
        /**
          * Valor que será exibido em uma "badge" próximo ao menu
         */
        "contador"?: number;
        /**
          * Descrição
         */
        "descricao"?: string;
        /**
          * Ícone conforme biblioteca `"Material Design Icons"`
         */
        "icone"?: string;
        /**
          * Identificador
         */
        "identificador"?: IdentificadorOpcaoMenu;
        /**
          * Identificador do menu agrupador "pai"
         */
        "identificadorPai"?: IdentificadorOpcaoMenu;
        /**
          * O menu principal está recolhido?  Este parâmetro influência no formato como alguns elementos são exibidos, ex: badge do contador.
         */
        "menuLateralRecolhido"?: boolean;
        /**
          * É emitido quando o menu é selecionado
         */
        "onMenuVerticalSelecionado"?: (event: CustomEvent<MenuVerticalSelecionadoEvent>) => void;
        /**
          * Indica se deve aparecer um badge no ícone.
         */
        "possuiBadgeIcone"?: boolean;
        /**
          * Possui permissão?
         */
        "possuiPermissao"?: boolean;
        /**
          * Está recolhido?
         */
        "recolhido"?: boolean;
        /**
          * É um submenu?
         */
        "submenu"?: boolean;
        /**
          * Possui submenus?
         */
        "submenus"?: Array<OpcaoMenu>;
    }
    interface BthNavbarPillGroup {
        /**
          * Descrição
         */
        "descricao"?: string;
    }
    interface BthNavbarPillItem {
        /**
          * Está ativo?
         */
        "ativo"?: boolean;
        /**
          * Descrição
         */
        "descricao"?: string;
        /**
          * Ícone conforme biblioteca `"Material Design Icons"`
         */
        "icone"?: string;
        /**
          * Identificador. É enviado no evento de click.
         */
        "identificador"?: any;
        /**
          * É emitido ao clicar no filtro
         */
        "onNavbarPillItemClicked"?: (event: CustomEvent<any>) => void;
        /**
          * Exibir totalizador?
         */
        "showTotalizador"?: boolean;
        /**
          * Totalizador
         */
        "totalizador"?: number;
    }
    interface BthNotificacaoItem {
        /**
          * Link acompanhar
         */
        "acompanharLink"?: NotificacaoLink;
        /**
          * Link cancelamento
         */
        "cancelamentoLink"?: NotificacaoLink;
        /**
          * Data e hora
         */
        "dataHora"?: number;
        /**
          * Ícone
         */
        "icone"?: string;
        /**
          * Identificador
         */
        "identificador"?: string;
        /**
          * É emitido quando uma notificação é marcada como lida
         */
        "onNotificacaoLida"?: (event: CustomEvent<any>) => void;
        /**
          * É emitido quando uma notificação é marcada como não lida
         */
        "onNotificacaoNaoLida"?: (event: CustomEvent<any>) => void;
        /**
          * Origem
         */
        "origem"?: string;
        /**
          * Percentual do progresso
         */
        "percentualProgresso"?: number;
        /**
          * Possui progresso?
         */
        "possuiProgresso"?: boolean;
        /**
          * Prioridade
         */
        "prioridade"?: number;
        /**
          * Link resultado
         */
        "resultadoLink"?: NotificacaoLink;
        /**
          * Status
         */
        "status"?: string;
        /**
          * Texto
         */
        "texto"?: string;
        /**
          * Tipo de notificação
         */
        "tipo"?: TipoNotificacao;
    }
    interface BthNotificacoes {
        /**
          * Configuração de autorização. É necessária para o componente poder realizar autentizar com os serviços.
         */
        "authorization"?: AuthorizationConfig;
        /**
          * URL para a api de notificações. Por padrão irá obter do env.js
         */
        "notificacoesApi"?: string;
        /**
          * URL para o channel websocket de notificações. Por padrão irá obter do env.js
         */
        "notificacoesWs"?: string;
        /**
          * É emitido quando houver notificações lidas ou não lidas a ser sinalizadas ao menu
         */
        "onConteudoSinalizado"?: (event: CustomEvent<ConteudoSinalizadoEvent>) => void;
        /**
          * É emitido quando alguma notificação for recebida
         */
        "onNovaNotificacao"?: (event: CustomEvent<NotificacaoEvent>) => void;
        /**
          * É emitido quando alguma notificação do tipo mensagem for recebida
         */
        "onNovaNotificacaoComLink"?: (event: CustomEvent<NotificacaoComLinkEvent>) => void;
    }
    interface BthNovidadeItem {
        /**
          * Data e hora
         */
        "dataHora"?: string;
        /**
          * Identificador
         */
        "identificador"?: string;
        /**
          * Define se já está lida
         */
        "isLida"?: boolean;
        /**
          * Mensagem
         */
        "mensagem"?: string;
        /**
          * É emitido quando uma novidade é marcada como lida
         */
        "onNovidadeLida"?: (event: CustomEvent<NovidadeLeituraEvent>) => void;
        /**
          * É emitido quando uma novidade é marcada como não lida
         */
        "onNovidadeNaoLida"?: (event: CustomEvent<NovidadeLeituraEvent>) => void;
        /**
          * Título
         */
        "titulo"?: string;
        /**
          * URL para obter mais informações
         */
        "url"?: string;
    }
    interface BthNovidades {
        /**
          * Configuração de autorização. É necessária para o componente poder realizar autentizar com os serviços.
         */
        "authorization"?: AuthorizationConfig;
        /**
          * URL para a api de novidades. Por padrão irá obter do env.js.
         */
        "novidadesApi"?: string;
        /**
          * É emitido quando houver novidades lidas ou não lidas a ser sinalizadas ao menu
         */
        "onConteudoSinalizado"?: (event: CustomEvent<ConteudoSinalizadoEvent>) => void;
    }
    interface BthPesquisa {
        /**
          * Configuração de autorização. É necessária para o componente poder autenticar com os serviços.
         */
        "authorization"?: AuthorizationConfig;
        /**
          * URL para a api de licenças. Por padrão irá obter do env.js.
         */
        "licencasApi"?: string;
        /**
          * URL para a api de pesquisas. Por padrão irá obter do env.js.
         */
        "pesquisaApi"?: string;
    }
    interface BthSelecaoContexto {
        /**
          * Método para buscar os itens de seleção
         */
        "buscar"?: () => Promise<ItemSelecaoContexto[]>;
        /**
          * Placeholder para o input de pesquisa
         */
        "placeholderPesquisa"?: string;
        /**
          * Método executado ao selecionar algum item da lista
         */
        "selecionar"?: (item: ItemSelecaoContexto) => Promise<any> | void;
    }
    interface BthSuporte {
        /**
          * Habilita ou desabilita o botão de abrir um chamado no atendimento
         */
        "atendimento"?: boolean;
        /**
          * Configuração de autorização. É necessária para o componente poder autenticar com os serviços.
         */
        "authorization"?: AuthorizationConfig;
        /**
          * Habilita ou desabilita o Blip Chat
         */
        "blipChat"?: boolean;
        /**
          * Usar estilos que este componente fornece
         */
        "blipChatCustomStyle"?: boolean;
        /**
          * Cor do botão flutuante do Blip Chat
         */
        "blipChatFabButtonColor"?: string;
        /**
          * Usuário de sessão do Blip Chat
         */
        "blipChatUserInfo"?: BlipChatUserInfo;
        /**
          * URL para a home da central de ajuda. Por padrão irá obter do env.js
         */
        "centralAjudaHome"?: string;
        /**
          * Indica se a aplicação já possui botão flutuante
         */
        "fabButton"?: boolean;
        /**
          * URL para a api de licenças. Por padrão irá obter do env.js.
         */
        "licencasApi"?: string;
    }
    interface BthUtilitarios {
        /**
          * É emitido quando algum utilitário for selecionado
         */
        "onOpcaoUtilitarioSelecionada"?: (event: CustomEvent<OpcaoUtilitarioSelecionadaEvent>) => void;
        /**
          * Utilitarios
         */
        "utilitarios"?: Array<Utilitario>;
    }
    interface IntrinsicElements {
        "bth-ajuda": BthAjuda;
        "bth-app": BthApp;
        "bth-avatar": BthAvatar;
        "bth-conta-usuario": BthContaUsuario;
        "bth-empty-state": BthEmptyState;
        "bth-icone": BthIcone;
        "bth-loader": BthLoader;
        "bth-marca-produto": BthMarcaProduto;
        "bth-menu-ferramenta": BthMenuFerramenta;
        "bth-menu-ferramenta-icone": BthMenuFerramentaIcone;
        "bth-menu-horizontal-item": BthMenuHorizontalItem;
        "bth-menu-painel-lateral": BthMenuPainelLateral;
        "bth-menu-vertical-item": BthMenuVerticalItem;
        "bth-navbar-pill-group": BthNavbarPillGroup;
        "bth-navbar-pill-item": BthNavbarPillItem;
        "bth-notificacao-item": BthNotificacaoItem;
        "bth-notificacoes": BthNotificacoes;
        "bth-novidade-item": BthNovidadeItem;
        "bth-novidades": BthNovidades;
        "bth-pesquisa": BthPesquisa;
        "bth-selecao-contexto": BthSelecaoContexto;
        "bth-suporte": BthSuporte;
        "bth-utilitarios": BthUtilitarios;
    }
}
export { LocalJSX as JSX };
declare module "@stencil/core" {
    export namespace JSX {
        interface IntrinsicElements {
            "bth-ajuda": LocalJSX.BthAjuda & JSXBase.HTMLAttributes<HTMLBthAjudaElement>;
            "bth-app": LocalJSX.BthApp & JSXBase.HTMLAttributes<HTMLBthAppElement>;
            "bth-avatar": LocalJSX.BthAvatar & JSXBase.HTMLAttributes<HTMLBthAvatarElement>;
            "bth-conta-usuario": LocalJSX.BthContaUsuario & JSXBase.HTMLAttributes<HTMLBthContaUsuarioElement>;
            "bth-empty-state": LocalJSX.BthEmptyState & JSXBase.HTMLAttributes<HTMLBthEmptyStateElement>;
            "bth-icone": LocalJSX.BthIcone & JSXBase.HTMLAttributes<HTMLBthIconeElement>;
            "bth-loader": LocalJSX.BthLoader & JSXBase.HTMLAttributes<HTMLBthLoaderElement>;
            "bth-marca-produto": LocalJSX.BthMarcaProduto & JSXBase.HTMLAttributes<HTMLBthMarcaProdutoElement>;
            "bth-menu-ferramenta": LocalJSX.BthMenuFerramenta & JSXBase.HTMLAttributes<HTMLBthMenuFerramentaElement>;
            "bth-menu-ferramenta-icone": LocalJSX.BthMenuFerramentaIcone & JSXBase.HTMLAttributes<HTMLBthMenuFerramentaIconeElement>;
            "bth-menu-horizontal-item": LocalJSX.BthMenuHorizontalItem & JSXBase.HTMLAttributes<HTMLBthMenuHorizontalItemElement>;
            "bth-menu-painel-lateral": LocalJSX.BthMenuPainelLateral & JSXBase.HTMLAttributes<HTMLBthMenuPainelLateralElement>;
            "bth-menu-vertical-item": LocalJSX.BthMenuVerticalItem & JSXBase.HTMLAttributes<HTMLBthMenuVerticalItemElement>;
            "bth-navbar-pill-group": LocalJSX.BthNavbarPillGroup & JSXBase.HTMLAttributes<HTMLBthNavbarPillGroupElement>;
            "bth-navbar-pill-item": LocalJSX.BthNavbarPillItem & JSXBase.HTMLAttributes<HTMLBthNavbarPillItemElement>;
            "bth-notificacao-item": LocalJSX.BthNotificacaoItem & JSXBase.HTMLAttributes<HTMLBthNotificacaoItemElement>;
            "bth-notificacoes": LocalJSX.BthNotificacoes & JSXBase.HTMLAttributes<HTMLBthNotificacoesElement>;
            "bth-novidade-item": LocalJSX.BthNovidadeItem & JSXBase.HTMLAttributes<HTMLBthNovidadeItemElement>;
            "bth-novidades": LocalJSX.BthNovidades & JSXBase.HTMLAttributes<HTMLBthNovidadesElement>;
            "bth-pesquisa": LocalJSX.BthPesquisa & JSXBase.HTMLAttributes<HTMLBthPesquisaElement>;
            "bth-selecao-contexto": LocalJSX.BthSelecaoContexto & JSXBase.HTMLAttributes<HTMLBthSelecaoContextoElement>;
            "bth-suporte": LocalJSX.BthSuporte & JSXBase.HTMLAttributes<HTMLBthSuporteElement>;
            "bth-utilitarios": LocalJSX.BthUtilitarios & JSXBase.HTMLAttributes<HTMLBthUtilitariosElement>;
        }
    }
}
