import { LitElement, PropertyValues } from "lit";
import "./or-dashboard-tree";
import "./or-dashboard-browser";
import "./or-dashboard-preview";
import "./or-dashboard-widgetsettings";
import "./or-dashboard-boardsettings";
import "./controls/dashboard-refresh-controls";
import "@openremote/or-icon";
import { Dashboard, DashboardAccess, DashboardRefreshInterval, DashboardScalingPreset, DashboardScreenPreset, DashboardTemplate, DashboardWidget } from "@openremote/model";
import "@openremote/or-mwc-components/or-mwc-tabs";
import { OrDashboardPreview } from "./or-dashboard-preview";
import { WidgetManifest } from "./util/or-widget";
import { IntervalSelectEvent } from "./controls/dashboard-refresh-controls";
export { intervalToMillis } from "./controls/dashboard-refresh-controls";
export { OrDashboardPreview } from "./or-dashboard-preview";
export interface DashboardBuilderConfig {
}
export declare const MAX_BREAKPOINT = 1000000;
export declare function scalingPresetToString(scalingPreset: DashboardScalingPreset | undefined): string;
export declare function dashboardAccessToString(access: DashboardAccess): string;
export declare function sortScreenPresets(presets: DashboardScreenPreset[], largetosmall?: boolean): DashboardScreenPreset[];
export declare function getActivePreset(gridWidth: number, presets: DashboardScreenPreset[]): DashboardScreenPreset | undefined;
export declare const widgetTypes: Map<string, WidgetManifest>;
export declare function registerWidgetTypes(): void;
declare const OrDashboardBuilder_base: (new (...args: any[]) => {
    _i18nextJustInitialized: boolean;
    _language: string;
    connectedCallback(): void;
    disconnectedCallback(): void;
    shouldUpdate(changedProps: PropertyValues): any;
    initCallback: (options: import("i18next").InitOptions) => void;
    langChangedCallback: () => void;
    readonly isConnected: boolean;
}) & typeof LitElement;
export declare class OrDashboardBuilder extends OrDashboardBuilder_base {
    static get styles(): import("lit").CSSResult[];
    protected readonly config: DashboardBuilderConfig | undefined;
    protected readonly editMode: boolean;
    protected readonly fullscreen: boolean;
    protected readonly selectedId: string | undefined;
    protected realm: string;
    protected readonly userId: string;
    protected readonly readonly: boolean;
    protected dashboards: Dashboard[] | undefined;
    protected currentTemplate: DashboardTemplate | undefined;
    protected selectedDashboard: Dashboard | undefined;
    protected selectedWidgetId: string | undefined;
    protected initialDashboardJSON: string | undefined;
    protected initialTemplateJSON: string | undefined;
    protected refreshInterval: DashboardRefreshInterval;
    protected isInitializing: boolean;
    protected isLoading: boolean;
    protected hasChanged: boolean;
    protected dashboardPreview?: OrDashboardPreview;
    protected refreshTimer?: ReturnType<typeof setInterval>;
    private readonly keyEmitter;
    constructor();
    connectedCallback(): void;
    disconnectedCallback(): void;
    willUpdate(changedProps: PropertyValues): void;
    protected setRefreshTimer(millis: number | undefined): void;
    protected clearRefreshTimer(): void;
    loadAllDashboards(realm: string): Promise<void>;
    updated(changedProperties: Map<string, any>): void;
    protected onWidgetCreation(widget: DashboardWidget): void;
    deleteWidget(widget: DashboardWidget): void;
    selectWidget(widget: DashboardWidget): void;
    deselectWidget(): void;
    selectDashboard(dashboard: Dashboard | undefined): void;
    _onDashboardNameChanged(ev: Event): void;
    openDashboardInInsights(): void;
    shareUrl(method: string): void;
    saveDashboard(): void;
    protected _isReadonly(): boolean;
    protected _hasEditAccess(): boolean;
    protected _hasViewAccess(): boolean;
    protected sidebarMenuIndex: number;
    protected showDashboardTree: boolean;
    private readonly menuItems;
    private readonly tabItems;
    render(): any;
    protected onIntervalSelect(ev: IntervalSelectEvent): void;
}
//# sourceMappingURL=index.d.ts.map