/** * A subnet to create ROP nodes * */ import {Constructor, valueof} from '../../../types/GlobalTypes'; import {ParamLessBaseNetworkEventNode} from './_BaseManager'; import {NodeContext, NetworkNodeType} from '../../poly/NodeContext'; import {RopNodeChildrenMap} from '../../poly/registers/nodes/Rop'; import {BaseRopNodeType} from '../rop/_Base'; import {ParamsInitData} from '../utils/io/IOController'; export class RenderersEventNode extends ParamLessBaseNetworkEventNode { static type() { return NetworkNodeType.ROP; } protected _children_controller_context = NodeContext.ROP; createNode( node_class: S, params_init_value_overrides?: ParamsInitData ): RopNodeChildrenMap[S]; createNode>( node_class: Constructor, params_init_value_overrides?: ParamsInitData ): K; createNode>( node_class: Constructor, params_init_value_overrides?: ParamsInitData ): K { return super.createNode(node_class, params_init_value_overrides) as K; } children() { return super.children() as BaseRopNodeType[]; } nodesByType(type: K): RopNodeChildrenMap[K][] { return super.nodesByType(type) as RopNodeChildrenMap[K][]; } }