import { URI } from "@codingame/monaco-vscode-api/vscode/vs/base/common/uri"; /** Configuration key for persisted per-host filesystem grants. */ export declare const AgentHostLocalFilePermissionsSettingId = "chat.agentHost.localFilePermissions"; /** Persisted access mode for a granted URI. */ export declare enum AgentHostAccessMode { Read = "r", ReadWrite = "rw" } /** * Persisted shape of {@link AgentHostLocalFilePermissionsSettingId}: * `{ [normalizedAddress]: { [uriString]: 'r' | 'rw' } }`. */ export type AgentHostPermissionsSetting = Record>; /** * Capability a request needs from the user. The protocol-level `read` and * `write` flags are split into one or two of these requests. */ export declare enum AgentHostPermissionMode { Read = "read", Write = "write" } /** A single pending permission request awaiting user input. */ export interface IPendingResourceRequest { readonly id: string; readonly address: string; readonly uri: URI; readonly mode: AgentHostPermissionMode; /** Approve and remember the grant in user settings. */ allowAlways(): void; /** * Approve the request and remember it in memory for the lifetime of the * connection (cleared on connection close or window reload). */ allow(): void; /** Reject this request. */ deny(): void; }