neko/internal/types/member.go

26 lines
846 B
Go
Raw Normal View History

2021-03-14 11:42:16 +13:00
package types
2021-03-15 00:57:19 +13:00
type MemberProfile struct {
Name string `json:"name"`
IsAdmin bool `json:"is_admin"`
CanLogin bool `json:"can_login"`
CanConnect bool `json:"can_connect"`
CanWatch bool `json:"can_watch"`
CanHost bool `json:"can_host"`
CanAccessClipboard bool `json:"can_access_clipboard"`
}
2021-03-14 13:08:50 +13:00
type MemberManager interface {
2021-03-14 11:42:16 +13:00
Connect() error
Disconnect() error
2021-03-15 00:57:19 +13:00
Authenticate(username string, password string) (string, MemberProfile, error)
Insert(username string, password string, profile MemberProfile) (string, error)
Select(id string) (MemberProfile, error)
SelectAll(limit int, offset int) (map[string]MemberProfile, error)
2021-03-15 02:44:03 +13:00
UpdateProfile(id string, profile MemberProfile) error
2021-03-15 04:23:14 +13:00
UpdatePassword(id string, password string) error
2021-03-14 11:42:16 +13:00
Delete(id string) error
}