import Foundation

/// 进程级 OTG 相机会话：页面离开仅 detach UI 回调，App 终止时 shutdown 释放全部资源。
@MainActor
enum CameraTetheringSession {
    static let sharedService = AutoDetectCameraService()

    /// 页面离开：清空 UI 回调，保持 ICC/PTP 会话与 Browser。
    static func detachFromUI() {
        sharedService.detachFromUI()
    }

    /// App 终止：完整释放相机连接与 USB Browser。
    static func shutdown() async {
        await sharedService.shutdown()
    }
}
