/** Fixed pinned-native policy. No caller-supplied profile or sandbox override is admitted. */ export declare function prepareNativePolicy(input: { cwd: string; privateRoot: string; privateDirectory: string; sandboxMode: "read-only" | "workspace-write"; }): Readonly<{ config: Readonly<{ default_permissions: "managed"; features: Readonly<{ use_legacy_landlock: false; }>; permissions: Readonly<{ managed: Readonly<{ extends: ":read-only"; filesystem: Readonly<{ [x: string]: "read" | "write" | "deny"; }>; network: Readonly<{ enabled: false; }>; }>; }>; }>; cliArgs: readonly string[]; }>; type PreparedNativePolicy = ReturnType; declare const admissionBrand: unique symbol; export type NativeApprovalPolicy = { readonly [admissionBrand]: true; }; /** Confirms composition and native selection, not live OS isolation (G1/G2 remain required). */ export declare function activateNativeApprovalPolicy(policy: PreparedNativePolicy, response: unknown, signal: AbortSignal): NativeApprovalPolicy; export declare function isNativeApprovalPolicyActive(policy: unknown, threadId: string): policy is NativeApprovalPolicy; /** Resolve existing ancestors too, so new files cannot escape via a project symlink. */ export declare function allowsNativeApprovalPath(policy: NativeApprovalPolicy | undefined, path: string, access: "read" | "write"): boolean; export {}; //# sourceMappingURL=native-policy.d.ts.map