import { VSBuffer } from "../../../../base/common/buffer.js";
import { URI } from "../../../../base/common/uri.js";
import { IDraggedResourceEditorInput, MarkerTransferData, DocumentSymbolTransferData, NotebookCellOutputTransferData } from "../../../../platform/dnd/browser/dnd.js";
import { EditorInput } from "../../../common/editor/editorInput.js";
import { SCMHistoryItemTransferData } from "@codingame/monaco-vscode-2339d6ac-d6bb-53cd-95ee-81911735d1c7-common/vscode/vs/workbench/contrib/scm/browser/scmHistoryChatContext";
import { IChatRequestVariableEntry, IDiagnosticVariableEntry, ISymbolVariableEntry, ISCMHistoryItemVariableEntry } from "../common/chatVariableEntries.js";
import { ImageTransferData } from "@codingame/monaco-vscode-chat-service-override/vscode/vs/workbench/contrib/chat/browser/chatAttachmentResolveService";
export declare const IChatAttachmentResolveService: import("../../../../platform/instantiation/common/instantiation.js").ServiceIdentifier<IChatAttachmentResolveService>;
export interface IChatAttachmentResolveService {
    _serviceBrand: undefined;
    resolveEditorAttachContext(editor: EditorInput | IDraggedResourceEditorInput): Promise<IChatRequestVariableEntry | undefined>;
    resolveUntitledEditorAttachContext(editor: IDraggedResourceEditorInput): Promise<IChatRequestVariableEntry | undefined>;
    resolveResourceAttachContext(resource: URI, isDirectory: boolean): Promise<IChatRequestVariableEntry | undefined>;
    resolveImageEditorAttachContext(resource: URI, data?: VSBuffer, mimeType?: string): Promise<IChatRequestVariableEntry | undefined>;
    resolveImageAttachContext(images: ImageTransferData[]): Promise<IChatRequestVariableEntry[]>;
    resolveMarkerAttachContext(markers: MarkerTransferData[]): IDiagnosticVariableEntry[];
    resolveSymbolsAttachContext(symbols: DocumentSymbolTransferData[]): ISymbolVariableEntry[];
    resolveNotebookOutputAttachContext(data: NotebookCellOutputTransferData): IChatRequestVariableEntry[];
    resolveSourceControlHistoryItemAttachContext(data: SCMHistoryItemTransferData[]): ISCMHistoryItemVariableEntry[];
}
