from myspellchecker.core.config import SpellCheckerConfig
from myspellchecker.core.config.validation_configs import ValidationConfig
validation = ValidationConfig(
# Confidence scores for different error types
syllable_error_confidence=1.0, # Syllable errors (highest certainty)
word_error_confidence=0.8, # Word errors
context_error_confidence_high=0.9, # High-confidence context errors
context_error_confidence_low=0.6, # Low-confidence context errors
# Validation thresholds
max_syllable_length=12, # Maximum valid syllable length
syllable_corruption_threshold=3, # Threshold for corrupted syllables
is_myanmar_text_threshold=0.5, # Myanmar text detection threshold
# Zawgyi handling
use_zawgyi_detection=True, # Detect Zawgyi encoding
use_zawgyi_conversion=True, # Auto-convert Zawgyi to Unicode
zawgyi_confidence_threshold=0.95, # Zawgyi detection confidence
# Colloquial variant handling
colloquial_strictness="lenient", # "strict", "lenient", or "off"
colloquial_info_confidence=0.3, # Confidence for colloquial info notes
# Extended Myanmar support
allow_extended_myanmar=False, # Allow non-Burmese Myanmar scripts
# Strategy-specific confidence thresholds
medial_confusion_confidence=0.85,
tone_validation_confidence=0.5,
syntactic_validation_confidence=0.9,
pos_sequence_confidence=0.85,
question_structure_confidence=0.7,
homophone_confidence=0.8,
homophone_improvement_ratio=5.0,
semantic_min_word_length=2,
# Debug options
strict_validation=True,
raise_on_strategy_error=False, # Set True for debugging
)
config = SpellCheckerConfig(validation=validation)