import Foundationpublic enum PerplexityAPIError: LocalizedError, Sendable, Equatable { case missingToken case invalidCookie case invalidToken case networkError(String) case apiError(String) case parseFailed(String) public var errorDescription: String? { switch self { case .missingToken: "Perplexity session token is missing. Please log into Perplexity in your browser." case .invalidCookie: "Perplexity manual cookie header is empty or invalid." case .invalidToken: "Perplexity session token is invalid or expired. Please log in again." case let .networkError(message): "Perplexity network error: \(message)" case let .apiError(message): "Perplexity API error: \(message)" case let .parseFailed(message): "Failed to parse Perplexity usage data: \(message)" } }}
import Foundation
public enum PerplexityAPIError: LocalizedError, Sendable, Equatable {
case missingToken
case invalidCookie
case invalidToken
case networkError(String)
case apiError(String)
case parseFailed(String)
public var errorDescription: String? {
switch self {
case .missingToken:
"Perplexity session token is missing. Please log into Perplexity in your browser."
case .invalidCookie:
"Perplexity manual cookie header is empty or invalid."
case .invalidToken:
"Perplexity session token is invalid or expired. Please log in again."
case let .networkError(message):
"Perplexity network error: \(message)"
case let .apiError(message):
"Perplexity API error: \(message)"
case let .parseFailed(message):
"Failed to parse Perplexity usage data: \(message)"
}
}
}