import type { PermissionMode } from '../../core/models/index.js'; import type { InternalAgentIsolation } from '../../shared/types/provider.js'; export interface ReadonlyArtifactReadRequest { readonly cwd: string; readonly allowReadonlyFileRead?: boolean; readonly readonlyFileReadPaths?: readonly string[]; readonly allowedTools?: readonly string[]; readonly permissionMode?: PermissionMode; readonly internalAgentIsolation?: InternalAgentIsolation; } export interface ClaudeCliReadonlyArtifactHook { readonly matcher: 'Read'; readonly hooks: readonly [ { readonly type: 'command'; readonly command: string; readonly args: readonly string[]; } ]; } /** Resolve the explicit /verify Read opt-in to existing, regular artifact files. */ export declare function resolveReadonlyArtifactReadPaths(options: ReadonlyArtifactReadRequest): string[]; /** Compare the actual file reached by a Read request with the exact artifacts. */ export declare function isReadonlyArtifactReadAllowed(filePath: unknown, cwd: string, allowedPaths: readonly string[]): boolean; /** Build a CLI PreToolUse hook without a shell command string or helper file. */ export declare function createClaudeCliReadonlyArtifactHook(allowedPaths: readonly string[], cwd: string): ClaudeCliReadonlyArtifactHook; //# sourceMappingURL=readonly-artifact-access.d.ts.map