// @flow declare module 'next' { declare type NextApp = { prepare(): Promise; getRequestHandler(): any; render(req: any, res: any, pathname: string, query: any): any; renderToHTML(req: any, res: any, pathname: string, query: string): string; renderError(err: Error, req: any, res: any, pathname: any, query: any): any; renderErrorToHTML(err: Error, req: any, res: any, pathname: string, query: any): string; }; declare module.exports: (...opts: any) => NextApp } declare module 'next/head' { declare module.exports: Class>; } declare module 'next/link' { declare module.exports: Class>; } declare module 'next/error' { declare module.exports: Class>; } declare module 'next/document' { declare export var Head: Class>; declare export var Main: Class>; declare export var NextScript: Class>; declare export default Class> & { getInitialProps: (ctx: {pathname: string, query: any, req?: any, res?: any, err?: any}) => Promise; renderPage(cb: Function): void; }; }