( function ( ) { class Debug { static log ( ... data ) { console . log ( `%c[${ API . timeFormat ( ) }]` , "color: blue;" , ... data ) ; } static info ( ... data ) { console . info ( `%c[${ API . timeFormat ( ) }]` , "color: green;" , ... data ) ; } static debug ( ... data ) { console . debug ( `[${ API . timeFormat ( ) }]` , ... data ) ; } static warn ( ... data ) { console . warn ( `[${ API . timeFormat ( ) }]` , ... data ) ; } static error ( ... data ) { console . error ( `[${ API . timeFormat ( ) }]` , ... data ) ; } static group ( ... info ) { console . groupCollapsed ( `[${ API . timeFormat ( ) }]` , ... info ) ; const result = new Proxy ( Debug , { get : ( t , p ) => { return new Proxy ( Debug [ p ] , { apply : ( target , thisArg , argArray ) => { target . call ( thisArg , ... argArray ) ; return result ; } } ) ; } } ) ; return result ; } static end ( ) { console . groupEnd ( ) ; } } API . debug = new Proxy ( Debug . log , { get : ( t , p ) => Debug [ p ] } ) ; } ) ( ) ; declare const debug ;