ILatLonFov, IPanZoom, } from "@inovitas/infra3dsdk/dist/types/mm/geoframe/interfaces/IPointTo"; GeometryOverlay, IGeometryOverlayOptions, } from "../src/ui-base/common/services/GeometryOverlay"; GeoJSON, Geometry, } from "../src/ui-base/common/services/viewer/externals/geojson"; declare module "@inovitas/infra3dapi"; declare type Fn = (arg: any) => void; declare class EventEmitter { protected _events: { [eventType: string]: Fn[]; }; constructor(); on(eventType: string, fn: Fn): void; off(eventType: string, fn: Fn): void; fire(eventType: string, data: unknown): void; private _listens; } declare type ViewerEventType = | "nodechanged" | "panorotationchanged" | "campaignschanged" | "lookazimuthchanged"; interface IViewer { fire(type: ViewerEventType, event: T): void; off(type: ViewerEventType, handler: (event: T) => void): void; on(type: ViewerEventType, handler: (event: T) => void): void; } interface ViewerEvent { target: IViewer; type: ViewerEventType; } interface NodechangedEvent extends ViewerEvent { lat: number; lon: number; height: number; campaign_id: string; date: string; type: "nodechanged"; } interface CampaignschangedEvent extends ViewerEvent { id: number; project: number; description: string; type: "campaignschanged"; } interface PanorotationchangedEvent extends ViewerEvent { fov: number; lat: number; lon: number; type: "panorotationchanged"; } interface LookazimuthchangedEvent extends ViewerEvent { value: number; type: "lookazimuthchanged"; } interface ICampaign { uid: string; name: string; type: string; start_timestamp: number; end_timestamp: number; } declare class InternalViewer {} declare class ApmBase {} declare class Viewer extends EventEmitter implements IViewer { private _sdk_viewer; constructor(sdk_viewer: InternalViewer); moveToCampaign(campaignID: string): Promise; moveToPosition( easting: number, northing: number, height?: number, maxdist?: number, epsg?: number ): Promise; lookAtPosition( easting: number, northing: number, height?: number, maxdist?: number, epsg?: number ): Promise; getRoutes(simplify?: number): Promise; public getRouteLines( loa: number, bbox: { minEasting: number; maxEasting: number; minNorthing: number; maxNorthing: number; epsg?: number; } ): Promise; public getRouteHexes( loa: number, bbox: { minEasting: number; maxEasting: number; minNorthing: number; maxNorthing: number; epsg?: number; } ): Promise; // getAllCampaigns(bbox?: { // minEasting: number; // maxEasting: number; // minNorthing: number; // maxNorthing: number; // epsg: number; // }): Promise; // getCampaign(campagin_uid: string): Promise; attachToMeasurementTool( toolname: "lengthMeasure" | "areaMeasure", onmeasured: (value: number, geometry: number[][]) => void ): void; attachToMeasurementTool( toolname: "pointMeasure", onmeasured: (value: undefined, geometry: number[]) => void ): void; private _processMeasurementResult; public drawGeometry( geometryType: "Point" | "MultiPoint" | "LineString" | "Polygon", options?: { onDrawProgress?: (geometry: Geometry) => void; style?: IFeatureStyle; signal?: AbortSignal; } ): Promise; public addGeometryOverlay(options?: IGeometryOverlayOptions): GeometryOverlay; public removeGeometryOverlay(geometryoverlay: GeometryOverlay): void; public pickGeometry( signal?: AbortSignal ): Promise<[GeometryOverlay, Geometry]>; public editGeometry( onEditProgress: (geom: Geometry) => void, signal?: AbortSignal ): Promise<[GeometryOverlay, Geometry]>; public destroy(): void; public setUserInteraction(pan: boolean, zoom: boolean): void; public getCameraView(): ILatLonFov | IPanZoom; public setCameraView(cameraView: ILatLonFov | IPanZoom): void; public getCurrentNode(): Node; off(type: "nodechanged", handler: (event: NodechangedEvent) => void): void; off( type: "campaignschanged", handler: (event: CampaignschangedEvent) => void ): void; off( type: "panorotationchanged", handler: (event: PanorotationchangedEvent) => void ): void; off( type: "lookazimuthchanged", handler: (event: LookazimuthchangedEvent) => void ): void; on(type: "nodechanged", handler: (event: NodechangedEvent) => void): void; on( type: "campaignschanged", handler: (event: CampaignschangedEvent) => void ): void; on( type: "panorotationchanged", handler: (event: PanorotationchangedEvent) => void ): void; on( type: "lookazimuthchanged", handler: (event: LookazimuthchangedEvent) => void ): void; } declare type applicationProps = { name: string; url: string; }; declare type cardProps = { uid: string; name: string; description: string; applications: applicationProps[]; created_by: string; creation_date: string | Date; tags: Array<{ name: string; font_color: string; background_color: string; }>; }; declare class Manager extends EventEmitter { static viewinitialized: string; static viewerset: string; static tokenset: string; private _apm; private _tokens; constructor(apm: ApmBase); initViewer(options: { project_uid: string; start_position?: { easting: number; northing: number; epsg?: number; }; start_campaign?: { id: string; }; map_expand?: boolean; show_cockpit?: boolean; show_mapWindow?: boolean; show_toolbar?: boolean; show_topbar?: boolean; toolbar?: string; }): Promise; getProjects(): Promise; setViewer(viewer: InternalViewer): void; setTokens(tokens: any): void; setApmUserContext(userContext?: { id?: string; username?: string; email?: string; }): void; } declare type accessTokenResponseType = { access_token: string; expires_in: number; token_type: "Bearer"; }; export declare function getAccessToken( url: string, client_id: string, client_secret: string ): Promise; export declare function init( rootId: string, token: string, userContext?: { id?: string; username?: string; email?: string; } ): Promise; export declare function destroy(): void; export declare function getManager(): Manager; export declare function getGuestAccessToken(): Promise; export declare function refreshToken(token: string): void;