import { EventEmitter } from '../../stencil-public-runtime';
import { QuickMessageTemplate as QuickMessageTemplateModel } from '../../store/type';
export declare class QuickMessageTemplateComponent {
    handleClose?: () => void;
    value?: string | QuickMessageTemplateModel[];
    isMaster: boolean;
    isZignal: boolean;
    private searchTemplate;
    private templates;
    private showAddTemplateDialog;
    private editingTemplate?;
    private dialogMode;
    private isLoading;
    private isLoadingMore;
    private isSavingTemplate;
    private deletingTemplateId?;
    private templatePendingDelete?;
    private totalTemplates;
    private totalPages;
    private isSelectZignal;
    private isZwizSME;
    private isZdesk;
    private page;
    private readonly pageSize;
    private readonly loadMoreThreshold;
    private currentSearch;
    private scrollContainer?;
    private debouncedSearch;
    templatesChange: EventEmitter<QuickMessageTemplateModel[]>;
    sendTemplate: EventEmitter<QuickMessageTemplateModel>;
    componentWillLoad(): Promise<void>;
    componentDidRender(): void;
    protected handleValueChange(newValue?: string | QuickMessageTemplateModel[]): void;
    private syncTemplatesFromProp;
    private mergeWithExistingState;
    private appendTemplates;
    private fetchTemplates;
    private loadMoreTemplates;
    private handleScroll;
    private handleSearchSubmit;
    private handleSearchInput;
    private clearSearch;
    private parseTemplateValue;
    private cloneTemplates;
    private setTemplates;
    private canAttemptLoadMore;
    private triggerLoadMoreIfNeeded;
    private autoLoadMoreIfNeeded;
    private toggleTemplateExpansion;
    private filterTemplates;
    private handleTemplateAction;
    private renderTemplateContent;
    private renderImageMedia;
    private closeTemplateDialog;
    private openTemplateDialog;
    private processTemplate;
    private upsertTemplate;
    private handleTemplateSave;
    private requestDeleteTemplate;
    private confirmDeleteTemplate;
    private renderSelectPlatformButton;
    render(): any;
}
