refactor
This commit is contained in:
@@ -1,11 +1,15 @@
|
||||
import type { Result } from './Result';
|
||||
import type { ApplicationErrorCode } from '../errors/ApplicationErrorCode';
|
||||
|
||||
/**
|
||||
* 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 type to present
|
||||
* @template T - The success type in the Result
|
||||
* @template E - The error code type
|
||||
*/
|
||||
export interface UseCaseOutputPort<T> {
|
||||
present(data: T): void;
|
||||
export interface UseCaseOutputPort<T, E extends string = string> {
|
||||
present(result: Result<T, ApplicationErrorCode<E>>): any;
|
||||
}
|
||||
Reference in New Issue
Block a user