import { IContextKeyService } from '../../../../platform/contextkey/common/contextkey.service.js';
import { IInstantiationService } from '../../../../platform/instantiation/common/instantiation.js';
import { IWorkbenchLayoutService } from '../../../services/layout/browser/layoutService.service.js';
import { IStorageService } from '../../../../platform/storage/common/storage.service.js';
import { IContextMenuService } from '../../../../platform/contextview/browser/contextView.service.js';
import { IKeybindingService } from '../../../../platform/keybinding/common/keybinding.service.js';
import { IThemeService } from '../../../../platform/theme/common/themeService.service.js';
import { INotificationService } from '../../../../platform/notification/common/notification.service.js';
import { AnchorAlignment } from '../../../../base/browser/ui/contextview/contextview.js';
import { IExtensionService } from '../../../services/extensions/common/extensions.service.js';
import { LayoutPriority } from '../../../../base/browser/ui/splitview/splitview.js';
import { IViewDescriptorService } from '../../../common/views.service.js';
import { AbstractPaneCompositePart, CompositeBarPosition } from '../paneCompositePart.js';
import { ActivityBarCompositeBar } from '../activitybar/activitybarPart.js';
import { IPaneCompositeBarOptions } from '../paneCompositeBar.js';
import { IConfigurationService } from '../../../../platform/configuration/common/configuration.service.js';
import { IMenuService } from '../../../../platform/actions/common/actions.service.js';

declare class SidebarPart extends AbstractPaneCompositePart {
    private readonly configurationService;
    static readonly activeViewletSettingsKey = "workbench.sidebar.activeviewletid";
    readonly minimumWidth: number;
    readonly maximumWidth: number;
    readonly minimumHeight: number;
    readonly maximumHeight: number;
    readonly priority: LayoutPriority;
    get preferredWidth(): number | undefined;
    private readonly acitivityBarPart;
    constructor(notificationService: INotificationService, storageService: IStorageService, contextMenuService: IContextMenuService, layoutService: IWorkbenchLayoutService, keybindingService: IKeybindingService, instantiationService: IInstantiationService, themeService: IThemeService, viewDescriptorService: IViewDescriptorService, contextKeyService: IContextKeyService, extensionService: IExtensionService, configurationService: IConfigurationService, menuService: IMenuService);
    private onDidChangeActivityBarLocation;
    updateStyles(): void;
    layout(width: number, height: number, top: number, left: number): void;
    protected getTitleAreaDropDownAnchorAlignment(): AnchorAlignment;
    protected createCompositeBar(): ActivityBarCompositeBar;
    protected getCompositeBarOptions(): IPaneCompositeBarOptions;
    protected shouldShowCompositeBar(): boolean;
    private shouldShowActivityBar;
    protected getCompositeBarPosition(): CompositeBarPosition;
    private rememberActivityBarVisiblePosition;
    private getRememberedActivityBarVisiblePosition;
    getPinnedPaneCompositeIds(): string[];
    getVisiblePaneCompositeIds(): string[];
    focusActivityBar(): Promise<void>;
    private registerActions;
    toJSON(): object;
}

export { SidebarPart };
