type RecoType = 'DirectHit' | 'TemplateMatch' | 'FeatureMatch' | 'ColorMatch' | 'OCR' | 'NeuralNetworkClassify' | 'NeuralNetworkDetect' | 'Custom'; type ActType = 'DoNothing' | 'Click' | 'Swipe' | 'Key' | 'Text' | 'StartApp' | 'StopApp' | 'StopTask' | 'Custom'; type OrderByMap = { TemplateMatch: 'Horizontal' | 'Vertical' | 'Score' | 'Random'; FeatureMatch: 'Horizontal' | 'Vertical' | 'Score' | 'Area' | 'Random'; ColorMatch: 'Horizontal' | 'Vertical' | 'Score' | 'Area' | 'Random'; OCR: 'Horizontal' | 'Vertical' | 'Area' | 'Length' | 'Random'; NeuralNetworkClassify: 'Horizontal' | 'Vertical' | 'Score' | 'Random'; NeuralNetworkDetect: 'Horizontal' | 'Vertical' | 'Score' | 'Area' | 'Random'; }; type PipelineBuilderState = { done: Json; } & ('recognition' extends keyof Json ? {} : { recognition(reco: R): PipelineRecognitionBuilderState; }) & ('action' extends keyof Json ? {} : { action(act: A): PipelineActionBuilderState; }) & ('next' extends keyof Json ? {} : { next(...nxt: [...N]): PipelineBuilderState; }) & ('interrupt' extends keyof Json ? {} : { interrupt(...int: [...I]): PipelineBuilderState; }) & ('rate_limit' extends keyof Json ? {} : { rate_limit(rate: R): PipelineBuilderState; }) & ('timeout' extends keyof Json ? {} : { timeout(time: R): PipelineBuilderState; }) & ('on_error' extends keyof Json ? {} : { on_error(...err: [...O]): PipelineBuilderState; }) & ('inverse' extends keyof Json ? {} : { inverse(inv: I): PipelineBuilderState; }) & ('enabled' extends keyof Json ? {} : { enabled(en: E): PipelineBuilderState; }) & ('pre_delay' extends keyof Json ? {} : { pre_delay

(pre: P): PipelineBuilderState; }) & ('post_delay' extends keyof Json ? {} : { post_delay

(post: P): PipelineBuilderState; }) & ('pre_wait_freezes' extends keyof Json ? {} : { pre_wait_freezes: PipelineWaitFreezeBuilderState; }) & ('post_wait_freezes' extends keyof Json ? {} : { post_wait_freezes: PipelineWaitFreezeBuilderState; }) & ('focus' extends keyof Json ? {} : { focus(focus: F): PipelineBuilderState; }); type PipelineRecognitionBuilderState = { done: PipelineBuilderState; } & (Reco extends 'DirectHit' ? {} : ('roi' extends keyof Json ? {} : { roi(...roi: R): PipelineRecognitionBuilderState; }) & ('roi_offset' extends keyof Json ? {} : { roi_offset(...roi: R): PipelineRecognitionBuilderState; })) & (Reco extends 'TemplateMatch' | 'FeatureMatch' ? 'template' extends keyof Json ? {} : { template(...templ: [...T]): PipelineRecognitionBuilderState; } : {}) & (Reco extends 'TemplateMatch' | 'NeuralNetworkDetect' ? 'threshold' extends keyof Json ? {} : { threshold(...thres: [...T]): PipelineRecognitionBuilderState; threshold$(thres: T): PipelineRecognitionBuilderState; } : {}) & (Reco extends keyof OrderByMap ? 'order_by' extends keyof Json ? {} : { order_by(order: O): PipelineRecognitionBuilderState; } : {}) & (Reco extends keyof OrderByMap ? 'index' extends keyof Json ? {} : { index(idx: T): PipelineRecognitionBuilderState; } : {}) & (Reco extends 'TemplateMatch' ? 'method' extends keyof Json ? {} : { method(method: M): PipelineRecognitionBuilderState; } : {}) & (Reco extends 'ColorMatch' ? 'method' extends keyof Json ? {} : { method(method: M): PipelineRecognitionBuilderState; } : {}) & (Reco extends 'TemplateMatch' | 'FeatureMatch' ? 'green_mask' extends keyof Json ? {} : { green_mask(mask: G): PipelineRecognitionBuilderState; } : {}) & (Reco extends 'FeatureMatch' | 'ColorMatch' ? 'count' extends keyof Json ? {} : { count(count: C): PipelineRecognitionBuilderState; } : {}) & (Reco extends 'FeatureMatch' ? 'detector' extends keyof Json ? {} : { detector(det: D): PipelineRecognitionBuilderState; } : {}) & (Reco extends 'FeatureMatch' ? 'ratio' extends keyof Json ? {} : { ratio(ratio: R): PipelineRecognitionBuilderState; } : {}) & (Reco extends 'ColorMatch' ? 'method' extends keyof Json ? ('lower' extends keyof Json ? {} : Json['method'] extends 4 | 40 ? { lower(...lower: [...L]): PipelineRecognitionBuilderState; } : { lower(...lower: [...L]): PipelineRecognitionBuilderState; }) & ('upper' extends keyof Json ? {} : Json['method'] extends 4 | 40 ? { upper(...upper: [...L]): PipelineRecognitionBuilderState; } : { upper(...upper: [...U]): PipelineRecognitionBuilderState; }) : {} : {}) & (Reco extends 'ColorMatch' ? 'connected' extends keyof Json ? {} : { connected(conn: C): PipelineRecognitionBuilderState; } : {}) & (Reco extends 'OCR' ? 'expected' extends keyof Json ? {} : { expected(...exp: [...E]): PipelineRecognitionBuilderState; } : {}) & (Reco extends 'NeuralNetworkClassify' | 'NeuralNetworkDetect' ? 'expected' extends keyof Json ? {} : { expected(...exp: [...E]): PipelineRecognitionBuilderState; } : {}) & (Reco extends 'OCR' ? 'replace' extends keyof Json ? {} : { replace(...exp: [...R]): PipelineRecognitionBuilderState; } : {}) & (Reco extends 'OCR' ? 'only_rec' extends keyof Json ? {} : { only_rec(rec: O): PipelineRecognitionBuilderState; } : {}) & (Reco extends 'OCR' | 'NeuralNetworkClassify' | 'NeuralNetworkDetect' ? 'model' extends keyof Json ? {} : { model(model: M): PipelineRecognitionBuilderState; } : {}) & (Reco extends 'NeuralNetworkClassify' | 'NeuralNetworkDetect' ? 'labels' extends keyof Json ? {} : { labels(...label: [...L]): PipelineRecognitionBuilderState; } : {}) & (Reco extends 'Custom' ? 'custom_recognition' extends keyof Json ? {} : { custom_recognition(reco: C): PipelineRecognitionBuilderState; } : {}) & (Reco extends 'Custom' ? 'custom_recognition_param' extends keyof Json ? {} : { custom_recognition_param>(param: C): PipelineRecognitionBuilderState; } : {}); type PipelineActionBuilderState = { done: PipelineBuilderState; } & (Act extends 'Click' | 'Custom' ? 'target' extends keyof Json ? {} : { target(...target: T): PipelineActionBuilderState; } : {}) & (Act extends 'Click' | 'Custom' ? 'target_offset' extends keyof Json ? {} : { target_offset(...offset: O): PipelineActionBuilderState; } : {}) & (Act extends 'Swipe' ? 'begin' extends keyof Json ? {} : { begin(...begin: B): PipelineActionBuilderState; } : {}) & (Act extends 'Swipe' ? 'begin_offset' extends keyof Json ? {} : { begin_offset(...offset: B): PipelineActionBuilderState; } : {}) & (Act extends 'Swipe' ? 'end' extends keyof Json ? {} : { end(...end: E): PipelineActionBuilderState; } : {}) & (Act extends 'Swipe' ? 'end_offset' extends keyof Json ? {} : { end_offset(...offset: E): PipelineActionBuilderState; } : {}) & (Act extends 'Key' ? 'key' extends keyof Json ? {} : { key(...key: [...K]): PipelineActionBuilderState; } : {}) & (Act extends 'InputText' ? 'input_text' extends keyof Json ? {} : { input_text(text: T): PipelineActionBuilderState; } : {}) & (Act extends 'StartApp' | 'StopApp' ? 'package' extends keyof Json ? {} : { package

(pkg: P): PipelineActionBuilderState; } : {}) & (Act extends 'Custom' ? 'custom_action' extends keyof Json ? {} : { custom_action(act: C): PipelineActionBuilderState; } : {}) & (Act extends 'Custom' ? 'custom_action_param' extends keyof Json ? {} : { custom_action_param>(param: C): PipelineActionBuilderState; } : {}); type PipelineWaitFreezeBuilderState = { done: PipelineBuilderState; } & ('time' extends keyof Json ? {} : { time(time: T): PipelineWaitFreezeBuilderState; }) & ('target' extends keyof Json ? {} : { target(...target: T): PipelineWaitFreezeBuilderState; }) & ('target_offset' extends keyof Json ? {} : { target_offset(...offset: O): PipelineWaitFreezeBuilderState; }) & ('threshold' extends keyof Json ? {} : { threshold(thres: T): PipelineWaitFreezeBuilderState; }) & ('method' extends keyof Json ? {} : { method(met: M): PipelineWaitFreezeBuilderState; }) & ('rate_limit' extends keyof Json ? {} : { rate_limit(rate: R): PipelineWaitFreezeBuilderState; }); export declare function pp(): PipelineBuilderState; export {};