// flow-typed signature: a4f400ae271b6cb6dc34c2bd886055d4
// flow-typed version: <<STUB>>/scroll-to_v0.0.2/flow_v0.42.0

/**
 * This is an autogenerated libdef stub for:
 *
 *   'scroll-to'
 *
 * 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 'scroll-to' {
  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.
 */


// Filename aliases
declare module 'scroll-to/index' {
  declare module.exports: $Exports<'scroll-to'>;
}
declare module 'scroll-to/index.js' {
  declare module.exports: $Exports<'scroll-to'>;
}
