import { GeoJSONExportStrategy, GeoJSONExportConfig } from './geojson-export-strategy';
import { SQLiteExportStrategy, SQLiteExportConfig } from './sqlite-export-strategy';
export interface ExportStrategyConfig {
    region: string;
    outputPath: string;
    stagingSchema: string;
    includeTrails?: boolean;
    includeNodes?: boolean;
    includeEdges?: boolean;
    includeRoutes?: boolean;
    validate?: boolean;
}
export declare class TrailsOnlyExportStrategy {
    private config;
    constructor(config: ExportStrategyConfig);
    exportFromStaging(): Promise<void>;
}
export declare class ExportStrategyFactory {
    static createGeoJSONStrategy(config: GeoJSONExportConfig, pgClient: any, stagingSchema: string): GeoJSONExportStrategy;
    static createSQLiteStrategy(config: SQLiteExportConfig, pgClient: any, stagingSchema: string): SQLiteExportStrategy;
    static createTrailsOnlyStrategy(config: ExportStrategyConfig): TrailsOnlyExportStrategy;
    static detectFormatFromFilename(filename: string): 'geojson' | 'sqlite' | 'trails-only';
}
//# sourceMappingURL=export-strategy.d.ts.map