import { CallHandler, ExecutionContext, NestInterceptor, Type } from '@nestjs/common'; import { ModuleRef } from '@nestjs/core'; import * as DataLoader from 'dataloader'; import { Observable } from 'rxjs'; /** * This interface will be used to generate the initial data loader. * The concrete implementation should be added as a provider to your module. */ export interface NestDataLoader { /** * Should return a new instance of dataloader each time */ generateDataLoader(): DataLoader; } export declare class DataLoaderInterceptor implements NestInterceptor { private readonly moduleRef; constructor(moduleRef: ModuleRef); /** * @inheritdoc */ intercept(context: ExecutionContext, next: CallHandler): Observable; } /** * The decorator to be used within your graphql method. */ export declare const Loader: (...dataOrPipes: (Type> | import("@nestjs/common").PipeTransform | Type>)[]) => ParameterDecorator;