import App, { AppContext, AppProps, Container } from 'next/app'; import React from 'react'; import { ApolloProvider } from 'react-apollo'; import { WithApolloProps } from './types'; export { App, AppContext, AppProps, Container }; export default class ApolloApp extends App< WithApolloProps > { public render() { const { Component, pageProps, apollo } = this.props; return ( ); } } export function WithApolloApp( CustomApp: React.ComponentType> ) { return class extends App> { public render() { return ( ); } }; }