/// import { Viewer, Data, Loader } from "./base"; import { IncomingMessage, ServerResponse } from "http"; import * as clause from "./clause"; import { Context } from "./base"; export interface RequestContext extends Context { authViewer(viewer: Viewer): Promise; logout(): Promise; request: IncomingMessage; response: ServerResponse; } export declare class ContextCache { loaders: Map>; getLoader(name: string, create: () => Loader): Loader; private itemMap; private listMap; private getkey; getCachedRows(options: queryOptions): Data[] | null; getCachedRow(options: queryOptions): Data | null; primeCache(options: queryOptions, rows: Data[]): void; primeCache(options: queryOptions, rows: Data): void; clearCache(): void; } interface queryOptions { fields: string[]; tableName: string; clause: clause.Clause; orderby?: string; } export {};