///
import { Viewer } from "../core/base";
import { RequestContext } from "../core/context";
import { IncomingMessage, ServerResponse } from "http";
export declare type AuthViewer = Viewer | null;
export interface AuthHandler {
authViewer(ctx: RequestContext): AuthViewer | Promise;
}
export declare function registerAuthHandler(name: string, auth: AuthHandler): Promise;
export declare function clearAuthHandlers(): Promise;
export declare function getLoggedInViewer(context: RequestContext): Promise;
export declare function buildContext(request: IncomingMessage, response: ServerResponse): Promise;