<?php

declare(strict_types=1);

namespace ROITheme\Admin\Domain\Contracts;

/**
 * Contrato para registrar el menú de administración
 *
 * Domain - Lógica pura sin WordPress
 */
interface MenuRegistrarInterface
{
    /**
     * Registra el menú en el sistema de administración
     *
     * @return void
     */
    public function register(): void;

    /**
     * Obtiene la capacidad requerida para acceder al menú
     *
     * @return string
     */
    public function getCapability(): string;

    /**
     * Obtiene el slug del menú
     *
     * @return string
     */
    public function getSlug(): string;
}
