import { EventDto } from '../../../api/events';
import { ChangeEvent } from 'react';
import { FrameDetailUICmp } from '../components/AppContent/AppContent';
import { FrameDetailUI } from '../../../store/types/interfaces';
import { SnapshotDto } from '../../../api/snapshot';
import { GeneratedShape } from '../../../helpers/utils/generators';

declare const useDataEffect: (isImageAnalysis: boolean) => {
    getCurrentFrameDetailsSet: () => Set<FrameDetailUICmp>;
    setLocalFrameDetails: import('react').Dispatch<import('react').SetStateAction<FrameDetailUI[]>>;
    frameDetails: FrameDetailUI[];
    setFrameDetails: import('react').Dispatch<import('react').SetStateAction<FrameDetailUI[]>>;
    filteredData: (Omit<import('../../../api/position').FrameItemDto, "start_time" | "end_time"> & {
        id: number;
        color: string;
        startTime: string;
        endTime: string;
        selected: boolean;
        events: EventDto[] | null;
    } & {
        selected: boolean;
    } & {
        events?: EventDto[];
    })[];
    setFilteredData: import('react').Dispatch<import('react').SetStateAction<FrameDetailUICmp[]>>;
    data: SnapshotDto[];
    rows: any[];
    handleCheckBoxChange: (event: ChangeEvent<HTMLInputElement>, params: any) => void;
    handleSelectAllClick: (event: ChangeEvent<HTMLInputElement>) => void;
    shapesCoordinates: GeneratedShape[];
    trailShapes: GeneratedShape[];
    fovShapes: GeneratedShape[];
    crossLineShapes: GeneratedShape[];
    checkboxes: import('../../../store/types/types').CheckboxType[];
    columns: ({
        field: string;
        headerName: string;
        disableColumnMenu: boolean;
        filterable: boolean;
        maxWidth: number;
        sortable: boolean;
        renderHeader: () => import("react/jsx-runtime").JSX.Element;
        renderCell: (params: any) => import("react/jsx-runtime").JSX.Element;
        flex?: undefined;
        valueGetter?: undefined;
        width?: undefined;
        minWidth?: undefined;
    } | {
        field: string;
        headerName: string;
        flex: number;
        disableColumnMenu?: undefined;
        filterable?: undefined;
        maxWidth?: undefined;
        sortable?: undefined;
        renderHeader?: undefined;
        renderCell?: undefined;
        valueGetter?: undefined;
        width?: undefined;
        minWidth?: undefined;
    } | {
        field: string;
        headerName: string;
        flex: number;
        valueGetter: (params: any, value: any) => string;
        disableColumnMenu?: undefined;
        filterable?: undefined;
        maxWidth?: undefined;
        sortable?: undefined;
        renderHeader?: undefined;
        renderCell?: undefined;
        width?: undefined;
        minWidth?: undefined;
    } | {
        field: string;
        headerName: string;
        width: number;
        valueGetter: (params: import('../../../store/types/interfaces').IFeed) => string;
        disableColumnMenu?: undefined;
        filterable?: undefined;
        maxWidth?: undefined;
        sortable?: undefined;
        renderHeader?: undefined;
        renderCell?: undefined;
        flex?: undefined;
        minWidth?: undefined;
    } | {
        field: string;
        headerName: string;
        width: number;
        renderCell: (params: any) => import("react/jsx-runtime").JSX.Element;
        disableColumnMenu?: undefined;
        filterable?: undefined;
        maxWidth?: undefined;
        sortable?: undefined;
        renderHeader?: undefined;
        flex?: undefined;
        valueGetter?: undefined;
        minWidth?: undefined;
    } | {
        field: string;
        headerName: string;
        flex: number;
        minWidth: number;
        valueGetter: (params: any) => string;
        disableColumnMenu?: undefined;
        filterable?: undefined;
        maxWidth?: undefined;
        sortable?: undefined;
        renderHeader?: undefined;
        renderCell?: undefined;
        width?: undefined;
    } | {
        field: string;
        headerName: string;
        sortable: boolean;
        filterable: boolean;
        disableColumnMenu: boolean;
        maxWidth: number;
        renderCell: (params: any) => import("react/jsx-runtime").JSX.Element;
        renderHeader?: undefined;
        flex?: undefined;
        valueGetter?: undefined;
        width?: undefined;
        minWidth?: undefined;
    } | {
        field: string;
        headerName: string;
        disableColumnMenu: boolean;
        filterable: boolean;
        sortable: boolean;
        flex: number;
        minWidth: number;
        renderCell: (params: any) => import("react/jsx-runtime").JSX.Element;
        maxWidth?: undefined;
        renderHeader?: undefined;
        valueGetter?: undefined;
        width?: undefined;
    })[];
};
export default useDataEffect;
