// flow-typed signature: 36af0b055ee208eb786e117b4d782a5a
// flow-typed version: <<STUB>>/uglify-js_v^2.6.4/flow_v0.42.0

/**
 * This is an autogenerated libdef stub for:
 *
 *   'uglify-js'
 *
 * Fill this stub out by replacing all the `any` types.
 *
 * Once filled out, we encourage you to share your work with the 
 * community by sending a pull request to: 
 * https://github.com/flowtype/flow-typed
 */

declare module 'uglify-js' {
  declare module.exports: any;
}

/**
 * We include stubs for each file inside this npm package in case you need to
 * require those files directly. Feel free to delete any files that aren't
 * needed.
 */
declare module 'uglify-js/bin/extract-props' {
  declare module.exports: any;
}

declare module 'uglify-js/lib/ast' {
  declare module.exports: any;
}

declare module 'uglify-js/lib/compress' {
  declare module.exports: any;
}

declare module 'uglify-js/lib/mozilla-ast' {
  declare module.exports: any;
}

declare module 'uglify-js/lib/output' {
  declare module.exports: any;
}

declare module 'uglify-js/lib/parse' {
  declare module.exports: any;
}

declare module 'uglify-js/lib/propmangle' {
  declare module.exports: any;
}

declare module 'uglify-js/lib/scope' {
  declare module.exports: any;
}

declare module 'uglify-js/lib/sourcemap' {
  declare module.exports: any;
}

declare module 'uglify-js/lib/transform' {
  declare module.exports: any;
}

declare module 'uglify-js/lib/utils' {
  declare module.exports: any;
}

declare module 'uglify-js/tools/exports' {
  declare module.exports: any;
}

declare module 'uglify-js/tools/node' {
  declare module.exports: any;
}

// Filename aliases
declare module 'uglify-js/bin/extract-props.js' {
  declare module.exports: $Exports<'uglify-js/bin/extract-props'>;
}
declare module 'uglify-js/lib/ast.js' {
  declare module.exports: $Exports<'uglify-js/lib/ast'>;
}
declare module 'uglify-js/lib/compress.js' {
  declare module.exports: $Exports<'uglify-js/lib/compress'>;
}
declare module 'uglify-js/lib/mozilla-ast.js' {
  declare module.exports: $Exports<'uglify-js/lib/mozilla-ast'>;
}
declare module 'uglify-js/lib/output.js' {
  declare module.exports: $Exports<'uglify-js/lib/output'>;
}
declare module 'uglify-js/lib/parse.js' {
  declare module.exports: $Exports<'uglify-js/lib/parse'>;
}
declare module 'uglify-js/lib/propmangle.js' {
  declare module.exports: $Exports<'uglify-js/lib/propmangle'>;
}
declare module 'uglify-js/lib/scope.js' {
  declare module.exports: $Exports<'uglify-js/lib/scope'>;
}
declare module 'uglify-js/lib/sourcemap.js' {
  declare module.exports: $Exports<'uglify-js/lib/sourcemap'>;
}
declare module 'uglify-js/lib/transform.js' {
  declare module.exports: $Exports<'uglify-js/lib/transform'>;
}
declare module 'uglify-js/lib/utils.js' {
  declare module.exports: $Exports<'uglify-js/lib/utils'>;
}
declare module 'uglify-js/tools/exports.js' {
  declare module.exports: $Exports<'uglify-js/tools/exports'>;
}
declare module 'uglify-js/tools/node.js' {
  declare module.exports: $Exports<'uglify-js/tools/node'>;
}
