/**
 * Output Port interface for use cases.
 *
 * Defines how the core communicates outward. A behavioral boundary that allows
 * the use case to present results without knowing the presentation details.
 *
 * @template T - The result model type
 */
export interface UseCaseOutputPort<T> {
  present(data: T): void;
}