public enum FurnaceInterpolation { public struct Request: Codable, Equatable, Sendable { public let elevation: Int? public let winterDesignTemperature: Int public let heatLoss: Int public let inputRating: Int public let afue: Double public init( elevation: Int? = nil, winterDesignTemperature: Int, heatLoss: Int, inputRating: Int, afue: Double ) { self.elevation = elevation self.winterDesignTemperature = winterDesignTemperature self.heatLoss = heatLoss self.inputRating = inputRating self.afue = afue } } public struct Response: Codable, Equatable, Sendable { public let failed: Bool public let failures: [String]? public let altitudeAdjustmentMultiplier: Double? public let capacityAsPercentOfLoad: Int public let oversizingLimit: Int public let undersizingLimit: Int public let outputCapacity: Int public init( failures: [String]? = nil, altitudeAdjustmentMultiplier: Double? = nil, capacityAsPercentOfLoad: Int, oversizingLimit: Int, undersizingLimit: Int, outputCapacity: Int ) { self.failed = failures == nil ? false : !failures!.isEmpty self.failures = failures self.altitudeAdjustmentMultiplier = altitudeAdjustmentMultiplier self.capacityAsPercentOfLoad = capacityAsPercentOfLoad self.oversizingLimit = oversizingLimit self.undersizingLimit = undersizingLimit self.outputCapacity = outputCapacity } } }