abstract class A { abstract x : number; public abstract y : number; protected abstract z : number; private abstract w : number; abstract m: () => void; abstract foo_x() : number; public abstract foo_y() : number; protected abstract foo_z() : number; private abstract foo_w() : number; }