import { IRequestor, RequestId } from './requestTypes'; export interface IContext { requestor?: TRequestor; requestId: RequestId; } export interface IGqlContext> extends IContext { dataloader: TDataLoaderMappings; } export declare const getHeadersFromContext: (ctx: IContext) => { requestId: string; requestor: string; }; type RequestHeaderType = string | string[] | undefined; export interface RequestHeaders { headers: Record; } export declare function createContextFromRequest(req: TRequest): IContext; export interface IContextProviderBase { fromRequest(req: TRequest, action: (context: TContext) => Promise): Promise; } export type IContextProvider = IContextProviderBase; export declare class ContextProvider implements IContextProvider { fromRequest(req: TRequest, action: (context: IContext) => TDataToReturn): TDataToReturn; } export {}; //# sourceMappingURL=context.d.ts.map