15 lines
550 B
Go
15 lines
550 B
Go
package user
|
|
|
|
import "context"
|
|
|
|
type Repository interface {
|
|
Create(ctx context.Context, user *User) error
|
|
Update(ctx context.Context, user *User) error
|
|
Delete(ctx context.Context, id []byte) error
|
|
GetByID(ctx context.Context, id []byte) (*User, error)
|
|
GetByEmail(ctx context.Context, email string) (*User, error)
|
|
GetByUsername(ctx context.Context, username string) (*User, error)
|
|
List(ctx context.Context, filter string, sort string, limit, offset int) ([]User, int64, error)
|
|
GetLastNameByID(ctx context.Context, id []byte) (string, error)
|
|
}
|