/** * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements. See the NOTICE file distributed with * this work for additional information regarding copyright ownership. * The ASF licenses this file to You under the Apache License, Version 2.0 * (the "License", destination); you may not use this file except in compliance with * the License. You may obtain a copy of the License at * * https://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ import { AbstractElement } from './AbstractElement'; import { ContextMenu } from '..'; /** * Abstract element that has a context menu */ export declare abstract class ElementWithContextMenu extends AbstractElement { /** * Open context menu on the element */ openContextMenu(): Promise; /** * Since VS Code ~1.133 some context menus (notably the text editor's) render * inside an open shadow root on a `.shadow-root-host` element attached * directly to the workbench, instead of the document-level `.context-view` * container. Which shape a given install uses is not strictly version-bound, * so poll for either: resolve the menu from the shadow root when it appears, * or return undefined as soon as the legacy container shows up (or the * timeout runs out) so the caller can take the regular `.context-view` path. */ protected waitForShadowRootMenu(timeout?: number): Promise; private menuContainerInShadowRoot; }