/**
 * Editors - CodeMirror 6 based editor components
 * @countermeasure/web-components/editors
 */

// Types
export type {
  EditorTheme,
  BaseEditorConfig,
  CodeEditorConfig,
  AutocompleteSchema,
  TableSchema,
  ColumnSchema,
  CompletionItem,
  ValidationConfig,
  ValidationResult,
  ValidationError,
  LogViewerConfig,
  LogSeverity,
  LogLine,
  JsonViewerConfig,
  YamlEditorConfig,
  DiffViewerConfig,
} from './types'

// Base editor
export { BaseEditor, resolveContainer } from './base'

// Specialized editors
export { CodeEditor } from './code-editor'
export { LogViewer } from './log-viewer'
export { JsonViewer } from './json-viewer'
export { YamlEditor } from './yaml-editor'
export { DiffViewer } from './diff-viewer'

// Languages (for advanced use / direct CodeMirror integration)
export { fluxl, fluxlCompletions, fluxlLanguage } from './languages/fluxl'
export { yaral, yaralCompletions, yaralLanguage } from './languages/yaral'
export { yara, yaraCompletions, yaraLanguage } from './languages/yara'
export { sql, sqlCompletions } from './languages/sql'
export { json } from './languages/json'
export { yaml, yamlLanguage } from './languages/yaml'
export { python } from './languages/python'
export { javascript, typescript } from './languages/javascript'
export { rust } from './languages/rust'
export { markdown } from './languages/markdown'
export { shellLanguage } from './languages/shell'
