<?php

namespace domain\Order\OrderStatus;

use domain\_\AbstractModule;

class OrderStatusModule extends AbstractModule
{
    public function getServices(): array
    {
        return [
            OrderStatusDefinition::class,
            OrderStatusSolver::class,
            OrderStatusRepository::class,
            OrderStatusBuilder::class,
        ];
    }

    public function getDefinition(): OrderStatusDefinition
    {
        return  OrderStatusDefinition::getInstance();
    }

    public function getSolver(): OrderStatusSolver
    {
        return  OrderStatusSolver::getInstance();
    }

    public function getRepository(): OrderStatusRepository
    {
        return OrderStatusRepository::getInstance();
    }

    public function getBuilder(): OrderStatusBuilder
    {
        return OrderStatusBuilder::getInstance();
    }
}