namespace SatelliteProvider.IntegrationTests; public record DownloadTileRequest { public double Latitude { get; set; } public double Longitude { get; set; } public int ZoomLevel { get; set; } } public record DownloadTileResponse { public Guid Id { get; set; } public int ZoomLevel { get; set; } public double Latitude { get; set; } public double Longitude { get; set; } public double TileSizeMeters { get; set; } public int TileSizePixels { get; set; } public string ImageType { get; set; } = string.Empty; public string? MapsVersion { get; set; } public string FilePath { get; set; } = string.Empty; public DateTime CreatedAt { get; set; } public DateTime UpdatedAt { get; set; } } public record RequestRegionRequest { public Guid Id { get; set; } public double Latitude { get; set; } public double Longitude { get; set; } public double SizeMeters { get; set; } public int ZoomLevel { get; set; } public bool StitchTiles { get; set; } = false; } public record RegionStatusResponse { public Guid Id { get; set; } public string Status { get; set; } = string.Empty; public string? CsvFilePath { get; set; } public string? SummaryFilePath { get; set; } public int TilesDownloaded { get; set; } public int TilesReused { get; set; } public DateTime CreatedAt { get; set; } public DateTime UpdatedAt { get; set; } } public class RoutePointInput { public double Latitude { get; set; } public double Longitude { get; set; } } public class CreateRouteRequest { public Guid Id { get; set; } public string Name { get; set; } = string.Empty; public string? Description { get; set; } public double RegionSizeMeters { get; set; } public int ZoomLevel { get; set; } public List Points { get; set; } = new(); public bool RequestMaps { get; set; } = false; } public class RoutePointModel { public double Latitude { get; set; } public double Longitude { get; set; } public string PointType { get; set; } = string.Empty; public int SequenceNumber { get; set; } public int SegmentIndex { get; set; } public double? DistanceFromPrevious { get; set; } } public class RouteResponseModel { public Guid Id { get; set; } public string Name { get; set; } = string.Empty; public string? Description { get; set; } public double RegionSizeMeters { get; set; } public int ZoomLevel { get; set; } public double TotalDistanceMeters { get; set; } public int TotalPoints { get; set; } public List Points { get; set; } = new(); public bool RequestMaps { get; set; } public bool MapsReady { get; set; } public string? CsvFilePath { get; set; } public string? SummaryFilePath { get; set; } public string? StitchedImagePath { get; set; } public DateTime CreatedAt { get; set; } public DateTime UpdatedAt { get; set; } }