import React, { ReactNode } from 'react'; import { UploadSource } from '../features/UploadData/main'; import { IModel } from '../features/UploadData/Components/SelectDataFromRLEF/interfaces/models'; import { IProject } from '../features/UploadData/Components/SelectDataFromRLEF/interfaces/projects'; import { ICollection } from '../features/UploadData/Components/SelectDataFromRLEF/interfaces/collections'; import { IData } from '../features/UploadData/Components/SelectDataFromRLEF/interfaces/data'; export interface IDataCartProjectsState { availableProjects: Array; isFetchingProjects: boolean; selectedProject: IProject | null; searchTerm: string; } export interface IDataCartTasksState { availableTasks: Array; isFetchingTasks: boolean; selectedTask: IModel | null; searchTerm: string; } export interface IDataSetState { availableDataSets: ICollection[]; isFetchingDataSets: boolean; selectedDataSet: ICollection | null; datasetCollectionTotalCount?: number; } interface DataSelectedContextType { selectedModeOfUploadData: UploadSource | null; setSelectedModeOfUploadData: (source: UploadSource) => void; projectsState: IDataCartProjectsState; tasksState: IDataCartTasksState; fetchAllProjects: () => Promise; fetchAllTasks: (projectId: string) => Promise; selectTask: (task: IModel | null) => void; selectProject: (project: IProject | null) => void; setProjectsSearchTerm: (term: string) => void; setTasksSearchTerm: (term: string) => void; selectOrUnselectAnRlefResource: (resource: IData) => void; breadcrumbs: Breadcrumb[]; setBreadcrumbs: React.Dispatch>; currentScreenState: ScreenState; setCurrentScreenState: React.Dispatch>; selectedLocalFiles: File[]; setSelectedLocalFiles: React.Dispatch>; dataSetState: IDataSetState; setDataSetState: React.Dispatch>; selectedRlefResources: Array; setSelectedRlefResources: React.Dispatch>; tempSelectedRlefResources: Array; setTempSelectedRlefResources: React.Dispatch>; selectedSavedDataSetIds: Set; setSelectedSavedDataSetIds: React.Dispatch>>; activeRlefDataTab: TActiveRlefDataTab; setActiveRlefDataTab: React.Dispatch>; } type Breadcrumb = { label: string; path?: string; onClick: () => void; }; export type ScreenState = "" | "dataSelectOptionsScreen" | "selectedDataListScreen" | "projectAndTaskSelectionScreen" | "rlefDataSetCollectionsScreen" | "rlefDataPointsInSelectedDataSetCollectionScreen" | "savedDataSetListScreen" | "viewSavedDataSetScreen" | "rlefHistoricalCopilotDataScreen"; export type TActiveRlefDataTab = "collections" | "data"; interface DataSelectedProviderProps { children: ReactNode; } export declare var currentScreenStateRef: { current?: ScreenState; }; export declare var currentScreenStateSetterRef: { current?: React.Dispatch>; }; export declare const DataSelectedProvider: React.FC; export declare const useSelectDataContext: () => DataSelectedContextType; export {}; //# sourceMappingURL=DataSelectedContext.d.ts.map