package model

import "github.com/zeromicro/go-zero/core/stores/mon"

var _ TeamsModel = (*customTeamsModel)(nil)

type (
	// TeamsModel is an interface to be customized, add more methods here,
	// and implement the added methods in customTeamsModel.
	TeamsModel interface {
		teamsModel
	}

	customTeamsModel struct {
		*defaultTeamsModel
	}
)

// NewTeamsModel returns a model for the mongo.
func NewTeamsModel(url, db, collection string) TeamsModel {
	conn := mon.MustNewModel(url, db, collection)
	return &customTeamsModel{
		defaultTeamsModel: newDefaultTeamsModel(conn),
	}
}
