import React from 'react'; import { Event, IPosition } from '@opensumi/ide-core-common'; import { ICodeEditor, Position } from '@opensumi/ide-monaco'; import { ReactInlineContentWidget } from '@opensumi/ide-monaco/lib/browser/ai-native/BaseInlineContentWidget'; import { ContentWidgetPositionPreference } from '@opensumi/ide-monaco/lib/browser/monaco-exports/editor'; import { LineTokens } from '@opensumi/monaco-editor-core/esm/vs/editor/common/tokens/lineTokens'; import { IOptions, ZoneWidget } from '@opensumi/monaco-editor-core/esm/vs/editor/contrib/zoneWidget/browser/zoneWidget'; import { UndoRedoGroup } from '@opensumi/monaco-editor-core/esm/vs/platform/undoRedo/common/undoRedo'; import { DeltaDecorations, EnhanceDecorationsCollection, IDeltaDecorationsOptions } from '../../model/enhanceDecorationsCollection'; export declare const ActiveLineDecoration = "activeLine-decoration"; export declare const AddedRangeDecoration = "added-range-decoration"; export declare const PendingRangeDecoration = "pending-range-decoration"; type IWidgetStatus = 'accept' | 'discard' | 'pending'; export interface IRemovedWidgetState { textLines: ITextLinesTokens[]; position: IPosition; } export interface ITextLinesTokens { text: string; lineTokens: LineTokens; } export interface IPartialEditWidgetOptions { /** * In some case, we don't want to show the accept and reject button */ hideAcceptPartialEditWidget?: boolean; } export declare class AcceptPartialEditWidget extends ReactInlineContentWidget { protected readonly editor: ICodeEditor; protected editWidgetOptions?: IPartialEditWidgetOptions | undefined; static ID: string; private readonly keybindingRegistry; private _id; private _addedRangeId; private readonly _onAccept; readonly onAccept: Event; private readonly _onDiscard; readonly onDiscard: Event; positionPreference: ContentWidgetPositionPreference[]; constructor(editor: ICodeEditor, editWidgetOptions?: IPartialEditWidgetOptions | undefined); addedLinesCount: number; deletedLinesCount: number; status: IWidgetStatus; private _group; get group(): UndoRedoGroup; private getSequenceKeyStrings; renderView(): React.ReactNode; id(): string; getClassName(): string; recordAddedRangeId(id: string): void; getAddedRangeId(): string; resume(): void; setGroup(group: any): void; get isPending(): boolean; accept(addedLinesCount: number, deletedLinesCount: number): void; get isAccepted(): boolean; discard(addedLinesCount: number, deletedLinesCount: number): void; get isRejected(): boolean; } export interface IRemovedZoneWidgetOptions extends IOptions { isHidden?: boolean; recordPosition?: Position; undoRedoGroup?: UndoRedoGroup; } export declare class RemovedZoneWidget extends ZoneWidget { readonly textLines: ITextLinesTokens[]; private root; private _recordPosition; private _hidden; get isHidden(): boolean; private _group; get group(): UndoRedoGroup; status: IWidgetStatus; constructor(editor: ICodeEditor, textLines: ITextLinesTokens[], options: IRemovedZoneWidgetOptions); setGroup(group: any): void; _fillContainer(container: HTMLElement): void; getRemovedTextLines(): string[]; get height(): number; getLastPosition(): Position; accept(): void; discard(): void; hide(): void; resume(): void; show(pos: IPosition, heightInLines: number): void; revealRange(): void; create(): void; mountRender(): void; dispose(): void; } declare class AddedRangeDeltaDecorations extends DeltaDecorations { status: IWidgetStatus; accept(): void; discard(): void; } export declare class AddedRangeDecorationsCollection extends EnhanceDecorationsCollection { protected createDecorations(metaData: IDeltaDecorationsOptions): AddedRangeDeltaDecorations; } export {}; //# sourceMappingURL=live-preview.component.d.ts.map