python2igcse
Version:
Convert Python code to IGCSE Pseudocode format
78 lines • 2.23 kB
TypeScript
import { ConversionOptions, ConversionResult } from './types';
import { IR } from './types/ir';
export interface BrowserConversionOptions {
/** Debug mode */
debug?: boolean;
/** Strict mode */
strictMode?: boolean;
/** Include comments */
includeComments?: boolean;
/** Preserve whitespace */
preserveWhitespace?: boolean;
/** Maximum error count */
maxErrors?: number;
/** Timeout */
timeout?: number;
/** Output format */
outputFormat?: 'plain' | 'markdown';
/** Indent size */
indentSize?: number;
/** Indent type */
indentType?: 'spaces' | 'tabs';
/** Line ending */
lineEnding?: '\n' | '\r\n';
/** Maximum line length */
maxLineLength?: number;
/** Beautify */
beautify?: boolean;
/** Include line numbers */
includeLineNumbers?: boolean;
/** Uppercase keywords */
uppercaseKeywords?: boolean;
/** Space around operators */
spaceAroundOperators?: boolean;
/** Space after commas */
spaceAfterCommas?: boolean;
/** Allow experimental syntax */
allowExperimentalSyntax?: boolean;
/** Maximum nesting depth */
maxNestingDepth?: number;
}
/**
* Browser-compatible converter class
*/
export declare class BrowserConverter {
private options;
private parser;
private emitter;
constructor(options?: BrowserConversionOptions);
/**
* Convert Python code to IGCSE Pseudocode
*/
convertCode(pythonCode: string): ConversionResult;
/**
* Validate Python syntax
*/
validateSyntax(pythonCode: string): {
isValid: boolean;
errors: string[];
warnings: string[];
};
/**
* Get current options
*/
getOptions(): BrowserConversionOptions;
/**
* Update options
*/
updateOptions(newOptions: Partial<BrowserConversionOptions>): void;
private mergeDefaultOptions;
private createErrorResult;
}
/**
* Utility function for browser conversion
*/
export declare function convertPythonToIGCSE(pythonCode: string, options?: BrowserConversionOptions): ConversionResult;
export type { ConversionOptions, ConversionResult };
export type { IR };
//# sourceMappingURL=browser-converter.d.ts.map