/*---------------------------------------------------------------------------------------------
 *  Copyright (c) Microsoft Corporation. All rights reserved.
 *  Licensed under the MIT License. See License.txt in the project root for license information.
 *--------------------------------------------------------------------------------------------*/
import { BaseActionViewItem } from "../../../base/browser/ui/actionbar/actionViewItems.mjs";
import { IAction } from "../../../base/common/actions.mjs";
import { Event } from "../../../base/common/event.mjs";
import { ResolvedKeybinding } from "../../../base/common/keybindings.mjs";
import { MenuItemAction } from "../common/actions.mjs";
import { IContextKeyService } from "../../contextkey/common/contextkey.mjs";
import { IKeybindingService } from "../../keybinding/common/keybinding.mjs";
import { INotificationService } from "../../notification/common/notification.mjs";
import { IThemeService } from "../../theme/common/themeService.mjs";
import { IContextMenuService } from "../../contextview/browser/contextView.mjs";
export interface IDropdownWithPrimaryActionViewItemOptions {
    getKeyBinding?: (action: IAction) => ResolvedKeybinding | undefined;
}
export declare class DropdownWithPrimaryActionViewItem extends BaseActionViewItem {
    private readonly _contextMenuProvider;
    private readonly _options;
    private _primaryAction;
    private _dropdown;
    private _container;
    private _dropdownContainer;
    get onDidChangeDropdownVisibility(): Event<boolean>;
    constructor(primaryAction: MenuItemAction, dropdownAction: IAction, dropdownMenuActions: IAction[], className: string, _contextMenuProvider: IContextMenuService, _options: IDropdownWithPrimaryActionViewItemOptions | undefined, _keybindingService: IKeybindingService, _notificationService: INotificationService, _contextKeyService: IContextKeyService, _themeService: IThemeService);
    setActionContext(newContext: unknown): void;
    render(container: HTMLElement): void;
    focus(fromRight?: boolean): void;
    blur(): void;
    setFocusable(focusable: boolean): void;
    update(dropdownAction: IAction, dropdownMenuActions: IAction[], dropdownIcon?: string): void;
    dispose(): void;
}
