import { type WorkspacePermissionPreset, type WorkspaceTrustProfile } from "./config.js";
export interface UpsertWorkspaceTrustInput {
    root: string;
    trusted?: boolean;
    preset?: WorkspacePermissionPreset;
    command_allowlist?: string[];
    command_denylist?: string[];
    tool_permissions?: string[];
    write_scopes?: string[];
    env_redactions?: string[];
    require_prompt_for_unsafe?: boolean;
}
export interface WorkspaceTrustStatus {
    root: string;
    trusted: boolean;
    matched_root: string | null;
    profile: WorkspaceTrustProfile;
}
export interface WorkspacePermissionCheckInput {
    path?: string;
    command?: string;
    tool?: string;
    write_path?: string;
    env?: Record<string, string | undefined>;
}
export interface WorkspacePermissionCheck {
    allowed: boolean;
    requires_prompt: boolean;
    reasons: string[];
    status: WorkspaceTrustStatus;
    redacted_env_keys: string[];
}
export declare function listWorkspaceTrustProfiles(): WorkspaceTrustProfile[];
export declare function getWorkspaceTrustStatus(path?: string): WorkspaceTrustStatus;
export declare function upsertWorkspaceTrustProfile(input: UpsertWorkspaceTrustInput): WorkspaceTrustProfile;
export declare function removeWorkspaceTrustProfile(root: string): boolean;
export declare function checkWorkspacePermission(input?: WorkspacePermissionCheckInput): WorkspacePermissionCheck;
//# sourceMappingURL=workspace-trust.d.ts.map