/// import { SchemaFileRepository } from '@cubejs-backend/shared'; import { NativeInstance } from '@cubejs-backend/native'; import { LRUCache } from 'lru-cache'; import vm from 'vm'; import { DataSchemaCompiler } from './DataSchemaCompiler'; import { CubeEvaluator } from './CubeEvaluator'; import { ContextEvaluator } from './ContextEvaluator'; import { ViewGroupEvaluator } from './ViewGroupEvaluator'; import { JoinGraph } from './JoinGraph'; import { CubeToMetaTransformer } from './CubeToMetaTransformer'; import { CompilerCache } from './CompilerCache'; import type { ErrorReporter } from './ErrorReporter'; export type PrepareCompilerOptions = { nativeInstance?: NativeInstance; allowNodeRequire?: boolean; allowJsDuplicatePropsInSchema?: boolean; maxQueryCacheSize?: number; maxQueryCacheAge?: number; compileContext?: any; standalone?: boolean; headCommitId?: string; adapter?: string; compiledScriptCache?: LRUCache; compiledYamlCache?: LRUCache; compiledJinjaCache?: LRUCache; }; export interface CompilerInterface { compile: (cubes: any[], errorReporter: ErrorReporter) => void; } export type Compiler = { compiler: DataSchemaCompiler; metaTransformer: CubeToMetaTransformer; cubeEvaluator: CubeEvaluator; contextEvaluator: ContextEvaluator; viewGroupEvaluator: ViewGroupEvaluator; joinGraph: JoinGraph; compilerCache: CompilerCache; headCommitId?: string; compilerId: string; }; export declare const prepareCompiler: (repo: SchemaFileRepository, options?: PrepareCompilerOptions) => Compiler; export declare const compile: (repo: SchemaFileRepository, options?: PrepareCompilerOptions) => Promise; //# sourceMappingURL=PrepareCompiler.d.ts.map