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; }