@betha-plataforma/estrutura-componentes
Version:
Coleção de Web Components para compor a estrutura de uma aplicação front-end da Betha Sistemas.
1,354 lines (1,353 loc) • 45.3 kB
TypeScript
/* 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>;
}
}
}