1const GObject = imports.gi.GObject; 2 3const AGObjectInterface = GObject.registerClass({ 4 Requires: [ GObject.Object ], 5}, class AGObjectInterface extends GObject.Interface { 6 requiredG() { 7 throw new GObject.NotImplementedError(); 8 } 910 optionalG() {11 return 'AGObjectInterface.optionalG()';12 }13});1415var BaseGObject = GObject.registerClass(16class extends GObject.Object {17 requiredG() {18 print("REQUIRED method implemented by base func");19 }20});2122const GObjectImplementingGObjectInterface = GObject.registerClass({23 Implements: [ AGObjectInterface ],24}, class GObjectImplementingGObjectInterface extends BaseGObject {25 // requiredG() {26 // super.requiredG();27 // }28});2930let obj = new GObjectImplementingGObjectInterface();31obj.requiredG();