En Blockly, las interfaces describen funciones que un objeto debe implementar para reemplazar el objeto predeterminado.
No necesitas heredar de una clase en particular para implementar la interfaz. Puedes hacer lo que quieras de forma interna, siempre que proporciones las funciones correctas y cumplas con los requisitos descritos en los comentarios de la interfaz. Sin embargo, un patrón común para los complementos es extender la clase predeterminada y solo anular las funciones que deseas cambiar.
Para indicar al verificador de tipos que implementas una interfaz específica, anota la clase con @implements {InterfaceName}
.
Las interfaces de Blockly se definen en core/interfaces.