import { Request } from 'express'; import { PickerContext } from '../../schema/types'; import { RequestContext } from './request-context'; export declare const REQUEST_CONTEXT_KEY = "pickerRequestContext"; /** * 创建一个新的 RequestContext 实例 */ export declare class RequestContextService { constructor(); /** * @description * Creates a RequestContext based on the config provided. This can be useful when interacting * with services outside the request-response cycle, for example in stand-alone scripts or in * worker jobs. * 根据提供的配置创建一个 RequestContext,这在与请求-响应周期之外的服务交互时很有用, * 例如在独立脚本或 worker jobs中 * */ create(config: { req?: Request; picker?: PickerContext; }): Promise; /** * @description * 基于一个 Express 请求对象创建一个新的 RequestContext。 * 这是由 AuthGuard 在 API 层内部使用的,并创建 RequestContext, * 然后传递给所有 resolvers & controllers。 * @param req * @param info * @param requiredPermissions * @param session * @param picker */ fromRequest(req: Request, picker?: PickerContext): Promise; }