//#region src/utils/sortChildren.d.ts
/**
 * Sort comparator for file tree children.
 * Receives two paths and a function to check if a path is a folder.
 * Should return negative if a < b, positive if a > b, 0 if equal.
 */
type ChildrenComparator = (a: string, b: string, isFolder: (path: string) => boolean) => number;
type ChildrenSortOption = ChildrenComparator | false;
/**
 * Simple alphabetical comparator
 */
declare const alphabeticalChildrenComparator: ChildrenComparator;
/**
 * Default semantic comparator for file tree children.
 * Sort order:
 * 1. Folders before files
 * 2. Dot-prefixed (hidden) items before others within each group
 * 3. Case-insensitive alphabetical within each subgroup
 */
declare const defaultChildrenComparator: ChildrenComparator;
/**
 * Sorts an array of child paths using the provided comparator.
 *
 * @param children - Array of child paths to sort
 * @param isFolder - Function to check if a path is a folder
 * @param comparator - Comparator function (defaults to semantic sort)
 * @param parentPathLength - When provided, enables a fast name-extraction path
 *   using `path.slice(parentPathLength + 1)` instead of a backward `lastIndexOf`
 *   scan. Only valid for non-flattened children.
 * @returns New sorted array
 */
declare function sortChildren(children: string[], isFolder: (path: string) => boolean, comparator?: ChildrenSortOption, parentPathLength?: number): string[];
//#endregion
export { ChildrenComparator, ChildrenSortOption, alphabeticalChildrenComparator, defaultChildrenComparator, sortChildren };
//# sourceMappingURL=sortChildren.d.ts.map