import type { Logger } from '@mondaydotcomorg/atp-runtime';
import type { CacheProvider } from '@mondaydotcomorg/atp-protocol';
import { resumableForOf, resumableWhile, resumableForLoop, resumableMap, resumableForEach, resumableFilter, resumableReduce, resumableFind, resumableSome, resumableEvery, resumableFlatMap, resumablePromiseAll, resumablePromiseAllSettled, batchParallel, type ICompiler } from '@mondaydotcomorg/atp-compiler';
export interface CompilerResult {
    code: string;
    useCompiler: boolean;
    metadata?: {
        patterns?: string[];
        batchable?: boolean;
        loopCount?: number;
        arrayMethodCount?: number;
        parallelCallCount?: number;
    };
}
export declare function getCompilerRuntime(): {
    resumableForOf: typeof resumableForOf;
    resumableWhile: typeof resumableWhile;
    resumableForLoop: typeof resumableForLoop;
    resumableMap: typeof resumableMap;
    resumableForEach: typeof resumableForEach;
    resumableFilter: typeof resumableFilter;
    resumableReduce: typeof resumableReduce;
    resumableFind: typeof resumableFind;
    resumableSome: typeof resumableSome;
    resumableEvery: typeof resumableEvery;
    resumableFlatMap: typeof resumableFlatMap;
    resumablePromiseAll: typeof resumablePromiseAll;
    resumablePromiseAllSettled: typeof resumablePromiseAllSettled;
    batchParallel: typeof batchParallel;
};
export declare function transformCodeWithCompiler(code: string, executionId: string, cacheProvider: CacheProvider, executionLogger: Logger, injectedCompiler?: ICompiler): Promise<CompilerResult>;
//# sourceMappingURL=compiler-config.d.ts.map