> For AI agents: the complete documentation index is available at /llms.txt, the full documentation bundle is available at /llms-full.txt.

# lib.format

- **Type:** `'esm' | 'cjs' | 'umd' | 'mf' | 'iife'`
- **Default:** `'esm'`
- **CLI:** `--format <format>` (e.g. `--format umd`)
- **Top-level config:** Supported

Specify the output format for the generated JavaScript output files.

For different output formats, Rslib uses the following default value of [output.library.type](https://rspack.rs/config/output#outputlibrarytype) provided by Rspack:

- `esm`：[modern-module](https://rspack.rs/config/output#type-modern-module)
- `cjs`：[commonjs-static](https://rspack.rs/config/output#type-commonjs-static)
- `umd`：[umd](https://rspack.rs/config/output#type-umd)
- `iife`: [module](https://rspack.rs/config/output#type-module) with [output.iife](https://rspack.rs/config/output#outputiife) enabled.

See [Output Format](/guide/basic/output-format.md) and [Module Federation](/guide/advanced/module-federation.md) for more details.

The output format affects some of Rslib's default behavior. See [Default behavior](/config/default-behavior.md) for details.

::: note

The `umd`, `mf` and `iife` formats only work when [bundle](/config/lib/bundle.md) is set to `true`.

:::
