Download src/bridge/bridgePermissionCallbacks.ts from chenbhao/codev: direct link, hf CLI and curl.
- Browser
- Download file 1.41 kB
-
https://huggingface.co/chenbhao/codev/resolve/main/src/bridge/bridgePermissionCallbacks.ts
- Command line
-
hf download hf://chenbhao/codev/src/bridge/bridgePermissionCallbacks.ts
-
curl -L -o bridgePermissionCallbacks.ts https://huggingface.co/chenbhao/codev/resolve/main/src/bridge/bridgePermissionCallbacks.ts
1.41 kB
| import type { PermissionUpdate } from '../utils/permissions/PermissionUpdateSchema.js' | |
| type BridgePermissionResponse = { | |
| behavior: 'allow' | 'deny' | |
| updatedInput?: Record<string, unknown> | |
| updatedPermissions?: PermissionUpdate[] | |
| message?: string | |
| } | |
| type BridgePermissionCallbacks = { | |
| sendRequest( | |
| requestId: string, | |
| toolName: string, | |
| input: Record<string, unknown>, | |
| toolUseId: string, | |
| description: string, | |
| permissionSuggestions?: PermissionUpdate[], | |
| blockedPath?: string, | |
| ): void | |
| sendResponse(requestId: string, response: BridgePermissionResponse): void | |
| /** Cancel a pending control_request so the web app can dismiss its prompt. */ | |
| cancelRequest(requestId: string): void | |
| onResponse( | |
| requestId: string, | |
| handler: (response: BridgePermissionResponse) => void, | |
| ): () => void // returns unsubscribe | |
| } | |
| /** Type predicate for validating a parsed control_response payload | |
| * as a BridgePermissionResponse. Checks the required `behavior` | |
| * discriminant rather than using an unsafe `as` cast. */ | |
| function isBridgePermissionResponse( | |
| value: unknown, | |
| ): value is BridgePermissionResponse { | |
| if (!value || typeof value !== 'object') return false | |
| return ( | |
| 'behavior' in value && | |
| (value.behavior === 'allow' || value.behavior === 'deny') | |
| ) | |
| } | |
| export { isBridgePermissionResponse } | |
| export type { BridgePermissionCallbacks, BridgePermissionResponse } | |