25 行
592 B
Swift
25 行
592 B
Swift
|
|
import Foundation
|
||
|
|
|
||
|
|
@MainActor
|
||
|
|
public final class XuqmSDK {
|
||
|
|
|
||
|
|
public static let shared = XuqmSDK()
|
||
|
|
private(set) var config: SDKConfig?
|
||
|
|
private(set) var tokenStore: TokenStore?
|
||
|
|
|
||
|
|
private init() {}
|
||
|
|
|
||
|
|
public func initialize(config: SDKConfig) {
|
||
|
|
self.config = config
|
||
|
|
self.tokenStore = TokenStore()
|
||
|
|
ApiClient.shared.configure(with: config)
|
||
|
|
}
|
||
|
|
|
||
|
|
public func requireConfig() -> SDKConfig {
|
||
|
|
guard let config else {
|
||
|
|
fatalError("XuqmSDK not initialized. Call XuqmSDK.shared.initialize() first.")
|
||
|
|
}
|
||
|
|
return config
|
||
|
|
}
|
||
|
|
}
|