/* 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 { ConversationDetails } from "./types/ConversationDetailsTypes";
export { ConversationDetails } from "./types/ConversationDetailsTypes";
export namespace Components {
    interface ChatBody {
        "allMessages": any;
        "changeScrollToBottomState": (newState: boolean) => void;
        "changeScrollToTopState": (newState: boolean) => void;
        "conversationId": string;
        "deleteForAll": ({ conversationId, messageIds }) => void;
        "deleteForSelf": ({ conversationId, messageIds }) => void;
        "isChatClosed": boolean;
        "isChatMinimized": boolean;
        "isDark"?: boolean;
        "isMessageLimitEnd": boolean;
        "isMessageSending": boolean;
        "isMessagesLoading": boolean;
        "isScrollToBottom": boolean;
        "isScrollToTop": boolean;
        "skip": number;
        "updateAllMessages": (newMessages: any) => void;
        "updateSkip": () => void;
        "userMetaData": any;
    }
    interface ChatDocumentMessageBubble {
    }
    interface ChatFooter {
        "allMessages": any;
        "changeMessageSendingState": (newState: boolean) => void;
        "changeScrollToBottomState": (newState: boolean) => void;
        "conversationId": string;
        "isDark"?: boolean;
        "refetchMessages": () => void;
        "updateAllMessages": (newMessages: any) => void;
        "userMetaData": any;
    }
    interface ChatHeader {
        "backgroundColor"?: string;
        "conversationDetails": ConversationDetails;
        "isDark"?: boolean;
        "isTyping": boolean;
        "onClose": () => void;
        "onMinimize": () => void;
    }
    interface ChatHeaderClosed {
        "conversationDetails": ConversationDetails;
        "onClose": () => void;
        "onMinimize": () => void;
    }
    interface ChatImageMessageBubble {
    }
    interface ChatTest {
        "accountId": string;
        "appSecret": string;
        "baseUrl": string;
        "conversationId": string;
        "darkThemeUrl": string;
        "hostUrl": string;
        "isDark"?: boolean;
        "isometrikUserId": string;
        "keysetId": string;
        "licenseKey": string;
        "lightThemeUrl": string;
        "projectId": string;
        "userSecret": string;
        "userToken": string;
    }
    interface ChatVideoMessageBubble {
    }
    interface MyComponent {
        /**
          * The first name
         */
        "first": string;
        /**
          * The last name
         */
        "last": string;
        /**
          * The middle name
         */
        "middle": string;
    }
}
declare global {
    interface HTMLChatBodyElement extends Components.ChatBody, HTMLStencilElement {
    }
    var HTMLChatBodyElement: {
        prototype: HTMLChatBodyElement;
        new (): HTMLChatBodyElement;
    };
    interface HTMLChatDocumentMessageBubbleElement extends Components.ChatDocumentMessageBubble, HTMLStencilElement {
    }
    var HTMLChatDocumentMessageBubbleElement: {
        prototype: HTMLChatDocumentMessageBubbleElement;
        new (): HTMLChatDocumentMessageBubbleElement;
    };
    interface HTMLChatFooterElement extends Components.ChatFooter, HTMLStencilElement {
    }
    var HTMLChatFooterElement: {
        prototype: HTMLChatFooterElement;
        new (): HTMLChatFooterElement;
    };
    interface HTMLChatHeaderElement extends Components.ChatHeader, HTMLStencilElement {
    }
    var HTMLChatHeaderElement: {
        prototype: HTMLChatHeaderElement;
        new (): HTMLChatHeaderElement;
    };
    interface HTMLChatHeaderClosedElement extends Components.ChatHeaderClosed, HTMLStencilElement {
    }
    var HTMLChatHeaderClosedElement: {
        prototype: HTMLChatHeaderClosedElement;
        new (): HTMLChatHeaderClosedElement;
    };
    interface HTMLChatImageMessageBubbleElement extends Components.ChatImageMessageBubble, HTMLStencilElement {
    }
    var HTMLChatImageMessageBubbleElement: {
        prototype: HTMLChatImageMessageBubbleElement;
        new (): HTMLChatImageMessageBubbleElement;
    };
    interface HTMLChatTestElement extends Components.ChatTest, HTMLStencilElement {
    }
    var HTMLChatTestElement: {
        prototype: HTMLChatTestElement;
        new (): HTMLChatTestElement;
    };
    interface HTMLChatVideoMessageBubbleElement extends Components.ChatVideoMessageBubble, HTMLStencilElement {
    }
    var HTMLChatVideoMessageBubbleElement: {
        prototype: HTMLChatVideoMessageBubbleElement;
        new (): HTMLChatVideoMessageBubbleElement;
    };
    interface HTMLMyComponentElement extends Components.MyComponent, HTMLStencilElement {
    }
    var HTMLMyComponentElement: {
        prototype: HTMLMyComponentElement;
        new (): HTMLMyComponentElement;
    };
    interface HTMLElementTagNameMap {
        "chat-body": HTMLChatBodyElement;
        "chat-document-message-bubble": HTMLChatDocumentMessageBubbleElement;
        "chat-footer": HTMLChatFooterElement;
        "chat-header": HTMLChatHeaderElement;
        "chat-header-closed": HTMLChatHeaderClosedElement;
        "chat-image-message-bubble": HTMLChatImageMessageBubbleElement;
        "chat-test": HTMLChatTestElement;
        "chat-video-message-bubble": HTMLChatVideoMessageBubbleElement;
        "my-component": HTMLMyComponentElement;
    }
}
declare namespace LocalJSX {
    interface ChatBody {
        "allMessages"?: any;
        "changeScrollToBottomState"?: (newState: boolean) => void;
        "changeScrollToTopState"?: (newState: boolean) => void;
        "conversationId"?: string;
        "deleteForAll"?: ({ conversationId, messageIds }) => void;
        "deleteForSelf"?: ({ conversationId, messageIds }) => void;
        "isChatClosed"?: boolean;
        "isChatMinimized"?: boolean;
        "isDark"?: boolean;
        "isMessageLimitEnd"?: boolean;
        "isMessageSending"?: boolean;
        "isMessagesLoading"?: boolean;
        "isScrollToBottom"?: boolean;
        "isScrollToTop"?: boolean;
        "skip"?: number;
        "updateAllMessages"?: (newMessages: any) => void;
        "updateSkip"?: () => void;
        "userMetaData"?: any;
    }
    interface ChatDocumentMessageBubble {
    }
    interface ChatFooter {
        "allMessages"?: any;
        "changeMessageSendingState"?: (newState: boolean) => void;
        "changeScrollToBottomState"?: (newState: boolean) => void;
        "conversationId"?: string;
        "isDark"?: boolean;
        "refetchMessages"?: () => void;
        "updateAllMessages"?: (newMessages: any) => void;
        "userMetaData"?: any;
    }
    interface ChatHeader {
        "backgroundColor"?: string;
        "conversationDetails"?: ConversationDetails;
        "isDark"?: boolean;
        "isTyping"?: boolean;
        "onClose"?: () => void;
        "onMinimize"?: () => void;
    }
    interface ChatHeaderClosed {
        "conversationDetails"?: ConversationDetails;
        "onClose"?: () => void;
        "onMinimize"?: () => void;
    }
    interface ChatImageMessageBubble {
    }
    interface ChatTest {
        "accountId"?: string;
        "appSecret"?: string;
        "baseUrl"?: string;
        "conversationId"?: string;
        "darkThemeUrl"?: string;
        "hostUrl"?: string;
        "isDark"?: boolean;
        "isometrikUserId"?: string;
        "keysetId"?: string;
        "licenseKey"?: string;
        "lightThemeUrl"?: string;
        "projectId"?: string;
        "userSecret"?: string;
        "userToken"?: string;
    }
    interface ChatVideoMessageBubble {
    }
    interface MyComponent {
        /**
          * The first name
         */
        "first"?: string;
        /**
          * The last name
         */
        "last"?: string;
        /**
          * The middle name
         */
        "middle"?: string;
    }
    interface IntrinsicElements {
        "chat-body": ChatBody;
        "chat-document-message-bubble": ChatDocumentMessageBubble;
        "chat-footer": ChatFooter;
        "chat-header": ChatHeader;
        "chat-header-closed": ChatHeaderClosed;
        "chat-image-message-bubble": ChatImageMessageBubble;
        "chat-test": ChatTest;
        "chat-video-message-bubble": ChatVideoMessageBubble;
        "my-component": MyComponent;
    }
}
export { LocalJSX as JSX };
declare module "@stencil/core" {
    export namespace JSX {
        interface IntrinsicElements {
            "chat-body": LocalJSX.ChatBody & JSXBase.HTMLAttributes<HTMLChatBodyElement>;
            "chat-document-message-bubble": LocalJSX.ChatDocumentMessageBubble & JSXBase.HTMLAttributes<HTMLChatDocumentMessageBubbleElement>;
            "chat-footer": LocalJSX.ChatFooter & JSXBase.HTMLAttributes<HTMLChatFooterElement>;
            "chat-header": LocalJSX.ChatHeader & JSXBase.HTMLAttributes<HTMLChatHeaderElement>;
            "chat-header-closed": LocalJSX.ChatHeaderClosed & JSXBase.HTMLAttributes<HTMLChatHeaderClosedElement>;
            "chat-image-message-bubble": LocalJSX.ChatImageMessageBubble & JSXBase.HTMLAttributes<HTMLChatImageMessageBubbleElement>;
            "chat-test": LocalJSX.ChatTest & JSXBase.HTMLAttributes<HTMLChatTestElement>;
            "chat-video-message-bubble": LocalJSX.ChatVideoMessageBubble & JSXBase.HTMLAttributes<HTMLChatVideoMessageBubbleElement>;
            "my-component": LocalJSX.MyComponent & JSXBase.HTMLAttributes<HTMLMyComponentElement>;
        }
    }
}
