import type { EntityAdapter } from "../../../schema-model/entity/EntityAdapter";
import { RelationshipAdapter } from "../../../schema-model/relationship/model-adapters/RelationshipAdapter";
import type { ConnectionSortArg, GraphQLSortingAndPaginationArgs } from "../../../types";
import type { Neo4jGraphQLTranslationContext } from "../../../types/neo4j-graphql-translation-context";
import { Pagination } from "../ast/pagination/Pagination";
import type { Sort } from "../ast/sort/Sort";
import type { QueryASTFactory } from "./QueryASTFactory";
export declare class SortAndPaginationFactory {
    private queryASTFactory;
    constructor(queryASTFactory: QueryASTFactory);
    createSortFields(options: GraphQLSortingAndPaginationArgs, entity: EntityAdapter | RelationshipAdapter, context: Neo4jGraphQLTranslationContext): Sort[];
    createConnectionSortFields(options: ConnectionSortArg, entityOrRel: EntityAdapter | RelationshipAdapter, context: Neo4jGraphQLTranslationContext): {
        edge: Sort[];
        node: Sort[];
    };
    createPagination(args: GraphQLSortingAndPaginationArgs): Pagination | undefined;
    private createPropertySort;
}
//# sourceMappingURL=SortAndPaginationFactory.d.ts.map