import type { AnyEventMap } from '../../event/types/event-map.type'; import type { UsecaseSymbolModel } from './usecase-symbol-model.interface'; export type UsecaseSymbolId< Type extends string, Name extends string, > = `${Type}<${Name}>`; export type AnyUsecaseSymbol = UsecaseSymbolModel< string, string, AnyEventMap >; export type UsecaseSymbolType = Source extends UsecaseSymbolModel ? Type : never; export type UsecaseSymbolName = Source extends UsecaseSymbolModel ? Name : never; // export type UsecaseSymbolEventMap = // Source extends UsecaseSymbolModel // ? Map extends DefaultEventMap // ? never // : Map // : DefaultEventMap;