specpress
Version:
Export PDF and/or DOCX files from a subset of Markdown, ASN.1 and JSON files
41 lines (40 loc) • 1.76 kB
TypeScript
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;