import type { Program, TypeChecker, TransformationContext } from 'typescript'; import type * as ts from 'typescript'; /** * copy from ts-patch, transformer extra params */ export declare type TransformerExtras = { /** * Originating TypeScript instance */ ts: typeof ts; /** * TypeScript library file event was triggered in (ie. 'tsserverlibrary' or 'typescript') */ library: string; addDiagnostic: (diag: ts.Diagnostic) => number; removeDiagnostic: (index: number) => void; diagnostics: readonly ts.Diagnostic[]; }; export interface IPlatformIndependentTransformerPluginConfig { } export interface IPlatformIndependentHost { program: Program; typeChecker: TypeChecker; transformationContext: TransformationContext; pluginConfig?: PluginConfig; transformerExtras: TransformerExtras; }