import { RequestManager, WardenRequestOptions, RouteConfiguration } from "./request-manager"; import { CacheFactory, CachePlugin } from "./cache-factory"; import { RequestCallback } from "./streamer"; declare class Warden { static debug: boolean; private requestManager; private cacheFactory; constructor(requestManager: RequestManager, cacheFactory: CacheFactory); get debug(): boolean; set debug(enabled: boolean); /** * Registers a new route to Warden * @param name * @param routeConfiguration */ register(name: string, routeConfiguration: RouteConfiguration): (requestOptions: WardenRequestOptions, cb: RequestCallback) => void; /** * Sends a new HTTP Request using warden * @param name * @param requestOptions * @param cb */ request(name: string, requestOptions: WardenRequestOptions, cb: RequestCallback): void; /** * Checks whether route is registered * @param name */ isRouteRegistered(name: string): boolean; /** * Unregisters Route * @param name */ unregisterRoute(name: string): void; /** * @param name * @param plugin */ registerCachePlugin(name: string, plugin: CachePlugin | (new () => CachePlugin)): void; } export { Warden };