fuse-box
Version:
Fuse-Box a bundler that does it right
54 lines (53 loc) • 1.25 kB
TypeScript
import { File } from "../core/File";
export interface TraversalPlugin {
onNode(file: File, node: any, parent: any): void;
onEnd(file: File): void;
}
export declare function acornParse(contents: any, options?: any): any;
/**
* Makes static analysis on the code
* Gets require statements (es5 and es6)
*
* Adds additional injections (if needed)
*
* @export
* @class FileAST
*/
export declare class FileAnalysis {
file: File;
ast: any;
private wasAnalysed;
private skipAnalysis;
bannedImports: {};
nativeImports: {};
fuseBoxMainFile: any;
requiresRegeneration: boolean;
fuseBoxVariable: string;
dependencies: string[];
constructor(file: File);
astIsLoaded(): boolean;
/**
* Loads an AST
*
* @param {*} ast
*
* @memberOf FileAnalysis
*/
loadAst(ast: any): void;
skip(): void;
/**
*
*
* @private
*
* @memberOf FileAST
*/
parseUsingAcorn(options?: any): void;
handleAliasReplacement(requireStatement: string): string;
addDependency(name: string): void;
resetDependencies(): void;
nodeIsString(node: any): boolean;
analyze(traversalOptions?: {
plugins: TraversalPlugin[];
}): void;
}