//
//  CacheExpiry.swift
//  Tusker
//
//  Created by Shadowfacts on 1/18/21.
//  Copyright © 2021 Shadowfacts. All rights reserved.
//

import Foundation

enum CacheExpiry {
    case never
    case seconds(TimeInterval)
    case date(Date)
    
    var date: Date {
        switch self {
        case .never:
            return .distantFuture
        case let .seconds(seconds):
            return Date().addingTimeInterval(seconds)
        case let .date(date):
            return date
        }
    }
    
    var isExpired: Bool {
        return date.timeIntervalSinceNow < 0
    }
}
