import type { IOptimizeOptions } from './types/optimize.js'; import type { InferBeatmapSerial, InferBeatmapVersion } from '../schema/shared/types/infer.js'; import type { BeatmapFileType } from '../schema/shared/types/schema.js'; type OptimizeMap = { [TVersion in InferBeatmapVersion]: (data: InferBeatmapSerial, options: IOptimizeOptions) => void; }; /** Optimize function version map for schema beatmap info. */ export declare const infoOptimizeMap: OptimizeMap<'info'>; /** Optimize function version map for schema beatmap difficulty. */ export declare const difficultyOptimizeMap: OptimizeMap<'difficulty'>; /** Optimize function version map for schema beatmap lightshow. */ export declare const lightshowOptimizeMap: OptimizeMap<'lightshow'>; /** * Mutably alters the serial contents of the beatmap file for filesize optimizations. * @param type The beatmap file type. * @param version The implied map format of the beatmap file. * @param data The serial contents of the beatmap file. * @param options The options supplied to the optimizer. */ export declare function optimizeBeatmap, TSerial extends InferBeatmapSerial>(type: TFileType, version: TVersion, data: TSerial, options: IOptimizeOptions): void; export {}; //# sourceMappingURL=optimizer.d.ts.map