import type { EnvironmentName } from '../../../beatmap/schema/shared/types/environment.js'; import type { IChromaEventRing, IChromaEventZoom } from '../../../beatmap/schema/v3/types/custom/chroma.js'; import type { IWrapBeatmapSubset } from '../../../beatmap/schema/wrapper/types/beatmap.js'; import type { DeepPartial } from '../../../types/utils.js'; import type { EventBox } from './types/lightMapper.js'; /** * This uses new lighting lighting syntax for v2 lighting including support for color and easing. * ```ts * const lightMapper = new LightMapper('FitbeatEnvironment'); * lightMapper.light(8, 2, [eventBox]); * lightMapper.process(mapData); * ``` * Not all functionality works here however, there are quirks that may not work too well. */ export declare class LightMapper { lightIDMapping: Record; readonly environment: EnvironmentName; private queue; private events; private boosts; constructor(environment: EnvironmentName); light(time: number, type: 0 | 1 | 2 | 3 | 4 | 6 | 7 | 10 | 11, eventBox: DeepPartial[], lightID?: number[]): this; ring(time: number, type: 8 | 9, customData?: IChromaEventRing): this; zoom(time: number, customData?: IChromaEventZoom): this; boost(time: number, toggle: boolean): this; private internalEventValue; process(mapData: IWrapBeatmapSubset<'basicEvents'>, overwrite?: boolean): void; } //# sourceMappingURL=lightMapper.d.ts.map