import { AliasHierarchyVisitor } from "./AliasHierarchyVisitor"; import { Dict } from "./utils/util-types"; import { MappedSingleSourceInsertionOperation } from "./MappedSingleSourceInsertionOperation"; import { MappedDataSource } from "./MappedDataSource"; import { SourceAwareOperationResolver } from "./SourceAwareOperationResolver"; import { SourceAwareResolverContext } from "./SourceAwareResolverContext"; /** * Implements resolution of insertion operation on a single data source * * Sample GraphQL request: * * ```graphql * mutation { * insertManyUsers(entities: [{id: 1, name: "John Doe"}]) { * id, name * } * } * ``` * * ```graphql * mutation { * insertOneUser(entity: {id: 1, name: "Jane Doe"}) { * id, name * } * } * ``` * * Assumes that: * * 1. Mapped entity being inserted is available through an entity/entities argument * 2. result fields in query correspond to mapped field names in data source * * 1 is not a hard assumption and custom argument mapping can be specified through args property in the OperationMapping. * * @see ArgMapping.interceptEntity * * @api-category CRUDResolvers */ export declare class SingleSourceInsertionOperationResolver, TSrc, TArgs>, TSrc extends MappedDataSource, TArgs extends {}, TResolved> extends SourceAwareOperationResolver { get entities(): Dict[]; get aliasHierarchyVisitor(): AliasHierarchyVisitor; resolve(): Promise; }