import { URI } from "../../../../../../base/common/uri.js";
import { ResolveError } from "@codingame/monaco-vscode-9a6d8b6c-ad4c-5ea3-9558-f43d6dc4c0ad-common/vscode/vs/workbench/contrib/chat/common/promptFileReferenceErrors";
import { IDisposable } from "../../../../../../base/common/lifecycle.js";
import { VSBufferReadableStream } from "../../../../../../base/common/buffer.js";
export interface IPromptContentsProvider extends IDisposable {
    readonly uri: URI;
    start(): this;
    onContentChanged(callback: (streamOrError: VSBufferReadableStream | ResolveError) => void): IDisposable;
    onDispose(callback: () => void): this;
    createNew(promptContentsSource: {
        uri: URI;
    }): IPromptContentsProvider;
}
