import { Abstraction } from "@webiny/di"; import type { DomainEvent, IEventHandler } from "../abstractions.js"; interface PagePublishedPayload { pageId: string; title: string; publishedBy: string; publishedAt: Date; } declare class PagePublishedEvent implements DomainEvent { payload: PagePublishedPayload; eventType: "page.published"; occurredAt: Date; constructor(payload: PagePublishedPayload); getHandlerAbstraction(): Abstraction>; } export declare const PagePublishedHandler: Abstraction>; interface UserRegisteredPayload { userId: string; email: string; name: string; } declare class UserRegisteredEvent implements DomainEvent { payload: UserRegisteredPayload; eventType: "user.registered"; occurredAt: Date; constructor(payload: UserRegisteredPayload); getHandlerAbstraction(): Abstraction>; } export declare const UserRegisteredHandler: Abstraction>; interface OrderPlacedPayload { orderId: string; customerId: string; total: number; items: Array<{ productId: string; quantity: number; }>; } declare class OrderPlacedEvent implements DomainEvent { payload: OrderPlacedPayload; eventType: "order.placed"; occurredAt: Date; constructor(payload: OrderPlacedPayload); getHandlerAbstraction(): Abstraction>; } export declare const OrderPlacedHandler: Abstraction>; declare class SendNotificationHandler implements IEventHandler { handledEvents: PagePublishedEvent[]; handle(event: PagePublishedEvent): Promise; } export declare const SendNotificationHandlerImpl: import("@webiny/di").Implementation; declare class UpdateSearchIndexHandler implements IEventHandler { handledEvents: PagePublishedEvent[]; handle(event: PagePublishedEvent): Promise; } export declare const UpdateSearchIndexHandlerImpl: import("@webiny/di").Implementation; declare class LogPagePublishedHandler implements IEventHandler { handledEvents: PagePublishedEvent[]; handle(event: PagePublishedEvent): Promise; } export declare const LogPagePublishedHandlerImpl: import("@webiny/di").Implementation; declare class SendWelcomeEmailHandler implements IEventHandler { handledEvents: UserRegisteredEvent[]; handle(event: UserRegisteredEvent): Promise; } export declare const SendWelcomeEmailHandlerImpl: import("@webiny/di").Implementation; declare class CreateUserProfileHandler implements IEventHandler { handledEvents: UserRegisteredEvent[]; handle(event: UserRegisteredEvent): Promise; } export declare const CreateUserProfileHandlerImpl: import("@webiny/di").Implementation; declare class TrackUserRegistrationHandler implements IEventHandler { handledEvents: UserRegisteredEvent[]; handle(event: UserRegisteredEvent): Promise; } export declare const TrackUserRegistrationHandlerImpl: import("@webiny/di").Implementation; declare class ProcessPaymentHandler implements IEventHandler { handledEvents: OrderPlacedEvent[]; handle(event: OrderPlacedEvent): Promise; } export declare const ProcessPaymentHandlerImpl: import("@webiny/di").Implementation; declare class SendOrderConfirmationHandler implements IEventHandler { handledEvents: OrderPlacedEvent[]; handle(event: OrderPlacedEvent): Promise; } export declare const SendOrderConfirmationHandlerImpl: import("@webiny/di").Implementation; declare class UpdateInventoryHandler implements IEventHandler { handledEvents: OrderPlacedEvent[]; handle(event: OrderPlacedEvent): Promise; } export declare const UpdateInventoryHandlerImpl: import("@webiny/di").Implementation; export {};