/* 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 { AiIconType, ButtonIconType, IconType } from "./utils/icon-types"; import { ResultClickedDetail, SearchResult } from "./components/biel-search-body/biel-search-body"; export { AiIconType, ButtonIconType, IconType } from "./utils/icon-types"; export { ResultClickedDetail, SearchResult } from "./components/biel-search-body/biel-search-body"; export namespace Components { interface BielBot { /** * @default 'biel' */ "aiIcon": AiIconType; /** * @default '' */ "apiKey": string; /** * @default '' */ "apiUrl": string; /** * @default 'Assistant' */ "assistantLabel": string; /** * @default `biel-bot-${Math.random().toString(36).substring(2, 9)}` */ "bielId": string; /** * @default true */ "clickOutsideClose": boolean; /** * @default 'Close' */ "closeButtonText": string; /** * @default 'Collapse' */ "collapseButtonText": string; /** * @default 'Connect' */ "connectButtonText": string; /** * Think mode a new conversation starts in. Ignored once the visitor picks a mode themselves, and only applied when the project has think mode enabled. */ "defaultThinkMode"?: 'auto' | 'fast' | 'think'; /** * @default false */ "disableAutofocus": boolean; /** * @default false */ "disableInput": boolean; /** * @default '' */ "email": string; /** * @default false */ "embeddedMode": boolean; /** * @default 'Oops! The request URL or API key is invalid or not authorized for this project.' */ "errorMessage403": string; /** * @default 'Oops! We could not find the provided project ID.' */ "errorMessage404": string; /** * @default 'Oops! Please try again later.' */ "errorMessageDefault": string; /** * @default true */ "escapeClose": boolean; /** * @default 'Expand' */ "expandButtonText": string; /** * @default false */ "expandModal": boolean; /** * @default true */ "fetchData": boolean; /** * @default 'AI answers may be inaccurate. Verify with official sources.' */ "footerText": string; /** * @default 'Company Name AI' */ "headerTitle": string; /** * @default false */ "hideAvatars": boolean; /** * @default false */ "hideCloseButton": boolean; /** * @default false */ "hideConnectButton": boolean; /** * @default false */ "hideExpandButton": boolean; /** * @default false */ "hideFeedback": boolean; /** * @default false */ "hideRefreshButton": boolean; /** * @default false */ "hideSettingsButton": boolean; /** * @default false */ "hideSources": boolean; /** * @default false */ "hideTooltips": boolean; /** * @default [] */ "initialMessages": { text: string; sender: 'user' | 'ai'; feedback?: 0 | 1; isPartial: false; }[]; /** * @default 'Type your message' */ "inputPlaceholderText": string; /** * @default true */ "keepConversation": boolean; /** * @default 'https://cdn.jsdelivr.net/npm/mathjax@3.2.2/es5/tex-svg.js' */ "mathjaxUrl": string; /** * @default 'Command copied to clipboard' */ "mcpClaudeCopiedDescription": string; /** * @default 'CLI command' */ "mcpClaudeDescription": string; /** * @default 'Claude Code' */ "mcpClaudeText": string; /** * @default 'Copied!' */ "mcpCopiedText": string; /** * @default 'Opens in a new tab' */ "mcpCopilotDescription": string; /** * @default 'Copilot (VS code)' */ "mcpCopilotText": string; /** * @default 'Opens in a new tab' */ "mcpCursorDescription": string; /** * @default 'Cursor' */ "mcpCursorText": string; /** * @default '' */ "mcpServerUrl": string; /** * @default 'URL copied to clipboard' */ "mcpUrlCopiedDescription": string; /** * @default 'Copy to clipboard' */ "mcpUrlDescription": string; /** * @default 'MCP URL' */ "mcpUrlText": string; /** * @default 'default' */ "mermaidTheme": string; /** * @default '' */ "metadata": string; /** * @default 'center' */ "modalPosition": string; /** * @default '' */ "project": string; /** * @default 'Refresh' */ "refreshButtonText": string; /** * @default true */ "renderDiagrams": boolean; /** * @default true */ "renderMath": boolean; /** * @default 'Send' */ "sendButtonText": string; /** * @default 'Settings' */ "settingsButtonText": string; /** * @default false */ "showModal": boolean; /** * @default false */ "showTermsModal": boolean; /** * @default true */ "smoothStreaming": boolean; /** * @default 'Sources' */ "sourcesText": string; /** * @default '' */ "suggestedQuestions": string; /** * @default 'Suggested questions' */ "suggestedQuestionsTitle": string; /** * @default 'I have read and agree to the Terms & Conditions.' */ "termsCheckboxText": string; /** * @default "Please review our Terms & Conditions before proceeding." */ "termsDescription": string; /** * @default 'Chatbot Terms & Conditions' */ "termsTitle": string; /** * @default 'Balances speed and quality' */ "thinkModeAutoDescription": string; /** * @default 'Auto' */ "thinkModeAutoText": string; /** * @default false */ "thinkModeEnabled": boolean; /** * @default 'Prioritizes speed' */ "thinkModeFastDescription": string; /** * @default 'Instant' */ "thinkModeFastText": string; /** * @default 'Takes longer for better accuracy' */ "thinkModeThinkDescription": string; /** * @default 'Think' */ "thinkModeThinkText": string; "welcomeMessage": string; } interface BielButton { /** * @default 'biel' */ "aiIcon": AiIconType; /** * @default '' */ "apiKey": string; /** * @default '' */ "apiUrl": string; /** * @default 'Assistant' */ "assistantLabel": string; /** * @default `biel-bot-${Math.random().toString(36).substring(2, 9)}` */ "bielId": string; /** * @default 'default' */ "buttonPosition": string; /** * @default 'default' */ "buttonStyle": string; /** * @default 'Close' */ "closeButtonText": string; /** * @default 'Collapse' */ "collapseButtonText": string; /** * @default 'Connect' */ "connectButtonText": string; /** * @default false */ "customFont": boolean; "defaultThinkMode"?: 'auto' | 'fast' | 'think'; /** * @default false */ "disableAutofocus": boolean; /** * @default false */ "disableInput": boolean; /** * @default '' */ "email": string; /** * @default 'Oops! The request URL or API key is invalid or not authorized for this project.' */ "errorMessage403": string; /** * @default 'Oops! We could not find the provided project ID.' */ "errorMessage404": string; /** * @default 'Oops! Please try again later.' */ "errorMessageDefault": string; /** * @default 'Expand' */ "expandButtonText": string; /** * @default false */ "expandModal": boolean; /** * @default 'AI answers may be inaccurate. Verify with official sources.' */ "footerText": string; /** * @default 'Company Name AI' */ "headerTitle": string; /** * @default false */ "hideAvatars": boolean; /** * @default false */ "hideCloseButton": boolean; /** * @default false */ "hideConnectButton": boolean; /** * @default false */ "hideExpandButton": boolean; /** * @default false */ "hideFeedback": boolean; /** * @default false */ "hideIcon": boolean; /** * @default false */ "hideRefreshButton": boolean; /** * @default false */ "hideSettingsButton": boolean; /** * @default false */ "hideSources": boolean; /** * @default false */ "hideTooltips": boolean; /** * @default [] */ "initialMessages": { text: string; sender: 'user' | 'ai'; feedback?: 0 | 1 }[]; /** * @default 'Type your message' */ "inputPlaceholderText": string; /** * @default true */ "keepConversation": boolean; /** * @default 'https://cdn.jsdelivr.net/npm/mathjax@3.2.2/es5/tex-svg.js' */ "mathjaxUrl": string; /** * @default 'Command copied to clipboard' */ "mcpClaudeCopiedDescription": string; /** * @default 'CLI command' */ "mcpClaudeDescription": string; /** * @default 'Claude Code' */ "mcpClaudeText": string; /** * @default 'Copied!' */ "mcpCopiedText": string; /** * @default 'Opens in a new tab' */ "mcpCopilotDescription": string; /** * @default 'Copilot (VS code)' */ "mcpCopilotText": string; /** * @default 'Opens in a new tab' */ "mcpCursorDescription": string; /** * @default 'Cursor' */ "mcpCursorText": string; /** * @default '' */ "mcpServerUrl": string; /** * @default 'URL copied to clipboard' */ "mcpUrlCopiedDescription": string; /** * @default 'Copy to clipboard' */ "mcpUrlDescription": string; /** * @default 'MCP URL' */ "mcpUrlText": string; /** * @default 'default' */ "mermaidTheme": string; /** * @default '' */ "metadata": string; /** * @default 'center' */ "modalPosition": string; /** * @default '' */ "project": string; /** * @default 'Refresh' */ "refreshButtonText": string; /** * @default true */ "renderDiagrams": boolean; /** * @default true */ "renderMath": boolean; /** * @default 'Send' */ "sendButtonText": string; /** * @default 'Settings' */ "settingsButtonText": string; /** * @default false */ "showTermsModal": boolean; /** * @default 'Sources' */ "sourcesText": string; /** * @default '' */ "suggestedQuestions": string; /** * @default 'Suggested questions' */ "suggestedQuestionsTitle": string; /** * @default 'I have read and agree to the Terms & Conditions.' */ "termsCheckboxText": string; /** * @default "Please review our Terms & Conditions before proceeding." */ "termsDescription": string; /** * @default 'Chatbot Terms & Conditions' */ "termsTitle": string; /** * @default 'Balances speed and quality' */ "thinkModeAutoDescription": string; /** * @default 'Auto' */ "thinkModeAutoText": string; /** * @default false */ "thinkModeEnabled": boolean; /** * @default 'Prioritizes speed' */ "thinkModeFastDescription": string; /** * @default 'Instant' */ "thinkModeFastText": string; /** * @default 'Takes longer for better accuracy' */ "thinkModeThinkDescription": string; /** * @default 'Think' */ "thinkModeThinkText": string; /** * @default '' */ "welcomeMessage": string; } interface BielChat { /** * @default 'biel' */ "aiIcon": AiIconType; /** * @default 'Assistant' */ "assistantLabel": string; "bielId": string; /** * @default false */ "embeddedMode": boolean; /** * @default false */ "hideAvatars": boolean; "hideFeedback": boolean; /** * @default false */ "hideSources": boolean; "isFullscreen": boolean; /** * @default false */ "isLoading": boolean; "loadedChat": boolean; /** * @default 'https://cdn.jsdelivr.net/npm/mathjax@3.2.2/es5/tex-svg.js' */ "mathjaxUrl": string; /** * @default 'default' */ "mermaidTheme": string; /** * @default [] */ "messages": { text: string; sender: 'user' | 'ai'; messageId?: string; feedback?: 0 | 1; sources?: { title: string; url: string }[]; isPartial: boolean; partialId?: number; incomplete?: boolean; }[]; "modalPosition": string; /** * @default [] */ "projectActions": { name: string; button_text: string; url: string }[]; /** * @default true */ "renderDiagrams": boolean; /** * @default true */ "renderMath": boolean; /** * @default false */ "showContinueButton": boolean; /** * @default true */ "smoothStreaming": boolean; /** * @default 'Sources' */ "sourcesText": string; "suggestedQuestions": string[]; "suggestedQuestionsTitle": string; "welcomeMessage": string; } /** * One Mermaid diagram from an answer. * biel-message swaps a fenced ```mermaid block for one of these once the fence * closes. Being a custom element is what makes it survive the reconciler in * biel-message, which never recurses into an element whose tag has a dash. * A placeholder holds the space while Mermaid draws, and the definition shows * through as source only when it cannot be drawn at all — the invalid syntax an * LLM writing Mermaid from memory regularly produces. A drawn diagram opens * full-screen on click, since the chat panel is too narrow to read one in. */ interface BielDiagram { /** * @default '' */ "chart": string; /** * @default 'Close diagram' */ "closeLabel": string; /** * @default 'Expand diagram' */ "expandLabel": string; /** * @default 'Rendering diagram' */ "loadingLabel": string; /** * @default 'default' */ "mermaidTheme": string; } interface BielHeader { "bielId": string; /** * @default 'Close' */ "closeButtonText": string; /** * @default 'Collapse' */ "collapseButtonText": string; /** * @default 'auto' */ "currentThinkMode": 'auto' | 'fast' | 'think'; /** * @default 'Expand' */ "expandButtonText": string; "fullscreen": boolean; "headerTitle": string; "hideCloseButton": boolean; "hideExpandButton": boolean; "hideRefreshButton": boolean; /** * @default false */ "hideSettingsButton": boolean; /** * @default false */ "hideTooltips": boolean; "project": string; /** * @default 'Refresh' */ "refreshButtonText": string; /** * @default 'Settings' */ "settingsButtonText": string; /** * @default true */ "showPoweredBy": boolean; /** * @default false */ "thinkModeEnabled": boolean; } interface BielIcon { /** * @default '20' */ "height": string; /** * @default 'biel' */ "type": IconType; /** * @default '20' */ "width": string; } interface BielInput { /** * @default '' */ "apiKey": string; "bielId": string; /** * @default 'Connect' */ "connectButtonText": string; /** * @default 'auto' */ "currentThinkMode": 'auto' | 'fast' | 'think'; /** * @default false */ "disableAutofocus": boolean; /** * @default false */ "hideConnectButton": boolean; /** * @default false */ "hideSettingsButton": boolean; /** * @default false */ "isDisabled": boolean; /** * @default 'Command copied to clipboard' */ "mcpClaudeCopiedDescription": string; /** * @default 'CLI command' */ "mcpClaudeDescription": string; /** * @default 'Claude Code' */ "mcpClaudeText": string; /** * @default 'Copied!' */ "mcpCopiedText": string; /** * @default 'Opens in a new tab' */ "mcpCopilotDescription": string; /** * @default 'Copilot (VS code)' */ "mcpCopilotText": string; /** * @default 'Opens in a new tab' */ "mcpCursorDescription": string; /** * @default 'Cursor' */ "mcpCursorText": string; /** * @default false */ "mcpEnabled": boolean; /** * @default '' */ "mcpMetadataTag": string; /** * @default '' */ "mcpServerName": string; /** * @default '' */ "mcpServerUrl": string; /** * @default 'URL copied to clipboard' */ "mcpUrlCopiedDescription": string; /** * @default 'Copy to clipboard' */ "mcpUrlDescription": string; /** * @default 'MCP URL' */ "mcpUrlText": string; /** * @default 'Type your message' */ "placeholderText": string; /** * @default '' */ "project": string; /** * @default 'Send' */ "sendButtonText": string; /** * @default 'Balances speed and quality' */ "thinkModeAutoDescription": string; /** * @default 'Auto' */ "thinkModeAutoText": string; /** * @default 'Prioritizes speed' */ "thinkModeFastDescription": string; /** * @default 'Instant' */ "thinkModeFastText": string; /** * @default 'Takes longer for better accuracy' */ "thinkModeThinkDescription": string; /** * @default 'Think' */ "thinkModeThinkText": string; } interface BielInputOption { /** * @default false */ "isOpen": boolean; "label": string; } interface BielInputOptions { /** * @default '' */ "apiKey": string; "bielId": string; /** * @default 'Connect' */ "connectButtonText": string; /** * @default 'auto' */ "currentThinkMode": 'auto' | 'fast' | 'think'; /** * @default false */ "hideConnectButton": boolean; /** * @default false */ "hideSettingsButton": boolean; /** * @default 'Command copied to clipboard' */ "mcpClaudeCopiedDescription": string; /** * @default 'CLI command' */ "mcpClaudeDescription": string; /** * @default 'Claude Code' */ "mcpClaudeText": string; /** * @default 'Copied!' */ "mcpCopiedText": string; /** * @default 'Opens in a new tab' */ "mcpCopilotDescription": string; /** * @default 'Copilot (VS code)' */ "mcpCopilotText": string; /** * @default 'Opens in a new tab' */ "mcpCursorDescription": string; /** * @default 'Cursor' */ "mcpCursorText": string; /** * @default false */ "mcpEnabled": boolean; /** * @default '' */ "mcpMetadataTag": string; /** * @default '' */ "mcpServerName": string; /** * @default '' */ "mcpServerUrl": string; /** * @default 'URL copied to clipboard' */ "mcpUrlCopiedDescription": string; /** * @default 'Copy to clipboard' */ "mcpUrlDescription": string; /** * @default 'MCP URL' */ "mcpUrlText": string; /** * @default '' */ "project": string; /** * @default 'Balances speed and quality' */ "thinkModeAutoDescription": string; /** * @default 'Auto' */ "thinkModeAutoText": string; /** * @default 'Prioritizes speed' */ "thinkModeFastDescription": string; /** * @default 'Instant' */ "thinkModeFastText": string; /** * @default 'Takes longer for better accuracy' */ "thinkModeThinkDescription": string; /** * @default 'Think' */ "thinkModeThinkText": string; } /** * One math expression from an answer, typeset with MathJax. * biel-message swaps each `$$...$$` / `\(...\)` span in the Markdown for one of * these before parsing, the same way fenced code becomes a code-snippet. Being * a custom element is what makes it survive streaming: the reconciler in * biel-message never recurses into an element whose tag has a dash, so it syncs * the `tex` attribute and leaves the rendered math alone instead of rebuilding * it on every flush. * The raw TeX shows through until MathJax has loaded and converted it, so a * blocked CDN degrades to readable source rather than an empty gap. */ interface BielMath { /** * @default false */ "display": boolean; /** * @default 'https://cdn.jsdelivr.net/npm/mathjax@3.2.2/es5/tex-svg.js' */ "mathjaxUrl": string; /** * @default '' */ "tex": string; } interface BielMessage { /** * @default 'biel' */ "aiIcon": AiIconType; /** * @default 'Assistant' */ "assistantLabel": string; "availableActions"?: { name: string; button_text: string; url: string }[]; "bielId": string; "feedback"?: 0 | 1; /** * @default false */ "hideAvatars": boolean; "hideFeedback": boolean; /** * @default false */ "hideSources": boolean; "isPartial": boolean; /** * @default 'https://cdn.jsdelivr.net/npm/mathjax@3.2.2/es5/tex-svg.js' */ "mathjaxUrl": string; /** * @default 'default' */ "mermaidTheme": string; "messageId"?: string; "partialId": number; /** * @default true */ "renderDiagrams": boolean; /** * @default true */ "renderMath": boolean; "sender": 'user' | 'ai'; /** * @default true */ "smoothStreaming": boolean; "sources"?: { title: string; url: string }[]; /** * @default 'Sources' */ "sourcesText": string; "text": string; } interface BielSearch { /** * @default 'biel' */ "aiIcon": AiIconType; /** * @default 'Ask AI to answer your question' */ "aiResultFragment": string; /** * @default '' */ "apiKey": string; /** * @default '' */ "apiUrl": string; /** * @default 'Assistant' */ "assistantLabel": string; /** * @default `biel-search-${Math.random().toString(36).substring(2, 9)}` */ "bielId": string; /** * @default false */ "cleanTitles": boolean; /** * @default true */ "clickOutsideClose": boolean; /** * @default 'Close' */ "closeButtonText": string; /** * @default 'Collapse' */ "collapseButtonText": string; /** * @default 'Connect' */ "connectButtonText": string; "defaultThinkMode"?: 'auto' | 'fast' | 'think'; /** * @default false */ "disableAutofocus": boolean; /** * @default false */ "disableInput": boolean; /** * @default '' */ "email": string; /** * @default 'Oops! The request URL or API key is invalid or not authorized for this project.' */ "errorMessage403": string; /** * @default 'Oops! We could not find the provided project ID.' */ "errorMessage404": string; /** * @default 'Oops! Please try again later.' */ "errorMessageDefault": string; /** * @default true */ "escapeClose": boolean; /** * @default 'Expand' */ "expandButtonText": string; /** * @default false */ "expandModal": boolean; /** * @default true */ "fetchData": boolean; /** * @default 'AI answers may be inaccurate. Verify with official sources.' */ "footerText": string; /** * @default 'Company Name AI' */ "headerTitle": string; /** * @default false */ "hideAskAiButton": boolean; /** * @default false */ "hideAvatars": boolean; /** * @default false */ "hideCloseButton": boolean; /** * @default false */ "hideConnectButton": boolean; /** * @default false */ "hideDescriptions": boolean; /** * @default false */ "hideExpandButton": boolean; /** * @default false */ "hideFeedback": boolean; /** * @default true */ "hideFilters": boolean; /** * @default false */ "hideNavigationButtons": boolean; /** * @default false */ "hideRefreshButton": boolean; /** * @default false */ "hideSettingsButton": boolean; /** * @default false */ "hideSources": boolean; /** * @default false */ "hideTooltips": boolean; /** * @default 'Type your message' */ "inputPlaceholderText": string; /** * @default true */ "keepConversation": boolean; /** * @default 'https://cdn.jsdelivr.net/npm/mathjax@3.2.2/es5/tex-svg.js' */ "mathjaxUrl": string; /** * @default 'Command copied to clipboard' */ "mcpClaudeCopiedDescription": string; /** * @default 'CLI command' */ "mcpClaudeDescription": string; /** * @default 'Claude Code' */ "mcpClaudeText": string; /** * @default 'Copied!' */ "mcpCopiedText": string; /** * @default 'Opens in a new tab' */ "mcpCopilotDescription": string; /** * @default 'Copilot (VS code)' */ "mcpCopilotText": string; /** * @default 'Opens in a new tab' */ "mcpCursorDescription": string; /** * @default 'Cursor' */ "mcpCursorText": string; /** * @default '' */ "mcpServerUrl": string; /** * @default 'URL copied to clipboard' */ "mcpUrlCopiedDescription": string; /** * @default 'Copy to clipboard' */ "mcpUrlDescription": string; /** * @default 'MCP URL' */ "mcpUrlText": string; /** * @default 'default' */ "mermaidTheme": string; /** * @default '' */ "metadata": string; /** * @default 'top-center' */ "modalPosition": string; /** * @default '' */ "project": string; /** * @default 'Refresh' */ "refreshButtonText": string; /** * @default true */ "renderDiagrams": boolean; /** * @default true */ "renderMath": boolean; /** * @default 'Search or ask AI...' */ "searchPlaceholder": string; /** * @default 'Send' */ "sendButtonText": string; /** * @default 'Settings' */ "settingsButtonText": string; /** * @default false */ "showSearchModal": boolean; /** * @default false */ "showTermsModal": boolean; /** * @default 'Sources' */ "sourcesText": string; /** * @default false */ "stacked": boolean; /** * @default '' */ "suggestedQuestions": string; /** * @default 'Suggested questions' */ "suggestedQuestionsTitle": string; /** * @default 'I have read and agree to the Terms & Conditions.' */ "termsCheckboxText": string; /** * @default "Please review our Terms & Conditions before proceeding." */ "termsDescription": string; /** * @default 'Chatbot Terms & Conditions' */ "termsTitle": string; /** * @default 'Balances speed and quality' */ "thinkModeAutoDescription": string; /** * @default 'Auto' */ "thinkModeAutoText": string; /** * @default false */ "thinkModeEnabled": boolean; /** * @default 'Prioritizes speed' */ "thinkModeFastDescription": string; /** * @default 'Instant' */ "thinkModeFastText": string; /** * @default 'Takes longer for better accuracy' */ "thinkModeThinkDescription": string; /** * @default 'Think' */ "thinkModeThinkText": string; /** * @default '' */ "welcomeMessage": string; } interface BielSearchAskAiButton { /** * @default 'biel' */ "aiIcon": ButtonIconType; "bielId": string; "isSelected": boolean; "resultFragment": string; "resultTitle": string; } interface BielSearchBody { /** * @default 'biel' */ "aiIcon": AiIconType; /** * @default 'Ask AI to answer your question' */ "aiResultFragment": string; "bielId": string; /** * @default false */ "cleanTitles": boolean; /** * @default false */ "hideAskAiButton": boolean; /** * @default false */ "hideAvatars": boolean; /** * @default false */ "hideDescriptions": boolean; "lastSearchQuery": string; "searchQuery": string; /** * @default [] */ "searchResults": SearchResult[]; /** * @default false */ "stacked": boolean; } interface BielSearchButton { /** * @default 'biel' */ "aiIcon": AiIconType; /** * @default 'Ask AI to answer your question' */ "aiResultFragment": string; /** * @default '' */ "apiKey": string; /** * @default '' */ "apiUrl": string; /** * @default 'Assistant' */ "assistantLabel": string; /** * @default 'default' */ "buttonStyle": string; /** * @default false */ "cleanTitles": boolean; /** * @default 'Close' */ "closeButtonText": string; /** * @default 'Collapse' */ "collapseButtonText": string; /** * @default 'Connect' */ "connectButtonText": string; /** * @default false */ "customFont": boolean; "defaultThinkMode"?: 'auto' | 'fast' | 'think'; /** * @default false */ "disableAutofocus": boolean; /** * @default false */ "disableInput": boolean; /** * @default '' */ "email": string; /** * @default 'Oops! The request URL or API key is invalid or not authorized for this project.' */ "errorMessage403": string; /** * @default 'Oops! We could not find the provided project ID.' */ "errorMessage404": string; /** * @default 'Oops! Please try again later.' */ "errorMessageDefault": string; /** * @default 'Expand' */ "expandButtonText": string; /** * @default false */ "expandModal": boolean; /** * @default 'AI answers may be inaccurate. Verify with official sources.' */ "footerText": string; /** * @default 'Company Name AI' */ "headerTitle": string; /** * @default false */ "hideAskAiButton": boolean; /** * @default false */ "hideAvatars": boolean; /** * @default false */ "hideCloseButton": boolean; /** * @default false */ "hideConnectButton": boolean; /** * @default false */ "hideCtrlK": boolean; /** * @default false */ "hideDescriptions": boolean; /** * @default false */ "hideExpandButton": boolean; /** * @default false */ "hideFeedback": boolean; /** * @default true */ "hideFilters": boolean; /** * @default false */ "hideIcon": boolean; /** * @default false */ "hideNavigationButtons": boolean; /** * @default false */ "hideRefreshButton": boolean; /** * @default false */ "hideSettingsButton": boolean; /** * @default false */ "hideSources": boolean; /** * @default false */ "hideTooltips": boolean; /** * @default [] */ "initialMessages": { text: string; sender: 'user' | 'ai'; feedback?: 0 | 1 }[]; /** * @default 'Type your message' */ "inputPlaceholderText": string; /** * @default true */ "keepConversation": boolean; /** * @default 'https://cdn.jsdelivr.net/npm/mathjax@3.2.2/es5/tex-svg.js' */ "mathjaxUrl": string; /** * @default 'Command copied to clipboard' */ "mcpClaudeCopiedDescription": string; /** * @default 'CLI command' */ "mcpClaudeDescription": string; /** * @default 'Claude Code' */ "mcpClaudeText": string; /** * @default 'Copied!' */ "mcpCopiedText": string; /** * @default 'Opens in a new tab' */ "mcpCopilotDescription": string; /** * @default 'Copilot (VS code)' */ "mcpCopilotText": string; /** * @default 'Opens in a new tab' */ "mcpCursorDescription": string; /** * @default 'Cursor' */ "mcpCursorText": string; /** * @default '' */ "mcpServerUrl": string; /** * @default 'URL copied to clipboard' */ "mcpUrlCopiedDescription": string; /** * @default 'Copy to clipboard' */ "mcpUrlDescription": string; /** * @default 'MCP URL' */ "mcpUrlText": string; /** * @default '' */ "metadata": string; /** * @default 'top-center' */ "modalPosition": string; /** * @default '' */ "project": string; /** * @default 'Refresh' */ "refreshButtonText": string; /** * @default true */ "renderMath": boolean; /** * @default 'Search or ask AI...' */ "searchPlaceholder": string; /** * @default 'Send' */ "sendButtonText": string; /** * @default 'Settings' */ "settingsButtonText": string; /** * @default false */ "showTermsModal": boolean; /** * @default 'Sources' */ "sourcesText": string; /** * @default false */ "stacked": boolean; /** * @default '' */ "suggestedQuestions": string; /** * @default 'Suggested questions' */ "suggestedQuestionsTitle": string; /** * @default 'I have read and agree to the Terms & Conditions.' */ "termsCheckboxText": string; /** * @default "Please review our Terms & Conditions before proceeding." */ "termsDescription": string; /** * @default 'Chatbot Terms & Conditions' */ "termsTitle": string; /** * @default 'Balances speed and quality' */ "thinkModeAutoDescription": string; /** * @default 'Auto' */ "thinkModeAutoText": string; /** * @default false */ "thinkModeEnabled": boolean; /** * @default 'Prioritizes speed' */ "thinkModeFastDescription": string; /** * @default 'Instant' */ "thinkModeFastText": string; /** * @default 'Takes longer for better accuracy' */ "thinkModeThinkDescription": string; /** * @default 'Think' */ "thinkModeThinkText": string; /** * @default '' */ "welcomeMessage": string; } interface BielSearchFilters { /** * @default false */ "disableFilters": boolean; /** * @default [] */ "filters": { title: string }[]; } interface BielSearchHeader { "bielId": string; /** * @default 'Close' */ "closeButtonText": string; /** * @default 'Collapse' */ "collapseButtonText": string; /** * @default false */ "disableAutofocus": boolean; /** * @default 'Expand' */ "expandButtonText": string; /** * @default [] */ "filters": { title: string }[]; /** * @default false */ "hideExpandButton": boolean; /** * @default true */ "hideFilters": boolean; /** * @default false */ "hideTooltips": boolean; /** * @default false */ "isFullscreen": boolean; /** * @default 'Search or ask AI...' */ "placeholderText": string; "searchQuery": string; } interface BielSearchInput { /** * @default false */ "disableAutofocus": boolean; /** * @default 'Search or ask AI...' */ "placeholderText": string; } interface BielSearchResult { /** * @default false */ "hideDescription": boolean; "isSelected": boolean; "resultFragment": string; "resultTitle": string; "resultUrl": string; "searchQuery": string; } interface BielSuggestedQuestions { "bielId": string; /** * @default 'Suggested questions' */ "heading": string; /** * @default [] */ "questions": string[]; } interface BielTermsModal { /** * @default 'I have read and agree to the Terms & Conditions.' */ "termsCheckboxText": string; /** * @default "Please review our Terms & Conditions before proceeding." */ "termsDescription": string; /** * @default 'Chatbot Terms & Conditions' */ "termsTitle": string; } interface CodeSnippet { "code": string; /** * @default 'Copied!' */ "copiedButtonText": string; /** * @default 'Copy' */ "copyButtonText": string; "language": string; } } export interface BielBotCustomEvent extends CustomEvent { detail: T; target: HTMLBielBotElement; } export interface BielButtonCustomEvent extends CustomEvent { detail: T; target: HTMLBielButtonElement; } export interface BielHeaderCustomEvent extends CustomEvent { detail: T; target: HTMLBielHeaderElement; } export interface BielInputCustomEvent extends CustomEvent { detail: T; target: HTMLBielInputElement; } export interface BielInputOptionCustomEvent extends CustomEvent { detail: T; target: HTMLBielInputOptionElement; } export interface BielInputOptionsCustomEvent extends CustomEvent { detail: T; target: HTMLBielInputOptionsElement; } export interface BielMessageCustomEvent extends CustomEvent { detail: T; target: HTMLBielMessageElement; } export interface BielSearchCustomEvent extends CustomEvent { detail: T; target: HTMLBielSearchElement; } export interface BielSearchAskAiButtonCustomEvent extends CustomEvent { detail: T; target: HTMLBielSearchAskAiButtonElement; } export interface BielSearchBodyCustomEvent extends CustomEvent { detail: T; target: HTMLBielSearchBodyElement; } export interface BielSearchButtonCustomEvent extends CustomEvent { detail: T; target: HTMLBielSearchButtonElement; } export interface BielSearchFiltersCustomEvent extends CustomEvent { detail: T; target: HTMLBielSearchFiltersElement; } export interface BielSearchHeaderCustomEvent extends CustomEvent { detail: T; target: HTMLBielSearchHeaderElement; } export interface BielSearchInputCustomEvent extends CustomEvent { detail: T; target: HTMLBielSearchInputElement; } export interface BielSuggestedQuestionsCustomEvent extends CustomEvent { detail: T; target: HTMLBielSuggestedQuestionsElement; } export interface BielTermsModalCustomEvent extends CustomEvent { detail: T; target: HTMLBielTermsModalElement; } declare global { interface HTMLBielBotElementEventMap { "addMessageText": { text: string; id: number; bielId: string }; "closeBot": void; "partialMessageComplete": { partialId: number; bielId: string; msg: { text: string; sender: 'user' | 'ai'; messageId?: string; feedback?: 0 | 1; sources?: { title: string; url: string }[]; isPartial: boolean; partialId?: number; }; }; } interface HTMLBielBotElement extends Components.BielBot, HTMLStencilElement { addEventListener(type: K, listener: (this: HTMLBielBotElement, ev: BielBotCustomEvent) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLBielBotElement, ev: BielBotCustomEvent) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; } var HTMLBielBotElement: { prototype: HTMLBielBotElement; new (): HTMLBielBotElement; }; interface HTMLBielButtonElementEventMap { "bielBotButtonClick": void; "termsDeclined": boolean; } interface HTMLBielButtonElement extends Components.BielButton, HTMLStencilElement { addEventListener(type: K, listener: (this: HTMLBielButtonElement, ev: BielButtonCustomEvent) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLBielButtonElement, ev: BielButtonCustomEvent) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; } var HTMLBielButtonElement: { prototype: HTMLBielButtonElement; new (): HTMLBielButtonElement; }; interface HTMLBielChatElement extends Components.BielChat, HTMLStencilElement { } var HTMLBielChatElement: { prototype: HTMLBielChatElement; new (): HTMLBielChatElement; }; /** * One Mermaid diagram from an answer. * biel-message swaps a fenced ```mermaid block for one of these once the fence * closes. Being a custom element is what makes it survive the reconciler in * biel-message, which never recurses into an element whose tag has a dash. * A placeholder holds the space while Mermaid draws, and the definition shows * through as source only when it cannot be drawn at all — the invalid syntax an * LLM writing Mermaid from memory regularly produces. A drawn diagram opens * full-screen on click, since the chat panel is too narrow to read one in. */ interface HTMLBielDiagramElement extends Components.BielDiagram, HTMLStencilElement { } var HTMLBielDiagramElement: { prototype: HTMLBielDiagramElement; new (): HTMLBielDiagramElement; }; interface HTMLBielHeaderElementEventMap { "closeClicked": { bielId: string }; "fullscreenClicked": { bielId: string }; "refreshClicked": { bielId: string }; "thinkModeToggled": { bielId: string; isActive: boolean }; "thinkModeChanged": { bielId: string; mode: 'auto' | 'fast' | 'think' }; } interface HTMLBielHeaderElement extends Components.BielHeader, HTMLStencilElement { addEventListener(type: K, listener: (this: HTMLBielHeaderElement, ev: BielHeaderCustomEvent) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLBielHeaderElement, ev: BielHeaderCustomEvent) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; } var HTMLBielHeaderElement: { prototype: HTMLBielHeaderElement; new (): HTMLBielHeaderElement; }; interface HTMLBielIconElement extends Components.BielIcon, HTMLStencilElement { } var HTMLBielIconElement: { prototype: HTMLBielIconElement; new (): HTMLBielIconElement; }; interface HTMLBielInputElementEventMap { "messageSent": { bielId: string; message: string }; "scrollToBottom": { bielId: string }; "thinkModeChanged": { bielId: string; mode: 'auto' | 'fast' | 'think' }; } interface HTMLBielInputElement extends Components.BielInput, HTMLStencilElement { addEventListener(type: K, listener: (this: HTMLBielInputElement, ev: BielInputCustomEvent) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLBielInputElement, ev: BielInputCustomEvent) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; } var HTMLBielInputElement: { prototype: HTMLBielInputElement; new (): HTMLBielInputElement; }; interface HTMLBielInputOptionElementEventMap { "toggleRequested": void; } interface HTMLBielInputOptionElement extends Components.BielInputOption, HTMLStencilElement { addEventListener(type: K, listener: (this: HTMLBielInputOptionElement, ev: BielInputOptionCustomEvent) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLBielInputOptionElement, ev: BielInputOptionCustomEvent) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; } var HTMLBielInputOptionElement: { prototype: HTMLBielInputOptionElement; new (): HTMLBielInputOptionElement; }; interface HTMLBielInputOptionsElementEventMap { "thinkModeChanged": { bielId: string; mode: 'auto' | 'fast' | 'think' }; } interface HTMLBielInputOptionsElement extends Components.BielInputOptions, HTMLStencilElement { addEventListener(type: K, listener: (this: HTMLBielInputOptionsElement, ev: BielInputOptionsCustomEvent) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLBielInputOptionsElement, ev: BielInputOptionsCustomEvent) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; } var HTMLBielInputOptionsElement: { prototype: HTMLBielInputOptionsElement; new (): HTMLBielInputOptionsElement; }; /** * One math expression from an answer, typeset with MathJax. * biel-message swaps each `$$...$$` / `\(...\)` span in the Markdown for one of * these before parsing, the same way fenced code becomes a code-snippet. Being * a custom element is what makes it survive streaming: the reconciler in * biel-message never recurses into an element whose tag has a dash, so it syncs * the `tex` attribute and leaves the rendered math alone instead of rebuilding * it on every flush. * The raw TeX shows through until MathJax has loaded and converted it, so a * blocked CDN degrades to readable source rather than an empty gap. */ interface HTMLBielMathElement extends Components.BielMath, HTMLStencilElement { } var HTMLBielMathElement: { prototype: HTMLBielMathElement; new (): HTMLBielMathElement; }; interface HTMLBielMessageElementEventMap { "scrollToBottom": { bielId: string }; "feedbackSent": { bielId: string; messageId: string; reaction: 0 | 1 }; } interface HTMLBielMessageElement extends Components.BielMessage, HTMLStencilElement { addEventListener(type: K, listener: (this: HTMLBielMessageElement, ev: BielMessageCustomEvent) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLBielMessageElement, ev: BielMessageCustomEvent) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; } var HTMLBielMessageElement: { prototype: HTMLBielMessageElement; new (): HTMLBielMessageElement; }; interface HTMLBielSearchElementEventMap { "messageSent": { bielId: string; message: string }; } interface HTMLBielSearchElement extends Components.BielSearch, HTMLStencilElement { addEventListener(type: K, listener: (this: HTMLBielSearchElement, ev: BielSearchCustomEvent) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLBielSearchElement, ev: BielSearchCustomEvent) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; } var HTMLBielSearchElement: { prototype: HTMLBielSearchElement; new (): HTMLBielSearchElement; }; interface HTMLBielSearchAskAiButtonElementEventMap { "askAiClicked": { bielId: string }; } interface HTMLBielSearchAskAiButtonElement extends Components.BielSearchAskAiButton, HTMLStencilElement { addEventListener(type: K, listener: (this: HTMLBielSearchAskAiButtonElement, ev: BielSearchAskAiButtonCustomEvent) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLBielSearchAskAiButtonElement, ev: BielSearchAskAiButtonCustomEvent) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; } var HTMLBielSearchAskAiButtonElement: { prototype: HTMLBielSearchAskAiButtonElement; new (): HTMLBielSearchAskAiButtonElement; }; interface HTMLBielSearchBodyElementEventMap { "resultClicked": ResultClickedDetail; } interface HTMLBielSearchBodyElement extends Components.BielSearchBody, HTMLStencilElement { addEventListener(type: K, listener: (this: HTMLBielSearchBodyElement, ev: BielSearchBodyCustomEvent) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLBielSearchBodyElement, ev: BielSearchBodyCustomEvent) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; } var HTMLBielSearchBodyElement: { prototype: HTMLBielSearchBodyElement; new (): HTMLBielSearchBodyElement; }; interface HTMLBielSearchButtonElementEventMap { "bielSearchButtonClick": void; } interface HTMLBielSearchButtonElement extends Components.BielSearchButton, HTMLStencilElement { addEventListener(type: K, listener: (this: HTMLBielSearchButtonElement, ev: BielSearchButtonCustomEvent) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLBielSearchButtonElement, ev: BielSearchButtonCustomEvent) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; } var HTMLBielSearchButtonElement: { prototype: HTMLBielSearchButtonElement; new (): HTMLBielSearchButtonElement; }; interface HTMLBielSearchFiltersElementEventMap { "filterSelected": string; } interface HTMLBielSearchFiltersElement extends Components.BielSearchFilters, HTMLStencilElement { addEventListener(type: K, listener: (this: HTMLBielSearchFiltersElement, ev: BielSearchFiltersCustomEvent) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLBielSearchFiltersElement, ev: BielSearchFiltersCustomEvent) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; } var HTMLBielSearchFiltersElement: { prototype: HTMLBielSearchFiltersElement; new (): HTMLBielSearchFiltersElement; }; interface HTMLBielSearchHeaderElementEventMap { "closeSearchClicked": { bielId: string }; "expandSearchClicked": { bielId: string }; } interface HTMLBielSearchHeaderElement extends Components.BielSearchHeader, HTMLStencilElement { addEventListener(type: K, listener: (this: HTMLBielSearchHeaderElement, ev: BielSearchHeaderCustomEvent) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLBielSearchHeaderElement, ev: BielSearchHeaderCustomEvent) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; } var HTMLBielSearchHeaderElement: { prototype: HTMLBielSearchHeaderElement; new (): HTMLBielSearchHeaderElement; }; interface HTMLBielSearchInputElementEventMap { "inputChanged": string; } interface HTMLBielSearchInputElement extends Components.BielSearchInput, HTMLStencilElement { addEventListener(type: K, listener: (this: HTMLBielSearchInputElement, ev: BielSearchInputCustomEvent) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLBielSearchInputElement, ev: BielSearchInputCustomEvent) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; } var HTMLBielSearchInputElement: { prototype: HTMLBielSearchInputElement; new (): HTMLBielSearchInputElement; }; interface HTMLBielSearchResultElement extends Components.BielSearchResult, HTMLStencilElement { } var HTMLBielSearchResultElement: { prototype: HTMLBielSearchResultElement; new (): HTMLBielSearchResultElement; }; interface HTMLBielSuggestedQuestionsElementEventMap { "suggestedQuestionClick": { bielId: string; message: string }; "scrollToBottom": { bielId: string }; } interface HTMLBielSuggestedQuestionsElement extends Components.BielSuggestedQuestions, HTMLStencilElement { addEventListener(type: K, listener: (this: HTMLBielSuggestedQuestionsElement, ev: BielSuggestedQuestionsCustomEvent) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLBielSuggestedQuestionsElement, ev: BielSuggestedQuestionsCustomEvent) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; } var HTMLBielSuggestedQuestionsElement: { prototype: HTMLBielSuggestedQuestionsElement; new (): HTMLBielSuggestedQuestionsElement; }; interface HTMLBielTermsModalElementEventMap { "termsAccepted": void; "termsDeclined": boolean; } interface HTMLBielTermsModalElement extends Components.BielTermsModal, HTMLStencilElement { addEventListener(type: K, listener: (this: HTMLBielTermsModalElement, ev: BielTermsModalCustomEvent) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLBielTermsModalElement, ev: BielTermsModalCustomEvent) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; } var HTMLBielTermsModalElement: { prototype: HTMLBielTermsModalElement; new (): HTMLBielTermsModalElement; }; interface HTMLCodeSnippetElement extends Components.CodeSnippet, HTMLStencilElement { } var HTMLCodeSnippetElement: { prototype: HTMLCodeSnippetElement; new (): HTMLCodeSnippetElement; }; interface HTMLElementTagNameMap { "biel-bot": HTMLBielBotElement; "biel-button": HTMLBielButtonElement; "biel-chat": HTMLBielChatElement; "biel-diagram": HTMLBielDiagramElement; "biel-header": HTMLBielHeaderElement; "biel-icon": HTMLBielIconElement; "biel-input": HTMLBielInputElement; "biel-input-option": HTMLBielInputOptionElement; "biel-input-options": HTMLBielInputOptionsElement; "biel-math": HTMLBielMathElement; "biel-message": HTMLBielMessageElement; "biel-search": HTMLBielSearchElement; "biel-search-ask-ai-button": HTMLBielSearchAskAiButtonElement; "biel-search-body": HTMLBielSearchBodyElement; "biel-search-button": HTMLBielSearchButtonElement; "biel-search-filters": HTMLBielSearchFiltersElement; "biel-search-header": HTMLBielSearchHeaderElement; "biel-search-input": HTMLBielSearchInputElement; "biel-search-result": HTMLBielSearchResultElement; "biel-suggested-questions": HTMLBielSuggestedQuestionsElement; "biel-terms-modal": HTMLBielTermsModalElement; "code-snippet": HTMLCodeSnippetElement; } } declare namespace LocalJSX { interface BielBot { /** * @default 'biel' */ "aiIcon"?: AiIconType; /** * @default '' */ "apiKey"?: string; /** * @default '' */ "apiUrl"?: string; /** * @default 'Assistant' */ "assistantLabel"?: string; /** * @default `biel-bot-${Math.random().toString(36).substring(2, 9)}` */ "bielId"?: string; /** * @default true */ "clickOutsideClose"?: boolean; /** * @default 'Close' */ "closeButtonText"?: string; /** * @default 'Collapse' */ "collapseButtonText"?: string; /** * @default 'Connect' */ "connectButtonText"?: string; /** * Think mode a new conversation starts in. Ignored once the visitor picks a mode themselves, and only applied when the project has think mode enabled. */ "defaultThinkMode"?: 'auto' | 'fast' | 'think'; /** * @default false */ "disableAutofocus"?: boolean; /** * @default false */ "disableInput"?: boolean; /** * @default '' */ "email"?: string; /** * @default false */ "embeddedMode"?: boolean; /** * @default 'Oops! The request URL or API key is invalid or not authorized for this project.' */ "errorMessage403"?: string; /** * @default 'Oops! We could not find the provided project ID.' */ "errorMessage404"?: string; /** * @default 'Oops! Please try again later.' */ "errorMessageDefault"?: string; /** * @default true */ "escapeClose"?: boolean; /** * @default 'Expand' */ "expandButtonText"?: string; /** * @default false */ "expandModal"?: boolean; /** * @default true */ "fetchData"?: boolean; /** * @default 'AI answers may be inaccurate. Verify with official sources.' */ "footerText"?: string; /** * @default 'Company Name AI' */ "headerTitle"?: string; /** * @default false */ "hideAvatars"?: boolean; /** * @default false */ "hideCloseButton"?: boolean; /** * @default false */ "hideConnectButton"?: boolean; /** * @default false */ "hideExpandButton"?: boolean; /** * @default false */ "hideFeedback"?: boolean; /** * @default false */ "hideRefreshButton"?: boolean; /** * @default false */ "hideSettingsButton"?: boolean; /** * @default false */ "hideSources"?: boolean; /** * @default false */ "hideTooltips"?: boolean; /** * @default [] */ "initialMessages"?: { text: string; sender: 'user' | 'ai'; feedback?: 0 | 1; isPartial: false; }[]; /** * @default 'Type your message' */ "inputPlaceholderText"?: string; /** * @default true */ "keepConversation"?: boolean; /** * @default 'https://cdn.jsdelivr.net/npm/mathjax@3.2.2/es5/tex-svg.js' */ "mathjaxUrl"?: string; /** * @default 'Command copied to clipboard' */ "mcpClaudeCopiedDescription"?: string; /** * @default 'CLI command' */ "mcpClaudeDescription"?: string; /** * @default 'Claude Code' */ "mcpClaudeText"?: string; /** * @default 'Copied!' */ "mcpCopiedText"?: string; /** * @default 'Opens in a new tab' */ "mcpCopilotDescription"?: string; /** * @default 'Copilot (VS code)' */ "mcpCopilotText"?: string; /** * @default 'Opens in a new tab' */ "mcpCursorDescription"?: string; /** * @default 'Cursor' */ "mcpCursorText"?: string; /** * @default '' */ "mcpServerUrl"?: string; /** * @default 'URL copied to clipboard' */ "mcpUrlCopiedDescription"?: string; /** * @default 'Copy to clipboard' */ "mcpUrlDescription"?: string; /** * @default 'MCP URL' */ "mcpUrlText"?: string; /** * @default 'default' */ "mermaidTheme"?: string; /** * @default '' */ "metadata"?: string; /** * @default 'center' */ "modalPosition"?: string; "onAddMessageText"?: (event: BielBotCustomEvent<{ text: string; id: number; bielId: string }>) => void; "onCloseBot"?: (event: BielBotCustomEvent) => void; "onPartialMessageComplete"?: (event: BielBotCustomEvent<{ partialId: number; bielId: string; msg: { text: string; sender: 'user' | 'ai'; messageId?: string; feedback?: 0 | 1; sources?: { title: string; url: string }[]; isPartial: boolean; partialId?: number; }; }>) => void; /** * @default '' */ "project"?: string; /** * @default 'Refresh' */ "refreshButtonText"?: string; /** * @default true */ "renderDiagrams"?: boolean; /** * @default true */ "renderMath"?: boolean; /** * @default 'Send' */ "sendButtonText"?: string; /** * @default 'Settings' */ "settingsButtonText"?: string; /** * @default false */ "showModal"?: boolean; /** * @default false */ "showTermsModal"?: boolean; /** * @default true */ "smoothStreaming"?: boolean; /** * @default 'Sources' */ "sourcesText"?: string; /** * @default '' */ "suggestedQuestions"?: string; /** * @default 'Suggested questions' */ "suggestedQuestionsTitle"?: string; /** * @default 'I have read and agree to the Terms & Conditions.' */ "termsCheckboxText"?: string; /** * @default "Please review our Terms & Conditions before proceeding." */ "termsDescription"?: string; /** * @default 'Chatbot Terms & Conditions' */ "termsTitle"?: string; /** * @default 'Balances speed and quality' */ "thinkModeAutoDescription"?: string; /** * @default 'Auto' */ "thinkModeAutoText"?: string; /** * @default false */ "thinkModeEnabled"?: boolean; /** * @default 'Prioritizes speed' */ "thinkModeFastDescription"?: string; /** * @default 'Instant' */ "thinkModeFastText"?: string; /** * @default 'Takes longer for better accuracy' */ "thinkModeThinkDescription"?: string; /** * @default 'Think' */ "thinkModeThinkText"?: string; "welcomeMessage"?: string; } interface BielButton { /** * @default 'biel' */ "aiIcon"?: AiIconType; /** * @default '' */ "apiKey"?: string; /** * @default '' */ "apiUrl"?: string; /** * @default 'Assistant' */ "assistantLabel"?: string; /** * @default `biel-bot-${Math.random().toString(36).substring(2, 9)}` */ "bielId"?: string; /** * @default 'default' */ "buttonPosition"?: string; /** * @default 'default' */ "buttonStyle"?: string; /** * @default 'Close' */ "closeButtonText"?: string; /** * @default 'Collapse' */ "collapseButtonText"?: string; /** * @default 'Connect' */ "connectButtonText"?: string; /** * @default false */ "customFont"?: boolean; "defaultThinkMode"?: 'auto' | 'fast' | 'think'; /** * @default false */ "disableAutofocus"?: boolean; /** * @default false */ "disableInput"?: boolean; /** * @default '' */ "email"?: string; /** * @default 'Oops! The request URL or API key is invalid or not authorized for this project.' */ "errorMessage403"?: string; /** * @default 'Oops! We could not find the provided project ID.' */ "errorMessage404"?: string; /** * @default 'Oops! Please try again later.' */ "errorMessageDefault"?: string; /** * @default 'Expand' */ "expandButtonText"?: string; /** * @default false */ "expandModal"?: boolean; /** * @default 'AI answers may be inaccurate. Verify with official sources.' */ "footerText"?: string; /** * @default 'Company Name AI' */ "headerTitle"?: string; /** * @default false */ "hideAvatars"?: boolean; /** * @default false */ "hideCloseButton"?: boolean; /** * @default false */ "hideConnectButton"?: boolean; /** * @default false */ "hideExpandButton"?: boolean; /** * @default false */ "hideFeedback"?: boolean; /** * @default false */ "hideIcon"?: boolean; /** * @default false */ "hideRefreshButton"?: boolean; /** * @default false */ "hideSettingsButton"?: boolean; /** * @default false */ "hideSources"?: boolean; /** * @default false */ "hideTooltips"?: boolean; /** * @default [] */ "initialMessages"?: { text: string; sender: 'user' | 'ai'; feedback?: 0 | 1 }[]; /** * @default 'Type your message' */ "inputPlaceholderText"?: string; /** * @default true */ "keepConversation"?: boolean; /** * @default 'https://cdn.jsdelivr.net/npm/mathjax@3.2.2/es5/tex-svg.js' */ "mathjaxUrl"?: string; /** * @default 'Command copied to clipboard' */ "mcpClaudeCopiedDescription"?: string; /** * @default 'CLI command' */ "mcpClaudeDescription"?: string; /** * @default 'Claude Code' */ "mcpClaudeText"?: string; /** * @default 'Copied!' */ "mcpCopiedText"?: string; /** * @default 'Opens in a new tab' */ "mcpCopilotDescription"?: string; /** * @default 'Copilot (VS code)' */ "mcpCopilotText"?: string; /** * @default 'Opens in a new tab' */ "mcpCursorDescription"?: string; /** * @default 'Cursor' */ "mcpCursorText"?: string; /** * @default '' */ "mcpServerUrl"?: string; /** * @default 'URL copied to clipboard' */ "mcpUrlCopiedDescription"?: string; /** * @default 'Copy to clipboard' */ "mcpUrlDescription"?: string; /** * @default 'MCP URL' */ "mcpUrlText"?: string; /** * @default 'default' */ "mermaidTheme"?: string; /** * @default '' */ "metadata"?: string; /** * @default 'center' */ "modalPosition"?: string; "onBielBotButtonClick"?: (event: BielButtonCustomEvent) => void; "onTermsDeclined"?: (event: BielButtonCustomEvent) => void; /** * @default '' */ "project"?: string; /** * @default 'Refresh' */ "refreshButtonText"?: string; /** * @default true */ "renderDiagrams"?: boolean; /** * @default true */ "renderMath"?: boolean; /** * @default 'Send' */ "sendButtonText"?: string; /** * @default 'Settings' */ "settingsButtonText"?: string; /** * @default false */ "showTermsModal"?: boolean; /** * @default 'Sources' */ "sourcesText"?: string; /** * @default '' */ "suggestedQuestions"?: string; /** * @default 'Suggested questions' */ "suggestedQuestionsTitle"?: string; /** * @default 'I have read and agree to the Terms & Conditions.' */ "termsCheckboxText"?: string; /** * @default "Please review our Terms & Conditions before proceeding." */ "termsDescription"?: string; /** * @default 'Chatbot Terms & Conditions' */ "termsTitle"?: string; /** * @default 'Balances speed and quality' */ "thinkModeAutoDescription"?: string; /** * @default 'Auto' */ "thinkModeAutoText"?: string; /** * @default false */ "thinkModeEnabled"?: boolean; /** * @default 'Prioritizes speed' */ "thinkModeFastDescription"?: string; /** * @default 'Instant' */ "thinkModeFastText"?: string; /** * @default 'Takes longer for better accuracy' */ "thinkModeThinkDescription"?: string; /** * @default 'Think' */ "thinkModeThinkText"?: string; /** * @default '' */ "welcomeMessage"?: string; } interface BielChat { /** * @default 'biel' */ "aiIcon"?: AiIconType; /** * @default 'Assistant' */ "assistantLabel"?: string; "bielId"?: string; /** * @default false */ "embeddedMode"?: boolean; /** * @default false */ "hideAvatars"?: boolean; "hideFeedback"?: boolean; /** * @default false */ "hideSources"?: boolean; "isFullscreen"?: boolean; /** * @default false */ "isLoading"?: boolean; "loadedChat"?: boolean; /** * @default 'https://cdn.jsdelivr.net/npm/mathjax@3.2.2/es5/tex-svg.js' */ "mathjaxUrl"?: string; /** * @default 'default' */ "mermaidTheme"?: string; /** * @default [] */ "messages"?: { text: string; sender: 'user' | 'ai'; messageId?: string; feedback?: 0 | 1; sources?: { title: string; url: string }[]; isPartial: boolean; partialId?: number; incomplete?: boolean; }[]; "modalPosition"?: string; /** * @default [] */ "projectActions"?: { name: string; button_text: string; url: string }[]; /** * @default true */ "renderDiagrams"?: boolean; /** * @default true */ "renderMath"?: boolean; /** * @default false */ "showContinueButton"?: boolean; /** * @default true */ "smoothStreaming"?: boolean; /** * @default 'Sources' */ "sourcesText"?: string; "suggestedQuestions"?: string[]; "suggestedQuestionsTitle"?: string; "welcomeMessage"?: string; } /** * One Mermaid diagram from an answer. * biel-message swaps a fenced ```mermaid block for one of these once the fence * closes. Being a custom element is what makes it survive the reconciler in * biel-message, which never recurses into an element whose tag has a dash. * A placeholder holds the space while Mermaid draws, and the definition shows * through as source only when it cannot be drawn at all — the invalid syntax an * LLM writing Mermaid from memory regularly produces. A drawn diagram opens * full-screen on click, since the chat panel is too narrow to read one in. */ interface BielDiagram { /** * @default '' */ "chart"?: string; /** * @default 'Close diagram' */ "closeLabel"?: string; /** * @default 'Expand diagram' */ "expandLabel"?: string; /** * @default 'Rendering diagram' */ "loadingLabel"?: string; /** * @default 'default' */ "mermaidTheme"?: string; } interface BielHeader { "bielId"?: string; /** * @default 'Close' */ "closeButtonText"?: string; /** * @default 'Collapse' */ "collapseButtonText"?: string; /** * @default 'auto' */ "currentThinkMode"?: 'auto' | 'fast' | 'think'; /** * @default 'Expand' */ "expandButtonText"?: string; "fullscreen"?: boolean; "headerTitle"?: string; "hideCloseButton"?: boolean; "hideExpandButton"?: boolean; "hideRefreshButton"?: boolean; /** * @default false */ "hideSettingsButton"?: boolean; /** * @default false */ "hideTooltips"?: boolean; "onCloseClicked"?: (event: BielHeaderCustomEvent<{ bielId: string }>) => void; "onFullscreenClicked"?: (event: BielHeaderCustomEvent<{ bielId: string }>) => void; "onRefreshClicked"?: (event: BielHeaderCustomEvent<{ bielId: string }>) => void; "onThinkModeChanged"?: (event: BielHeaderCustomEvent<{ bielId: string; mode: 'auto' | 'fast' | 'think' }>) => void; "onThinkModeToggled"?: (event: BielHeaderCustomEvent<{ bielId: string; isActive: boolean }>) => void; "project"?: string; /** * @default 'Refresh' */ "refreshButtonText"?: string; /** * @default 'Settings' */ "settingsButtonText"?: string; /** * @default true */ "showPoweredBy"?: boolean; /** * @default false */ "thinkModeEnabled"?: boolean; } interface BielIcon { /** * @default '20' */ "height"?: string; /** * @default 'biel' */ "type"?: IconType; /** * @default '20' */ "width"?: string; } interface BielInput { /** * @default '' */ "apiKey"?: string; "bielId"?: string; /** * @default 'Connect' */ "connectButtonText"?: string; /** * @default 'auto' */ "currentThinkMode"?: 'auto' | 'fast' | 'think'; /** * @default false */ "disableAutofocus"?: boolean; /** * @default false */ "hideConnectButton"?: boolean; /** * @default false */ "hideSettingsButton"?: boolean; /** * @default false */ "isDisabled"?: boolean; /** * @default 'Command copied to clipboard' */ "mcpClaudeCopiedDescription"?: string; /** * @default 'CLI command' */ "mcpClaudeDescription"?: string; /** * @default 'Claude Code' */ "mcpClaudeText"?: string; /** * @default 'Copied!' */ "mcpCopiedText"?: string; /** * @default 'Opens in a new tab' */ "mcpCopilotDescription"?: string; /** * @default 'Copilot (VS code)' */ "mcpCopilotText"?: string; /** * @default 'Opens in a new tab' */ "mcpCursorDescription"?: string; /** * @default 'Cursor' */ "mcpCursorText"?: string; /** * @default false */ "mcpEnabled"?: boolean; /** * @default '' */ "mcpMetadataTag"?: string; /** * @default '' */ "mcpServerName"?: string; /** * @default '' */ "mcpServerUrl"?: string; /** * @default 'URL copied to clipboard' */ "mcpUrlCopiedDescription"?: string; /** * @default 'Copy to clipboard' */ "mcpUrlDescription"?: string; /** * @default 'MCP URL' */ "mcpUrlText"?: string; "onMessageSent"?: (event: BielInputCustomEvent<{ bielId: string; message: string }>) => void; "onScrollToBottom"?: (event: BielInputCustomEvent<{ bielId: string }>) => void; "onThinkModeChanged"?: (event: BielInputCustomEvent<{ bielId: string; mode: 'auto' | 'fast' | 'think' }>) => void; /** * @default 'Type your message' */ "placeholderText"?: string; /** * @default '' */ "project"?: string; /** * @default 'Send' */ "sendButtonText"?: string; /** * @default 'Balances speed and quality' */ "thinkModeAutoDescription"?: string; /** * @default 'Auto' */ "thinkModeAutoText"?: string; /** * @default 'Prioritizes speed' */ "thinkModeFastDescription"?: string; /** * @default 'Instant' */ "thinkModeFastText"?: string; /** * @default 'Takes longer for better accuracy' */ "thinkModeThinkDescription"?: string; /** * @default 'Think' */ "thinkModeThinkText"?: string; } interface BielInputOption { /** * @default false */ "isOpen"?: boolean; "label"?: string; "onToggleRequested"?: (event: BielInputOptionCustomEvent) => void; } interface BielInputOptions { /** * @default '' */ "apiKey"?: string; "bielId"?: string; /** * @default 'Connect' */ "connectButtonText"?: string; /** * @default 'auto' */ "currentThinkMode"?: 'auto' | 'fast' | 'think'; /** * @default false */ "hideConnectButton"?: boolean; /** * @default false */ "hideSettingsButton"?: boolean; /** * @default 'Command copied to clipboard' */ "mcpClaudeCopiedDescription"?: string; /** * @default 'CLI command' */ "mcpClaudeDescription"?: string; /** * @default 'Claude Code' */ "mcpClaudeText"?: string; /** * @default 'Copied!' */ "mcpCopiedText"?: string; /** * @default 'Opens in a new tab' */ "mcpCopilotDescription"?: string; /** * @default 'Copilot (VS code)' */ "mcpCopilotText"?: string; /** * @default 'Opens in a new tab' */ "mcpCursorDescription"?: string; /** * @default 'Cursor' */ "mcpCursorText"?: string; /** * @default false */ "mcpEnabled"?: boolean; /** * @default '' */ "mcpMetadataTag"?: string; /** * @default '' */ "mcpServerName"?: string; /** * @default '' */ "mcpServerUrl"?: string; /** * @default 'URL copied to clipboard' */ "mcpUrlCopiedDescription"?: string; /** * @default 'Copy to clipboard' */ "mcpUrlDescription"?: string; /** * @default 'MCP URL' */ "mcpUrlText"?: string; "onThinkModeChanged"?: (event: BielInputOptionsCustomEvent<{ bielId: string; mode: 'auto' | 'fast' | 'think' }>) => void; /** * @default '' */ "project"?: string; /** * @default 'Balances speed and quality' */ "thinkModeAutoDescription"?: string; /** * @default 'Auto' */ "thinkModeAutoText"?: string; /** * @default 'Prioritizes speed' */ "thinkModeFastDescription"?: string; /** * @default 'Instant' */ "thinkModeFastText"?: string; /** * @default 'Takes longer for better accuracy' */ "thinkModeThinkDescription"?: string; /** * @default 'Think' */ "thinkModeThinkText"?: string; } /** * One math expression from an answer, typeset with MathJax. * biel-message swaps each `$$...$$` / `\(...\)` span in the Markdown for one of * these before parsing, the same way fenced code becomes a code-snippet. Being * a custom element is what makes it survive streaming: the reconciler in * biel-message never recurses into an element whose tag has a dash, so it syncs * the `tex` attribute and leaves the rendered math alone instead of rebuilding * it on every flush. * The raw TeX shows through until MathJax has loaded and converted it, so a * blocked CDN degrades to readable source rather than an empty gap. */ interface BielMath { /** * @default false */ "display"?: boolean; /** * @default 'https://cdn.jsdelivr.net/npm/mathjax@3.2.2/es5/tex-svg.js' */ "mathjaxUrl"?: string; /** * @default '' */ "tex"?: string; } interface BielMessage { /** * @default 'biel' */ "aiIcon"?: AiIconType; /** * @default 'Assistant' */ "assistantLabel"?: string; "availableActions"?: { name: string; button_text: string; url: string }[]; "bielId"?: string; "feedback"?: 0 | 1; /** * @default false */ "hideAvatars"?: boolean; "hideFeedback"?: boolean; /** * @default false */ "hideSources"?: boolean; "isPartial"?: boolean; /** * @default 'https://cdn.jsdelivr.net/npm/mathjax@3.2.2/es5/tex-svg.js' */ "mathjaxUrl"?: string; /** * @default 'default' */ "mermaidTheme"?: string; "messageId"?: string; "onFeedbackSent"?: (event: BielMessageCustomEvent<{ bielId: string; messageId: string; reaction: 0 | 1 }>) => void; "onScrollToBottom"?: (event: BielMessageCustomEvent<{ bielId: string }>) => void; "partialId"?: number; /** * @default true */ "renderDiagrams"?: boolean; /** * @default true */ "renderMath"?: boolean; "sender"?: 'user' | 'ai'; /** * @default true */ "smoothStreaming"?: boolean; "sources"?: { title: string; url: string }[]; /** * @default 'Sources' */ "sourcesText"?: string; "text"?: string; } interface BielSearch { /** * @default 'biel' */ "aiIcon"?: AiIconType; /** * @default 'Ask AI to answer your question' */ "aiResultFragment"?: string; /** * @default '' */ "apiKey"?: string; /** * @default '' */ "apiUrl"?: string; /** * @default 'Assistant' */ "assistantLabel"?: string; /** * @default `biel-search-${Math.random().toString(36).substring(2, 9)}` */ "bielId"?: string; /** * @default false */ "cleanTitles"?: boolean; /** * @default true */ "clickOutsideClose"?: boolean; /** * @default 'Close' */ "closeButtonText"?: string; /** * @default 'Collapse' */ "collapseButtonText"?: string; /** * @default 'Connect' */ "connectButtonText"?: string; "defaultThinkMode"?: 'auto' | 'fast' | 'think'; /** * @default false */ "disableAutofocus"?: boolean; /** * @default false */ "disableInput"?: boolean; /** * @default '' */ "email"?: string; /** * @default 'Oops! The request URL or API key is invalid or not authorized for this project.' */ "errorMessage403"?: string; /** * @default 'Oops! We could not find the provided project ID.' */ "errorMessage404"?: string; /** * @default 'Oops! Please try again later.' */ "errorMessageDefault"?: string; /** * @default true */ "escapeClose"?: boolean; /** * @default 'Expand' */ "expandButtonText"?: string; /** * @default false */ "expandModal"?: boolean; /** * @default true */ "fetchData"?: boolean; /** * @default 'AI answers may be inaccurate. Verify with official sources.' */ "footerText"?: string; /** * @default 'Company Name AI' */ "headerTitle"?: string; /** * @default false */ "hideAskAiButton"?: boolean; /** * @default false */ "hideAvatars"?: boolean; /** * @default false */ "hideCloseButton"?: boolean; /** * @default false */ "hideConnectButton"?: boolean; /** * @default false */ "hideDescriptions"?: boolean; /** * @default false */ "hideExpandButton"?: boolean; /** * @default false */ "hideFeedback"?: boolean; /** * @default true */ "hideFilters"?: boolean; /** * @default false */ "hideNavigationButtons"?: boolean; /** * @default false */ "hideRefreshButton"?: boolean; /** * @default false */ "hideSettingsButton"?: boolean; /** * @default false */ "hideSources"?: boolean; /** * @default false */ "hideTooltips"?: boolean; /** * @default 'Type your message' */ "inputPlaceholderText"?: string; /** * @default true */ "keepConversation"?: boolean; /** * @default 'https://cdn.jsdelivr.net/npm/mathjax@3.2.2/es5/tex-svg.js' */ "mathjaxUrl"?: string; /** * @default 'Command copied to clipboard' */ "mcpClaudeCopiedDescription"?: string; /** * @default 'CLI command' */ "mcpClaudeDescription"?: string; /** * @default 'Claude Code' */ "mcpClaudeText"?: string; /** * @default 'Copied!' */ "mcpCopiedText"?: string; /** * @default 'Opens in a new tab' */ "mcpCopilotDescription"?: string; /** * @default 'Copilot (VS code)' */ "mcpCopilotText"?: string; /** * @default 'Opens in a new tab' */ "mcpCursorDescription"?: string; /** * @default 'Cursor' */ "mcpCursorText"?: string; /** * @default '' */ "mcpServerUrl"?: string; /** * @default 'URL copied to clipboard' */ "mcpUrlCopiedDescription"?: string; /** * @default 'Copy to clipboard' */ "mcpUrlDescription"?: string; /** * @default 'MCP URL' */ "mcpUrlText"?: string; /** * @default 'default' */ "mermaidTheme"?: string; /** * @default '' */ "metadata"?: string; /** * @default 'top-center' */ "modalPosition"?: string; "onMessageSent"?: (event: BielSearchCustomEvent<{ bielId: string; message: string }>) => void; /** * @default '' */ "project"?: string; /** * @default 'Refresh' */ "refreshButtonText"?: string; /** * @default true */ "renderDiagrams"?: boolean; /** * @default true */ "renderMath"?: boolean; /** * @default 'Search or ask AI...' */ "searchPlaceholder"?: string; /** * @default 'Send' */ "sendButtonText"?: string; /** * @default 'Settings' */ "settingsButtonText"?: string; /** * @default false */ "showSearchModal"?: boolean; /** * @default false */ "showTermsModal"?: boolean; /** * @default 'Sources' */ "sourcesText"?: string; /** * @default false */ "stacked"?: boolean; /** * @default '' */ "suggestedQuestions"?: string; /** * @default 'Suggested questions' */ "suggestedQuestionsTitle"?: string; /** * @default 'I have read and agree to the Terms & Conditions.' */ "termsCheckboxText"?: string; /** * @default "Please review our Terms & Conditions before proceeding." */ "termsDescription"?: string; /** * @default 'Chatbot Terms & Conditions' */ "termsTitle"?: string; /** * @default 'Balances speed and quality' */ "thinkModeAutoDescription"?: string; /** * @default 'Auto' */ "thinkModeAutoText"?: string; /** * @default false */ "thinkModeEnabled"?: boolean; /** * @default 'Prioritizes speed' */ "thinkModeFastDescription"?: string; /** * @default 'Instant' */ "thinkModeFastText"?: string; /** * @default 'Takes longer for better accuracy' */ "thinkModeThinkDescription"?: string; /** * @default 'Think' */ "thinkModeThinkText"?: string; /** * @default '' */ "welcomeMessage"?: string; } interface BielSearchAskAiButton { /** * @default 'biel' */ "aiIcon"?: ButtonIconType; "bielId"?: string; "isSelected"?: boolean; "onAskAiClicked"?: (event: BielSearchAskAiButtonCustomEvent<{ bielId: string }>) => void; "resultFragment"?: string; "resultTitle"?: string; } interface BielSearchBody { /** * @default 'biel' */ "aiIcon"?: AiIconType; /** * @default 'Ask AI to answer your question' */ "aiResultFragment"?: string; "bielId"?: string; /** * @default false */ "cleanTitles"?: boolean; /** * @default false */ "hideAskAiButton"?: boolean; /** * @default false */ "hideAvatars"?: boolean; /** * @default false */ "hideDescriptions"?: boolean; "lastSearchQuery"?: string; "onResultClicked"?: (event: BielSearchBodyCustomEvent) => void; "searchQuery"?: string; /** * @default [] */ "searchResults"?: SearchResult[]; /** * @default false */ "stacked"?: boolean; } interface BielSearchButton { /** * @default 'biel' */ "aiIcon"?: AiIconType; /** * @default 'Ask AI to answer your question' */ "aiResultFragment"?: string; /** * @default '' */ "apiKey"?: string; /** * @default '' */ "apiUrl"?: string; /** * @default 'Assistant' */ "assistantLabel"?: string; /** * @default 'default' */ "buttonStyle"?: string; /** * @default false */ "cleanTitles"?: boolean; /** * @default 'Close' */ "closeButtonText"?: string; /** * @default 'Collapse' */ "collapseButtonText"?: string; /** * @default 'Connect' */ "connectButtonText"?: string; /** * @default false */ "customFont"?: boolean; "defaultThinkMode"?: 'auto' | 'fast' | 'think'; /** * @default false */ "disableAutofocus"?: boolean; /** * @default false */ "disableInput"?: boolean; /** * @default '' */ "email"?: string; /** * @default 'Oops! The request URL or API key is invalid or not authorized for this project.' */ "errorMessage403"?: string; /** * @default 'Oops! We could not find the provided project ID.' */ "errorMessage404"?: string; /** * @default 'Oops! Please try again later.' */ "errorMessageDefault"?: string; /** * @default 'Expand' */ "expandButtonText"?: string; /** * @default false */ "expandModal"?: boolean; /** * @default 'AI answers may be inaccurate. Verify with official sources.' */ "footerText"?: string; /** * @default 'Company Name AI' */ "headerTitle"?: string; /** * @default false */ "hideAskAiButton"?: boolean; /** * @default false */ "hideAvatars"?: boolean; /** * @default false */ "hideCloseButton"?: boolean; /** * @default false */ "hideConnectButton"?: boolean; /** * @default false */ "hideCtrlK"?: boolean; /** * @default false */ "hideDescriptions"?: boolean; /** * @default false */ "hideExpandButton"?: boolean; /** * @default false */ "hideFeedback"?: boolean; /** * @default true */ "hideFilters"?: boolean; /** * @default false */ "hideIcon"?: boolean; /** * @default false */ "hideNavigationButtons"?: boolean; /** * @default false */ "hideRefreshButton"?: boolean; /** * @default false */ "hideSettingsButton"?: boolean; /** * @default false */ "hideSources"?: boolean; /** * @default false */ "hideTooltips"?: boolean; /** * @default [] */ "initialMessages"?: { text: string; sender: 'user' | 'ai'; feedback?: 0 | 1 }[]; /** * @default 'Type your message' */ "inputPlaceholderText"?: string; /** * @default true */ "keepConversation"?: boolean; /** * @default 'https://cdn.jsdelivr.net/npm/mathjax@3.2.2/es5/tex-svg.js' */ "mathjaxUrl"?: string; /** * @default 'Command copied to clipboard' */ "mcpClaudeCopiedDescription"?: string; /** * @default 'CLI command' */ "mcpClaudeDescription"?: string; /** * @default 'Claude Code' */ "mcpClaudeText"?: string; /** * @default 'Copied!' */ "mcpCopiedText"?: string; /** * @default 'Opens in a new tab' */ "mcpCopilotDescription"?: string; /** * @default 'Copilot (VS code)' */ "mcpCopilotText"?: string; /** * @default 'Opens in a new tab' */ "mcpCursorDescription"?: string; /** * @default 'Cursor' */ "mcpCursorText"?: string; /** * @default '' */ "mcpServerUrl"?: string; /** * @default 'URL copied to clipboard' */ "mcpUrlCopiedDescription"?: string; /** * @default 'Copy to clipboard' */ "mcpUrlDescription"?: string; /** * @default 'MCP URL' */ "mcpUrlText"?: string; /** * @default '' */ "metadata"?: string; /** * @default 'top-center' */ "modalPosition"?: string; "onBielSearchButtonClick"?: (event: BielSearchButtonCustomEvent) => void; /** * @default '' */ "project"?: string; /** * @default 'Refresh' */ "refreshButtonText"?: string; /** * @default true */ "renderMath"?: boolean; /** * @default 'Search or ask AI...' */ "searchPlaceholder"?: string; /** * @default 'Send' */ "sendButtonText"?: string; /** * @default 'Settings' */ "settingsButtonText"?: string; /** * @default false */ "showTermsModal"?: boolean; /** * @default 'Sources' */ "sourcesText"?: string; /** * @default false */ "stacked"?: boolean; /** * @default '' */ "suggestedQuestions"?: string; /** * @default 'Suggested questions' */ "suggestedQuestionsTitle"?: string; /** * @default 'I have read and agree to the Terms & Conditions.' */ "termsCheckboxText"?: string; /** * @default "Please review our Terms & Conditions before proceeding." */ "termsDescription"?: string; /** * @default 'Chatbot Terms & Conditions' */ "termsTitle"?: string; /** * @default 'Balances speed and quality' */ "thinkModeAutoDescription"?: string; /** * @default 'Auto' */ "thinkModeAutoText"?: string; /** * @default false */ "thinkModeEnabled"?: boolean; /** * @default 'Prioritizes speed' */ "thinkModeFastDescription"?: string; /** * @default 'Instant' */ "thinkModeFastText"?: string; /** * @default 'Takes longer for better accuracy' */ "thinkModeThinkDescription"?: string; /** * @default 'Think' */ "thinkModeThinkText"?: string; /** * @default '' */ "welcomeMessage"?: string; } interface BielSearchFilters { /** * @default false */ "disableFilters"?: boolean; /** * @default [] */ "filters"?: { title: string }[]; "onFilterSelected"?: (event: BielSearchFiltersCustomEvent) => void; } interface BielSearchHeader { "bielId"?: string; /** * @default 'Close' */ "closeButtonText"?: string; /** * @default 'Collapse' */ "collapseButtonText"?: string; /** * @default false */ "disableAutofocus"?: boolean; /** * @default 'Expand' */ "expandButtonText"?: string; /** * @default [] */ "filters"?: { title: string }[]; /** * @default false */ "hideExpandButton"?: boolean; /** * @default true */ "hideFilters"?: boolean; /** * @default false */ "hideTooltips"?: boolean; /** * @default false */ "isFullscreen"?: boolean; "onCloseSearchClicked"?: (event: BielSearchHeaderCustomEvent<{ bielId: string }>) => void; "onExpandSearchClicked"?: (event: BielSearchHeaderCustomEvent<{ bielId: string }>) => void; /** * @default 'Search or ask AI...' */ "placeholderText"?: string; "searchQuery"?: string; } interface BielSearchInput { /** * @default false */ "disableAutofocus"?: boolean; "onInputChanged"?: (event: BielSearchInputCustomEvent) => void; /** * @default 'Search or ask AI...' */ "placeholderText"?: string; } interface BielSearchResult { /** * @default false */ "hideDescription"?: boolean; "isSelected"?: boolean; "resultFragment"?: string; "resultTitle"?: string; "resultUrl"?: string; "searchQuery"?: string; } interface BielSuggestedQuestions { "bielId"?: string; /** * @default 'Suggested questions' */ "heading"?: string; "onScrollToBottom"?: (event: BielSuggestedQuestionsCustomEvent<{ bielId: string }>) => void; "onSuggestedQuestionClick"?: (event: BielSuggestedQuestionsCustomEvent<{ bielId: string; message: string }>) => void; /** * @default [] */ "questions"?: string[]; } interface BielTermsModal { "onTermsAccepted"?: (event: BielTermsModalCustomEvent) => void; "onTermsDeclined"?: (event: BielTermsModalCustomEvent) => void; /** * @default 'I have read and agree to the Terms & Conditions.' */ "termsCheckboxText"?: string; /** * @default "Please review our Terms & Conditions before proceeding." */ "termsDescription"?: string; /** * @default 'Chatbot Terms & Conditions' */ "termsTitle"?: string; } interface CodeSnippet { "code"?: string; /** * @default 'Copied!' */ "copiedButtonText"?: string; /** * @default 'Copy' */ "copyButtonText"?: string; "language"?: string; } interface BielBotAttributes { "embeddedMode": boolean; "escapeClose": boolean; "clickOutsideClose": boolean; "fetchData": boolean; "showModal": boolean; "bielId": string; "apiKey": string; "apiUrl": string; "disableInput": boolean; "email": string; "expandModal": boolean; "hideCloseButton": boolean; "hideExpandButton": boolean; "hideRefreshButton": boolean; "hideSettingsButton": boolean; "hideConnectButton": boolean; "hideTooltips": boolean; "hideFeedback": boolean; "hideSources": boolean; "modalPosition": string; "project": string; "showTermsModal": boolean; "aiIcon": AiIconType; "disableAutofocus": boolean; "hideAvatars": boolean; "keepConversation": boolean; "errorMessage403": string; "errorMessage404": string; "errorMessageDefault": string; "footerText": string; "headerTitle": string; "inputPlaceholderText": string; "sendButtonText": string; "sourcesText": string; "suggestedQuestions": string; "suggestedQuestionsTitle": string; "assistantLabel": string; "smoothStreaming": boolean; "renderMath": boolean; "renderDiagrams": boolean; "mermaidTheme": string; "mathjaxUrl": string; "termsCheckboxText": string; "termsDescription": string; "termsTitle": string; "welcomeMessage": string; "refreshButtonText": string; "expandButtonText": string; "collapseButtonText": string; "closeButtonText": string; "settingsButtonText": string; "connectButtonText": string; "thinkModeAutoText": string; "thinkModeFastText": string; "thinkModeThinkText": string; "thinkModeAutoDescription": string; "thinkModeFastDescription": string; "thinkModeThinkDescription": string; "mcpUrlText": string; "mcpUrlDescription": string; "mcpClaudeText": string; "mcpClaudeDescription": string; "mcpCopilotText": string; "mcpCopilotDescription": string; "mcpCursorText": string; "mcpCursorDescription": string; "mcpCopiedText": string; "mcpUrlCopiedDescription": string; "mcpClaudeCopiedDescription": string; "thinkModeEnabled": boolean; "defaultThinkMode": 'auto' | 'fast' | 'think'; "metadata": string; "mcpServerUrl": string; } interface BielButtonAttributes { "buttonPosition": string; "buttonStyle": string; "customFont": boolean; "hideIcon": boolean; "aiIcon": AiIconType; "hideAvatars": boolean; "hideFeedback": boolean; "hideSources": boolean; "disableAutofocus": boolean; "bielId": string; "apiKey": string; "apiUrl": string; "disableInput": boolean; "email": string; "expandModal": boolean; "hideCloseButton": boolean; "hideExpandButton": boolean; "hideRefreshButton": boolean; "hideSettingsButton": boolean; "hideConnectButton": boolean; "hideTooltips": boolean; "modalPosition": string; "project": string; "showTermsModal": boolean; "keepConversation": boolean; "errorMessage403": string; "errorMessage404": string; "errorMessageDefault": string; "footerText": string; "headerTitle": string; "inputPlaceholderText": string; "sendButtonText": string; "sourcesText": string; "suggestedQuestions": string; "suggestedQuestionsTitle": string; "termsCheckboxText": string; "termsDescription": string; "termsTitle": string; "welcomeMessage": string; "refreshButtonText": string; "expandButtonText": string; "collapseButtonText": string; "closeButtonText": string; "settingsButtonText": string; "thinkModeEnabled": boolean; "defaultThinkMode": 'auto' | 'fast' | 'think'; "assistantLabel": string; "metadata": string; "mcpServerUrl": string; "connectButtonText": string; "thinkModeAutoText": string; "thinkModeFastText": string; "thinkModeThinkText": string; "thinkModeAutoDescription": string; "thinkModeFastDescription": string; "thinkModeThinkDescription": string; "mcpUrlText": string; "mcpUrlDescription": string; "mcpClaudeText": string; "mcpClaudeDescription": string; "mcpCopilotText": string; "mcpCopilotDescription": string; "mcpCursorText": string; "mcpCursorDescription": string; "mcpCopiedText": string; "mcpUrlCopiedDescription": string; "mcpClaudeCopiedDescription": string; "renderMath": boolean; "mathjaxUrl": string; "renderDiagrams": boolean; "mermaidTheme": string; } interface BielChatAttributes { "isFullscreen": boolean; "isLoading": boolean; "welcomeMessage": string; "suggestedQuestionsTitle": string; "loadedChat": boolean; "hideFeedback": boolean; "modalPosition": string; "embeddedMode": boolean; "bielId": string; "sourcesText": string; "aiIcon": AiIconType; "hideAvatars": boolean; "hideSources": boolean; "showContinueButton": boolean; "assistantLabel": string; "smoothStreaming": boolean; "renderMath": boolean; "mathjaxUrl": string; "renderDiagrams": boolean; "mermaidTheme": string; } interface BielDiagramAttributes { "chart": string; "mermaidTheme": string; "expandLabel": string; "closeLabel": string; "loadingLabel": string; } interface BielHeaderAttributes { "headerTitle": string; "project": string; "hideCloseButton": boolean; "hideExpandButton": boolean; "hideRefreshButton": boolean; "hideSettingsButton": boolean; "hideTooltips": boolean; "showPoweredBy": boolean; "fullscreen": boolean; "bielId": string; "thinkModeEnabled": boolean; "currentThinkMode": 'auto' | 'fast' | 'think'; "refreshButtonText": string; "expandButtonText": string; "collapseButtonText": string; "closeButtonText": string; "settingsButtonText": string; } interface BielIconAttributes { "type": IconType; "width": string; "height": string; } interface BielInputAttributes { "placeholderText": string; "sendButtonText": string; "isDisabled": boolean; "disableAutofocus": boolean; "bielId": string; "project": string; "mcpEnabled": boolean; "mcpServerName": string; "mcpMetadataTag": string; "mcpServerUrl": string; "apiKey": string; "hideSettingsButton": boolean; "hideConnectButton": boolean; "currentThinkMode": 'auto' | 'fast' | 'think'; "connectButtonText": string; "thinkModeAutoText": string; "thinkModeFastText": string; "thinkModeThinkText": string; "thinkModeAutoDescription": string; "thinkModeFastDescription": string; "thinkModeThinkDescription": string; "mcpUrlText": string; "mcpUrlDescription": string; "mcpClaudeText": string; "mcpClaudeDescription": string; "mcpCopilotText": string; "mcpCopilotDescription": string; "mcpCursorText": string; "mcpCursorDescription": string; "mcpCopiedText": string; "mcpUrlCopiedDescription": string; "mcpClaudeCopiedDescription": string; } interface BielInputOptionAttributes { "isOpen": boolean; "label": string; } interface BielInputOptionsAttributes { "project": string; "mcpEnabled": boolean; "mcpServerName": string; "mcpMetadataTag": string; "mcpServerUrl": string; "apiKey": string; "hideSettingsButton": boolean; "hideConnectButton": boolean; "currentThinkMode": 'auto' | 'fast' | 'think'; "bielId": string; "connectButtonText": string; "thinkModeAutoText": string; "thinkModeFastText": string; "thinkModeThinkText": string; "thinkModeAutoDescription": string; "thinkModeFastDescription": string; "thinkModeThinkDescription": string; "mcpUrlText": string; "mcpUrlDescription": string; "mcpClaudeText": string; "mcpClaudeDescription": string; "mcpCopilotText": string; "mcpCopilotDescription": string; "mcpCursorText": string; "mcpCursorDescription": string; "mcpCopiedText": string; "mcpUrlCopiedDescription": string; "mcpClaudeCopiedDescription": string; } interface BielMathAttributes { "tex": string; "display": boolean; "mathjaxUrl": string; } interface BielMessageAttributes { "messageId": string; "sender": 'user' | 'ai'; "text": string; "feedback": 0 | 1; "hideFeedback": boolean; "bielId": string; "isPartial": boolean; "partialId": number; "sourcesText": string; "aiIcon": AiIconType; "hideAvatars": boolean; "hideSources": boolean; "assistantLabel": string; "smoothStreaming": boolean; "renderMath": boolean; "mathjaxUrl": string; "renderDiagrams": boolean; "mermaidTheme": string; } interface BielSearchAttributes { "escapeClose": boolean; "clickOutsideClose": boolean; "fetchData": boolean; "showSearchModal": boolean; "aiResultFragment": string; "hideFilters": boolean; "hideAskAiButton": boolean; "hideNavigationButtons": boolean; "modalPosition": string; "project": string; "stacked": boolean; "aiIcon": AiIconType; "disableAutofocus": boolean; "hideAvatars": boolean; "cleanTitles": boolean; "hideDescriptions": boolean; "searchPlaceholder": string; "bielId": string; "apiKey": string; "apiUrl": string; "disableInput": boolean; "email": string; "expandModal": boolean; "hideCloseButton": boolean; "hideExpandButton": boolean; "hideRefreshButton": boolean; "hideSettingsButton": boolean; "hideConnectButton": boolean; "hideTooltips": boolean; "hideFeedback": boolean; "hideSources": boolean; "showTermsModal": boolean; "errorMessage403": string; "errorMessage404": string; "errorMessageDefault": string; "footerText": string; "headerTitle": string; "inputPlaceholderText": string; "sendButtonText": string; "sourcesText": string; "assistantLabel": string; "suggestedQuestions": string; "suggestedQuestionsTitle": string; "termsCheckboxText": string; "termsDescription": string; "termsTitle": string; "welcomeMessage": string; "keepConversation": boolean; "refreshButtonText": string; "expandButtonText": string; "collapseButtonText": string; "closeButtonText": string; "settingsButtonText": string; "connectButtonText": string; "thinkModeAutoText": string; "thinkModeFastText": string; "thinkModeThinkText": string; "thinkModeAutoDescription": string; "thinkModeFastDescription": string; "thinkModeThinkDescription": string; "mcpUrlText": string; "mcpUrlDescription": string; "mcpClaudeText": string; "mcpClaudeDescription": string; "mcpCopilotText": string; "mcpCopilotDescription": string; "mcpCursorText": string; "mcpCursorDescription": string; "mcpCopiedText": string; "mcpUrlCopiedDescription": string; "mcpClaudeCopiedDescription": string; "thinkModeEnabled": boolean; "defaultThinkMode": 'auto' | 'fast' | 'think'; "metadata": string; "mcpServerUrl": string; "renderMath": boolean; "renderDiagrams": boolean; "mermaidTheme": string; "mathjaxUrl": string; } interface BielSearchAskAiButtonAttributes { "resultTitle": string; "resultFragment": string; "isSelected": boolean; "bielId": string; "aiIcon": ButtonIconType; } interface BielSearchBodyAttributes { "hideAskAiButton": boolean; "searchQuery": string; "lastSearchQuery": string; "aiResultFragment": string; "bielId": string; "stacked": boolean; "aiIcon": AiIconType; "hideAvatars": boolean; "cleanTitles": boolean; "hideDescriptions": boolean; } interface BielSearchButtonAttributes { "buttonStyle": string; "customFont": boolean; "hideCtrlK": boolean; "hideIcon": boolean; "aiIcon": AiIconType; "hideAvatars": boolean; "hideDescriptions": boolean; "disableAutofocus": boolean; "hideAskAiButton": boolean; "hideFilters": boolean; "hideNavigationButtons": boolean; "modalPosition": string; "project": string; "stacked": boolean; "cleanTitles": boolean; "aiResultFragment": string; "searchPlaceholder": string; "apiKey": string; "apiUrl": string; "disableInput": boolean; "email": string; "expandModal": boolean; "hideCloseButton": boolean; "hideExpandButton": boolean; "hideRefreshButton": boolean; "hideSettingsButton": boolean; "hideConnectButton": boolean; "hideFeedback": boolean; "hideSources": boolean; "showTermsModal": boolean; "keepConversation": boolean; "errorMessage403": string; "errorMessage404": string; "errorMessageDefault": string; "footerText": string; "headerTitle": string; "inputPlaceholderText": string; "sendButtonText": string; "sourcesText": string; "suggestedQuestions": string; "suggestedQuestionsTitle": string; "termsCheckboxText": string; "termsDescription": string; "termsTitle": string; "welcomeMessage": string; "refreshButtonText": string; "expandButtonText": string; "collapseButtonText": string; "closeButtonText": string; "settingsButtonText": string; "hideTooltips": boolean; "thinkModeEnabled": boolean; "defaultThinkMode": 'auto' | 'fast' | 'think'; "assistantLabel": string; "metadata": string; "mcpServerUrl": string; "connectButtonText": string; "thinkModeAutoText": string; "thinkModeFastText": string; "thinkModeThinkText": string; "thinkModeAutoDescription": string; "thinkModeFastDescription": string; "thinkModeThinkDescription": string; "mcpUrlText": string; "mcpUrlDescription": string; "mcpClaudeText": string; "mcpClaudeDescription": string; "mcpCopilotText": string; "mcpCopilotDescription": string; "mcpCursorText": string; "mcpCursorDescription": string; "mcpCopiedText": string; "mcpUrlCopiedDescription": string; "mcpClaudeCopiedDescription": string; "renderMath": boolean; "mathjaxUrl": string; } interface BielSearchFiltersAttributes { "disableFilters": boolean; } interface BielSearchHeaderAttributes { "placeholderText": string; "hideFilters": boolean; "bielId": string; "searchQuery": string; "hideExpandButton": boolean; "isFullscreen": boolean; "expandButtonText": string; "collapseButtonText": string; "closeButtonText": string; "hideTooltips": boolean; "disableAutofocus": boolean; } interface BielSearchInputAttributes { "placeholderText": string; "disableAutofocus": boolean; } interface BielSearchResultAttributes { "resultTitle": string; "resultFragment": string; "resultUrl": string; "searchQuery": string; "isSelected": boolean; "hideDescription": boolean; } interface BielSuggestedQuestionsAttributes { "heading": string; "bielId": string; } interface BielTermsModalAttributes { "termsTitle": string; "termsDescription": string; "termsCheckboxText": string; } interface CodeSnippetAttributes { "code": string; "copyButtonText": string; "copiedButtonText": string; "language": string; } interface IntrinsicElements { "biel-bot": Omit & { [K in keyof BielBot & keyof BielBotAttributes]?: BielBot[K] } & { [K in keyof BielBot & keyof BielBotAttributes as `attr:${K}`]?: BielBotAttributes[K] } & { [K in keyof BielBot & keyof BielBotAttributes as `prop:${K}`]?: BielBot[K] }; "biel-button": Omit & { [K in keyof BielButton & keyof BielButtonAttributes]?: BielButton[K] } & { [K in keyof BielButton & keyof BielButtonAttributes as `attr:${K}`]?: BielButtonAttributes[K] } & { [K in keyof BielButton & keyof BielButtonAttributes as `prop:${K}`]?: BielButton[K] }; "biel-chat": Omit & { [K in keyof BielChat & keyof BielChatAttributes]?: BielChat[K] } & { [K in keyof BielChat & keyof BielChatAttributes as `attr:${K}`]?: BielChatAttributes[K] } & { [K in keyof BielChat & keyof BielChatAttributes as `prop:${K}`]?: BielChat[K] }; "biel-diagram": Omit & { [K in keyof BielDiagram & keyof BielDiagramAttributes]?: BielDiagram[K] } & { [K in keyof BielDiagram & keyof BielDiagramAttributes as `attr:${K}`]?: BielDiagramAttributes[K] } & { [K in keyof BielDiagram & keyof BielDiagramAttributes as `prop:${K}`]?: BielDiagram[K] }; "biel-header": Omit & { [K in keyof BielHeader & keyof BielHeaderAttributes]?: BielHeader[K] } & { [K in keyof BielHeader & keyof BielHeaderAttributes as `attr:${K}`]?: BielHeaderAttributes[K] } & { [K in keyof BielHeader & keyof BielHeaderAttributes as `prop:${K}`]?: BielHeader[K] }; "biel-icon": Omit & { [K in keyof BielIcon & keyof BielIconAttributes]?: BielIcon[K] } & { [K in keyof BielIcon & keyof BielIconAttributes as `attr:${K}`]?: BielIconAttributes[K] } & { [K in keyof BielIcon & keyof BielIconAttributes as `prop:${K}`]?: BielIcon[K] }; "biel-input": Omit & { [K in keyof BielInput & keyof BielInputAttributes]?: BielInput[K] } & { [K in keyof BielInput & keyof BielInputAttributes as `attr:${K}`]?: BielInputAttributes[K] } & { [K in keyof BielInput & keyof BielInputAttributes as `prop:${K}`]?: BielInput[K] }; "biel-input-option": Omit & { [K in keyof BielInputOption & keyof BielInputOptionAttributes]?: BielInputOption[K] } & { [K in keyof BielInputOption & keyof BielInputOptionAttributes as `attr:${K}`]?: BielInputOptionAttributes[K] } & { [K in keyof BielInputOption & keyof BielInputOptionAttributes as `prop:${K}`]?: BielInputOption[K] }; "biel-input-options": Omit & { [K in keyof BielInputOptions & keyof BielInputOptionsAttributes]?: BielInputOptions[K] } & { [K in keyof BielInputOptions & keyof BielInputOptionsAttributes as `attr:${K}`]?: BielInputOptionsAttributes[K] } & { [K in keyof BielInputOptions & keyof BielInputOptionsAttributes as `prop:${K}`]?: BielInputOptions[K] }; "biel-math": Omit & { [K in keyof BielMath & keyof BielMathAttributes]?: BielMath[K] } & { [K in keyof BielMath & keyof BielMathAttributes as `attr:${K}`]?: BielMathAttributes[K] } & { [K in keyof BielMath & keyof BielMathAttributes as `prop:${K}`]?: BielMath[K] }; "biel-message": Omit & { [K in keyof BielMessage & keyof BielMessageAttributes]?: BielMessage[K] } & { [K in keyof BielMessage & keyof BielMessageAttributes as `attr:${K}`]?: BielMessageAttributes[K] } & { [K in keyof BielMessage & keyof BielMessageAttributes as `prop:${K}`]?: BielMessage[K] }; "biel-search": Omit & { [K in keyof BielSearch & keyof BielSearchAttributes]?: BielSearch[K] } & { [K in keyof BielSearch & keyof BielSearchAttributes as `attr:${K}`]?: BielSearchAttributes[K] } & { [K in keyof BielSearch & keyof BielSearchAttributes as `prop:${K}`]?: BielSearch[K] }; "biel-search-ask-ai-button": Omit & { [K in keyof BielSearchAskAiButton & keyof BielSearchAskAiButtonAttributes]?: BielSearchAskAiButton[K] } & { [K in keyof BielSearchAskAiButton & keyof BielSearchAskAiButtonAttributes as `attr:${K}`]?: BielSearchAskAiButtonAttributes[K] } & { [K in keyof BielSearchAskAiButton & keyof BielSearchAskAiButtonAttributes as `prop:${K}`]?: BielSearchAskAiButton[K] }; "biel-search-body": Omit & { [K in keyof BielSearchBody & keyof BielSearchBodyAttributes]?: BielSearchBody[K] } & { [K in keyof BielSearchBody & keyof BielSearchBodyAttributes as `attr:${K}`]?: BielSearchBodyAttributes[K] } & { [K in keyof BielSearchBody & keyof BielSearchBodyAttributes as `prop:${K}`]?: BielSearchBody[K] }; "biel-search-button": Omit & { [K in keyof BielSearchButton & keyof BielSearchButtonAttributes]?: BielSearchButton[K] } & { [K in keyof BielSearchButton & keyof BielSearchButtonAttributes as `attr:${K}`]?: BielSearchButtonAttributes[K] } & { [K in keyof BielSearchButton & keyof BielSearchButtonAttributes as `prop:${K}`]?: BielSearchButton[K] }; "biel-search-filters": Omit & { [K in keyof BielSearchFilters & keyof BielSearchFiltersAttributes]?: BielSearchFilters[K] } & { [K in keyof BielSearchFilters & keyof BielSearchFiltersAttributes as `attr:${K}`]?: BielSearchFiltersAttributes[K] } & { [K in keyof BielSearchFilters & keyof BielSearchFiltersAttributes as `prop:${K}`]?: BielSearchFilters[K] }; "biel-search-header": Omit & { [K in keyof BielSearchHeader & keyof BielSearchHeaderAttributes]?: BielSearchHeader[K] } & { [K in keyof BielSearchHeader & keyof BielSearchHeaderAttributes as `attr:${K}`]?: BielSearchHeaderAttributes[K] } & { [K in keyof BielSearchHeader & keyof BielSearchHeaderAttributes as `prop:${K}`]?: BielSearchHeader[K] }; "biel-search-input": Omit & { [K in keyof BielSearchInput & keyof BielSearchInputAttributes]?: BielSearchInput[K] } & { [K in keyof BielSearchInput & keyof BielSearchInputAttributes as `attr:${K}`]?: BielSearchInputAttributes[K] } & { [K in keyof BielSearchInput & keyof BielSearchInputAttributes as `prop:${K}`]?: BielSearchInput[K] }; "biel-search-result": Omit & { [K in keyof BielSearchResult & keyof BielSearchResultAttributes]?: BielSearchResult[K] } & { [K in keyof BielSearchResult & keyof BielSearchResultAttributes as `attr:${K}`]?: BielSearchResultAttributes[K] } & { [K in keyof BielSearchResult & keyof BielSearchResultAttributes as `prop:${K}`]?: BielSearchResult[K] }; "biel-suggested-questions": Omit & { [K in keyof BielSuggestedQuestions & keyof BielSuggestedQuestionsAttributes]?: BielSuggestedQuestions[K] } & { [K in keyof BielSuggestedQuestions & keyof BielSuggestedQuestionsAttributes as `attr:${K}`]?: BielSuggestedQuestionsAttributes[K] } & { [K in keyof BielSuggestedQuestions & keyof BielSuggestedQuestionsAttributes as `prop:${K}`]?: BielSuggestedQuestions[K] }; "biel-terms-modal": Omit & { [K in keyof BielTermsModal & keyof BielTermsModalAttributes]?: BielTermsModal[K] } & { [K in keyof BielTermsModal & keyof BielTermsModalAttributes as `attr:${K}`]?: BielTermsModalAttributes[K] } & { [K in keyof BielTermsModal & keyof BielTermsModalAttributes as `prop:${K}`]?: BielTermsModal[K] }; "code-snippet": Omit & { [K in keyof CodeSnippet & keyof CodeSnippetAttributes]?: CodeSnippet[K] } & { [K in keyof CodeSnippet & keyof CodeSnippetAttributes as `attr:${K}`]?: CodeSnippetAttributes[K] } & { [K in keyof CodeSnippet & keyof CodeSnippetAttributes as `prop:${K}`]?: CodeSnippet[K] }; } } export { LocalJSX as JSX }; declare module "@stencil/core" { export namespace JSX { interface IntrinsicElements { "biel-bot": LocalJSX.IntrinsicElements["biel-bot"] & JSXBase.HTMLAttributes; "biel-button": LocalJSX.IntrinsicElements["biel-button"] & JSXBase.HTMLAttributes; "biel-chat": LocalJSX.IntrinsicElements["biel-chat"] & JSXBase.HTMLAttributes; /** * One Mermaid diagram from an answer. * biel-message swaps a fenced ```mermaid block for one of these once the fence * closes. Being a custom element is what makes it survive the reconciler in * biel-message, which never recurses into an element whose tag has a dash. * A placeholder holds the space while Mermaid draws, and the definition shows * through as source only when it cannot be drawn at all — the invalid syntax an * LLM writing Mermaid from memory regularly produces. A drawn diagram opens * full-screen on click, since the chat panel is too narrow to read one in. */ "biel-diagram": LocalJSX.IntrinsicElements["biel-diagram"] & JSXBase.HTMLAttributes; "biel-header": LocalJSX.IntrinsicElements["biel-header"] & JSXBase.HTMLAttributes; "biel-icon": LocalJSX.IntrinsicElements["biel-icon"] & JSXBase.HTMLAttributes; "biel-input": LocalJSX.IntrinsicElements["biel-input"] & JSXBase.HTMLAttributes; "biel-input-option": LocalJSX.IntrinsicElements["biel-input-option"] & JSXBase.HTMLAttributes; "biel-input-options": LocalJSX.IntrinsicElements["biel-input-options"] & JSXBase.HTMLAttributes; /** * One math expression from an answer, typeset with MathJax. * biel-message swaps each `$$...$$` / `\(...\)` span in the Markdown for one of * these before parsing, the same way fenced code becomes a code-snippet. Being * a custom element is what makes it survive streaming: the reconciler in * biel-message never recurses into an element whose tag has a dash, so it syncs * the `tex` attribute and leaves the rendered math alone instead of rebuilding * it on every flush. * The raw TeX shows through until MathJax has loaded and converted it, so a * blocked CDN degrades to readable source rather than an empty gap. */ "biel-math": LocalJSX.IntrinsicElements["biel-math"] & JSXBase.HTMLAttributes; "biel-message": LocalJSX.IntrinsicElements["biel-message"] & JSXBase.HTMLAttributes; "biel-search": LocalJSX.IntrinsicElements["biel-search"] & JSXBase.HTMLAttributes; "biel-search-ask-ai-button": LocalJSX.IntrinsicElements["biel-search-ask-ai-button"] & JSXBase.HTMLAttributes; "biel-search-body": LocalJSX.IntrinsicElements["biel-search-body"] & JSXBase.HTMLAttributes; "biel-search-button": LocalJSX.IntrinsicElements["biel-search-button"] & JSXBase.HTMLAttributes; "biel-search-filters": LocalJSX.IntrinsicElements["biel-search-filters"] & JSXBase.HTMLAttributes; "biel-search-header": LocalJSX.IntrinsicElements["biel-search-header"] & JSXBase.HTMLAttributes; "biel-search-input": LocalJSX.IntrinsicElements["biel-search-input"] & JSXBase.HTMLAttributes; "biel-search-result": LocalJSX.IntrinsicElements["biel-search-result"] & JSXBase.HTMLAttributes; "biel-suggested-questions": LocalJSX.IntrinsicElements["biel-suggested-questions"] & JSXBase.HTMLAttributes; "biel-terms-modal": LocalJSX.IntrinsicElements["biel-terms-modal"] & JSXBase.HTMLAttributes; "code-snippet": LocalJSX.IntrinsicElements["code-snippet"] & JSXBase.HTMLAttributes; } } }