import type { IEventHandler } from "@webiny/api-core/features/eventPublisher/index.js"; import { DomainEvent } from "@webiny/api-core/features/eventPublisher/index.js"; import type { CmsModel } from "../../../types/index.js"; /** * Event payloads */ export interface ModelBeforeDeleteEventPayload { model: CmsModel; } export interface ModelAfterDeleteEventPayload { model: CmsModel; } export interface ModelDeleteErrorEventPayload { model: CmsModel; error: Error; } /** * ModelBeforeDeleteEvent - Published before deleting a model */ export declare class ModelBeforeDeleteEvent extends DomainEvent { eventType: "Cms/Model/BeforeDelete"; getHandlerAbstraction(): import("@webiny/di").Abstraction>; } /** Hook into model lifecycle before a model is deleted. */ export declare const ModelBeforeDeleteEventHandler: import("@webiny/di").Abstraction>; export declare namespace ModelBeforeDeleteEventHandler { type Interface = IEventHandler; type Event = ModelBeforeDeleteEvent; } /** * ModelAfterDeleteEvent - Published after deleting a model */ export declare class ModelAfterDeleteEvent extends DomainEvent { eventType: "Cms/Model/AfterDelete"; getHandlerAbstraction(): import("@webiny/di").Abstraction>; } /** Hook into model lifecycle after a model is deleted. */ export declare const ModelAfterDeleteEventHandler: import("@webiny/di").Abstraction>; export declare namespace ModelAfterDeleteEventHandler { type Interface = IEventHandler; type Event = ModelAfterDeleteEvent; } /** * ModelDeleteErrorEvent - Published when delete fails */ export declare class ModelDeleteErrorEvent extends DomainEvent { eventType: "Cms/Model/DeleteError"; getHandlerAbstraction(): import("@webiny/di").Abstraction>; } export declare const ModelDeleteErrorEventHandler: import("@webiny/di").Abstraction>; export declare namespace ModelDeleteErrorEventHandler { type Interface = IEventHandler; type Event = ModelDeleteErrorEvent; }