Could this usage be a reason for rejection in plugins?

Hi guys, I have a question about WPDB and database operations. Since WordPress does not have a model logic and we do CRUD operations directly with WPDB, there was an irregular code structure.

I also developed a model package to use plugins as well. Actually, the transactions are done with WPDB, but not directly.

So this model package provides us with an interface. Sample code below.

use Beycan\Moodel\AbstractModel;

AbstractModel::setPrefix('mystic');

class Notifications extends AbstractModel 
{
    public function __construct()
    {
        parent::__construct('notification', [
            'id' => [
                'type' => 'integer',
                'nullable' => true,
                'index' => [
                    'type' => 'primary',
                    'autoIncrement' => true
                ]
            ],
            'date' => [
                'type' => 'timestamp',
                'nullable' => true,
                'default' => 'current_timestamp',
            ],
            'desc' => [
                'type' => 'string',
                'length' => 50,
                'nullable' => true,
            ]
        ]);
    }
}

$notificationModel = new Notifications();

$notificationModel->insert([
    'desc' => 'Description'
]);

As you can see in the example, we have a model class derived from the Abstract Model.

In other words, we now use this class when we are going to operate in the notification table. There are many helper methods that come in it such as insert, update, delete, findBy, findAll etc.

This makes the code more readable and organized. But could this be the reason for rejection to envato market? I was wondering about this. In addition, we can write special queries that will run under that table with the query builder in the model.

Could this be a reason for rejection?