github.com/ngocphuongnb/tetua@v0.0.7-alpha/app/repositories/user.go (about) 1 package repositories 2 3 import ( 4 "context" 5 6 "github.com/ngocphuongnb/tetua/app/entities" 7 ) 8 9 type UserRepository interface { 10 Repository[entities.User, entities.UserFilter] 11 ByUsername(ctx context.Context, username string) (*entities.User, error) 12 ByProvider(ctx context.Context, providerName, providerId string) (*entities.User, error) 13 ByUsernameOrEmail(ctx context.Context, username, email string) ([]*entities.User, error) 14 CreateIfNotExistsByProvider(ctx context.Context, userData *entities.User) (*entities.User, error) 15 Setting(ctx context.Context, id int, userData *entities.SettingMutation) (*entities.User, error) 16 }