UNPKG

@lineai/municipal-intel

Version:

AI-first municipal data API providing natural language descriptions of building permits and planning applications from major US cities

90 lines (89 loc) 2.38 kB
/** * Municipal source registry management */ import { MunicipalSource } from './types/sources'; /** * Source registry manager */ export declare class SourceRegistryManager { private registry; private runtimeSources; constructor(); /** * Get all sources (built-in + runtime) */ getAllSources(): MunicipalSource[]; /** * Get sources by state */ getSourcesByState(state: 'ca' | 'ny' | 'fl'): MunicipalSource[]; /** * Get source by ID */ getSource(id: string): MunicipalSource | undefined; /** * Get sources by priority */ getSourcesByPriority(priority: 'high' | 'medium' | 'low'): MunicipalSource[]; /** * Get sources by type */ getSourcesByType(type: 'api' | 'portal' | 'scraping'): MunicipalSource[]; /** * Get API sources (easiest to implement) */ getApiSources(): MunicipalSource[]; /** * Get Socrata sources specifically */ getSocrataSources(): MunicipalSource[]; /** * Get enabled sources only */ getEnabledSources(): MunicipalSource[]; /** * Get sources for implementation (high priority, API-based) */ getImplementationReadySources(): MunicipalSource[]; /** * Update source status */ updateSourceStatus(id: string, updates: Partial<Pick<MunicipalSource, 'enabled' | 'lastChecked' | 'lastError'>>): void; /** * Get registry metadata */ getRegistryInfo(): { version: string; lastUpdated: string; totalSources: number; }; /** * Search sources by name or ID */ searchSources(query: string): MunicipalSource[]; /** * Get sources that cover a specific city/area */ getSourcesForLocation(city: string, state?: string): MunicipalSource[]; /** * Register a new source at runtime */ registerSource(source: MunicipalSource): void; /** * Unregister a runtime source */ unregisterSource(id: string): boolean; /** * Check if a source is built-in or runtime-added */ isBuiltInSource(id: string): boolean; /** * Get only built-in sources */ getBuiltInSources(): MunicipalSource[]; /** * Get only runtime sources */ getRuntimeSources(): MunicipalSource[]; } export declare const sourceRegistry: SourceRegistryManager;