UNPKG

noshift.js

Version:
54 lines (50 loc) 1.33 kB
interface UppercaseWarning { line: number; column: number; char: string; message: string; } interface DiagnosticError { line: number; column: number; message: string; } /** * NoShift.js Public API * * Programmatic interface for compiling NoShift.js code to JavaScript. * * @example * import { compile } from "noshift.js"; * * const result = compile('console.log^8^2^6hello^2^9;'); * console.log(result.outputText); * // => console.log("Hello"); * * @example * // With options * const result = compile(code, { capitalizeInStrings: false }); */ interface CompileOptions { capitalizeInStrings?: boolean; noHeader?: boolean; } interface CompileResult { outputText: string; } /** * Compile NoShift.js source code to JavaScript. * * @param source - NoShift.js source code * @param options - Compiler options * @returns Compilation result */ declare function compile(source: string, options?: CompileOptions): CompileResult; /** * Diagnose NoShift.js source code for syntax errors. * * @param source - NoShift.js source code * @returns Array of diagnostic errors */ declare function diagnose(source: string): DiagnosticError[]; export { type CompileOptions, type CompileResult, type DiagnosticError, type UppercaseWarning, compile, compile as default, diagnose };