@lpc-lang/core
Version:
LPC Language Compiler Library
54 lines • 3.41 kB
TypeScript
import { LanguageVariant, SourceFile, TextChangeRange, SymbolDisplayPart, LanguageService, LanguageServiceHost, CompilerOptions, IScriptSnapshot, ScriptTarget, CreateSourceFileOptions, ScriptKind, DocumentRegistry, LanguageServiceMode, LpcFileHandler } from "./_namespaces/lpc.js";
export declare function getDefaultCompilerOptions(): CompilerOptions;
export declare function createLanguageService(host: LanguageServiceHost, fileHandler: LpcFileHandler, documentRegistry?: DocumentRegistry, syntaxOnlyOrLanguageServiceMode?: boolean | LanguageServiceMode): LanguageService;
export declare function createLanguageServiceSourceFile(fileName: string, scriptSnapshot: IScriptSnapshot, scriptTargetOrOptions: ScriptTarget | CreateSourceFileOptions, version: string, setNodeParents: boolean, languageVariant: LanguageVariant, scriptKind?: ScriptKind): SourceFile;
export declare function updateLanguageServiceSourceFile(sourceFile: SourceFile, globalIncludes: string[], configDefines: ReadonlyMap<string, string>, fileHandler: LpcFileHandler, scriptSnapshot: IScriptSnapshot, version: string, textChangeRange: TextChangeRange | undefined, languageVariant: LanguageVariant, reportParsedDefines: boolean, aggressiveChecks?: boolean): SourceFile;
/**
* Convert display parts to a string
* @param displayParts array of parts
* @returns a string
*/
export declare function displayPartsToString(displayParts: SymbolDisplayPart[] | undefined): string;
export declare enum SemicolonPreference {
Ignore = "ignore",
Insert = "insert",
Remove = "remove"
}
export declare enum IndentStyle {
None = 0,
Block = 1,
Smart = 2
}
export interface EditorSettings {
baseIndentSize?: number;
indentSize?: number;
tabSize?: number;
newLineCharacter?: string;
convertTabsToSpaces?: boolean;
indentStyle?: IndentStyle;
trimTrailingWhitespace?: boolean;
}
export interface FormatCodeSettings extends EditorSettings {
readonly insertSpaceAfterCommaDelimiter?: boolean;
readonly insertSpaceAfterSemicolonInForStatements?: boolean;
readonly insertSpaceBeforeAndAfterBinaryOperators?: boolean;
readonly insertSpaceAfterConstructor?: boolean;
readonly insertSpaceAfterKeywordsInControlFlowStatements?: boolean;
readonly insertSpaceAfterFunctionKeywordForAnonymousFunctions?: boolean;
readonly insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis?: boolean;
readonly insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets?: boolean;
readonly insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces?: boolean;
readonly insertSpaceAfterOpeningAndBeforeClosingEmptyBraces?: boolean;
readonly insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces?: boolean;
readonly insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces?: boolean;
readonly insertSpaceAfterTypeAssertion?: boolean;
readonly insertSpaceBeforeFunctionParenthesis?: boolean;
readonly placeOpenBraceOnNewLineForFunctions?: boolean;
readonly placeOpenBraceOnNewLineForControlBlocks?: boolean;
readonly insertSpaceBeforeTypeAnnotation?: boolean;
readonly indentMultiLineObjectLiteralBeginningOnBlankLine?: boolean;
readonly semicolons?: SemicolonPreference;
readonly indentSwitchCase?: boolean;
}
export declare function getDefaultFormatCodeSettings(newLineCharacter?: string): FormatCodeSettings;
//# sourceMappingURL=services.d.ts.map