     }
 }
 
-public struct APIToken
+@objc
+public class APIToken : NSObject
 {
     var refreshToken:String
     var tokenType:String

            self.set(object: accessToken, for: .accessTokenKey)
            self.set(object: expiresIn, for: .expiresKey)
            self.set(object: scope, for: .scopeKey)
            return self.currentToken
        }
        return nil

    var expiresIn:Int
    var scope:String
    var email:String
    
    public init(refreshToken: String,
                tokenType: String,
                accessToken: String,
                expiresIn: Int,
                scope: String,
                email: String) {
        
        self.refreshToken = refreshToken
        self.tokenType = tokenType
        self.accessToken = accessToken
        self.expiresIn = expiresIn
        self.scope = scope
        self.email = email
    }
}

@objc
open class APITokenManager : NSObject
{
    public static var currentToken:APIToken? {
        if let email = self.object(for: .emailKey) as? String,
