import type { IEventHandler } from "@webiny/api-core/features/eventPublisher/index.js"; import { DomainEvent } from "@webiny/api-core/features/eventPublisher/index.js"; import type { CmsModel, CmsModelCreateFromInput } from "../../../types/index.js"; /** * Event payloads */ export interface ModelBeforeCreateFromEventPayload { model: CmsModel; original: CmsModel; input: CmsModelCreateFromInput; } export interface ModelAfterCreateFromEventPayload { model: CmsModel; original: CmsModel; } export interface ModelCreateFromErrorEventPayload { input: CmsModelCreateFromInput; model: CmsModel; original: CmsModel; error: Error; } /** * ModelBeforeCreateFromEvent - Published before creating a model from existing */ export declare class ModelBeforeCreateFromEvent extends DomainEvent { eventType: "Cms/Model/BeforeCreateFrom"; getHandlerAbstraction(): import("@webiny/di").Abstraction>; } /** Hook into model lifecycle before a model is cloned. */ export declare const ModelBeforeCreateFromEventHandler: import("@webiny/di").Abstraction>; export declare namespace ModelBeforeCreateFromEventHandler { type Interface = IEventHandler; type Event = ModelBeforeCreateFromEvent; } /** * ModelAfterCreateFromEvent - Published after creating a model from existing */ export declare class ModelAfterCreateFromEvent extends DomainEvent { eventType: "Cms/Model/AfterCreateFrom"; getHandlerAbstraction(): import("@webiny/di").Abstraction>; } /** Hook into model lifecycle after a model is cloned. */ export declare const ModelAfterCreateFromEventHandler: import("@webiny/di").Abstraction>; export declare namespace ModelAfterCreateFromEventHandler { type Interface = IEventHandler; type Event = ModelAfterCreateFromEvent; } /** * ModelCreateFromErrorEvent - Published when create from fails */ export declare class ModelCreateFromErrorEvent extends DomainEvent { eventType: "Cms/Model/CreateFromError"; getHandlerAbstraction(): import("@webiny/di").Abstraction>; } export declare const ModelCreateFromErrorEventHandler: import("@webiny/di").Abstraction>; export declare namespace ModelCreateFromErrorEventHandler { type Interface = IEventHandler; type Event = ModelCreateFromErrorEvent; }