Preview:```ts
export abstract class Base {
static encode<T extends typeof Base>(
this: T,
x: InstanceType<T>,
buf: Uint8Array
): number {
throw new Error("stub!")
}
}
export class Sub extends Base {
keys!: string
static encode(
this: Sub,
x: InstanceType<typeof Sub>,
bytes: Uint8Array
): number {
return 1
}
}
...```