2024-12-04 19:46:11 -04:00

30 lines
1.2 KiB
Go

package ports
import (
"context"
"git.maximotejeda.com/maximo/tgb-user/internal/adapters/db"
"git.maximotejeda.com/maximo/tgb-user/internal/application/core/domain"
)
type DBPort interface {
Create(context.Context, *domain.User) (bool, error)
Get(context.Context, int64) (*domain.User, error)
Edit(context.Context, *domain.User) (bool, error)
Delete(context.Context, int64) (bool, error)
AddBot(context.Context, int64, string) (bool, error)
DeleteBot(context.Context, int64, string) (bool, error)
GetBots(context.Context, int64) ([]*domain.Bot, error)
GetAllBotUsers(context.Context, string) ([]*domain.User, error)
GetAllBots(context.Context) ([]*domain.Bot, error)
CreateBot(context.Context, string) (bool, error)
CreateAccessRequest(context.Context, int64, string) (bool, error)
GrantAccess(context.Context, int64, string) (bool, error)
BanUser(context.Context, int64, int64, string) (bool, error)
UnBanUser(context.Context, int64, string) (bool, error)
GetAllAccessRequest(context.Context, string) ([]*db.BotAccessRequest, error)
GetAllBannedUsers(context.Context, string) ([]*db.BotBannedAccess, error)
GetAccessRequest(context.Context, int64) ([]*db.BotAccessRequest, error)
GetBannedBot(context.Context, int64) ([]*db.BotBannedAccess, error)
}