I was able to make this work by using @ts-ignore, the constructor should be exposed in such a way we can use it for this purpose.
export class AppResourceModel
extends ResourceModel
{
static get $$name(): string {
return 'AppResourceModel';
}
static override get fields(): Partial<DataFieldConfig>[] {
return [
{ name: 'newfield', type: 'string' },
}
constructor(
config: Partial<AppResourceModelConfig>,
a = null,
b = null,
c = null,
d = null
) {
// @ts-ignore
super(config, a, b, c, d);
}