import { type TSESLint, type TSESTree } from '@typescript-eslint/utils';
/**
 * Sorts Angular standalone import elements into a deterministic, alphabetical order.
 *
 * The sorting rules:
 * 1. Regular elements (Identifiers, MemberExpressions, etc.) are sorted alphabetically.
 * 2. Spread elements (e.g. `...A`) are sorted separately and placed after regular ones.
 * 3. Sorting is based on the string value returned by `nameOf()`.
 *
 * @example
 * // Input:
 * [B, ...Z, A]
 *
 * // Output:
 * ["A", "B", "...Z"]
 *
 * @param elements - Raw AST elements from the `imports: [...]` array.
 * @param source   - ESLint SourceCode object used to extract text for complex expressions.
 *
 * @returns A list of sorted element names, ready to be joined into a fixed array.
 */
export declare function getSortedNames(elements: Array<TSESTree.Expression | TSESTree.SpreadElement>, source: Readonly<TSESLint.SourceCode>): string[];
