@keymanapp/kmc
Version:
Keyman Developer compiler command line tools
68 lines • 3.16 kB
TypeScript
import { CompilerBaseOptions, CompilerCallbacks, CompilerErrorNamespace, CompilerMessageOverride, CompilerMessageOverrideMap, CompilerOptions } from '@keymanapp/developer-utils';
export interface ExtendedCompilerOptions extends CompilerOptions {
/**
* Verify that the project meets the requirements of the keymanapp/keyboards
* or keymanapp/lexical-models repository, e.g. verify that project license is
* MIT
*/
forPublishing?: boolean;
/**
* Overrides for message reporting
*/
messageOverrides?: CompilerMessageOverrideMap;
}
/**
* converts an --message command line parameter `<id>[:level]` and verifies that
* it is a valid message, returning `null` if it is not a valid id or level. If
* level is omitted, the message is disabled. Valid levels are Disable, Info,
* Hint, Warn or Error (can shorten or first character of each).
*
* Will report details of any errors to callbacks.reportMessage
* @param message command line parameter in format '["KM"]<id>[":"level]'
* @param callbacks
* @returns CompilerMessageOverride map with the new severity level for the
* message; or `null` if parameter is invalid.
*/
declare function commanderOptionsMessageToCompilerOptionsMessage(message: string, callbacks: CompilerCallbacks): CompilerMessageOverride;
export interface CompilerMessageDetail {
code: number;
id: any;
module: string;
class: any;
}
export declare function findMessageDetails(code: number, callbacks: CompilerCallbacks): CompilerMessageDetail;
export declare const getMessageIdentifiersSorted: (cls: any) => string[];
/**
* Gets an array of compiler messages matching the search identifier. Substrings
* are supported for the id portion of the searchId
* @param searchNamespace optional namespace to search in, if omitted, searches
* all namespaces
* @param searchId a substring to match with optional namespace prefix, e.g.
* "INFO_"
*/
export declare function findMessagesById(searchNamespace: CompilerErrorNamespace, searchId: string): CompilerMessageDetail[];
/**
* Verifies that a given message is valid and that the severity is allowed to be
* modified (Info, Hint and Warn only -- Error and Fatal cannot be modified)
* @param override
* @param callbacks
* @returns true if the message can be overridden
*/
declare function checkMessageOverride(override: CompilerMessageOverride, callbacks: CompilerCallbacks): boolean;
export declare function commanderOptionsToBaseOptions(options: any): CompilerBaseOptions;
/**
* Maps command line compiler options to the compiler API options.
* @param options
* @param callbacks
* @returns
*/
export declare function commanderOptionsToCompilerOptions(options: any, callbacks: CompilerCallbacks): ExtendedCompilerOptions;
/**
* these are exported only for unit tests, do not use
*/
export declare const unitTestEndpoints: {
checkMessageOverride: typeof checkMessageOverride;
commanderOptionsMessageToCompilerOptionsMessage: typeof commanderOptionsMessageToCompilerOptionsMessage;
};
export {};
//# sourceMappingURL=extendedCompilerOptions.d.ts.map