import { MappedDataSource } from "./MappedDataSource"; import { MultiSelection, MultiSelectionItem, Dict } from "./utils/util-types"; import { MappedAssociation } from "./MappedAssociation"; import { GraphQLResolveInfo } from "graphql"; import { ResolveInfoVisitor } from "./ResolveInfoVisitor"; import { MappedSourceAwareOperation } from "./MappedSourceAwareOperation"; import { SourceAwareResolverContext } from "./SourceAwareResolverContext"; export declare type DataSourceTypes, TSrc extends MappedDataSource, TArgs extends {}> = { [K in keyof ReturnType]: ReturnType[K]["selection"]>; }; export declare abstract class MappedMultiSourceOperation extends MappedSourceAwareOperation { readonly mapping: MappedSourceAwareOperation["mapping"] & { dataSources: , TSrc, TArgs>>() => MultiSelection & { deriveWhereParams?: (args: TArgs, association?: MappedAssociation) => Dict; }>; }; constructor(mapping: MappedSourceAwareOperation["mapping"] & { dataSources: , TSrc, TArgs>>() => MultiSelection & { deriveWhereParams?: (args: TArgs, association?: MappedAssociation) => Dict; }>; }); get supportsMultipleDataSources(): boolean; createResolverContext(source: any, args: TArgs, context: any, resolveInfo: GraphQLResolveInfo, resolveInfoVisitor?: ResolveInfoVisitor): Promise, TSrc, TArgs>>; iterateDataSources, TSrc, TArgs>>(resolverContext: TCtx): AsyncGenerator<{ key: string; dataSource: TSrc; dataSourceConfig: { selection: () => TSrc; deriveWhereParams?: ((args: TArgs, association?: MappedAssociation | undefined) => Dict) | undefined; }; }, void, unknown>; }