Blockly では、インターフェースは、デフォルト オブジェクトを置き換えるためにオブジェクトが実装する必要がある関数を記述します。
インターフェースを実装するために特定のクラスを継承する必要はありません。適切な機能を提供し、インターフェースのコメントに説明されている要件を遵守している限り、内部でできることは何でも構いません。ただし、プラグインの一般的なパターンは、デフォルト クラスを拡張し、変更する関数のみをオーバーライドすることです。
タイプ チェッカーに、特定のインターフェースを実装することを示すには、クラスに @implements {InterfaceName}
アノテーションを付けます。
Blockly のインターフェースは core/interfaces で定義されています。