package models import "database/sql/driver" // Authentication methods available type AuthenticationMethodType string const ( AuthMethodPassword AuthenticationMethodType = "password" AuthMethodGAuth AuthenticationMethodType = "g-auth" // Google Authenticator / totp AuthMethodMail AuthenticationMethodType = "mail" AuthMethodPasskey2fa AuthenticationMethodType = "passkey-2fa" // Passkey used as 2fa factor AuthMethodPasskey AuthenticationMethodType = "passkey" // Passkey as only auth key ) var AllAuthMethods = []AuthenticationMethodType{ AuthMethodPassword, AuthMethodGAuth, AuthMethodMail, AuthMethodPasskey, AuthMethodPasskey2fa, } func (ct *AuthenticationMethodType) Scan(value any) error { *ct = AuthenticationMethodType(value.([]byte)) return nil } func (ct AuthenticationMethodType) Value() (driver.Value, error) { return string(ct), nil }