/** * Plugin/check discovery + registration for the `fit` command. * * Owns the fit-lifecycle state (`loadedFor`, `pluginLoadErrors`, * `loadWarnings`) — a single unit of state, written exactly once per RUN * by `ensureChecksLoaded()` and read by the phase helpers downstream * (`buildFitEnvelope`, `buildFitPresentation`) plus the public * `getPluginLoadErrors()` / `getDisplayName()` / `getIcon()` accessors * that `FitView` and `report-data.ts` consume. * * As of the scope-owned-registries refactor (2.10.0) this state lives on * the RunScope (`scope.fitness.load`), NOT module singletons — two * concurrent fit runs (different scopes) carry independent load state. * The accessors read the current scope's slot via * `currentFitnessLoadState()`. * * Invariant: each binding is set by `ensureChecksLoaded()` and read by * the phase helpers; `executeFit`'s phase ordering is sequenced so the * readers always run after the setter completes. */ /** Warnings collected during the most recent ensureChecksLoaded() call. * Returned alongside plugin errors and run-time validation warnings via * executeFit's result so the live renderer and JSON output both see them. */ export declare function getLoadWarnings(): readonly string[]; /** * Plugin load errors recorded during the most recent ensureChecksLoaded() call. * Read by runFit to fail the run if any plugin failed to import — otherwise a * malicious or broken plugin could silently suppress its own checks while the * CLI exits 0, masking a compliance failure or a supply-chain compromise. */ export declare function getPluginLoadErrors(): readonly string[]; /** Get the number of enabled checks (available after ensureChecksLoaded). */ export declare function getEnabledCheckCount(): number; /** Lazily discovers and registers all check packs for the given project * (idempotent per project, scoped to the current RunScope). */ export declare function ensureChecksLoaded(projectDir?: string): Promise; //# sourceMappingURL=check-loader.d.ts.map