package userrepository

import (
	"legalgo-BE-go/database"
	userdomain "legalgo-BE-go/internal/domain/user"
)

type UserRepository struct {
	DB *database.DB
}

type UserIntf interface {
	GetUserByEmail(string) (*userdomain.User, error)
	GetUserByID(string) (*userdomain.User, error)
	GetUserProfile(string) (*userdomain.UserProfile, error)
	CreateUser(userdomain.User) error
}

func New(
	db *database.DB,
) UserIntf {
	return &UserRepository{db}
}
