import { DragEvent } from 'react'; import { defineImagineThemes } from './utils'; type ControllerParams = { isActive: boolean; controlledSelectedFile?: string | null; onSelectedFileChange?: (path: string | null) => void; }; export declare function useCodePanelController({ isActive, controlledSelectedFile, onSelectedFileChange, }: ControllerParams): { fileExplorerProps: { searchQuery: string; onSearchQueryChange: (value: string) => void; onSearchKeyDown: (event: import('react').KeyboardEvent) => void; filteredTree: import('../file-tree').FileTreeNode[]; isSearchActive: boolean; highlightMatches: (text: string) => import('react').ReactNode; expandedDirectories: Set; onToggleDirectory: (path: string) => void; selectedFile: string | null; onSelectFile: (path: string) => void; drafts: { [x: string]: import('../../../stores/slices/code-editor.slice').CodeEditorDraftEntry; }; dragHandlers: { draggedDirectory: string | null; onDirectoryDragOver: (event: DragEvent, path: string) => void; onDirectoryDragLeave: (event: DragEvent, path: string) => void; onDirectoryDrop: (event: DragEvent, path: string) => void; }; isLoading: boolean; isRefetching: boolean; hasError: boolean; onRootDragOver: (event: DragEvent) => void; onRootDragLeave: (event: DragEvent) => void; onRootDrop: (event: DragEvent) => void; isRootDragTarget: boolean; }; editorSurfaceProps: { selectedFile: string | null; editorValue: string; isDirty: boolean; isReadOnly: boolean; fileKind: "text" | "svg" | "raster"; isSvgPreviewMode: boolean; onToggleSvgPreview: () => void; onEditorChange: (value?: string) => void; editorLanguage: string; editorTheme: string; monacoOptions: { readOnly: boolean; minimap: { enabled: boolean; }; scrollBeyondLastLine: boolean; fontSize: number; automaticLayout: boolean; padding: { top: number; bottom: number; }; renderValidationDecorations: "off"; wordWrap: "on" | "off"; wordWrapColumn: number; stopRenderingLineAfter: number; }; beforeMount: typeof defineImagineThemes; onEditorDrop: (event: DragEvent) => void; onEditorDragOver: (event: DragEvent) => void; }; }; export {}; //# sourceMappingURL=use-code-panel-controller.d.ts.map