package pagination import ( "go.mongodb.org/mongo-driver/bson" "go.mongodb.org/mongo-driver/mongo" ) type MongoFilter interface { FilterQuery() mongo.Pipeline Sort() bson.D } type dynamicFilter struct { pipeline mongo.Pipeline sort bson.D } func (d dynamicFilter) FilterQuery() mongo.Pipeline { return d.pipeline } func (d dynamicFilter) Sort() bson.D { return d.sort } func CreateFilter(pipeline mongo.Pipeline, sort bson.D) MongoFilter { return dynamicFilter{pipeline: pipeline, sort: sort} }