import type { TimeProcessor } from '../../beatmap/helpers/timeProcessor.js'; import type { CharacteristicName } from '../../beatmap/schema/shared/types/characteristic.js'; import type { DifficultyName } from '../../beatmap/schema/shared/types/difficulty.js'; import type { ISwingAnalysis, ISwingAnalysisBaseNote, ISwingAnalysisBeatmap, ISwingCount } from './types/swing.js'; /** * Count the number of swings in period. */ export declare function count(colorNotes: T[], duration: number, timeProc: TimeProcessor): ISwingCount; /** * Generate swing analysis from beatmap. * * Port from Uninstaller's Swings Per Second tool */ export declare function info(beatmap: T, timeProc: TimeProcessor, characteristic: CharacteristicName, difficulty: DifficultyName): ISwingAnalysis; /** * Get first swings analysis that exceeds 40% progression drop. */ export declare function getProgressionMax(spsAnalysisArray: ISwingAnalysis[], minThreshold: number): { result: ISwingAnalysis; comparedTo?: ISwingAnalysis; } | null; /** * Get first swings analysis that does not reach 10% progression drop. */ export declare function getProgressionMin(spsArray: ISwingAnalysis[], minThreshold: number): { result: ISwingAnalysis; comparedTo?: ISwingAnalysis; } | null; /** * Calculate total percentage drop from highest to lowest swings analysis. */ export declare function calcSpsTotalPercDrop(spsArray: ISwingAnalysis[]): number; /** * Get lowest SPS. */ export declare function getSpsLowest(spsArray: ISwingAnalysis[]): number; /** * Get highest SPS. */ export declare function getSpsHighest(spsArray: ISwingAnalysis[]): number; //# sourceMappingURL=info.d.ts.map