import type { IEventHandler } from "@webiny/api-core/features/eventPublisher/index.js"; import { DomainEvent } from "@webiny/api-core/features/eventPublisher/index.js"; import type { CmsGroup, CmsGroupCreateInput } from "../../../types/index.js"; /** * Event payloads */ export interface GroupBeforeCreateEventPayload { group: CmsGroup; } export interface GroupAfterCreateEventPayload { group: CmsGroup; } export interface GroupCreateErrorEventPayload { input: CmsGroupCreateInput; group: CmsGroup; error: Error; } /** * GroupBeforeCreateEvent - Published before creating a group */ export declare class GroupBeforeCreateEventEvent extends DomainEvent { eventType: "Cms/Group/BeforeCreate"; getHandlerAbstraction(): import("@webiny/di").Abstraction>; } /** Hook into group lifecycle before a group is created. */ export declare const GroupBeforeCreateEventHandler: import("@webiny/di").Abstraction>; export declare namespace GroupBeforeCreateEventHandler { type Interface = IEventHandler; type Event = GroupBeforeCreateEventEvent; } /** * GroupAfterCreateEvent - Published after creating a group */ export declare class GroupAfterCreateEvent extends DomainEvent { eventType: "Cms/Group/AfterCreate"; getHandlerAbstraction(): import("@webiny/di").Abstraction>; } /** Hook into group lifecycle after a group is created. */ export declare const GroupAfterCreateEventHandler: import("@webiny/di").Abstraction>; export declare namespace GroupAfterCreateEventHandler { type Interface = IEventHandler; type Event = GroupAfterCreateEvent; } /** * GroupCreateErrorEvent - Published when create fails */ export declare class GroupCreateErrorEvent extends DomainEvent { eventType: "Cms/Group/CreateError"; getHandlerAbstraction(): import("@webiny/di").Abstraction>; } export declare const GroupCreateErrorEventHandler: import("@webiny/di").Abstraction>; export declare namespace GroupCreateErrorEventHandler { type Interface = IEventHandler; type Event = GroupCreateErrorEvent; }