import { AnyClass } from 'tn-typescript'; import { Exodas, ExoRoute } from '../..'; import { ExoTime } from '../../accessories/ExoTime'; import { ExoConnResponse } from '../../ExoConnection/ExoConnResponse/ExoConnResponse'; import { ExoRouteServeProps as ERServeProps } from '../accessories/ExoRouteServe'; type ExWatch = (props: ERServeProps) => any; type Bypass = (props: ERServeProps) => boolean; type ExData = (props: ERServeProps) => ExoCacheExtraData; export declare class ExoRouteCache { enable(duration: ExoTime): this; bypass(fn: Bypass): this; extraWatch(fn: ExWatch): this; extraData(fn: ExData): this; } export declare class ERCacheExec { private exo; private name; private hash; private enabled; private cache; private exdata; constructor(exo: Exodas, route: ExoRoute, props: ERServeProps); sendCache(res: ExoConnResponse): boolean; setCacheAndAutoSend(res: ExoConnResponse, value: any): Promise | undefined; } export {};