UNPKG

roblox-ts

Version:

A TypeScript-to-Luau Compiler for Roblox

46 lines (45 loc) 1.92 kB
import { CallMacro, ConstructorMacro, IdentifierMacro, PropertyCallMacro } from "../macros/types"; import ts from "typescript"; export declare const SYMBOL_NAMES: { readonly globalThis: "globalThis"; readonly ArrayConstructor: "ArrayConstructor"; readonly SetConstructor: "SetConstructor"; readonly MapConstructor: "MapConstructor"; readonly WeakSetConstructor: "WeakSetConstructor"; readonly WeakMapConstructor: "WeakMapConstructor"; readonly ReadonlyMapConstructor: "ReadonlyMapConstructor"; readonly ReadonlySetConstructor: "ReadonlySetConstructor"; readonly Array: "Array"; readonly Generator: "Generator"; readonly IterableFunction: "IterableFunction"; readonly LuaTuple: "LuaTuple"; readonly Map: "Map"; readonly Object: "Object"; readonly ReadonlyArray: "ReadonlyArray"; readonly ReadonlyMap: "ReadonlyMap"; readonly ReadonlySet: "ReadonlySet"; readonly ReadVoxelsArray: "ReadVoxelsArray"; readonly Set: "Set"; readonly String: "String"; readonly TemplateStringsArray: "TemplateStringsArray"; readonly WeakMap: "WeakMap"; readonly WeakSet: "WeakSet"; readonly Iterable: "Iterable"; readonly $range: "$range"; readonly $tuple: "$tuple"; }; export declare const NOMINAL_LUA_TUPLE_NAME = "_nominal_LuaTuple"; export declare class MacroManager { private symbols; private identifierMacros; private callMacros; private constructorMacros; private propertyCallMacros; constructor(typeChecker: ts.TypeChecker); getSymbolOrThrow(name: string): ts.Symbol; isMacroOnlyClass(symbol: ts.Symbol): boolean; getIdentifierMacro(symbol: ts.Symbol): IdentifierMacro | undefined; getCallMacro(symbol: ts.Symbol): CallMacro | undefined; getConstructorMacro(symbol: ts.Symbol): ConstructorMacro | undefined; getPropertyCallMacro(symbol: ts.Symbol): PropertyCallMacro | undefined; }