import { z } from 'zod'; import { type TRunPolicyConfig } from './run-policy-types.js'; /** * Validates the policy file structure itself. * The structure mirrors TRunPolicyConfig (place + dirFilters array). */ declare const PolicyFileSchema: z.ZodObject<{ $schema: z.ZodOptional; type: z.ZodDefault>; properties: z.ZodOptional>; definitions: z.ZodOptional>; $defs: z.ZodOptional>; required: z.ZodOptional>; allOf: z.ZodOptional>; anyOf: z.ZodOptional>; oneOf: z.ZodOptional>; deny: z.ZodDefault; dir: z.ZodOptional; access: z.ZodOptional>; }, z.core.$strip>>>; }, z.core.$loose>; export type TRunPolicy = z.infer; /** Load and parse a policy file */ export declare function loadRunPolicy(schemaPath: string): TRunPolicy; /** * Validate a runtime config against a loaded policy. * Builds a strict Zod schema dynamically from the policy definition. */ export declare function buildConfigValidator(policy: TRunPolicy): z.ZodObject<{ [x: string]: z.ZodType>; }, z.core.$loose>; /** * Validate a config against a loaded policy, returning array of error strings. */ export declare function validateRunPolicyConfig(config: TRunPolicyConfig, policy: TRunPolicy, schemaPath: string): string[]; /** Load policy, validate config, throw on failure. */ export declare function loadAndValidateRunPolicy(config: TRunPolicyConfig, schemaPath: string): TRunPolicy; export {}; //# sourceMappingURL=run-policy-schema.d.ts.map