// // Instance.swift // Pachyderm // // Created by Shadowfacts on 9/9/18. // Copyright © 2018 Shadowfacts. All rights reserved. // import Foundation public class Instance: Decodable { public let uri: String public let title: String public let description: String public let email: String public let version: String public let urls: [String: URL] // pleroma doesn't currently implement these public let languages: [String]? public let contactAccount: Account? // MARK: Unofficial additions to the Mastodon API. public let stats: Stats? public let thumbnail: URL? public let maxStatusCharacters: Int? private enum CodingKeys: String, CodingKey { case uri case title case description case email case version case urls case languages case contactAccount = "contact_account" case stats case thumbnail case maxStatusCharacters = "max_toot_chars" } } extension Instance { public class Stats: Decodable { public let domainCount: Int? public let statusCount: Int? public let userCount: Int? private enum CodingKeys: String, CodingKey { case domainCount = "domain_count" case statusCount = "status_count" case userCount = "user_count" } } }