import type { Layer, LayerProps } from '@deck.gl/core'; import type { ColorMap as GeoStylerColorMap } from 'geostyler-style'; import { type ColorMapName } from '../geotiff/utils/colormap-utils'; export interface DeckGLGeoTIFFLayerProps extends LayerProps { url: string; /** * Quell-Projektion des GeoTIFF (z. B. "EPSG:32632" oder proj4-String) * * Verwendung: * 1. Wenn nicht angegeben: Projektion wird aus GeoTIFF GeoKeys gelesen * 2. Wenn GeoKeys fehlen: Dieser Wert wird als Fallback verwendet * 3. Wenn forceProjection=true: Überschreibt GeoKeys komplett * * Default fallback: 'EPSG:4326' (WGS84) */ projection?: string; /** * Erzwingt die Verwendung der projection-Prop, ignoriert GeoKeys * * Nützlich wenn: * - GeoTIFF falsche/fehlende Projektionsinformationen hat * - Man die Projektion manuell überschreiben möchte * * Default: false */ forceProjection?: boolean; noDataValue?: number; nullColor?: [number, number, number, number]; minZoom?: number; maxZoom?: number; tileSize?: number; /** * Sampling-Auflösung (0.0 - 1.0) * * - 1.0 = volle Auflösung (256x256 samples für 256x256 tile) * - 0.5 = halbe Auflösung (128x128 samples, upscaled zu 256x256) * - 0.25 = viertel Auflösung (64x64 samples, upscaled zu 256x256) * * Niedrigere Werte = schneller, aber weniger genau * Default: 1.0 */ resolution?: number; /** * Resampling-Methode * * - 'near': Nearest Neighbor (schnellste, blockartig) * - 'bilinear': Bilineare Interpolation (langsamer, glatter) * * Default: 'bilinear' */ resampleMethod?: 'near' | 'bilinear'; /** * ColorMap für Grayscale-Daten * * Unterstützt: * 1. Vordefinierte Namen: * - 'grayscale': Schwarz-Weiß (default) * - 'viridis': Wissenschaftliche Farbskala (lila→gelb) * - 'terrain': Terrain-Farben (blau→grün→braun→weiß) * - 'turbo': Google Turbo (blau→grün→gelb→rot) * - 'rainbow': Regenbogen * * 2. GeoStyler ColorMap (aus SLD via v-map-style): * Wird automatisch vom styleReady Event übernommen * * Nur für Single-Band (Grayscale) Daten! * RGB/RGBA Daten ignorieren diese Prop. * * Default: 'grayscale' */ colorMap?: ColorMapName | GeoStylerColorMap; /** * Wertebereich für Normalisierung [min, max] * * Für Float32/Float64 Daten: Mappt Werte in diesem Bereich auf 0-1 für ColorMap * - Werte < min → 0.0 (erste Farbe) * - Werte > max → 1.0 (letzte Farbe) * - Dazwischen → linear interpoliert * * Wenn nicht angegeben: Auto-detect aus Daten (kann langsam sein!) * * Beispiel: [0, 3000] für Höhendaten 0-3000m */ valueRange?: [number, number]; /** Optional callback for tile load errors, wired by provider. */ onTileLoadError?: (err: Error) => void; } /** * Factory-Funktion zum Erstellen eines DeckGLGeoTIFFLayer */ export declare function createDeckGLGeoTIFFLayer(props: DeckGLGeoTIFFLayerProps): Promise;