/**
 * Dashboard Editor Component
 *
 * Allows users to customize dashboard layout by rearranging widgets,
 * toggling visibility, and selecting preset layouts. Pro+ only.
 *
 * @since v1.56.4
 */
import type React from 'react';
import type { Tier } from '../../core/types/auth.js';
import type { DashboardLayout, PresetLayoutName } from './widget-types.js';
/**
 * Editor mode
 */
export type EditorMode = 'select' | 'move' | 'resize';
/**
 * Dashboard editor props
 */
export interface DashboardEditorProps {
    /** Current layout being edited */
    layout: DashboardLayout;
    /** User's tier */
    tier: Tier;
    /** Terminal width */
    terminalWidth: number;
    /** Terminal height */
    terminalHeight: number;
    /** Callback when layout is saved */
    onSave: (layout: DashboardLayout) => void;
    /** Callback when editing is cancelled */
    onCancel: () => void;
    /** Callback when preset is selected */
    onPresetSelect?: (preset: PresetLayoutName) => void;
}
/**
 * Dashboard Editor component
 */
export declare function DashboardEditor({ layout, tier, terminalWidth, terminalHeight, onSave, onCancel, onPresetSelect }: DashboardEditorProps): React.ReactElement;
/**
 * Export layout to JSON
 */
export declare function exportLayout(layout: DashboardLayout): string;
/**
 * Import layout from JSON
 */
export declare function importLayout(json: string): DashboardLayout | null;
export default DashboardEditor;
//# sourceMappingURL=DashboardEditor.d.ts.map