import type { DependencyManager, FeatureRegistry, Module } from '@aries-framework/core' import { Protocol } from '@aries-framework/core' import { ActionMenuApi } from './ActionMenuApi' import { ActionMenuRole } from './ActionMenuRole' import { ActionMenuRepository } from './repository' import { ActionMenuService } from './services' /** * @public */ export class ActionMenuModule implements Module { public readonly api = ActionMenuApi /** * Registers the dependencies of the question answer module on the dependency manager. */ public register(dependencyManager: DependencyManager, featureRegistry: FeatureRegistry) { // Api dependencyManager.registerContextScoped(ActionMenuApi) // Services dependencyManager.registerSingleton(ActionMenuService) // Repositories dependencyManager.registerSingleton(ActionMenuRepository) // Feature Registry featureRegistry.register( new Protocol({ id: 'https://didcomm.org/action-menu/1.0', roles: [ActionMenuRole.Requester, ActionMenuRole.Responder], }) ) } }