Some checks failed
CI / lint-typecheck (pull_request) Failing after 4m51s
CI / tests (pull_request) Has been skipped
CI / contract-tests (pull_request) Has been skipped
CI / e2e-tests (pull_request) Has been skipped
CI / comment-pr (pull_request) Has been skipped
CI / commit-types (pull_request) Has been skipped
20 lines
369 B
TypeScript
20 lines
369 B
TypeScript
/**
|
|
* EventPublisher Port
|
|
*
|
|
* Defines the interface for publishing domain events.
|
|
* This port is implemented by adapters that can publish events.
|
|
*/
|
|
|
|
export interface EventPublisher {
|
|
/**
|
|
* Publish a domain event
|
|
*/
|
|
publish(event: DomainEvent): Promise<void>;
|
|
}
|
|
|
|
export interface DomainEvent {
|
|
type: string;
|
|
timestamp: Date;
|
|
[key: string]: any;
|
|
}
|