Where is init module when doing Rust to WebAssembly

I am learning Rust to WebAssembly from this page : https://developer.mozilla.org/en-US/docs/WebAssembly/Rust_to_Wasm
I see this code for index.html file

<!doctype html>
<html lang="en-US">
  <head>
    <meta charset="utf-8" />
    <title>hello-wasm example</title>
  </head>
  <body>
    <script type="module">
      import init, { greet } from "./pkg/hello_wasm.js";
      init().then(() => {
        greet("WebAssembly");
      });
    </script>
  </body>
</html>

However i do not see an ‘init’ being exported from the hello_wasm.js file in question.
Moreover I changed the above javascript code to

<script type="module">
      import myinit, { greet } from "./pkg/hello_wasm.js";
      myinit().then(() => {
        greet("WebAssembly");
      });
    </script>

and still the javascript just works fine!.
Please help me understand where is this ‘init’ coming from and how is it supposed to be used.
Thanks
-Mahesh

I think you should post your question to the developer community here:
https://discourse.mozilla.org/c/developer-community/215

Edit:
There is this info on the following page:
https://rustwasm.github.io/docs/wasm-bindgen/examples/without-a-bundler.html

      // Note that the `default` import is an initialization function which**
      // will "boot" the module and make it ready to use.** Currently browsers
      // don't support natively imported WebAssembly as an ES module, but
      // eventually the manual initialization won't be required!
      import init, { add } from './pkg/without_a_bundler.js';
 ...

So it should be the default initializer generated. Like the “main” in other languages.