import { PayloadAction } from '@reduxjs/toolkit'; import { WritableDraft } from 'immer'; import { AxisId } from './cartesianAxisSlice'; import { IfOverflow } from '../util/IfOverflow'; export type ReferenceElementSettings = { yAxisId: AxisId; xAxisId: AxisId; ifOverflow: IfOverflow; }; export type ReferenceDotSettings = ReferenceElementSettings & { x: unknown; y: unknown; r: number; }; export type ReferenceAreaSettings = ReferenceElementSettings & { x1: unknown; x2: unknown; y1: unknown; y2: unknown; }; export type ReferenceLineSettings = ReferenceElementSettings & { x: unknown; y: unknown; }; type ReferenceElementState = { dots: ReadonlyArray; areas: ReadonlyArray; lines: ReadonlyArray; }; export declare const referenceElementsSlice: import("@reduxjs/toolkit").Slice, action: PayloadAction) => void; removeDot: (state: WritableDraft, action: PayloadAction) => void; addArea: (state: WritableDraft, action: PayloadAction) => void; removeArea: (state: WritableDraft, action: PayloadAction) => void; addLine: (state: WritableDraft, action: PayloadAction) => void; removeLine: (state: WritableDraft, action: PayloadAction) => void; }, "referenceElements">; export declare const addDot: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload, removeDot: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload, addArea: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload, removeArea: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload, addLine: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload, removeLine: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload; export declare const referenceElementsReducer: import("redux").Reducer; export {};