using Meezi.Core.Constants;

namespace Meezi.Admin.API.Models;

public record SendOtpRequest(string Phone);

public record VerifyOtpRequest(string Phone, string Code);

public record RefreshTokenRequest(string RefreshToken);

public record LoginWithPasswordRequest(string Username, string Password);

public record ChangePasswordRequest(string CurrentPassword, string NewPassword);

public record AuthTokenResponse(
    string AccessToken,
    string RefreshToken,
    DateTime ExpiresAt,
    string UserId,
    string CafeId,
    string Role,
    string PlanTier,
    string Language,
    string Actor = MeeziActorKinds.SystemAdmin);

public record SendOtpResponse(bool Sent, int ExpiresInSeconds);
