import { MultiControlType, PreCompiler, SingleControlType } from "./PreCompiler"; export declare abstract class ProcessorBase { protected preCompiler: Partial; constructor(preCompiler?: Partial); protected static filter(items: T[], fn: (e: T, i: number) => Promise): Promise; protected static map(items: T[], fn: (e: T, i: number) => Promise): Promise; } export declare abstract class PartialProcessor extends ProcessorBase { protected abstract preFilter(e: T, p: P): Promise; protected abstract postFilter(e: T, p: P): Promise; protected abstract process(e: T, p: P): Promise>; } export declare abstract class Processor extends PartialProcessor { execute(e: T, p: P): Promise; } export declare abstract class PartialListProcessor extends ProcessorBase { protected abstract preFilter(e: T, p: P, i: number): Promise; protected abstract postFilter(e: T, p: P, i: number): Promise; protected abstract process(e: T, p: P, i: number): Promise>; } export declare abstract class ListProcessor extends PartialListProcessor { execute(items: T[], p: P): Promise; }