NSProfile.swift 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. // NSProfile.swift
  2. // LoopFollow
  3. // Created by Jonas Björkert on 2024-07-12.
  4. // Copyright © 2024 Jon Fawcett. All rights reserved.
  5. import Foundation
  6. struct NSProfile: Decodable {
  7. struct Store: Decodable {
  8. struct BasalEntry: Decodable {
  9. let value: Double
  10. let time: String
  11. let timeAsSeconds: Double
  12. }
  13. struct SensEntry: Decodable {
  14. let value: Double
  15. let time: String
  16. let timeAsSeconds: Double
  17. }
  18. struct CarbRatioEntry: Decodable {
  19. let value: Double
  20. let time: String
  21. let timeAsSeconds: Double
  22. }
  23. struct OverrideEntry: Decodable {
  24. let name: String?
  25. let targetRange: [Double]?
  26. let duration: Int?
  27. let insulinNeedsScaleFactor: Double?
  28. let symbol: String?
  29. }
  30. struct TargetEntry: Decodable {
  31. let value: Double
  32. let time: String
  33. let timeAsSeconds: Double
  34. }
  35. let basal: [BasalEntry]
  36. let sens: [SensEntry]
  37. let carbratio: [CarbRatioEntry]
  38. let overrides: [OverrideEntry]?
  39. let target_high: [TargetEntry]?
  40. let target_low: [TargetEntry]?
  41. let timezone: String
  42. }
  43. let store: [String: Store]
  44. let defaultProfile: String
  45. let units: String
  46. }