44 lines
896 B
TypeScript
44 lines
896 B
TypeScript
/**
|
|
* Dashboard Event Publisher Port
|
|
*
|
|
* Defines the interface for publishing dashboard-related events.
|
|
*/
|
|
|
|
/**
|
|
* Dashboard accessed event
|
|
*/
|
|
export interface DashboardAccessedEvent {
|
|
type: 'dashboard_accessed';
|
|
driverId: string;
|
|
timestamp: Date;
|
|
}
|
|
|
|
/**
|
|
* Dashboard error event
|
|
*/
|
|
export interface DashboardErrorEvent {
|
|
type: 'dashboard_error';
|
|
driverId: string;
|
|
error: string;
|
|
timestamp: Date;
|
|
}
|
|
|
|
/**
|
|
* Dashboard Event Publisher Interface
|
|
*
|
|
* Publishes events related to dashboard operations.
|
|
*/
|
|
export interface DashboardEventPublisher {
|
|
/**
|
|
* Publish a dashboard accessed event
|
|
* @param event - The event to publish
|
|
*/
|
|
publishDashboardAccessed(event: DashboardAccessedEvent): Promise<void>;
|
|
|
|
/**
|
|
* Publish a dashboard error event
|
|
* @param event - The event to publish
|
|
*/
|
|
publishDashboardError(event: DashboardErrorEvent): Promise<void>;
|
|
}
|