/// import ts = require('typescript'); import { RawSourceMap } from 'source-map'; import { Visitor } from './visitor'; /** * result of transpilation action */ export interface TranspilerOutput { /** * the transpiled code, if transpilation was not halted */ code: string; /** * a raw sourcemap object representing all changes made from the supplied source to the transpiled code (visitors and typescript alike) */ sourceMap: RawSourceMap; /** * diagnostics produced by Typescript or the visitors */ diags: ts.Diagnostic[]; /** * did the transpilation fail */ halted: boolean; /** * Generated .d.ts file content */ declaration?: string; } export interface TranspilerConfig { sourceFileName: string; compilerOptions?: ts.CompilerOptions; visitors: Visitor[]; } export interface ValidatorConfig { resolutionHosts?: ts.ModuleResolutionHost[]; visitors?: Visitor[]; mutators?: Visitor[]; } export declare function transpile(content: string, config: TranspilerConfig): TranspilerOutput; export declare function validateAll(files: string[], config: ValidatorConfig): ts.Diagnostic[];