import type { BoardRegistry } from '../boards/registry.js'; import type { FactoryCommitDecision, FactoryRuleDecision, FactoryRuleJsonValue } from './types.js'; export declare const MAX_FACTORY_RULE_CAUSAL_DEPTH = 8; export declare const MAX_ROLE_LENGTH = 32; export declare const MAX_TOOL_NAME_LENGTH = 128; export declare const MAX_BOARD_IDENTIFIER_LENGTH = 128; export declare const IDENTIFIER_RE: RegExp; export declare const BOARD_IDENTIFIER_RE: RegExp; export declare class FactoryRuleValidationError extends Error { readonly code = "invalid_factory_rule"; constructor(message: string); } export declare function isBoardIdentifier(value: unknown): value is string; export declare function assertFactoryDecisionTarget(decision: FactoryRuleDecision, boards: BoardRegistry, itemBoard?: string | null): void; export declare function normalizeFactoryRuleJsonValue(value: unknown, depth?: number, seen?: Set): FactoryRuleJsonValue; export declare const DEFAULT_FACTORY_CONFIG_VERSION = "factory-config-v1"; /** Operator-maintained provenance label stamped on transition audit and deferred-decision rows. */ export declare function assertFactoryConfigVersion(value: unknown): string; export declare function validateFactoryRuleDecision(value: unknown, causalDepth?: number): FactoryRuleDecision; export declare function validateFactoryRuleDecisions(values: readonly unknown[], causalDepth?: number): FactoryCommitDecision[]; //# sourceMappingURL=validation.d.ts.map