// Copied from https://gitea.patrickstevens.co.uk/patrick/puregym-unofficial-dotnet/src/commit/2741c5e36cf0bdb203b12b78a8062e25af9d89c7/PureGym/Api.fs namespace PureGym open System open System.Text.Json.Serialization [] type GymOpeningHours = { IsAlwaysOpen : bool OpeningHours : string list } [] type GymAccessOptions = { PinAccess : bool QrCodeAccess : bool } [] type measure [] type GymLocation = { [] Longitude : float [] Latitude : float } [] type GymAddress = { [] AddressLine1 : string AddressLine2 : string option AddressLine3 : string option [] Town : string County : string option [] Postcode : string } [] type Gym = { [] Name : string [] Id : int [] Status : int [] Address : GymAddress [] PhoneNumber : string [] EmailAddress : string [] GymOpeningHours : GymOpeningHours [] AccessOptions : GymAccessOptions [] Location : GymLocation [] TimeZone : string ReopenDate : string } [] [] type Member = { Id : int CompoundMemberId : string FirstName : string LastName : string HomeGymId : int HomeGymName : string EmailAddress : string GymAccessPin : string [] DateOfBirth : DateOnly MobileNumber : string [] Postcode : string MembershipName : string MembershipLevel : int SuspendedReason : int MemberStatus : int } [] type GymAttendance = { [] Description : string [] TotalPeopleInGym : int [] TotalPeopleInClasses : int TotalPeopleSuffix : string option [] IsApproximate : bool AttendanceTime : DateTime LastRefreshed : DateTime LastRefreshedPeopleInClasses : DateTime MaximumCapacity : int } [] type MemberActivityDto = { [] TotalDuration : int [] AverageDuration : int [] TotalVisits : int [] TotalClasses : int [] IsEstimated : bool [] LastRefreshed : DateTime } [] type SessionsAggregate = { [] Activities : int [] Visits : int [] Duration : int } [] type VisitGym = { [] Id : int [] Name : string [] Status : string } [] type Visit = { [] IsDurationEstimated : bool [] StartTime : DateTime [] Duration : int [] Gym : VisitGym } [] type SessionsSummary = { [] Total : SessionsAggregate [] ThisWeek : SessionsAggregate } [] type Sessions = { [] Summary : SessionsSummary [] Visits : Visit list } [] type UriThing = { SomeUri : Uri }