import { EventEmitter } from '../../stencil-public-runtime';
import { ChannelMember, OpenChatByFilter, TConnection, TPackageConfig, TranslateSettings } from '../../store/type';
export declare class ChatApp {
    languagePref: 'th' | 'en';
    themeMode: 'dark' | 'light';
    businessId: string;
    shopId: string;
    accessToken: string;
    isProduction: string;
    timeZone: string;
    translationSettings: TranslateSettings;
    isNotConnected: string;
    isZwiz: string;
    connectionList: TConnection[];
    memberList: ChannelMember[];
    zrmzApiUrl: string;
    openChatByFilter?: OpenChatByFilter;
    currentPackage: TPackageConfig;
    isShowWarningNotification: string;
    zwizSyncMessage: string;
    layoutMode: 'monolith' | 'headless';
    deserializeTranslateSettingsArray(value: string): TranslateSettings | null;
    deserializeTConnectionArray(value: string): TConnection[] | null;
    deserializeChannelMemberArray(value: string): ChannelMember[] | null;
    deserializeOpenChatByFilter(value: string): OpenChatByFilter | null;
    deserializeCurrentPackage(value: string): TPackageConfig | null;
    connect: EventEmitter<void>;
    nextKey?: string;
    isLoading: boolean;
    hostElement: HTMLElement;
    private resizeObserver?;
    private containerRef;
    private pendingLoadParams;
    private disposeListener;
    private isFirstLoadDone;
    handleLanguageChange(newLang: 'th' | 'en', oldLang: 'th' | 'en'): void;
    handleThemeChange(newTheme: 'dark' | 'light', oldTheme: 'dark' | 'light'): void;
    handleBusinessIdChange(newBusinessId: string, oldBusinessId: string): void;
    handleShopIdChange(newShopId: string, oldShopId: string): void;
    handleAccessTokenChange(newAccessToken: string, oldAccessToken: string): void;
    handleIsProductionChange(newIsProduction: string, oldIsProduction: string): void;
    handleTimeZoneChange(newTimeZone: string, oldTimeZone: string): void;
    handleTranslationSettingsChange(newTranslationSettings: TranslateSettings, oldTranslationSettings: TranslateSettings): void;
    handleIsNotConnectedChange(newIsNotConnected: string, oldIsNotConnected: string): void;
    handleIsZwizChange(newIsZwiz: string, oldIsZwiz: string): void;
    handleConnectionListChange(newConnectionList: TConnection[], oldConnectionList: TConnection[]): void;
    handleMemberListChange(newMemberList: ChannelMember[], oldMemberList: ChannelMember[]): void;
    handleZrmzApiUrlChange(newZrmzApiUrl: string, oldZrmzApiUrl: string): void;
    handleOpenChatByFilterChange(newOpenChatByFilter: OpenChatByFilter, oldOpenChatByFilter: OpenChatByFilter): void;
    handleCurrentPackageChange(newPackage: TPackageConfig, oldPackage: TPackageConfig): void;
    handleIsShowWarningNotificationChange(newVal: string, oldVal: string): void;
    handleZwizSyncMessageChange(newVal: string, oldVal: string): void;
    handleClick(ev: Event): void;
    private checkSize;
    connectedCallback(): void;
    refreshData(): Promise<void>;
    getStores(): Promise<any>;
    componentWillLoad(): Promise<void>;
    private initData;
    componentDidLoad(): void;
    disconnectedCallback(): void;
    private handleScroll;
    private loadChats;
    private loadZdeskUserToken;
    private loadPlatformConnections;
    private loadChatFilterConfig;
    private loadConnectionJobs;
    private loadUsageStorage;
    private handleJobCompleted;
    private onSyncMessageEvent;
    private onSyncTagsEvent;
    private setContainerRef;
    private getGridCols;
    private displayChatPanel;
    private displayMessagePanel;
    private displayUserProfilePanel;
    render(): any;
}
