aboutsummaryrefslogtreecommitdiff
path: root/pkg/database/repository
diff options
context:
space:
mode:
Diffstat (limited to 'pkg/database/repository')
-rw-r--r--pkg/database/repository/auth.go10
-rw-r--r--pkg/database/repository/user.go35
2 files changed, 45 insertions, 0 deletions
diff --git a/pkg/database/repository/auth.go b/pkg/database/repository/auth.go
new file mode 100644
index 0000000..b319495
--- /dev/null
+++ b/pkg/database/repository/auth.go
@@ -0,0 +1,10 @@
+package repository
+
+import "context"
+
+type (
+ AuthRepository interface {
+ GetIDByUsername(ctx context.Context, username string) (uint, error)
+ GetPassword(ctx context.Context, id uint) ([]byte, error)
+ }
+)
diff --git a/pkg/database/repository/user.go b/pkg/database/repository/user.go
new file mode 100644
index 0000000..f8bd719
--- /dev/null
+++ b/pkg/database/repository/user.go
@@ -0,0 +1,35 @@
+package repository
+
+import "context"
+
+type (
+ User struct {
+ ID uint
+ Username string
+ Name string
+ IsAdmin bool
+ Path string
+ }
+
+ UpdateUser struct {
+ Username string
+ Name string
+ Password string
+ }
+
+ CreateUser struct {
+ Username string
+ Name string
+ Password []byte
+ IsAdmin bool
+ Path string
+ }
+
+ UserRepository interface {
+ Get(ctx context.Context, id uint) (*User, error)
+ List(ctx context.Context) ([]*User, error)
+ Create(ctx context.Context, createUser *CreateUser) (uint, error)
+ Update(ctx context.Context, id uint, updateUser *UpdateUser) error
+ Any(ctx context.Context) (bool, error)
+ }
+)