import { Entity } from 'cesium'; import { AnyAction } from 'redux'; import { ThunkAction } from 'redux-thunk'; import { BoxEntity, CylinderEntity, Modelling, PolygonEntity, RoofEntity, State } from '../State'; export declare enum ModellingActionsType { TOGGLE_MODELLING = "TOGGLE_MODELLING", TOGGLE_DELETE = "TOGGLE_DELETE", TOGGLE_DRAW_POLYGON = "TOGGLE_DRAW_POLYGON", TOGGLE_MEASURES = "TOGGLE_MEASURES", TOGGLE_COLOR = "TOGGLE_COLOR", TOGGLE_NAME = "TOGGLE_NAME", SET_CYLINDERS = "SET_CYLINDERS", SET_BOXES = "SET_BOXES", SET_POLYGONS = "SET_POLYGONS", SET_DRAW_POLYGON_BOXES = "SET_DRAW_POLYGON_BOXES", SET_ROOFS = "SET_ROOFS", SET_NAME = "SET_NAME", INITIALISE_SHARED_IDS = "INITIALISE_SHARED_IDS", CLEAR_MODELLINGS = "CLEAR_MODELLINGS", SET_MODEL_INFO = "SET_MODEL_INFO", CLEAR_SHARED_MODELLINGS = "CLEAR_SHARED_MODELLINGS", APPEND_MODEL = "APPEND_MODEL", REMOVE_MODEL = "REMOVE_MODEL", APPEND_SHARED_MODEL = "APPEND_SHARED_MODEL", TOGGLE_MODEL = "TOGGLE_MODEL", TOGGLE_ALL_MODELS = "TOGGLE_ALL_MODELS", SET_MODEL = "SET_MODEL", SET_EDIT_MODEL = "SET_EDIT_MODEL", SET_SELECTED_MODEL = "SET_SELECTED_MODEL", SET_MAIN_COLOR = "SET_MAIN_COLOR", SET_MAIN_TRANSPARENCY = "SET_MAIN_TRANSPARENCY" } interface ToggleModelling { type: ModellingActionsType.TOGGLE_MODELLING; payload: { isShowing: boolean; }; } export declare function toggleModelling(isShowing: boolean): ToggleModelling; interface SetModelInfoOn { type: ModellingActionsType.SET_MODEL_INFO; payload: { isShowing: boolean; }; } export declare function setModelInfoOn(isShowing: boolean): SetModelInfoOn; interface SetMainColor { type: ModellingActionsType.SET_MAIN_COLOR; payload: { color: string; }; } export declare function setMainColor(color: string): SetMainColor; interface SetMainTransparency { type: ModellingActionsType.SET_MAIN_TRANSPARENCY; payload: { transparency: number; }; } export declare function setMainTransparency(transparency: number): SetMainTransparency; interface SetSelectedModel { type: ModellingActionsType.SET_SELECTED_MODEL; payload: { model: BoxEntity | CylinderEntity; }; } export declare function setSelectedModel(model: BoxEntity | CylinderEntity): SetSelectedModel; interface SetName { type: ModellingActionsType.SET_NAME; payload: { nameValue: string; }; } export declare function setName(nameValue: string): SetName; interface ToggleDelete { type: ModellingActionsType.TOGGLE_DELETE; payload: { deleteMode: boolean; }; } export declare function toggleDelete(deleteMode: boolean): ToggleDelete; interface ToggleDrawPolygon { type: ModellingActionsType.TOGGLE_DRAW_POLYGON; payload: { draw: boolean; }; } export declare function toggleDrawPolygon(draw: boolean): ToggleDrawPolygon; interface ToggleMeasuresShowing { type: ModellingActionsType.TOGGLE_MEASURES; payload: { masuresShowing: boolean; }; } export declare function toggleMeasuresShowing(masuresShowing: boolean): ToggleMeasuresShowing; interface ToggleNameShowing { type: ModellingActionsType.TOGGLE_NAME; payload: { nameShowing: boolean; }; } export declare function toggleNameShowing(nameShowing: boolean): ToggleNameShowing; interface SetCylinders { type: ModellingActionsType.SET_CYLINDERS; payload: { cylinders: CylinderEntity[]; }; } export declare function setCylinders(cylinders: CylinderEntity[]): SetCylinders; interface SetBoxes { type: ModellingActionsType.SET_BOXES; payload: { boxes: BoxEntity[]; }; } export declare function setBoxes(boxes: BoxEntity[]): SetBoxes; interface SetPolygons { type: ModellingActionsType.SET_POLYGONS; payload: { polygons: PolygonEntity[]; }; } export declare function setPolygons(polygons: PolygonEntity[]): SetPolygons; interface SetDrawPolygonBoxes { type: ModellingActionsType.SET_DRAW_POLYGON_BOXES; payload: { boxes: Entity[]; }; } export declare function setDrawPolygonBoxes(boxes: Entity[]): SetDrawPolygonBoxes; interface SetRoofs { type: ModellingActionsType.SET_ROOFS; payload: { roofs: RoofEntity[]; }; } export declare function setRoofs(roofs: RoofEntity[]): SetRoofs; interface EmptyAction { type: ModellingActionsType.CLEAR_MODELLINGS | ModellingActionsType.CLEAR_SHARED_MODELLINGS; payload: {}; } export declare function clearModellings(): EmptyAction; export declare function clearSharedModellings(): EmptyAction; interface AppendModel { type: ModellingActionsType.APPEND_MODEL; payload: { model: Modelling; }; } export declare function appendModel(model: Modelling): { type: ModellingActionsType; payload: { model: Modelling; }; }; interface RemoveModel { type: ModellingActionsType.REMOVE_MODEL; payload: { id: string; }; } export declare function removeModel(id: string): { type: ModellingActionsType; payload: { id: string; }; }; interface AppendSharedModel { type: ModellingActionsType.APPEND_SHARED_MODEL; payload: { model: Modelling; }; } export declare function appendSharedModel(model: Modelling): { type: ModellingActionsType; payload: { model: Modelling; }; }; interface InitialiseSharedModelCodes { type: ModellingActionsType.INITIALISE_SHARED_IDS; payload: { sharedModellingCodes: string[]; }; } export declare function initialiseSharedModelCodes(codes: string[]): InitialiseSharedModelCodes; interface ToggleModel { type: ModellingActionsType.TOGGLE_MODEL; payload: { id: string; toState: boolean; }; } export declare function toggleModel(id: string, toState: boolean): ToggleModel; interface ToggleAction { type: ModellingActionsType.TOGGLE_ALL_MODELS; payload: { toState: boolean; }; } export declare function toggleAllModels(toState: boolean): ToggleAction; interface SetModel { type: ModellingActionsType.SET_MODEL; payload: { id: any; model: any; shared: any; nimi?: any; }; } export declare function setModel(id: string, model: string, shared: boolean, nimi?: string): SetModel; interface SetEditModel { type: ModellingActionsType.SET_EDIT_MODEL; payload: { model: any; }; } export declare function setEditModel(model: Modelling | undefined): SetEditModel; export type ModellingActions = SetCylinders | SetBoxes | SetName | ToggleModelling | ToggleModel | ToggleDelete | ToggleMeasuresShowing | ToggleNameShowing | EmptyAction | AppendSharedModel | AppendModel | ToggleAction | SetModel | SetEditModel | InitialiseSharedModelCodes | SetMainColor | SetMainTransparency | SetSelectedModel | SetRoofs | SetPolygons | SetDrawPolygonBoxes | RemoveModel | SetModelInfoOn | ToggleDrawPolygon; export declare function requestUserModellings(app_url: string): ThunkAction; export declare function requestDeleteUserModelling(id: string, app_url: string): ThunkAction; export declare function requestSharedModellings(ids: string[], app_url: string): ThunkAction; export declare function requestModel(id: string, app_url: string, shared: boolean): ThunkAction; export declare function postUserModel(nimi: string, model: any, app_url: string): ThunkAction; export declare function updateUserModel(id: string, nimi: string, model: string, app_url: string): ThunkAction; export {};