import { IDisposable, DisposableStore } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle"; import { ISCMProvider, ISCMRepository } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/scm/common/scm"; import { ISCMViewService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/scm/common/scm.service"; import { CountBadge } from "@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/countBadge/countBadge"; import { IContextMenuService } from "@codingame/monaco-vscode-api/vscode/vs/platform/contextview/browser/contextView.service"; import { ICommandService } from "@codingame/monaco-vscode-api/vscode/vs/platform/commands/common/commands.service"; import { ActionRunner, IAction } from "@codingame/monaco-vscode-api/vscode/vs/base/common/actions"; import { ITreeNode, ITreeRenderer } from "@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/tree/tree"; import { ICompressibleTreeRenderer } from "@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/tree/objectTree"; import { FuzzyScore } from "@codingame/monaco-vscode-api/vscode/vs/base/common/filters"; import { IListRenderer } from "@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/list/list"; import { IActionViewItemProvider } from "@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/actionbar/actionbar"; import { WorkbenchToolBar } from "@codingame/monaco-vscode-api/vscode/vs/platform/actions/browser/toolbar"; import { MenuId } from "@codingame/monaco-vscode-api/vscode/vs/platform/actions/common/actions"; import { IMenuService } from "@codingame/monaco-vscode-api/vscode/vs/platform/actions/common/actions.service"; import { IContextKeyService } from "@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey.service"; import { IKeybindingService } from "@codingame/monaco-vscode-api/vscode/vs/platform/keybinding/common/keybinding.service"; import { ITelemetryService } from "@codingame/monaco-vscode-api/vscode/vs/platform/telemetry/common/telemetry.service"; import { IconLabel } from "@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/iconLabel/iconLabel"; import { IUriIdentityService } from "@codingame/monaco-vscode-api/vscode/vs/platform/uriIdentity/common/uriIdentity.service"; import { ILabelService } from "@codingame/monaco-vscode-api/vscode/vs/platform/label/common/label.service"; export declare class RepositoryActionRunner extends ActionRunner { private readonly getSelectedRepositories; constructor(getSelectedRepositories: () => ISCMRepository[]); protected runAction(action: IAction, context: ISCMProvider): Promise; } interface RepositoryTemplate { readonly icon: HTMLElement; readonly label: IconLabel; readonly countContainer: HTMLElement; readonly count: CountBadge; readonly toolBar: WorkbenchToolBar; readonly elementDisposables: DisposableStore; readonly templateDisposable: IDisposable; } export declare class RepositoryRenderer implements ICompressibleTreeRenderer, IListRenderer, ITreeRenderer { private readonly toolbarMenuId; private readonly actionViewItemProvider; private commandService; private contextKeyService; private contextMenuService; private keybindingService; private labelService; private menuService; private scmViewService; private telemetryService; private uriIdentityService; static readonly TEMPLATE_ID = "repository"; get templateId(): string; private readonly onDidChangeVisibleRepositoriesSignal; constructor(toolbarMenuId: MenuId, actionViewItemProvider: IActionViewItemProvider, commandService: ICommandService, contextKeyService: IContextKeyService, contextMenuService: IContextMenuService, keybindingService: IKeybindingService, labelService: ILabelService, menuService: IMenuService, scmViewService: ISCMViewService, telemetryService: ITelemetryService, uriIdentityService: IUriIdentityService); renderTemplate(container: HTMLElement): RepositoryTemplate; renderElement(arg: ISCMRepository | ITreeNode, index: number, templateData: RepositoryTemplate): void; renderCompressedElements(): void; disposeElement(group: ISCMRepository | ITreeNode, index: number, template: RepositoryTemplate): void; disposeTemplate(templateData: RepositoryTemplate): void; } export {};