diff --git a/packages/editor-ui/src/event-bus/node-view.ts b/packages/editor-ui/src/event-bus/node-view.ts index 9023b161b7f70..9ed68a63e13ba 100644 --- a/packages/editor-ui/src/event-bus/node-view.ts +++ b/packages/editor-ui/src/event-bus/node-view.ts @@ -1,3 +1,28 @@ import { createEventBus } from 'n8n-design-system/utils'; +import type { IDataObject } from 'n8n-workflow'; -export const nodeViewEventBus = createEventBus(); +/** Callback function called after workflow has been save */ +export type OnSaveWorkflowFn = () => void; + +export interface NodeViewEventBusEvents { + /** Command to create a new workflow */ + newWorkflow: never; + + /** Command to open the chat */ + openChat: never; + + /** Command to save the current workflow */ + saveWorkflow: OnSaveWorkflowFn; + + /** Command to import a workflow from given data */ + importWorkflowData: IDataObject; + + /** Command to import a workflow from given URL */ + importWorkflowUrl: IDataObject; + + 'runWorkflowButton:mouseenter': never; + + 'runWorkflowButton:mouseleave': never; +} + +export const nodeViewEventBus = createEventBus();