@class NSCharacterSet, NSMutableDictionary, NSURL, CHCTCRecognitionModel, NSDictionary, NSLocale, CHStringOVSChecker, CHMecabraWrapper, NSObject, CHPatternNetwork, CVNLPCTCTextDecoder, NSMutableIndexSet, NSString, CHRecognizerConfiguration, CHRecognitionInsight, CHRecognitionInsightRequest, NSArray, CHSpellChecker, CHPostProcessingManager, CHDrawing; @protocol OS_dispatch_queue; @interface CHRecognizer : NSObject { CHRecognitionInsightRequest *_nextRecognitionInsightRequest; CHRecognitionInsight *_activeRecognitionInsight; NSArray *_whitelistMecabraRareCharacters; struct optional, CoreRecognition::decoder::SpaceSegmentedPathBuilder>> { union { char __null_state_; struct CTCBeamSearchDecoder, CoreRecognition::decoder::SpaceSegmentedPathBuilder> { void /* function */ **_vptr$AbstractCTCDecoder; unsigned long long blankLabel_; struct AdditiveCombiningBeamScorer { void /* function */ **_vptr$BaseBeamScorer; double weight_; double logProbLowerBound_; struct vector, std::allocator>> { void *__begin_; void *__end_; struct __compressed_pair *, std::allocator>> { void *__value_; } __end_cap_; } scorers_; } beamScorer_; struct SpaceSegmentedPathBuilder { void /* function */ **_vptr$AbstractResultPathBuilder; BOOL optimizeAlignment_; struct vector> { unsigned long long *__begin_; unsigned long long *__end_; struct __compressed_pair> { unsigned long long *__value_; } __end_cap_; } spaceLabels_; } pathBuilder_; struct CTCBeamSearchConfig { unsigned long long blankLabel; int beamWidth; int numBestPaths; double labelSelectionThreshold; struct optional { union { char __null_state_; struct ActivationPruning { float threshold; unsigned long long numCandidates; BOOL cumulative; } __val_; } ; BOOL __engaged_; } pruner; } config_; } __val_; } ; BOOL __engaged_; } _modernizedTextDecoder; struct CHNeuralNetwork { void /* function */ *x0; BOOL x1; struct CHCodeMap *x2; unsigned int x3; unsigned int x4; unsigned int x5; unsigned int x6; id x7; id x8; struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; } x9; } *_engine; struct CHNeuralNetwork { void /* function */ *x0; BOOL x1; struct CHCodeMap *x2; unsigned int x3; unsigned int x4; unsigned int x5; unsigned int x6; id x7; id x8; struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; } x9; } *_freeformEngine; CHCTCRecognitionModel *_recognitionModel; CVNLPCTCTextDecoder *_textDecoder; NSObject *_recognitionQueue; void *_radicalClusterFST; void *_formatGrammarFST; CHPatternNetwork *_patternFST; CHPatternNetwork *_postProcessingFST; void *_lmVocabulary; void *_characterLanguageModel; void *_cjkStaticLexicon; void *_cjkDynamicLexicon; struct _LXLexicon { } *_secondaryStaticLexicon; struct _LXLexicon { } *_phraseLexicon; struct _LXLexicon { } *_customLexicon; NSMutableDictionary *_textReplacementLowercasedKeyMapping; NSURL *_learningDictionaryURL; CHDrawing *_cachedDrawing; struct VariantMap { int *x0; int *x1; int *x2; int x3; int *x4; unsigned long long x5; } *_transliterationVariantMap; void **_icuTransliterator; unsigned long long _lastCharacterSegmentCount; NSMutableIndexSet *_lastCharacterSegmentIndexes; struct map, std::vector, std::less>, std::allocator, std::vector>>> { struct __tree, std::vector>, std::__map_value_compare, std::__value_type, std::vector>, std::less>>, std::allocator, std::vector>>> { void *__begin_node_; struct __compressed_pair *>, std::allocator, std::vector>, void *>>> { struct __tree_end_node *> { void *__left_; } __value_; } __pair1_; struct __compressed_pair, std::__value_type, std::vector>, std::less>>> { unsigned long long __value_; } __pair3_; } __tree_; } _cachedResults; struct map, std::allocator>> { struct __tree, std::__map_value_compare, std::less>, std::allocator>> { void *__begin_node_; struct __compressed_pair *>, std::allocator, void *>>> { struct __tree_end_node *> { void *__left_; } __value_; } __pair1_; struct __compressed_pair, std::less>> { unsigned long long __value_; } __pair3_; } __tree_; } _characterIDMap; } @property (readonly, nonatomic) CHRecognitionInsight *recordedInsightFromLastRequest; @property (retain, nonatomic) CHSpellChecker *spellChecker; @property (nonatomic) struct _LXLexicon { } *customPhraseLexicon; @property (retain, nonatomic) NSDictionary *textReplacements; @property (retain, nonatomic) CHPostProcessingManager *postProcessor; @property (retain, nonatomic) CHPostProcessingManager *mergedResultPostProcessor; @property (retain, nonatomic, setter=_setConfiguration:) CHRecognizerConfiguration *configuration; @property (retain, nonatomic) CHMecabraWrapper *mecabraWrapper; @property (nonatomic) struct _LXLexicon { } *staticLexicon; @property (nonatomic) void *wordLanguageModel; @property (retain, nonatomic) CHStringOVSChecker *ovsStringChecker; @property (nonatomic) int recognitionMode; @property (copy, nonatomic) NSLocale *locale; @property (nonatomic) int recognitionType; @property (nonatomic) BOOL enableCachingIfAvailable; @property (nonatomic) BOOL enableGen2ModelIfAvailable; @property (nonatomic) BOOL enableGen2CharacterLMIfAvailable; @property (nonatomic) int contentType; @property (nonatomic) int autoCapitalizationMode; @property (nonatomic) int autoCorrectionMode; @property (nonatomic) int baseWritingDirection; @property (nonatomic) unsigned long long maxRecognitionResultCount; @property (retain, nonatomic) NSCharacterSet *activeCharacterSet; @property (nonatomic) struct CGSize { double width; double height; } minimumDrawingSize; @property (readonly) unsigned long long hash; @property (readonly) Class superclass; @property (readonly, copy) NSString *description; @property (readonly, copy) NSString *debugDescription; + (BOOL)isLocaleSupported:(id)a0 withMode:(int)a1; + (void)_updatePrecedingAndTrailingSeparatorsForTopCandidate:(id)a0 history:(id)a1 textAfter:(id)a2 locale:(id)a3 outTrailingSeparator:(id *)a4 inFirstTokenHasPrecedingSpace:(BOOL)a5 outFirstTokenHasPrecedingSpace:(BOOL *)a6; - (void)dealloc; - (id).cxx_construct; - (void).cxx_destruct; - (id)supportedCharacterSet; - (id)characterSetForStrings:(id)a0; - (id)initWithMode:(int)a0 locale:(id)a1; - (id)recognitionResultsForDrawing:(id)a0 options:(id)a1; - (id)_addAlternativeCandidatesForTokenizedResult:(id)a0; - (void)_adjustCandidatesForConfusableCharacters:(void *)a0; - (void)_adjustResultsForConfusableCharacters:(id)a0; - (id)_applySentenceTransliterationCandidates:(unsigned short *)a0 codesLen:(int)a1 codesMax:(int)a2; - (void)_applyTransliterationAndSyntheticCandidates:(void *)a0; - (void)_calculateBestTranscriptionPaths:(id *)a0 scores:(id *)a1 fromTokenizedResult:(id)a2 pathCount:(long long)a3 history:(id)a4 skipLMRescoring:(BOOL)a5; - (double)_calculateJointWordLMScoreForString:(id)a0 wordRanges:(id)a1 wordIDs:(id)a2 patternEntries:(id)a3 history:(unsigned int *)a4 historyLength:(unsigned long long)a5; - (id)_changeableColumnCountUpdatedResult:(id)a0 options:(id)a1; - (id)_contextTokenIDsFromHistory:(id)a0 maxCharacterLength:(unsigned long long)a1 maxTokenCount:(unsigned long long)a2; - (id)_defaultPunctuationStringsOutputScores:(id *)a0 maxCandidateCount:(long long)a1; - (unsigned long long)_effectiveMaxRecognitionResultCount; - (void)_initializeMergedResultPostProcessor; - (BOOL)_isLocaleSupported:(id)a0; - (id)_postprocessingMergedRecognitionResult:(id)a0 options:(id)a1; - (void)_rescoreCandidatesWithLanguageModel:(void *)a0 history:(id)a1; - (id)_resultUsingNextGenerationPipelineWithDrawing:(id)a0 options:(id)a1; - (id)_tokenFromLegacyResult:(id)a0 wordIndex:(unsigned long long)a1 strokeSet:(id)a2 substrokeCount:(long long)a3; - (id)_tokenizedTextResultFromResults:(id)a0 segmentGroup:(id)a1 offsetSegment:(long long)a2 decodedStrokeSets:(BOOL)a3 spaceBehavior:(long long)a4; - (id)_tokensUsingLMTokenizerForString:(id)a0 wordRanges:(id)a1 nonWordPatterns:(id)a2 outTokenIDs:(id *)a3; - (void)_updateWordLanguageModel:(void *)a0; - (id)bestTranscriptionPathsForTokenizedResult:(id)a0 scores:(id *)a1 history:(id)a2; - (void)candidateAccepted:(void *)a0; - (struct vector> { void **x0; void **x1; struct __compressed_pair> { void **x0; } x2; })completionsForCandidate:(id)a0 candidateContext:(id)a1 prefix:(id)a2 option:(unsigned long long)a3; - (struct vector> { void **x0; void **x1; struct __compressed_pair> { void **x0; } x2; })completionsForCandidate:(id)a0 prefix:(id)a1 option:(unsigned long long)a2; - (id)initWithMode:(int)a0 locale:(id)a1 learningDictionaryURL:(id)a2; - (id)initWithMode:(int)a0 locale:(id)a1 learningDictionaryURL:(id)a2 recognizerOptions:(id)a3; - (id)initWithMode:(int)a0 locale:(id)a1 recognizerOptions:(id)a2; - (id)initWithType:(int)a0 mode:(int)a1; - (id)initWithType:(int)a0 mode:(int)a1 learningDictionaryURL:(id)a2; - (id)initWithType:(int)a0 mode:(int)a1 locale:(struct __CFLocale { } *)a2; - (id)initWithType:(int)a0 mode:(int)a1 locale:(struct __CFLocale { } *)a2 learningDictionaryURL:(id)a3; - (BOOL)isOVSString:(id)a0; - (BOOL)isRareChineseEntry:(id)a0; - (id)recognitionEngineCachingKey; - (id)recognitionResultsForDrawing:(id)a0 options:(id)a1 shouldCancel:(id /* block */)a2; - (void)recordInsightWithRequest:(id)a0; - (void)setCustomLexicon:(struct _LXLexicon { } *)a0 customVocabulary:(void *)a1; - (id)strokeIndexesForLastCharacter; - (id)supportedStrings; - (id)textRecognitionResultForDrawing:(id)a0 options:(id)a1 shouldCancel:(id /* block */)a2; - (id)textRecognitionResultForDrawing:(id)a0 options:(id)a1 writingStatistics:(id)a2 shouldCancel:(id /* block */)a3; - (id)transliterationVariantsForString:(id)a0; - (void)updateAddressBookLexicon:(id)a0; - (void)updateMecabraWithRegionalOTAAssets:(id)a0 nonRegionalOTAAssets:(id)a1; - (void)updateUserDictionaryLexicon:(id)a0; @end