import type { FilterGroup } from '@luzmo/dashboard-contents-types';
import * as SharedLib from '@luzmo/shared-embed';
import { CombinedSelectedDataInput, DashboardInputs, LuzmoElement } from '@luzmo/shared-embed';
import { LitElement, PropertyValues, TemplateResult } from 'lit';
export declare class LuzmoDashboard extends LitElement implements SharedLib.ES6LuzmoDashboard {
    container: HTMLElement;
    luzmoEmbedContainer: HTMLElement;
    iframe: HTMLIFrameElement;
    dashboardId?: SharedLib.DashboardInputs['dashboardId'];
    dashboardSlug?: SharedLib.DashboardInputs['dashboardSlug'];
    itemId?: SharedLib.DashboardInputs['itemId'];
    language: SharedLib.DashboardInputs['language'];
    editorLanguage: SharedLib.DashboardInputs['editorLanguage'];
    qeVersion: SharedLib.DashboardInputs['qeVersion'];
    screenMode: SharedLib.DashboardInputs['screenMode'];
    switchScreenModeOnResize: boolean;
    editMode: SharedLib.DashboardInputs['editMode'];
    theme?: SharedLib.DashboardInputs['theme'];
    mainColor?: SharedLib.DashboardInputs['mainColor'];
    accentColor?: SharedLib.DashboardInputs['accentColor'];
    authToken?: SharedLib.DashboardInputs['authToken'];
    authKey?: SharedLib.DashboardInputs['authKey'];
    loaderBackground?: SharedLib.DashboardInputs['loaderBackground'];
    loaderFontColor?: SharedLib.DashboardInputs['loaderFontColor'];
    loaderSpinnerColor?: SharedLib.DashboardInputs['loaderSpinnerColor'];
    loaderSpinnerBackground?: SharedLib.DashboardInputs['loaderSpinnerBackground'];
    appServer?: SharedLib.DashboardInputs['appServer'];
    timezoneId?: SharedLib.DashboardInputs['timezoneId'];
    apiHost?: SharedLib.DashboardInputs['apiHost'];
    itemDimensions: SharedLib.DashboardInputs['itemDimensions'];
    embedMode: DashboardInputs['embedMode'];
    _containerId: string;
    _iframeId: string;
    params: SharedLib.DashboardContentParams;
    _iframeUrl?: string;
    iframeLoaded: boolean;
    promises: SharedLib.DashboardPromises;
    iframeStyle: SharedLib.IframeStyles;
    _containerStyle: SharedLib.ContainerStyles;
    _loaderStyle: SharedLib.LoaderStyles;
    _lcStyle: SharedLib.LcStyles;
    _loadingCircleStyle: SharedLib.PlStyles;
    _containerLoaderStyle: SharedLib.ContainerLoaderStyles;
    _loaderMsg: string;
    containerWidth?: number;
    dimensions?: SharedLib.DashboardDimensions;
    currentScreenMode?: SharedLib.ScreenMode;
    _itemEmbedding: boolean;
    browserError: boolean;
    browserErrorMsg: string;
    dashboardError: boolean;
    browserNotSupported: any[];
    libVersion: string;
    protected isLibraryLoaded: boolean;
    protected dashboardReference: LuzmoElement;
    currentAuthKey: string;
    currentAuthToken: string;
    isInitCalled: boolean;
    private attributesMap;
    _loadTimeoutHandle?: number;
    _onResize: () => void;
    loaderSize: number;
    borderWidth: number;
    minHeight: number;
    iframeHeight?: string;
    iframeWidth?: string;
    _resizeObserver: ResizeObserver;
    constructor();
    connectedCallback(): void;
    disconnectedCallback(): void;
    firstUpdated(): void;
    initComponent(): void;
    setAllAttributes(): void;
    updated(changedProperties: PropertyValues): void;
    _setOptions(): SharedLib.DashboardContentParams;
    _updateIframeUrl(): void;
    _setupLoader(): void;
    _displayError(): void;
    _calculateDimAfterDashboardLoaded(): void;
    _loaderStyles(): void;
    static get styles(): import("lit").CSSResult[];
    render(): TemplateResult;
    getDashboards(): Promise<LuzmoDashboard[]>;
    getData(itemId: string): Promise<SharedLib.ItemData>;
    getFilters(): Promise<FilterGroup[]>;
    setSelectedData<K extends CombinedSelectedDataInput>(itemId: string, filters: K): Promise<SharedLib.SetSelectedData>;
    setAuthorization(key: string, token: string): Promise<void>;
    refreshData(itemId?: string): Promise<void>;
    reloadDashboard(): Promise<void>;
    exportDashboard(format?: SharedLib.DashboardExportType): Promise<SharedLib.ExportDashboard>;
    getAccessibleDashboards(): Promise<SharedLib.AccessibleDashboard[]>;
    addFilters(itemId: string, filters: FilterGroup[]): Promise<SharedLib.AddFilters>;
    setEditMode(editMode?: SharedLib.DashboardEditMode): Promise<SharedLib.SetEditMode>;
    setPreview(preview: boolean): Promise<SharedLib.SetPreview>;
    isWebComponentViewMode(): boolean;
}
