@aurahelper/languages
Version:
Language Libraries to work with XML, Aura, Apex... files. tokenizers, parsers, system classes and much more
31 lines (30 loc) • 1.77 kB
TypeScript
import { ApexFormatterConfig, ParserData, Token } from "@aurahelper/core";
/**
* Class to format any Apex Class with a selected configuration to format code as you want
*/
export declare class ApexFormatter {
/**
* Method to get a default formatter config object
*
* @returns {ApexFormatterConfig} Returns a default formatter config object
*/
static config(): ApexFormatterConfig;
/**
* Method to format an Apex Class with the selected options
* @param {string | Token[]} tokensOrContent Class file path or string file content or Apex Class Tokens (Use ApexTokenizer)
* @param {ApexFormatterConfig | { [key: string]: any }} [config] Apex formatter config object or VSCode Config JSON object
* @param {ParserData} [systemData] System data like System Apex Classes or Namespaces to tokenize apex class if pathContentOrTokens is a class content or file path. Can get it with System Class from System Module
* @param {number} [tabSize] Tab size to format
* @param {boolean} [insertSpaces] True to insert spaces instead tabs
*
* @returns {string} Returns the Apex Class content formatted
*
* @throws {WrongDatatypeException} If pathContentOrTokens datatype is not an string, path or file tokens
* @throws {WrongFilePathException} If the file Path is not a string or can't convert to absolute path
* @throws {FileNotFoundException} If the file not exists or not have access to it
* @throws {InvalidFilePathException} If the path is not a file
*/
static format(tokensOrContent: string | Token[], config?: ApexFormatterConfig | {
[key: string]: any;
}, systemData?: ParserData, tabSize?: number, insertSpaces?: boolean): string;
}