Send php variable to js in drupal 8 block I am trying to attach js files attach_library() inside a custom block.

However, I can neither add the libraries via block nor add a library. attach_library() does not accept variables like drupal_add_js.

Any ideas on A) how to send a php variable in the block::build() function and how to attach the library through the build() instead of the twig templates?
This is from the documentation how to attach libraries to a render array of a block plugin and send php variables to js:


  Attaching to a render array of a Block Plugin
  
  To give another example of attaching a library to a render array, If
  you are building a block plugin in your module, you can attach the
  libraries to the render array in the build() function of your class
  extending the BlockBase class (as of Drupal 8 beta 6).


return array(
      '#theme' =&gt; 'your_module_theme_id',
      '#someVariable' =&gt; $some_variable,
      '#attached' =&gt; array(
        'library' =&gt;  array(
          'your_module/library_name'
        ),
      ),
    );



  Attaching configurable JavaScript
  
  In some cases, you may want to add JavaScript to a page that depends
  on some computed PHP information.
  
  In this case, create a JavaScript file, define and attach a library
  just like before, but also attach JavaScript settings and have that
  JavaScript file read those settings, via drupalSettings (the successor
  to Drupal 7's Drupal.settings). However, to make drupalSettings
  available to our JavaScript file, we have to do the same work as we
  had to do to make jQuery available: we have to declare a dependency on
  it.
  
  So that then becomes:


cuddly-slider:
  version: 1.x
  js:
    js/cuddly-slider.js: {}
  dependencies:
    - core/jquery
    - core/drupalSettings


and

$build['#attached']['library'][] = 'fluffiness/cuddly-slider';
$build['#attached']['drupalSettings']['fluffiness']['cuddlySlider']['foo'] = 'bar';


https://www.drupal.org/developing/api/8/assets