import type { ComparePdfOptions } from '../types/ComparePdfOptions.js'; /** Output format for the CLI report. */ export type CliOutputFormat = 'text' | 'json' | 'junit'; /** Parsed CLI invocation: a request for help/version, or a comparison to run. */ export type CliInvocation = { kind: 'help'; } | { kind: 'version'; } | { kind: 'compare'; actualPdf: string; expectedPdf: string; options: ComparePdfOptions; format: CliOutputFormat; failOnDiff: boolean; }; /** Raised for malformed CLI usage (unknown flag, missing value, wrong argument count). */ export declare class CliUsageError extends Error { constructor(message: string); } /** * Parses `pdf-visual-compare` CLI arguments (everything after the binary name). * * Supports `--flag value` and `--flag=value`, and a `--` separator after which every token is * treated as a positional path (so paths starting with `-` are still usable). Returns a * help/version request when `-h`/`--help` or `-v`/`--version` appears. Throws {@link CliUsageError} * for unknown flags, missing values, an unsupported `--format`, or anything other than exactly two * positional PDF paths. * * Numeric and page-selection VALUES are passed through to the library, which validates ranges and * surfaces precise errors; this parser only enforces argument STRUCTURE and `--format`. */ export declare function parseCliArgs(argv: readonly string[]): CliInvocation;