The type of import.meta.
If you need to declare that a given property exists on import.meta, this type may be augmented via interface merging.
interface
The type of import.meta.
If you need to declare that a given property exists on import.meta, this type may be augmented via interface merging.
Absolute path to the directory containing the source file.
Does not have a trailing slash
The environment variables of the process
import.meta.env === process.env
Hot module replacement APIs. This value is undefined in production and can be used in an if statement to check if HMR APIs are available
if (import.meta.hot) {
// HMR APIs are available
}
However, this check is usually not needed as Bun will dead-code-eliminate calls to all of the HMR APIs in production builds.
https://bun.com/docs/bundler/hmr
Did the current file start the process?
if (import.meta.main) {
console.log("I started the process!");
}
Load a CommonJS module within an ES Module. Bun's transpiler rewrites all calls to require with import.meta.require when transpiling ES Modules for the runtime.
Warning: This API is not stable and may change or be removed in the future. Use at your own risk.
file:// url string for the current module.
console.log(import.meta.url);
"file:///Users/me/projects/my-app/src/my-app.ts"