import { BlockMutator } from './block-mutator'; import { Block } from './block'; import * as Blockly from 'blockly/core'; export declare abstract class CustomBlock extends Block { private _block; private _blockMutator; private _args; protected constructor(type: string, blockMutator?: BlockMutator, ...args: any[]); init(block: Blockly.Block): void; abstract defineBlock(): any; onChange(changeEvent: Blockly.Events.AbstractEventJson): void; toXML(): string; toDartCode(block: Blockly.Block): string | any[]; toJavaScriptCode(block: Blockly.Block): string | any[]; toLuaCode(block: Blockly.Block): string | any[]; toPHPCode(block: Blockly.Block): string | any[]; toPythonCode(block: Blockly.Block): string | any[]; get block(): Blockly.Block; set block(block: Blockly.Block); get blockMutator(): BlockMutator; set blockMutator(mutator: BlockMutator); get args(): any[]; set args(args: any[]); }