import { Program, File } from "@babel/types"; import { Module, ModuleId } from "./module"; import { Options } from "../options"; export declare type ExtractorInputAST = Program | File; export declare const getInputProgramAST: (ast: ExtractorInputAST) => Program; export declare type ModulesObj = { [modulePath: string]: Module; }; export declare type ModulesMap = Map; export interface ExtractResult { modules: ModulesObj | ModulesMap; entry?: ModuleId; entryPath?: string; } export interface Extractor { (ast: ExtractorInputAST, options?: Options): ExtractResult; }