import { RecordValue } from '@coveo/bueno';
import { buildRelevanceSortCriterion, type SortByFields as CoreSortByFields, type SortByFieldsFields as CoreSortByFieldsFields, SortBy, type SortByRelevance, SortDirection } from '../../sort/sort.js';
export type { SortByRelevance };
export { buildRelevanceSortCriterion, SortBy, SortDirection };
export type SortByFields = Pick<CoreSortByFields, 'by'> & {
    fields: SortByFieldsFields[];
};
export type SortByFieldsFields = CoreSortByFieldsFields & {
    displayName?: string;
};
export type SortCriterion = SortByRelevance | SortByFields;
/**
 * Builds a field sort criterion.
 *
 * @param fields - An array of fields to sort by.
 * @returns The sort criterion object.
 */
export declare const buildFieldsSortCriterion: (fields: SortByFieldsFields[]) => SortByFields;
export declare const sortCriterionDefinition: RecordValue;
