package dto

type CaptchaResponse struct {
	CaptchaID string `json:"captchaID"`
	ImagePath string `json:"imagePath"`
}

type UserLoginInfo struct {
	Name      string `json:"name"`
	Token     string `json:"token"`
	MfaStatus string `json:"mfaStatus"`
	MfaSecret string `json:"mfaSecret"`
}

type MfaCredential struct {
	Secret string `json:"secret"`
	Code   string `json:"code"`
}

type Login struct {
	Name       string `json:"name" validate:"name,required"`
	Password   string `json:"password" validate:"required"`
	Captcha    string `json:"captcha"`
	CaptchaID  string `json:"captchaID"`
	AuthMethod string `json:"authMethod"`
}

type MFALogin struct {
	Name       string `json:"name" validate:"name,required"`
	Password   string `json:"password" validate:"required"`
	Secret     string `json:"secret" validate:"required"`
	Code       string `json:"code"`
	AuthMethod string `json:"authMethod"`
}

type InitUser struct {
	Name     string `json:"name" validate:"required"`
	Password string `json:"password" validate:"required"`
}