import { Plugin , CoreSetup , CoreStart } from '../../../src/core/public' ; import { UiActionsSetup , UiActionsStart } from '../../../src/plugins/ui_actions/public' ; import { createHelloWorldAction } from './hello_world_action' ; import { helloWorldTrigger } from './hello_world_trigger' ; export interface UiActionExamplesSetupDependencies { uiActions : UiActionsSetup ; } export interface UiActionExamplesStartDependencies { uiActions : UiActionsStart ; } export class UiActionExamplesPlugin implements Plugin < void , void , UiActionExamplesSetupDependencies , UiActionExamplesStartDependencies > { public setup ( core , { uiActions } ) { uiActions . registerTrigger ( helloWorldTrigger ) ; const helloWorldAction = createHelloWorldAction ( async ( ) => ( { openModal : ( await core . getStartServices ( ) ) [ 0 ] . overlays . openModal , } ) ) ; uiActions . registerAction ( helloWorldAction ) ; uiActions . addTriggerAction ( helloWorldTrigger . id , helloWorldAction ) ; } public start ( core , plugins ) { } public stop ( ) { } }