//
//  AppViewModel.swift
//  AcaMate
//
//  Created by Sean Kim on 12/16/24.
//

import SwiftUI
import Combine
//
//import AVFoundation
//import Photos
//import CoreLocation
//import UserNotifications

class AppViewModel: ObservableObject {
//    public static let shared = AppViewModel()
    
    @Published var isLoading: Bool = false
    @Published var showAlert: Bool = false
    @Published var menuName: MenuName = .Home
    @Published var naviState: NaviState = .init(act: .NONE, path: .Intro)
    
    @Published var alertData: AlertData = .init(body: "")
    
    /// 항상 최신값을 가지고 있다가 구독자 추가 되면 그 즉시 값을 전달하고 이후 업데이트 되는 값을 계속 보내주는 역할을 함
    let alertAction = CurrentValueSubject<String?, Never>(nil)
    var apiManager: APIManager = APIManager()
    var permissionManager = PermissionManager()
    
//    init() {
//        permissionManager.location
//    }
    
    
}
