package policiesdb

import (
	"github.com/tech/sendico/pkg/db/template"
	"github.com/tech/sendico/pkg/mlogger"
	"github.com/tech/sendico/pkg/model"
	"github.com/tech/sendico/pkg/mservice"
	"go.mongodb.org/mongo-driver/v2/mongo"
)

type PoliciesDB struct {
	template.DBImp[*model.PolicyDescription]
}

func Create(logger mlogger.Logger, db *mongo.Database) (*PoliciesDB, error) {
	p := &PoliciesDB{
		DBImp: *template.Create[*model.PolicyDescription](logger, mservice.Policies, db),
	}

	return p, nil
}
