export declare const VALIDATE_HELP = "Usage: esmx validate [--json]\n\nBuild-free dry run of the RFC 0001 module protocol: reads the package.json\n\"esmx\" declaration in the current directory and runs the resolution layer\n(phases 1-2: consumption graph + supply merge) without building anything.\n\nExit code is non-zero only when an error-severity diagnostic is found;\nwarnings alone exit 0. A package without an \"esmx\" field uses the legacy\nentry.node.ts config and is not an error.\n\nOptions:\n --json Emit a machine-readable envelope on stdout and nothing else:\n {\n \"diagnostics\": [ { \"code\", \"check\"?, \"module\", \"package\"?,\n \"found\"?, \"required\"?, \"message\", \"fix\" } ],\n \"supply\": { \"\": { \"groups\": [ { \"major\",\n \"provider\", \"version\" } ] } },\n \"mounts\": { \"\": { \"name\", \"root\",\n \"artifactDir\", \"built\" } }\n }\n Two providers of one (package, major) is an E_DUP_PROVIDER error\n (a shared dependency must have a single owner).\n Legacy packages emit { \"protocol\": \"legacy\", \"diagnostics\": [] }.\n --help Show this message."; export interface RunValidateOptions { json?: boolean; } export interface RunValidateResult { exitCode: number; /** Full stdout payload (JSON envelope or human report). */ output: string; } /** * `esmx validate` core (RFC 0001 §10 Phase 5, the agent verification loop). * Pure with respect to process state: never writes to stdout/stderr and * never exits — the CLI case owns printing and the exit code. */ export declare function runValidate(rootDir: string, options?: RunValidateOptions): Promise;