import { Disposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle"; import { IObservable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/observable"; import { URI } from "@codingame/monaco-vscode-api/vscode/vs/base/common/uri"; import { ICommandService } from "@codingame/monaco-vscode-api/vscode/vs/platform/commands/common/commands.service"; import { IVoicePlaybackService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/voicePlaybackService.service"; export interface IVoicePlaybackEntry { readonly transcript: string; readonly timestamp: number; } export declare class VoicePlaybackService extends Disposable implements IVoicePlaybackService { private readonly commandService; readonly _serviceBrand: undefined; private readonly _speakingSession; readonly speakingSession: IObservable; private readonly _lastPlayed; private readonly _lastPlayedVersion; readonly lastPlayedVersion: IObservable; private _activeReplay; constructor(commandService: ICommandService); notifyPlaybackStart(sessionResource: URI | undefined, transcript: string | undefined): void; notifyPlaybackEnd(sessionResource: URI | undefined): void; getLastPlayed(sessionResource: URI): IVoicePlaybackEntry | undefined; hasLastPlayed(sessionResource: URI): boolean; replay(sessionResource: URI): Promise; stop(sessionResource?: URI): void; }