// Generated by Create API
// https://github.com/CreateAPI/CreateAPI

import Foundation

public struct AlignedLyricsV3Schema: Codable, Equatable {
    public var alignment: [AlignedWordSchema]?
    public var errorMessage: String?
    public var final: Bool?
    public var state: State

    public struct State: RawRepresentable, Codable, Equatable {
        public let rawValue: String

        public init(rawValue: String) {
            self.rawValue = rawValue
        }

        public static let running = Self(rawValue: "running")
        public static let error = Self(rawValue: "error")
        public static let complete = Self(rawValue: "complete")
        public static let streaming = Self(rawValue: "streaming")
    }

    public init(alignment: [AlignedWordSchema]? = nil, errorMessage: String? = nil, final: Bool? = nil, state: State) {
        self.alignment = alignment
        self.errorMessage = errorMessage
        self.final = final
        self.state = state
    }
}
