using Mirea.Api.Dto.Common;
using System.ComponentModel.DataAnnotations;

namespace Mirea.Api.Dto.Responses;

/// <summary>
/// Represents the response containing information about available OAuth providers.
/// </summary>
public class AvailableOAuthProvidersResponse
{
    /// <summary>
    /// Gets or sets the name of the OAuth provider.
    /// </summary>
    [Required]
    public required string ProviderName { get; set; }

    /// <summary>
    /// Gets or sets the enum value representing the OAuth provider.
    /// </summary>
    public OAuthProvider Provider { get; set; }

    /// <summary>
    /// Gets or sets the redirect URL for the OAuth provider's authorization process.
    /// </summary>
    [Required]
    public required string Redirect { get; set; }
}