import type { ProviderConfig } from '../types/index.js';
/**
 * A non-fatal config problem found by the linter. `level` is informational —
 * the runtime only emits warnings today, but errors are reserved for future
 * misconfigurations that would unambiguously break a request (e.g. an
 * unreachable baseUrl scheme).
 */
export interface ConfigLintIssue {
    level: 'warning' | 'error';
    provider: string;
    message: string;
}
/**
 * Validate a single provider entry from `agents.config.json` against soft
 * rules that aren't enforced by TypeScript (because configs are loaded from
 * JSON at runtime). Returns an empty array for a clean config.
 *
 * Dispatches to per-provider linters by provider type — today only OpenRouter
 * has one. Add new linters by branching here, not by piling them all into a
 * single function.
 */
export declare function lintProviderConfig(provider: ProviderConfig): ConfigLintIssue[];
/**
 * Lint every provider in a config. Returns a flat list of issues across the
 * whole `providers` array. Used at startup and on provider switch.
 */
export declare function lintProviderConfigs(providers: ProviderConfig[]): ConfigLintIssue[];
/**
 * Render a lint issue as a single warning line suitable for the chat queue
 * or stderr. Keeps formatting consistent across call sites.
 */
export declare function formatConfigLintIssue(issue: ConfigLintIssue): string;
//# sourceMappingURL=lint.d.ts.map