UNPKG

carthorse

Version:

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

289 lines 7.9 kB
export interface CarthorseConfig { version: string; cliVersion: string; database: { connection: { host: string; port: number; user: string; password: string; database: string; }; environments: { development: { host: string; port: number; user: string; password: string; database: string; }; test: { host: string; port: number; user: string; password: string; database: string; }; production: { host: string; port: number; user: string; password: string; database: string; }; }; pool: { max: number; idleTimeoutMillis: number; connectionTimeoutMillis: number; }; timeouts: { connectionTimeout: number; queryTimeout: number; }; }; constants: { carthorseVersion: string; supportedRegions: string[]; supportedEnvironments: string[]; databaseSchemas: { master: string; stagingPrefix: string; osmPrefix: string; }; validationThresholds: { minTrailLengthKm: number; maxTrailLengthKm: number; minElevationM: number; maxElevationM: number; minCoordinatePoints: number; maxCoordinatePoints: number; }; exportSettings: { defaultSimplifyTolerance: number; defaultMaxDbSizeMb: number; defaultTargetSizeMb: number; }; }; postgis: any; sqlite: any; validation: any; export?: { geojson?: { layers?: { trails?: boolean; edges?: boolean; endpoints?: boolean; routes?: boolean; }; styling?: { trails?: { color?: string; stroke?: string; strokeWidth?: number; fillOpacity?: number; }; edges?: { color?: string; stroke?: string; strokeWidth?: number; fillOpacity?: number; }; endpoints?: { color?: string; stroke?: string; strokeWidth?: number; fillOpacity?: number; radius?: number; }; routes?: { color?: string; stroke?: string; strokeWidth?: number; fillOpacity?: number; }; }; }; }; } export interface RouteDiscoveryConfig { enabled: boolean; routing: { intersectionTolerance: number; edgeTolerance: number; defaultTolerance: number; minTrailLengthMeters: number; }; binConfiguration: any; discovery: any; scoring: any; costWeighting: any; } /** * Load the Carthorse configuration from YAML file */ export declare function loadConfig(): CarthorseConfig; /** * Load the route discovery configuration from YAML file */ export declare function loadRouteDiscoveryConfig(): RouteDiscoveryConfig; /** * Get constants from the configuration */ export declare function getConstants(): { carthorseVersion: string; supportedRegions: string[]; supportedEnvironments: string[]; databaseSchemas: { master: string; stagingPrefix: string; osmPrefix: string; }; validationThresholds: { minTrailLengthKm: number; maxTrailLengthKm: number; minElevationM: number; maxElevationM: number; minCoordinatePoints: number; maxCoordinatePoints: number; }; exportSettings: { defaultSimplifyTolerance: number; defaultMaxDbSizeMb: number; defaultTargetSizeMb: number; }; }; /** * Get specific constant values */ export declare function getSupportedRegions(): string[]; export declare function getSupportedEnvironments(): string[]; export declare function getDatabaseSchemas(): { master: string; stagingPrefix: string; osmPrefix: string; }; export declare function getValidationThresholds(): { minTrailLengthKm: number; maxTrailLengthKm: number; minElevationM: number; maxElevationM: number; minCoordinatePoints: number; maxCoordinatePoints: number; }; export declare function getTolerances(): { intersectionTolerance: number; edgeTolerance: number; minTrailLengthMeters: number; }; export declare function getExportSettings(): { defaultSimplifyTolerance: number; defaultMaxDbSizeMb: number; defaultTargetSizeMb: number; }; /** * Get pgRouting tolerance settings from config */ export declare function getPgRoutingTolerances(): any; /** * Load consolidated network configuration (optional file) */ export declare function getNetworkConfig(): any; /** * Refinement settings (connector tolerance, dead-end pruning) with env overrides */ export declare function getNetworkRefinementConfig(): { connectorToleranceMeters: any; minDeadEndMeters: any; applyCachedConnectors: any; persistDiscoveredConnectors: any; enableEndpointEdgeSnapping: any; enableAtGradeCrossings: any; atGradeToleranceMeters: any; densifySegmentMeters: any; }; /** * Network cache configuration (completed network cache) */ export declare function getNetworkCacheConfig(): { enableCompletedNetworkCache: any; cacheSchema: any; maxEntries: any; }; /** * Get database configuration with environment variable overrides */ export declare function getDatabaseConfig(environment?: string): { host: any; port: number; user: any; password: any; database: any; pool: { max: number; idleTimeoutMillis: number; connectionTimeoutMillis: number; }; timeouts: { connectionTimeout: number; queryTimeout: number; }; }; /** * Get database connection string */ export declare function getDatabaseConnectionString(environment?: string): string; /** * Get pool configuration for database connections */ export declare function getDatabasePoolConfig(environment?: string): { host: any; port: number; user: any; password: any; database: any; max: number; idleTimeoutMillis: number; connectionTimeoutMillis: number; }; /** * Get export configuration from carthorse config */ export declare function getExportConfig(): { geojson?: { layers?: { trails?: boolean; edges?: boolean; endpoints?: boolean; routes?: boolean; }; styling?: { trails?: { color?: string; stroke?: string; strokeWidth?: number; fillOpacity?: number; }; edges?: { color?: string; stroke?: string; strokeWidth?: number; fillOpacity?: number; }; endpoints?: { color?: string; stroke?: string; strokeWidth?: number; fillOpacity?: number; radius?: number; }; routes?: { color?: string; stroke?: string; strokeWidth?: number; fillOpacity?: number; }; }; }; }; //# sourceMappingURL=config-loader.d.ts.map