import type { ResolveTree } from "graphql-parse-resolve-info";
import type { ConcreteEntityAdapter } from "../../../../schema-model/entity/model-adapters/ConcreteEntityAdapter";
import type { Neo4jGraphQLTranslationContext } from "../../../../types/neo4j-graphql-translation-context";
import { TopLevelCreateMutationOperation } from "../../ast/operations/TopLevelCreateMutationOperation";
import { UnwindCreateOperation } from "../../ast/operations/UnwindCreateOperation";
import type { CallbackBucket } from "../../utils/callback-bucket";
import type { QueryASTFactory } from "../QueryASTFactory";
export declare class CreateFactory {
    private queryASTFactory;
    constructor(queryASTFactory: QueryASTFactory);
    createCreateOperation({ entity, resolveTree, callbackBucket, context, }: {
        entity: ConcreteEntityAdapter;
        resolveTree: ResolveTree;
        callbackBucket: CallbackBucket;
        context: Neo4jGraphQLTranslationContext;
    }): TopLevelCreateMutationOperation;
    createUnwindCreateOperation(entity: ConcreteEntityAdapter, resolveTree: ResolveTree, context: Neo4jGraphQLTranslationContext): UnwindCreateOperation;
    private parseUnwindCreate;
    private hydrateUnwindCreateOperation;
    private hydrateCreateOperation;
    private createNestedCreateOperation;
    private addPopulatedByFieldToCreate;
    private getInputNode;
    private getInputEdge;
    private addAutogeneratedFieldsToUnwindCreate;
    private parseAttributeInputField;
    private getEdgeOrNodePath;
    private addAttributeInputFieldToUnwindOperation;
    private addRelationshipInputFieldToUnwindOperation;
    private addEntityAuthorization;
    private addAttributeAuthorization;
    private addAuthorizationsForAttributesInUnwind;
}
//# sourceMappingURL=CreateFactory.d.ts.map