Issues with concrete subclass and abstract superclass during extension import

I’ve been making an extension in VSCode, and there are no listed syntax errors. The code looks something like this:

export abstract class Foo {
    public abstract toString(): string;
}
export class Bar extends Foo {
    public override toString(): string {
        return "foobar";
    } 
}

When I import the extension I get hundreds of syntax errors, like " ‘=’ expected ".
Both the extension project and the test project have the same compilerOptions in their tsconfig.json.

Here’s the link to the extension github. I was mainly looking at Vector and Vector3.

The extension still has some messy/unused code and formatting issues, but no syntax errors in VSCode. What could be causing this, and is there a different syntax I should be using? Thanks.

It might be a TypeScript version mismatch or tsconfig.json issue. Double-check the versions and try cleaning and rebuilding the project.

Tried it with a blank project, with nothing in it but the extension. Same issue happened. I did some more testing and it seems that makecode arcade doesn’t like override or Readonly<T>.

After further testing, it seems that makecode arcade has issues with abstract classes in general. From other forum posts I found that you can create and use abstract classes, but not abstract methods.