import 'reflect-metadata'; /** * Event handler metadata */ interface EventHandlerMetadata { event: string; methodName: string; } /** * Marks a method as an event handler * * @example * ```typescript * export class OrderTools { * @Tool({ name: 'create_order', ... }) * async createOrder(input: Record, ctx: ExecutionContext) { * const order = await this.saveOrder(input); * * // Emit event * ctx.emit('order.created', order); * * return order; * } * } * * export class NotificationService { * @OnEvent('order.created') * async handleOrderCreated(order: unknown) { * await this.sendConfirmationEmail(order); * } * } * ``` */ export declare function OnEvent(event: string): MethodDecorator; /** * Get event handlers from a class */ export declare function getEventHandlers(target: object): EventHandlerMetadata[]; /** * Register all event handlers from a class instance */ export declare function registerEventHandlers(instance: object & Record): void; /** * Emit an event from execution context */ export declare function emitEvent(event: string, ...args: unknown[]): void; export {}; //# sourceMappingURL=event.decorator.d.ts.map