import { getCurrentInstruction, preProcessPath } from './Instructions';
import MapView, { MapViewProps } from './MapView';
import { jibestreamApi } from './api/jibestreamApi';
import OdpView from './OdpView';
import {
  MAP_SIMULATION_REFERENCE_TYPE,
  MAP_VIEW_REFERENCE_TYPE,
} from './CommandTypes';

export const JMapView: React.ForwardRefExoticComponent<
  MapViewProps &
    React.RefAttributes<MAP_VIEW_REFERENCE_TYPE & MAP_SIMULATION_REFERENCE_TYPE>
> = MapView;
export const JOdpViewModule = OdpView;
export const JibestreamApi = jibestreamApi;
export const Utilities = {
  getCurrentInstruction,
  preProcessPath,
};

export * from './CommandTypes';
export * from './JibestreamTypes';
export * from './schemas/OdpOnFacilityUpdateType';
export * from './schemas/OdpOnKeyValidationType';
export * from './schemas/OdpOnNavigationUpdateType';
export * from './schemas/OdpOnReadyType';
