/**
 * Copyright Camunda Services GmbH and/or licensed to Camunda Services GmbH
 * under one or more contributor license agreements. See the NOTICE file
 * distributed with this work for additional information regarding copyright
 * ownership.
 *
 * Camunda licenses this file to you under the MIT; you may not use this file
 * except in compliance with the MIT License.
 */
export class BaseAppendMenuProvider {
  /**
   * @param injector
   * @param config
   */
  constructor(injector: any, config: Config);

  /**
   * @param element
   *
   * @returns
   */
  getPopupMenuEntries(element: ModdleElement): PopupMenuEntries;
}

export type Injector = any;
type ModdleElement = import("bpmn-js/lib/model/Types").ModdleElement;
type PopupMenuEntries = import("diagram-js/lib/features/popup-menu/PopupMenuProvider").PopupMenuEntries;

export type Config = {
    resourceType: string;
    className: string;
    groupName: string;
    createElement: (resource: any, injector: Injector) => ModdleElement;
    search?: string | undefined;
};
