bettercx-widget
Version:
Professional AI-powered chat widget for BetterCX platform. Seamlessly integrate intelligent customer support into any website.
171 lines (170 loc) • 7.5 kB
TypeScript
/* eslint-disable */
/* tslint:disable */
/**
* This is an autogenerated file created by the Stencil compiler.
* It contains typing information for all components that exist in this project.
*/
import { HTMLStencilElement, JSXBase } from "./stencil-public-runtime";
import { ChatMessage, WidgetEvent } from "./types/api";
export { ChatMessage, WidgetEvent } from "./types/api";
export namespace Components {
interface BcxMessageComposer {
/**
* @default false
*/
"disabled": boolean;
/**
* @default false
*/
"loading": boolean;
/**
* @default 1000
*/
"maxLength": number;
/**
* @default 'Type your message...'
*/
"placeholder": string;
}
interface BettercxWidget {
/**
* @default 'https://dev-ai.bettercx.ai'
*/
"aiServiceUrl": string;
/**
* @default true
*/
"autoInit": boolean;
/**
* @default 'https://dev-api.bettercx.ai'
*/
"baseUrl": string;
"close": () => Promise<void>;
/**
* @default false
*/
"debug": boolean;
"open": () => Promise<void>;
/**
* @default 'right'
*/
"position": 'left' | 'right';
"publicKey": string;
"sendMessage": (content: string) => Promise<void>;
/**
* @default 'auto'
*/
"theme": 'light' | 'dark' | 'auto';
"toggle": () => Promise<void>;
}
}
export interface BcxMessageComposerCustomEvent<T> extends CustomEvent<T> {
detail: T;
target: HTMLBcxMessageComposerElement;
}
export interface BettercxWidgetCustomEvent<T> extends CustomEvent<T> {
detail: T;
target: HTMLBettercxWidgetElement;
}
declare global {
interface HTMLBcxMessageComposerElementEventMap {
"messageSubmit": string;
}
interface HTMLBcxMessageComposerElement extends Components.BcxMessageComposer, HTMLStencilElement {
addEventListener<K extends keyof HTMLBcxMessageComposerElementEventMap>(type: K, listener: (this: HTMLBcxMessageComposerElement, ev: BcxMessageComposerCustomEvent<HTMLBcxMessageComposerElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
removeEventListener<K extends keyof HTMLBcxMessageComposerElementEventMap>(type: K, listener: (this: HTMLBcxMessageComposerElement, ev: BcxMessageComposerCustomEvent<HTMLBcxMessageComposerElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
}
var HTMLBcxMessageComposerElement: {
prototype: HTMLBcxMessageComposerElement;
new (): HTMLBcxMessageComposerElement;
};
interface HTMLBettercxWidgetElementEventMap {
"widgetEvent": WidgetEvent;
}
interface HTMLBettercxWidgetElement extends Components.BettercxWidget, HTMLStencilElement {
addEventListener<K extends keyof HTMLBettercxWidgetElementEventMap>(type: K, listener: (this: HTMLBettercxWidgetElement, ev: BettercxWidgetCustomEvent<HTMLBettercxWidgetElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
removeEventListener<K extends keyof HTMLBettercxWidgetElementEventMap>(type: K, listener: (this: HTMLBettercxWidgetElement, ev: BettercxWidgetCustomEvent<HTMLBettercxWidgetElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
}
var HTMLBettercxWidgetElement: {
prototype: HTMLBettercxWidgetElement;
new (): HTMLBettercxWidgetElement;
};
interface HTMLElementTagNameMap {
"bcx-message-composer": HTMLBcxMessageComposerElement;
"bettercx-widget": HTMLBettercxWidgetElement;
}
}
declare namespace LocalJSX {
interface BcxMessageComposer {
/**
* @default false
*/
"disabled"?: boolean;
/**
* @default false
*/
"loading"?: boolean;
/**
* @default 1000
*/
"maxLength"?: number;
"onMessageSubmit"?: (event: BcxMessageComposerCustomEvent<string>) => void;
/**
* @default 'Type your message...'
*/
"placeholder"?: string;
}
interface BettercxWidget {
/**
* @default 'https://dev-ai.bettercx.ai'
*/
"aiServiceUrl"?: string;
/**
* @default true
*/
"autoInit"?: boolean;
/**
* @default 'https://dev-api.bettercx.ai'
*/
"baseUrl"?: string;
/**
* @default false
*/
"debug"?: boolean;
"onWidgetEvent"?: (event: BettercxWidgetCustomEvent<WidgetEvent>) => void;
/**
* @default 'right'
*/
"position"?: 'left' | 'right';
"publicKey"?: string;
/**
* @default 'auto'
*/
"theme"?: 'light' | 'dark' | 'auto';
}
interface IntrinsicElements {
"bcx-message-composer": BcxMessageComposer;
"bettercx-widget": BettercxWidget;
}
}
export { LocalJSX as JSX };
declare module "@stencil/core" {
export namespace JSX {
interface IntrinsicElements {
"bcx-message-composer": LocalJSX.BcxMessageComposer & JSXBase.HTMLAttributes<HTMLBcxMessageComposerElement>;
"bettercx-widget": LocalJSX.BettercxWidget & JSXBase.HTMLAttributes<HTMLBettercxWidgetElement>;
}
}
}