// <auto-generated />
// This file is auto-generated from core/models/src/vault/Item.ts
// Do not edit this file directly. Run 'npm run generate:models' to regenerate.

#nullable enable

namespace AliasClientDb.Models;

/// <summary>
/// Item types supported by the vault.
/// </summary>
public static class ItemType
{
    /// <summary>
    /// Login item type.
    /// </summary>
    public const string Login = "Login";

    /// <summary>
    /// Alias item type.
    /// </summary>
    public const string Alias = "Alias";

    /// <summary>
    /// CreditCard item type.
    /// </summary>
    public const string CreditCard = "CreditCard";

    /// <summary>
    /// Note item type.
    /// </summary>
    public const string Note = "Note";

    /// <summary>
    /// All available item types.
    /// </summary>
    public static readonly string[] All = { Login, Alias, CreditCard, Note };

    /// <summary>
    /// Checks if a string value is a valid item type.
    /// </summary>
    /// <param name="value">The value to check.</param>
    /// <returns>True if the value is a valid item type.</returns>
    public static bool IsValid(string? value)
    {
        return value == Login || value == Alias || value == CreditCard || value == Note;
    }
}
