UNPKG

fuse-box

Version:

Fuse-Box a bundler that does it right

34 lines (33 loc) 1.38 kB
import { Context } from '../../core/context'; import { IModule } from '../../moduleResolver/module'; import { IProductionContext } from '../../production/ProductionContext'; import { ISchema } from '../core/nodeSchema'; import { ISerializableTransformationContext } from '../transformer'; import { ASTNode } from './AST'; import { ImportType } from './ImportType'; export declare type ITransformerList = Array<ITransformerVisitors | undefined>; export declare type ITranformerCallbackController = (schema: ISchema) => any; export interface ITransformerVisitors { onEach?: ITranformerCallbackController; onProgramBody?: ITranformerCallbackController; } export interface IRequireStatementModuleOptions { breakDependantsCache?: boolean; } export interface ITransformerCommon { transformationContext: ISerializableTransformationContext; onRequireCallExpression?: (importType: ImportType, node: ASTNode, moduleOptions?: IRequireStatementModuleOptions) => void; } export interface ITransformerProduction { ctx: Context; module: IModule; productionContext: IProductionContext; } export interface ITransformer { target?: { test?: RegExp; type?: 'js' | 'js_ts' | 'ts'; }; commonVisitors?: (props?: ITransformerCommon) => ITransformerVisitors; productionWarmupPhase?: (props?: ITransformerProduction) => ITransformerVisitors; }