<?php
/**
 * @package Hafenstudios\Kurato
 */

namespace Hafenstudios\Kurato\Cockpit;

defined( 'ABSPATH' ) || exit;

/**
 * Seam fuer die Nutzer-Pruefung bei der Ticket-Anmeldung (Vertrag Schritt 5).
 * Haelt die WordPress-Nutzerlogik aus dem Authenticator heraus, damit die
 * Namespace-Bindung und die Fehlerpfade ohne WordPress testbar bleiben.
 */
interface UserDirectory {

	/**
	 * Darf dieser Nutzer per Cockpit-Ticket angemeldet werden? Wahr, wenn der
	 * Nutzer existiert, aktiv ist und Rolle kurato_agent hat ODER Inhaber ist.
	 *
	 * @param int $wp_user_id WP-Nutzer-ID aus dem Ticket.
	 * @return bool
	 */
	public function is_valid_agent( int $wp_user_id ): bool;
}
