import { CountBadge } from "../../../../base/browser/ui/countBadge/countBadge.js"; import { HighlightedLabel, IHighlight } from "../../../../base/browser/ui/highlightedlabel/highlightedLabel.js"; import { CachedListVirtualDelegate } from "../../../../base/browser/ui/list/list.js"; import { IListAccessibilityProvider } from "../../../../base/browser/ui/list/listWidget.js"; import { IAsyncDataSource, ITreeNode, ITreeRenderer } from "../../../../base/browser/ui/tree/tree.js"; import { FuzzyScore } from "../../../../base/common/filters.js"; import { Disposable, DisposableStore, IDisposable } from "../../../../base/common/lifecycle.js"; import { IConfigurationService } from "../../../../platform/configuration/common/configuration.service.js"; import { IContextViewService } from "../../../../platform/contextview/browser/contextView.service.js"; import { IHoverService } from "../../../../platform/hover/browser/hover.service.js"; import { IInstantiationService } from "../../../../platform/instantiation/common/instantiation.js"; import { ILabelService } from "../../../../platform/label/common/label.service.js"; import { IEditorService } from "../../../services/editor/common/editorService.service.js"; import { IDebugSession, IExpression, IReplElement, IReplElementSource, IReplOptions } from "../common/debug.js"; import { IDebugService } from "../common/debug.service.js"; import { Variable } from "../common/debugModel.js"; import { RawObjectReplElement, ReplEvaluationInput, ReplEvaluationResult, ReplGroup, ReplOutputElement, ReplVariableElement } from "../common/replModel.js"; import { AbstractExpressionsRenderer, IExpressionTemplateData, IInputBoxOptions } from "./baseDebugView.js"; import { DebugExpressionRenderer } from "./debugExpressionRenderer.js"; interface IReplEvaluationInputTemplateData { label: HighlightedLabel; } interface IReplGroupTemplateData { label: HTMLElement; source: SourceWidget; elementDisposable?: IDisposable; } interface IReplEvaluationResultTemplateData { value: HTMLElement; elementStore: DisposableStore; } interface IOutputReplElementTemplateData { container: HTMLElement; count: CountBadge; countContainer: HTMLElement; value: HTMLElement; source: SourceWidget; getReplElementSource(): IReplElementSource | undefined; elementDisposable: DisposableStore; } interface IRawObjectReplTemplateData { container: HTMLElement; expression: HTMLElement; name: HTMLElement; value: HTMLElement; label: HighlightedLabel; elementStore: DisposableStore; } export declare class ReplEvaluationInputsRenderer implements ITreeRenderer { static readonly ID = "replEvaluationInput"; get templateId(): string; renderTemplate(container: HTMLElement): IReplEvaluationInputTemplateData; renderElement(element: ITreeNode, index: number, templateData: IReplEvaluationInputTemplateData): void; disposeTemplate(templateData: IReplEvaluationInputTemplateData): void; } export declare class ReplGroupRenderer implements ITreeRenderer { private readonly expressionRenderer; private readonly instaService; static readonly ID = "replGroup"; constructor(expressionRenderer: DebugExpressionRenderer, instaService: IInstantiationService); get templateId(): string; renderTemplate(container: HTMLElement): IReplGroupTemplateData; renderElement(element: ITreeNode, _index: number, templateData: IReplGroupTemplateData): void; disposeTemplate(templateData: IReplGroupTemplateData): void; } export declare class ReplEvaluationResultsRenderer implements ITreeRenderer { private readonly expressionRenderer; static readonly ID = "replEvaluationResult"; get templateId(): string; constructor(expressionRenderer: DebugExpressionRenderer); renderTemplate(container: HTMLElement): IReplEvaluationResultTemplateData; renderElement(element: ITreeNode, index: number, templateData: IReplEvaluationResultTemplateData): void; disposeTemplate(templateData: IReplEvaluationResultTemplateData): void; } export declare class ReplOutputElementRenderer implements ITreeRenderer { private readonly expressionRenderer; private readonly instaService; static readonly ID = "outputReplElement"; constructor(expressionRenderer: DebugExpressionRenderer, instaService: IInstantiationService); get templateId(): string; renderTemplate(container: HTMLElement): IOutputReplElementTemplateData; renderElement({ element }: ITreeNode, index: number, templateData: IOutputReplElementTemplateData): void; private setElementCount; disposeTemplate(templateData: IOutputReplElementTemplateData): void; disposeElement(_element: ITreeNode, _index: number, templateData: IOutputReplElementTemplateData): void; } export declare class ReplVariablesRenderer extends AbstractExpressionsRenderer { private readonly expressionRenderer; static readonly ID = "replVariable"; get templateId(): string; constructor(expressionRenderer: DebugExpressionRenderer, debugService: IDebugService, contextViewService: IContextViewService, hoverService: IHoverService); renderElement(node: ITreeNode, _index: number, data: IExpressionTemplateData): void; protected renderExpression(expression: IExpression | ReplVariableElement, data: IExpressionTemplateData, highlights: IHighlight[]): void; protected getInputBoxOptions(expression: IExpression): IInputBoxOptions | undefined; } export declare class ReplRawObjectsRenderer implements ITreeRenderer { private readonly expressionRenderer; static readonly ID = "rawObject"; constructor(expressionRenderer: DebugExpressionRenderer); get templateId(): string; renderTemplate(container: HTMLElement): IRawObjectReplTemplateData; renderElement(node: ITreeNode, index: number, templateData: IRawObjectReplTemplateData): void; disposeTemplate(templateData: IRawObjectReplTemplateData): void; } export declare class ReplDelegate extends CachedListVirtualDelegate { private readonly configurationService; private readonly replOptions; constructor(configurationService: IConfigurationService, replOptions: IReplOptions); getHeight(element: IReplElement): number; /** * With wordWrap enabled, this is an estimate. With wordWrap disabled, this is the real height that the list will use. */ protected estimateHeight(element: IReplElement, ignoreValueLength?: boolean): number; getTemplateId(element: IReplElement): string; hasDynamicHeight(element: IReplElement): boolean; } export declare class ReplDataSource implements IAsyncDataSource { hasChildren(element: IReplElement | IDebugSession): boolean; getChildren(element: IReplElement | IDebugSession): Promise; } export declare class ReplAccessibilityProvider implements IListAccessibilityProvider { getWidgetAriaLabel(): string; getAriaLabel(element: IReplElement): string; } declare class SourceWidget extends Disposable { private readonly hoverService; private readonly labelService; private readonly el; private source?; private hover?; constructor(container: HTMLElement, editorService: IEditorService, hoverService: IHoverService, labelService: ILabelService); setSource(source?: IReplElementSource): void; } export {};