import { type SanityConfig } from './config/schema.js'; import type { SanityFinding, SanitySummary } from './plugins/types.js'; export type { SanityFinding, SanityPlugin, SanityPluginContext, SanitySummary, } from './plugins/types.js'; export type SanitySeverity = 'error' | 'warning'; /** * Per-plugin summary surfaced in czar's header `sanity` section. * `name` is the plugin's stable id (matches `SanityPlugin.name`), * `passed` is the green ✓ / red ✗ indicator, and `message` is an * optional plugin-supplied note shown after the indicator. */ export interface SanityPluginSummary extends SanitySummary { readonly name: string; } export interface SanityResult { readonly findings: ReadonlyArray; readonly errors: number; readonly warnings: number; /** * Per-plugin summaries in the same order plugins ran. Even plugins * that produced zero findings appear here so the header can show a * green ✓ for them. */ readonly summaries: ReadonlyArray; } /** * Run every configured sanity plugin against the staged change-set. * * Disabled (`config.enabled === false`, or `config === false`) → empty result. * No staged files → empty result (we don't want to fail empty commits). * Otherwise: walk the staged-file list once, share a content/size cache * across plugins (so N plugins reading the same file pay one git-show), * then return the union of findings. */ export declare function runSanityChecks(opts: { readonly config?: SanityConfig | boolean; readonly cwd?: string; }): Promise; export { isEnvFile } from './plugins/env-file.js'; //# sourceMappingURL=sanity.d.ts.map