import { IDeclarations, IProvider, Kernel, Logger } from "oly-core"; import { HttpServerProvider, IKoaMiddleware } from "oly-http"; import { ReactRouterProvider } from "oly-react"; import { ReactProxyService } from "../services/ReactProxyService"; import { ReactServerRenderer } from "../services/ReactServerRenderer"; import { ReactStaticService } from "../services/ReactStaticService"; /** * */ export declare class ReactServerProvider implements IProvider { mountId: string; points: string[] | string; protected httpServerProvider: HttpServerProvider; protected reactRouterProvider: ReactRouterProvider; protected reactServerRenderer: ReactServerRenderer; protected kernel: Kernel; protected logger: Logger; protected reactProxy: ReactProxyService; protected reactStatic: ReactStaticService; protected template: string; /** * Get the react app prefix. */ readonly hostname: string; /** * Mount a koa middleware on the react-server way. * * @param middleware Koa Middleware */ use(middleware: IKoaMiddleware): ReactServerProvider; /** * Hook - start * * @param deps Kernel dependencies */ onStart(deps: IDeclarations): Promise; /** * Get the default template. */ protected getDefaultTemplate(): Promise; /** * Default behavior for the react server. */ protected requestHandlerMiddleware(): IKoaMiddleware; /** * Create a new template (index.html empty) * Points are used to find the correct template. */ protected createTemplate(): Promise; }