import { UriComponents } from "@codingame/monaco-vscode-api/vscode/vs/base/common/uri"; import { IInstantiationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation"; import { IEditorSerializer } from "@codingame/monaco-vscode-api/vscode/vs/workbench/common/editor"; import { WebviewContentOptions, WebviewExtensionDescription, WebviewOptions } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/webview/browser/webview"; import { WebviewIconPath, WebviewInput } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/webviewPanel/browser/webviewEditorInput"; import { IWebviewWorkbenchService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/webviewPanel/browser/webviewWorkbenchService.service"; import { ThemeIcon } from "@codingame/monaco-vscode-api/vscode/vs/base/common/themables"; export type SerializedWebviewOptions = WebviewOptions & WebviewContentOptions; type SerializedIconPath = ThemeIcon | { light: string | UriComponents; dark: string | UriComponents; }; export interface SerializedWebview { readonly origin: string | undefined; readonly viewType: string; readonly providedId: string | undefined; readonly title: string; readonly options: SerializedWebviewOptions; readonly extensionLocation: UriComponents | undefined; readonly extensionId: string | undefined; readonly state: any; readonly iconPath: SerializedIconPath | undefined; readonly group?: number; } export interface DeserializedWebview { readonly origin: string | undefined; readonly viewType: string; readonly providedId: string | undefined; readonly title: string; readonly webviewOptions: WebviewOptions; readonly contentOptions: WebviewContentOptions; readonly extension: WebviewExtensionDescription | undefined; readonly state: any; readonly iconPath: WebviewIconPath | undefined; readonly group?: number; } export declare class WebviewEditorInputSerializer implements IEditorSerializer { private readonly _webviewWorkbenchService; static readonly ID: string; constructor(_webviewWorkbenchService: IWebviewWorkbenchService); canSerialize(input: WebviewInput): boolean; serialize(input: WebviewInput): string | undefined; deserialize(_instantiationService: IInstantiationService, serializedEditorInput: string): WebviewInput; protected fromJson(data: SerializedWebview): DeserializedWebview; protected toJson(input: WebviewInput): SerializedWebview; } export declare function reviveWebviewExtensionDescription(extensionId: string | undefined, extensionLocation: UriComponents | undefined): WebviewExtensionDescription | undefined; export declare function reviveWebviewIconPath(data: SerializedIconPath | undefined): WebviewIconPath | undefined; export declare function restoreWebviewOptions(options: SerializedWebviewOptions): WebviewOptions; export declare function restoreWebviewContentOptions(options: SerializedWebviewOptions): WebviewContentOptions; export {};