UNPKG

carthorse

Version:

A geospatial trail data processing pipeline for building 3D trail databases with elevation data

47 lines 1.86 kB
import { Client } from 'pg'; import { DatabaseService } from './DatabaseService'; export interface IntersectionResult { intersectionCount: number; intersections: any[]; } export interface NodeGenerationResult { nodeCount: number; nodeTypes: { endpoint: number; intersection: number; }; } export interface EdgeGenerationResult { edgeCount: number; orphanedNodesRemoved: number; orphanedEdgesRemoved: number; } export interface NetworkValidationResult { isConnected: boolean; isolatedNodes: number; orphanedEdges: number; connectivityStats: { totalNodes: number; connectedNodes: number; leafNodes: number; avgDegree: number; }; } export interface RoutingService { detectIntersections(schemaName: string, tolerance: number): Promise<IntersectionResult>; generateRoutingNodes(schemaName: string, tolerance: number): Promise<NodeGenerationResult>; generateRoutingEdges(schemaName: string, tolerance: number): Promise<EdgeGenerationResult>; validateRoutingNetwork(schemaName: string): Promise<NetworkValidationResult>; cleanupOrphanedNodes(schemaName: string): Promise<number>; } export declare class PostgresRoutingService implements RoutingService { private client; private databaseService; constructor(client: Client, databaseService: DatabaseService); detectIntersections(schemaName: string, tolerance: number): Promise<IntersectionResult>; generateRoutingNodes(schemaName: string, tolerance: number): Promise<NodeGenerationResult>; generateRoutingEdges(schemaName: string, tolerance: number): Promise<EdgeGenerationResult>; validateRoutingNetwork(schemaName: string): Promise<NetworkValidationResult>; cleanupOrphanedNodes(schemaName: string): Promise<number>; } //# sourceMappingURL=RoutingService.d.ts.map