import type { SignalKind, Zone } from '@zakodium/nmr-types'; import type { ZonesViewState } from '@zakodium/nmrium-core'; import type { FromTo } from 'cheminfo-types'; import type { Draft } from 'immer'; import type { Axis } from '../../assignment/AssignmentsContext.js'; import type { TargetAssignKeys } from '../../panels/MoleculesPanel/utilities/getAssignIds.js'; import type { ZoneData } from '../../panels/ZonesPanel/hooks/useMapZones.js'; import type { FilterType } from '../../utility/filterType.js'; import type { State } from '../Reducer.js'; import type { ZoneBoundary } from '../helper/get2DRange.js'; import type { ActionType } from '../types/ActionType.js'; interface DeleteSignal2DProps { spectrumId: string; zone: Zone; signalId: string; } type ChangeZonesFactorAction = ActionType<'CHANGE_ZONES_NOISE_FACTOR', { zonesNoiseFactor: number; zonesMinMaxRatio: number; }>; type Add2dZoneAction = ActionType<'ADD_2D_ZONE', ZoneBoundary>; type AutoZonesDetectionAction = ActionType<'AUTO_ZONES_DETECTION', { zonesNoiseFactor: number; zonesMinMaxRatio: number; }>; type ChangeZoneSignalDeltaAction = ActionType<'CHANGE_ZONE_SIGNAL_VALUE', { zoneId: string; signal: { id?: string; deltaX?: number; deltaY?: number; }; }>; type ChangeZoneSignalKindAction = ActionType<'CHANGE_ZONE_SIGNAL_KIND', { zoneData: ZoneData; kind: SignalKind; }>; type DeleteZoneAction = ActionType<'DELETE_2D_ZONE', { id?: string; }>; type DeleteSignal2DAction = ActionType<'DELETE_2D_SIGNAL', DeleteSignal2DProps>; type SetSignalPathLengthAction = ActionType<'SET_2D_SIGNAL_PATH_LENGTH', { spectrumId: string; zone: Zone; signalId: string; pathLength: number | FromTo | undefined; }>; type AssignZoneAction = ActionType<'ASSIGN_ZONE', { keys: TargetAssignKeys; axis: Axis; } & Required>>; type SaveEditedZoneAction = ActionType<'SAVE_EDITED_ZONE', { zone: ZoneData; }>; interface UnlinkZoneProps { zoneKey?: string; isOnZoneLevel?: boolean; signalIndex?: number; axis?: Axis; } type UnlinkZoneAction = ActionType<'UNLINK_ZONE', UnlinkZoneProps>; type ToggleZonesViewAction = ActionType<'TOGGLE_ZONES_VIEW_PROPERTY', { key: keyof FilterType; }>; type ChangeZoneAssignmentLabelAction = ActionType<'CHANGE_ZONE_ASSIGNMENT_LABEL', { zoneID: string; value: string; }>; type SetZoneAssignmentLabelCoordinationAction = ActionType<'SET_ZONE_ASSIGNMENT_LABEL_COORDINATION', { zoneID: string; coordination: { x: number; y: number; }; }>; export type ZonesActions = AutoZonesDetectionAction | ChangeZonesFactorAction | Add2dZoneAction | ChangeZoneSignalDeltaAction | ChangeZoneSignalKindAction | DeleteZoneAction | DeleteSignal2DAction | SetSignalPathLengthAction | AssignZoneAction | SaveEditedZoneAction | UnlinkZoneAction | ToggleZonesViewAction | ChangeZoneAssignmentLabelAction | SetZoneAssignmentLabelCoordinationAction | ActionType<'AUTO_ZONES_SPECTRA_PICKING'>; declare function handleChangeZonesFactor(draft: Draft, action: ChangeZonesFactorAction): void; declare function handleAdd2dZone(draft: Draft, action: Add2dZoneAction): void; declare function handleAutoZonesDetection(draft: Draft, action: AutoZonesDetectionAction): void; declare function handleAutoSpectraZonesDetection(draft: Draft): void; declare function handleChangeZoneSignalDelta(draft: Draft, action: ChangeZoneSignalDeltaAction): void; declare function handleChangeZoneSignalKind(draft: Draft, action: ChangeZoneSignalKindAction): void; declare function handleDeleteZone(draft: Draft, action: DeleteZoneAction): void; declare function deleteSignal2D(draft: Draft, options: DeleteSignal2DProps): void; declare function handleDeleteSignal(draft: Draft, action: DeleteSignal2DAction): void; declare function handleSetSignalPathLength(draft: Draft, action: SetSignalPathLengthAction): void; declare function handleUnlinkZone(draft: Draft, action: UnlinkZoneAction): void; declare function handleAssignZone(draft: Draft, action: AssignZoneAction): void; declare function handleSaveEditedZone(draft: Draft, action: SaveEditedZoneAction): void; declare function handleToggleZonesViewProperty(draft: Draft, action: ToggleZonesViewAction): void; declare function handleChangeZoneAssignmentLabel(draft: Draft, action: ChangeZoneAssignmentLabelAction): void; declare function handleSetZoneAssignmentLabelCoordination(draft: Draft, action: SetZoneAssignmentLabelCoordinationAction): void; export { deleteSignal2D, handleAdd2dZone, handleAssignZone, handleAutoSpectraZonesDetection, handleAutoZonesDetection, handleChangeZoneAssignmentLabel, handleChangeZoneSignalDelta, handleChangeZoneSignalKind, handleChangeZonesFactor, handleDeleteSignal, handleDeleteZone, handleSaveEditedZone, handleSetSignalPathLength, handleSetZoneAssignmentLabelCoordination, handleToggleZonesViewProperty, handleUnlinkZone, }; //# sourceMappingURL=ZonesActions.d.ts.map