import { Argument , Attribute } from '../arguments' ; import { Block } from '.' ; category export class Data extends Block { readonly type : string ; readonly name : string ; param type param name param args constructor ( type , name , args ? ) { super ( 'data' , [ type , name ] , args ) ; this . type = type ; this . name = name ; } override asArgument ( ) { return new Argument ( `data.${ this . type }.${ this . name }` ) ; } override attr ( name ) { return new Attribute ( this , name ) ; } }