export declare const defaultSettings: readonly [{ readonly key: "general.language"; readonly label: "Language"; readonly description: "Interface language"; readonly category: "general"; readonly type: "select"; readonly defaultValue: "en"; readonly options: [{ readonly value: "en"; readonly label: "English"; }, { readonly value: "ja"; readonly label: "日本語"; }, { readonly value: "zh"; readonly label: "中文"; }, { readonly value: "ko"; readonly label: "한국어"; }, { readonly value: "es"; readonly label: "Español"; }, { readonly value: "fr"; readonly label: "Français"; }, { readonly value: "de"; readonly label: "Deutsch"; }]; readonly order: 1; }, { readonly key: "general.autoSave"; readonly label: "Auto Save"; readonly description: "Automatically save changes"; readonly category: "general"; readonly type: "boolean"; readonly defaultValue: true; readonly order: 2; }, { readonly key: "general.autoSaveInterval"; readonly label: "Auto Save Interval"; readonly description: "Auto save interval in seconds"; readonly category: "general"; readonly type: "number"; readonly defaultValue: 30; readonly min: 5; readonly max: 300; readonly dependsOn: "general.autoSave"; readonly showWhen: (settings: import('./types').SettingsValues) => boolean; readonly order: 3; }, { readonly key: "general.confirmBeforeExit"; readonly label: "Confirm Before Exit"; readonly description: "Show confirmation dialog before closing"; readonly category: "general"; readonly type: "boolean"; readonly defaultValue: true; readonly order: 4; }, { readonly key: "appearance.theme"; readonly label: "Theme"; readonly description: "Visual theme"; readonly category: "appearance"; readonly type: "select"; readonly defaultValue: "light"; readonly options: [{ readonly value: "light"; readonly label: "Light"; }, { readonly value: "dark"; readonly label: "Dark"; }, { readonly value: "auto"; readonly label: "Auto (System)"; }]; readonly order: 1; }, { readonly key: "appearance.fontSize"; readonly label: "Font Size"; readonly description: "Base font size in pixels"; readonly category: "appearance"; readonly type: "range"; readonly defaultValue: 14; readonly min: 10; readonly max: 24; readonly step: 1; readonly order: 2; }, { readonly key: "appearance.fontFamily"; readonly label: "Font Family"; readonly description: "Font family for the interface"; readonly category: "appearance"; readonly type: "select"; readonly defaultValue: "system"; readonly options: [{ readonly value: "system"; readonly label: "System Default"; }, { readonly value: "Inter"; readonly label: "Inter"; }, { readonly value: "Roboto"; readonly label: "Roboto"; }, { readonly value: "Arial"; readonly label: "Arial"; }, { readonly value: "monospace"; readonly label: "Monospace"; }]; readonly order: 3; }, { readonly key: "appearance.showGrid"; readonly label: "Show Grid"; readonly description: "Display grid lines on canvas"; readonly category: "appearance"; readonly type: "boolean"; readonly defaultValue: true; readonly order: 4; }, { readonly key: "appearance.gridSize"; readonly label: "Grid Size"; readonly description: "Grid size in pixels"; readonly category: "appearance"; readonly type: "number"; readonly defaultValue: 20; readonly min: 5; readonly max: 100; readonly dependsOn: "appearance.showGrid"; readonly showWhen: (settings: import('./types').SettingsValues) => boolean; readonly order: 5; }, { readonly key: "appearance.gridOpacity"; readonly label: "Grid Opacity"; readonly description: "Grid line opacity"; readonly category: "appearance"; readonly type: "range"; readonly defaultValue: 0.3; readonly min: 0.1; readonly max: 1; readonly step: 0.1; readonly dependsOn: "appearance.showGrid"; readonly showWhen: (settings: import('./types').SettingsValues) => boolean; readonly order: 6; }, { readonly key: "appearance.gridVisibilityThreshold"; readonly label: "Grid Visibility Threshold"; readonly description: "Hide grid when zoom level is below this value"; readonly category: "appearance"; readonly type: "range"; readonly defaultValue: 0.3; readonly min: 0.01; readonly max: 1; readonly step: 0.05; readonly dependsOn: "appearance.showGrid"; readonly showWhen: (settings: import('./types').SettingsValues) => boolean; readonly order: 7; }, { readonly key: "appearance.portLabelVisibilityThreshold"; readonly label: "Port Label Visibility Threshold"; readonly description: "Hide port labels when zoom level is below this value"; readonly category: "appearance"; readonly type: "range"; readonly defaultValue: 0.5; readonly min: 0.01; readonly max: 1; readonly step: 0.05; readonly order: 8; }, { readonly key: "appearance.snapToGrid"; readonly label: "Snap to Grid"; readonly description: "Snap nodes to grid when moving"; readonly category: "appearance"; readonly type: "boolean"; readonly defaultValue: false; readonly order: 9; }, { readonly key: "appearance.showMinimap"; readonly label: "Show Minimap"; readonly description: "Display minimap overlay"; readonly category: "appearance"; readonly type: "boolean"; readonly defaultValue: true; readonly order: 10; }, { readonly key: "appearance.showStatusBar"; readonly label: "Show Status Bar"; readonly description: "Display status bar at bottom"; readonly category: "appearance"; readonly type: "boolean"; readonly defaultValue: true; readonly order: 11; }, { readonly key: "appearance.showToolbar"; readonly label: "Show Toolbar"; readonly description: "Display toolbar"; readonly category: "appearance"; readonly type: "boolean"; readonly defaultValue: true; readonly order: 12; }, { readonly key: "appearance.canvasBackground"; readonly label: "Canvas Background"; readonly description: "Canvas background color"; readonly category: "appearance"; readonly type: "color"; readonly defaultValue: "#ffffff"; readonly order: 13; }, { readonly key: "appearance.canvasSnapshotThreshold"; readonly label: "Canvas Snapshot Threshold"; readonly description: "Freeze canvas rendering when zoom level is below this value for better performance"; readonly category: "appearance"; readonly type: "range"; readonly defaultValue: 0.3; readonly min: 0.01; readonly max: 1; readonly step: 0.05; readonly order: 14; }, { readonly key: "behavior.doubleClickToEdit"; readonly label: "Double Click to Edit"; readonly description: "Double click nodes to edit properties"; readonly category: "behavior"; readonly type: "boolean"; readonly defaultValue: true; readonly order: 1; }, { readonly key: "behavior.autoConnect"; readonly label: "Auto Connect"; readonly description: "Automatically connect compatible ports when dragging"; readonly category: "behavior"; readonly type: "boolean"; readonly defaultValue: true; readonly order: 2; }, { readonly key: "behavior.smoothAnimations"; readonly label: "Smooth Animations"; readonly description: "Enable smooth animations for transitions"; readonly category: "behavior"; readonly type: "boolean"; readonly defaultValue: true; readonly order: 3; }, { readonly key: "behavior.dragThreshold"; readonly label: "Drag Threshold"; readonly description: "Minimum distance to start dragging (pixels)"; readonly category: "behavior"; readonly type: "number"; readonly defaultValue: 5; readonly min: 1; readonly max: 20; readonly order: 4; }, { readonly key: "behavior.connectionStyle"; readonly label: "Connection Style"; readonly description: "Style of connection lines"; readonly category: "behavior"; readonly type: "select"; readonly defaultValue: "curved"; readonly options: [{ readonly value: "straight"; readonly label: "Straight"; }, { readonly value: "curved"; readonly label: "Curved"; }, { readonly value: "orthogonal"; readonly label: "Orthogonal"; }]; readonly order: 5; }, { readonly key: "behavior.connectionControlPointRounding"; readonly label: "Connection Control Point Rounding"; readonly description: "How connection curves choose their initial direction from ports"; readonly category: "behavior"; readonly type: "select"; readonly defaultValue: "port-side"; readonly options: [{ readonly value: "snap-90"; readonly label: "Snap 90° (dominant axis)"; }, { readonly value: "port-side"; readonly label: "Port side (fixed direction)"; }, { readonly value: "horizontal"; readonly label: "Horizontal"; }, { readonly value: "vertical"; readonly label: "Vertical"; }, { readonly value: "vector"; readonly label: "Vector (no snapping)"; }]; readonly order: 6; }, { readonly key: "behavior.connectionHandleOffsetMin"; readonly label: "Connection Handle Offset Min"; readonly description: "Minimum handle offset distance for bezier connections (pixels)"; readonly category: "behavior"; readonly type: "number"; readonly defaultValue: 40; readonly min: 0; readonly max: 400; readonly step: 1; readonly order: 7; }, { readonly key: "behavior.connectionHandleOffsetMax"; readonly label: "Connection Handle Offset Max"; readonly description: "Maximum handle offset distance for bezier connections (pixels)"; readonly category: "behavior"; readonly type: "number"; readonly defaultValue: 120; readonly min: 0; readonly max: 600; readonly step: 1; readonly order: 8; }, { readonly key: "behavior.selectionMode"; readonly label: "Selection Mode"; readonly description: "How to select multiple nodes"; readonly category: "behavior"; readonly type: "select"; readonly defaultValue: "click"; readonly options: [{ readonly value: "click"; readonly label: "Click with Modifier"; }, { readonly value: "drag"; readonly label: "Drag Selection Box"; }]; readonly order: 9; }, { readonly key: "behavior.wheelZoomSensitivity"; readonly label: "Zoom Sensitivity"; readonly description: "Mouse wheel zoom sensitivity"; readonly category: "behavior"; readonly type: "range"; readonly defaultValue: 1; readonly min: 0.1; readonly max: 3; readonly step: 0.1; readonly order: 10; }, { readonly key: "behavior.nodeSearchViewMode"; readonly label: "Node Search View Mode"; readonly description: "View mode for the node search menu"; readonly category: "behavior"; readonly type: "select"; readonly defaultValue: "list"; readonly options: [{ readonly value: "list"; readonly label: "List"; }, { readonly value: "split"; readonly label: "Split Pane"; }]; readonly order: 11; }, { readonly key: "behavior.nodeSearchFilterMode"; readonly label: "Node Search Filter Mode"; readonly description: "How to display search results: filter hides non-matching nodes, highlight shows all with matches emphasized"; readonly category: "behavior"; readonly type: "select"; readonly defaultValue: "filter"; readonly options: [{ readonly value: "filter"; readonly label: "Filter (hide non-matching)"; }, { readonly value: "highlight"; readonly label: "Highlight (show all, emphasize matches)"; }]; readonly order: 12; }, { readonly key: "behavior.nodeSearchMenuWidth"; readonly label: "Node Search Menu Width"; readonly description: "Minimum width of the node search menu in pixels"; readonly category: "behavior"; readonly type: "number"; readonly defaultValue: 360; readonly min: 280; readonly max: 800; readonly order: 13; }, { readonly key: "performance.maxHistorySteps"; readonly label: "Max History Steps"; readonly description: "Maximum number of undo/redo steps"; readonly category: "performance"; readonly type: "number"; readonly defaultValue: 50; readonly min: 10; readonly max: 200; readonly order: 1; }, { readonly key: "performance.renderOptimization"; readonly label: "Render Optimization"; readonly description: "Enable render optimization techniques"; readonly category: "performance"; readonly type: "boolean"; readonly defaultValue: true; readonly order: 2; }, { readonly key: "performance.lazyLoading"; readonly label: "Lazy Loading"; readonly description: "Load nodes and connections lazily"; readonly category: "performance"; readonly type: "boolean"; readonly defaultValue: true; readonly order: 3; }, { readonly key: "performance.virtualScrolling"; readonly label: "Virtual Scrolling"; readonly description: "Use virtual scrolling for large node lists"; readonly category: "performance"; readonly type: "boolean"; readonly defaultValue: true; readonly order: 4; }, { readonly key: "performance.maxVisibleNodes"; readonly label: "Max Visible Nodes"; readonly description: "Maximum number of nodes to render at once"; readonly category: "performance"; readonly type: "number"; readonly defaultValue: 1000; readonly min: 100; readonly max: 5000; readonly order: 5; }, { readonly key: "keyboard.undo"; readonly label: "Undo"; readonly description: "Keyboard shortcut for undo"; readonly category: "keyboard"; readonly type: "text"; readonly defaultValue: "Ctrl+Z"; readonly pattern: "^(Ctrl\\+|Cmd\\+|Alt\\+|Shift\\+)*[A-Za-z0-9]+$"; readonly order: 1; }, { readonly key: "keyboard.redo"; readonly label: "Redo"; readonly description: "Keyboard shortcut for redo"; readonly category: "keyboard"; readonly type: "text"; readonly defaultValue: "Ctrl+Y"; readonly pattern: "^(Ctrl\\+|Cmd\\+|Alt\\+|Shift\\+)*[A-Za-z0-9]+$"; readonly order: 2; }, { readonly key: "keyboard.selectAll"; readonly label: "Select All"; readonly description: "Keyboard shortcut for select all"; readonly category: "keyboard"; readonly type: "text"; readonly defaultValue: "Ctrl+A"; readonly pattern: "^(Ctrl\\+|Cmd\\+|Alt\\+|Shift\\+)*[A-Za-z0-9]+$"; readonly order: 3; }, { readonly key: "keyboard.delete"; readonly label: "Delete"; readonly description: "Keyboard shortcut for delete"; readonly category: "keyboard"; readonly type: "text"; readonly defaultValue: "Delete"; readonly order: 4; }, { readonly key: "keyboard.copy"; readonly label: "Copy"; readonly description: "Keyboard shortcut for copy"; readonly category: "keyboard"; readonly type: "text"; readonly defaultValue: "Ctrl+C"; readonly pattern: "^(Ctrl\\+|Cmd\\+|Alt\\+|Shift\\+)*[A-Za-z0-9]+$"; readonly order: 5; }, { readonly key: "keyboard.paste"; readonly label: "Paste"; readonly description: "Keyboard shortcut for paste"; readonly category: "keyboard"; readonly type: "text"; readonly defaultValue: "Ctrl+V"; readonly pattern: "^(Ctrl\\+|Cmd\\+|Alt\\+|Shift\\+)*[A-Za-z0-9]+$"; readonly order: 6; }, { readonly key: "keyboard.duplicate"; readonly label: "Duplicate"; readonly description: "Keyboard shortcut for duplicate"; readonly category: "keyboard"; readonly type: "text"; readonly defaultValue: "Ctrl+D"; readonly pattern: "^(Ctrl\\+|Cmd\\+|Alt\\+|Shift\\+)*[A-Za-z0-9]+$"; readonly order: 7; }, { readonly key: "keyboard.group"; readonly label: "Group"; readonly description: "Keyboard shortcut for group nodes"; readonly category: "keyboard"; readonly type: "text"; readonly defaultValue: "Ctrl+G"; readonly pattern: "^(Ctrl\\+|Cmd\\+|Alt\\+|Shift\\+)*[A-Za-z0-9]+$"; readonly order: 8; }, { readonly key: "keyboard.save"; readonly label: "Save"; readonly description: "Keyboard shortcut for save"; readonly category: "keyboard"; readonly type: "text"; readonly defaultValue: "Ctrl+S"; readonly pattern: "^(Ctrl\\+|Cmd\\+|Alt\\+|Shift\\+)*[A-Za-z0-9]+$"; readonly order: 9; }, { readonly key: "plugins.autoUpdate"; readonly label: "Auto Update Plugins"; readonly description: "Automatically update plugins when available"; readonly category: "plugins"; readonly type: "boolean"; readonly defaultValue: false; readonly order: 1; }, { readonly key: "plugins.allowUnsafe"; readonly label: "Allow Unsafe Plugins"; readonly description: "Allow loading plugins without security verification"; readonly category: "plugins"; readonly type: "boolean"; readonly defaultValue: false; readonly order: 2; }, { readonly key: "plugins.maxMemoryUsage"; readonly label: "Max Memory Usage"; readonly description: "Maximum memory usage for plugins (MB)"; readonly category: "plugins"; readonly type: "number"; readonly defaultValue: 100; readonly min: 10; readonly max: 1000; readonly order: 3; }, { readonly key: "advanced.debugMode"; readonly label: "Debug Mode"; readonly description: "Enable debug mode with additional logging"; readonly category: "advanced"; readonly type: "boolean"; readonly defaultValue: false; readonly order: 1; }, { readonly key: "advanced.showPerformanceMetrics"; readonly label: "Show Performance Metrics"; readonly description: "Display performance metrics in the UI"; readonly category: "advanced"; readonly type: "boolean"; readonly defaultValue: false; readonly order: 2; }, { readonly key: "advanced.logLevel"; readonly label: "Log Level"; readonly description: "Minimum log level to display"; readonly category: "advanced"; readonly type: "select"; readonly defaultValue: "info"; readonly options: [{ readonly value: "debug"; readonly label: "Debug"; }, { readonly value: "info"; readonly label: "Info"; }, { readonly value: "warn"; readonly label: "Warning"; }, { readonly value: "error"; readonly label: "Error"; }]; readonly order: 3; }, { readonly key: "advanced.experimentalFeatures"; readonly label: "Experimental Features"; readonly description: "Enable experimental features (may be unstable)"; readonly category: "advanced"; readonly type: "boolean"; readonly defaultValue: false; readonly order: 4; }, { readonly key: "advanced.customCSS"; readonly label: "Custom CSS"; readonly description: "Custom CSS to apply to the editor"; readonly category: "advanced"; readonly type: "textarea"; readonly defaultValue: ""; readonly placeholder: "/* Enter custom CSS here */"; readonly order: 5; }];