import type { PluginManifest, PluginValidationResult } from '../../types/index.js';
/**
 * Validates that a value looks like a PluginManifest structurally.
 */
export declare function validateManifestStructure(manifest: unknown): PluginValidationResult;
/**
 * Validates a manifest against built-in tool names and other active plugins.
 */
export declare function validateToolConflicts(manifest: PluginManifest, pluginTools: readonly string[], builtInTools: ReadonlySet<string>, activePluginTools: ReadonlyMap<string, string>): PluginValidationResult;
/**
 * Validates version compatibility of a plugin against current Planu version.
 */
export declare function validateVersionCompatibility(manifest: PluginManifest, currentVersion: string): PluginValidationResult;
/**
 * Runs full validation suite on a manifest.
 */
export declare function validatePlugin(manifest: unknown, currentVersion: string, builtInTools: ReadonlySet<string>, activePluginTools: ReadonlyMap<string, string>, pluginToolNames?: readonly string[]): PluginValidationResult;
//# sourceMappingURL=validator.d.ts.map