<?php

declare(strict_types=1);

namespace PpPhp\Core\Platform\Services\Contracts;

use PpPhp\Core\Platform\Services\Definition\ServiceDefinition;

interface ServiceRegistryInterface
{
    public function register(ServiceDefinition $definition): void;

    public function has(string $id): bool;

    public function get(string $id): ?ServiceDefinition;

    public function all(): array;
}
