import { Contracts } from "@arkecosystem/core-kernel"; import Hapi from "@hapi/hapi"; import Joi from "joi"; import { Controller } from "../controllers/controller"; export declare type Codec = { request: { serialize: any; deserialize: any; }; response: { serialize: any; deserialize: any; }; }; export declare type RouteConfig = { id: string; handler: any; validation?: Joi.Schema; codec: Codec; maxBytes?: number; }; export declare abstract class Route { protected readonly app: Contracts.Kernel.Application; register(server: Hapi.Server): void; abstract getRoutesConfigByPath(): { [path: string]: RouteConfig; }; protected abstract getController(server: Hapi.Server): Controller; } //# sourceMappingURL=route.d.ts.map