sucrase
Version:
Super-fast alternative to Babel for when you can target modern JS runtimes
22 lines (21 loc) • 962 B
TypeScript
import TokenProcessor from "../TokenProcessor";
import RootTransformer from "./RootTransformer";
import Transformer from "./Transformer";
export default class TypeScriptTransformer extends Transformer {
readonly rootTransformer: RootTransformer;
readonly tokens: TokenProcessor;
constructor(rootTransformer: RootTransformer, tokens: TokenProcessor);
process(): boolean;
/**
* This is either a negation operator or a non-null assertion operator. If it's a non-null
* assertion, get rid of it.
*/
isNonNullAssertion(): boolean;
processEnum(isExport?: boolean): void;
/**
* Rather than try to compute the actual enum values at compile time, we just create variables for
* each one and let everything evaluate at runtime. There's some additional complexity due to
* handling string literal names, including ones that happen to be valid identifiers.
*/
processEnumBody(enumName: string): void;
}