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

import Foundation

public struct ShortcutItemSchema: Codable, Equatable, Identifiable {
    public var description: String?
    public var entityType: EntityType?
    public var id: String
    public var imageUrl: String
    public var name: String
    public var redirectUrl: String?
    public var shortcutContext: ShortcutContext?
    public var shortcutType: ShortcutType?

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

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

        public static let shortcutSchema = Self(rawValue: "shortcut_schema")
    }

    public init(description: String? = nil, entityType: EntityType? = nil, id: String, imageUrl: String, name: String, redirectUrl: String? = nil, shortcutContext: ShortcutContext? = nil, shortcutType: ShortcutType? = nil) {
        self.description = description
        self.entityType = entityType
        self.id = id
        self.imageUrl = imageUrl
        self.name = name
        self.redirectUrl = redirectUrl
        self.shortcutContext = shortcutContext
        self.shortcutType = shortcutType
    }
}
