export interface OptimizerOptions { blacklist?: string[] logLevel?: 'error' | 'warn' | 'info' | 'verbose' | 'debug' | 'silly' safeMode?: boolean obfuscateBabelSafePublicFields?: boolean } interface DefaultOptions extends OptimizerOptions { blacklist: [] logLevel: 'warn' safeMode: false obfuscateBabelSafePublicFields: true } export const defaultOptions: DefaultOptions type OptimizerInput = T & { source: string } type OptimizerOutput = OptimizerInput & { result: string } export function optimize( libModules: OptimizerInput[], sourceFiles: OptimizerInput[], options?: OptimizerOptions ): { libModules: OptimizerOutput[] sourceFiles: OptimizerOutput[] nameMap: Map }