#!/usr/bin/env node
import { RAN4DataHandler } from "./RAN4DataHandler.js";
export declare const EXIT_OK = 0;
export declare const EXIT_CONTENT_ERROR = 1;
export declare const EXIT_SCHEMA_ERROR = 2;
export interface ValidationResult {
    db: RAN4DataHandler;
    exitCode: number;
}
/**
 * Loads all channel-bandwidth, CA band-combination, and DC band-combination
 * JSON files from the 38.101 data repository, validates them against their
 * JSON schemas and cross-references, and returns the populated RAN4DataHandler
 * together with an exit code.
 *
 * Exit codes (bitwise OR):
 *   0 — success
 *   1 — one or more content validation errors
 *   2 — one or more schema validation errors
 *   3 — both content and schema validation errors
 *
 * Uses glob patterns (n*.json, CA_*.json, DC_*.json) so the function is
 * independent of the exact subfolder names in the data repository.
 *
 * @param aRootFolder — path to the 38.101 repository root
 *   (the folder that contains common/, ts-38.101-1/, ts-38.101-2/, ts-38.101-3/).
 * @param skipValidation — if true, skip content validation of loaded data.
 * @param skipSchemaValidation — if true, skip JSON schema validation of loaded files.
 * @param abortOnError — if true (default), abort on the first validation error.
 *   If false, collect and print all errors without aborting.
 */
export declare function loadAndValidateAll(aRootFolder: string, skipValidation?: boolean, skipSchemaValidation?: boolean, abortOnError?: boolean): ValidationResult;
export interface CliOptions {
    rootFolder: string;
    skipValidation: boolean;
    skipSchema: boolean;
    noAbort: boolean;
    outputFile: string | null;
}
export declare function parseArgs(argv: string[]): CliOptions | null;
