import { CompilerVersionSelectionStrategy } from "./compiler_selection"; import { CompilationOutput, CompilerKind } from "./constants"; import { Remapping } from "./import_resolver"; import { FileMap } from "../ast"; export interface PathOptions { remapping?: string[]; basePath?: string; includePath?: string[]; } export interface MemoryStorage { [path: string]: { source: string | undefined; }; } export interface CompileResult { /** * Raw compiler JSON output */ data: any; /** * Compiler version used */ compilerVersion?: string; /** * Map from file-names (either passed in by caller, or source unit names of imported files) * to the contents of the respective files. */ files: FileMap; /** * Map from file-names appearing in the `files` map, to the * actual resolved paths on disk (if any). * * For `compileJSONData()` this maps each unit absolutePath to itself as no resolution is done. * */ resolvedFileNames: Map; /** * Map from file-names to the remapping inferred to resolve that given file-name */ inferredRemappings: Map; } export interface CompileFailure { errors: string[]; compilerVersion?: string; } export declare class CompileInferenceError extends Error { } export declare class CompileFailedError extends Error { failures: CompileFailure[]; constructor(entries: CompileFailure[]); } export declare function parsePathRemapping(remapping: string[]): Remapping[]; export declare function compile(files: FileMap, remapping: string[], version: string, compilationOutput?: CompilationOutput[], compilerSettings?: any, kind?: CompilerKind): Promise; export declare function detectCompileErrors(data: any): string[]; export declare function compileSourceString(fileName: string, sourceCode: string, version: string | CompilerVersionSelectionStrategy, pathOptions?: PathOptions, compilationOutput?: CompilationOutput[], compilerSettings?: any, kind?: CompilerKind): Promise; export declare function compileSol(fileName: string, version: string | CompilerVersionSelectionStrategy, pathOptions?: PathOptions, compilationOutput?: CompilationOutput[], compilerSettings?: any, kind?: CompilerKind): Promise; export declare function compileSol(fileNames: string[], version: string | CompilerVersionSelectionStrategy, pathOptions?: PathOptions, compilationOutput?: CompilationOutput[], compilerSettings?: any, kind?: CompilerKind): Promise; export declare function compileJsonData(fileName: string, data: any, version: string | CompilerVersionSelectionStrategy, compilationOutput?: CompilationOutput[], compilerSettings?: any, kind?: CompilerKind): Promise; export declare function compileJson(fileName: string, version: string | CompilerVersionSelectionStrategy, compilationOutput?: CompilationOutput[], compilerSettings?: any, kind?: CompilerKind): Promise; //# sourceMappingURL=utils.d.ts.map