ModalEvaluator

interface ModalEvaluator

Interface for modal evaluators that can be coordinated by the ModalEvaluatorCoordinator. Each evaluator should implement this interface and contribute itself via @ContributesMultibinding.

Types

Link copied to clipboard
sealed class EvaluationResult

Result of modal evaluation

Properties

Link copied to clipboard
abstract val evaluatorId: String

Unique identifier for this evaluator, used for tracking completion timestamps.

Link copied to clipboard
abstract val priority: Int

Priority determines evaluation order. Lower numbers are evaluated first. Priority 1 = highest priority (evaluated first) Priority 2+ = lower priorities (evaluated in ascending order)

Functions

Link copied to clipboard

Evaluates whether this modal should be shown. Called by coordinator only if not blocked by 24-hour window (cooldown period).