@ournet/domain
Version:
Ournet domain
7 lines (6 loc) • 323 B
TypeScript
export declare abstract class UseCase<DATA, RESULT, OPTIONS> {
execute(data: DATA, options?: OPTIONS): Promise<RESULT>;
protected initData(data: DATA): Promise<DATA>;
protected validateData(data: DATA): Promise<DATA>;
protected abstract innerExecute(data: DATA, options?: OPTIONS): Promise<RESULT>;
}