//
//  NoiseClockAlarmMetadata.swift
//  TheNoiseClockWidget
//
//  Created by Matt Bruce on 2/2/26.
//
//  NOTE: This file must be kept in sync with the main app's version.
//  In Xcode, add the main app's NoiseClockAlarmMetadata.swift to both targets
//  and remove this file, or use a shared Swift package.
//

import AlarmKit
import Foundation

/// Metadata for alarm Live Activities, shared between app and widget extension.
/// Must conform to AlarmMetadata and be nonisolated for cross-actor use.
nonisolated struct NoiseClockAlarmMetadata: AlarmMetadata {
    /// The unique identifier for the alarm
    var alarmId: String
    
    /// The sound file name to play when the alarm fires
    var soundName: String
    
    /// The snooze duration in minutes
    var snoozeDuration: Int
    
    /// The alarm label to display
    var label: String
    
    /// The custom notification message
    var message: String
    
    /// Volume level (0.0 to 1.0)
    var volume: Float
}
