// src/runtime/IRuntimeEvent.ts

export type RuntimeEventType =
  | 'runtime:started'
  | 'runtime:stopped'
  | 'component:registered'
  | 'component:mounted'
  | 'component:unmounted'
  | 'error';

export interface IRuntimeEvent {
  type: RuntimeEventType;
  timestamp: number;
  tag?: string;
  mountPath?: string;
  message?: string;
  error?: Error;
}

export type RuntimeEventListener = (event: IRuntimeEvent) => void;
