package dto type ChallengeRequest struct { PubKey string `json:"pubKey" validate:"required,eth_pubkey"` } type ChallengeResponse struct { Message string `json:"message"` TimeStamp string `json:"timeStamp"` ExpiresAt string `json:"expiresAt"` } type AuthenticateRequest struct { PubKey string `json:"pubKey" validate:"required,eth_pubkey"` Signature string `json:"signature" validate:"required,eth_signature"` } type AuthenticateResponse struct { AuthorizationToken string `json:"authorizationToken"` RefreshToken string `json:"refreshToken"` ExpiresAt int64 `json:"expiresAt"` } type RefreshTokenRequest struct { RefreshToken string `json:"refreshToken" validate:"required,jwt"` } type OTPProviderReq struct { Receptor string `json:"receptor"` } type OTPProviderResponse struct { Message string `json:"message"` } type OTPVerifyRequest struct { Phone string `json:"phone" validate:"required"` Code string `json:"code" validate:"required"` } type OTPVerifyResponse struct { Message string `json:"message"` }