import type { z } from 'zod'; import type { ProjectDefinitionContainer } from '#src/definition/project-definition-container.js'; import type { DefinitionIssue } from '#src/schema/creator/definition-issue-types.js'; /** * Issues partitioned by severity level. */ export interface PartitionedIssues { /** Issues that block saving */ errors: DefinitionIssue[]; /** Issues that allow saving but block syncing */ warnings: DefinitionIssue[]; } /** * Splits issues into errors (block save) and warnings (block sync only). */ export declare function partitionIssuesBySeverity(issues: DefinitionIssue[]): PartitionedIssues; /** * Walks schema+data to collect issues from field-level issue checkers * registered via `withIssueChecker`. * * Field-level checkers operate on the local value at each schema node * without access to the full definition. */ export declare function collectFieldIssues(schema: z.ZodType, data: unknown): DefinitionIssue[]; /** * Collects all definition issues from both field-level and definition-level checkers. * * - Field-level checkers are registered on schema nodes via `withIssueChecker` * and operate on local values. * - Definition-level checkers are registered via `definitionIssueCheckerSpec` * and operate on the full project definition. * * Error-severity issues block saving; warning-severity issues allow saving but block syncing. */ export declare function collectDefinitionIssues(container: ProjectDefinitionContainer): DefinitionIssue[]; //# sourceMappingURL=collect-definition-issues.d.ts.map