build library

Build-time API for selected Dart libraries.

Source annotations use package:napi/napi.dart. External selections leave the target library unchanged. This entrypoint belongs in the separate build script running on the Dart VM.

Classes

BuiltModule
ExternalClass
Select a class or concrete class alias and its own public members.
ExternalDeclaration
ExternalFunction
Select a top-level function or an explicitly specialized callable const.
ExternalLibrary
Static selections for an existing library, without changing its source.
ExternalMember
NAPI
Selects a public function, concrete callable const or class for a napi binding.
PackageBuild
A reusable npm package declaration for a user-defined Dart build script.
PackageRelease
Prepare and publish a versioned set of npm packages from existing modules.
SourceLocation
Location in the original input, rather than generated code.

Enums

BuildTarget
ClassPolicy
Requested boundary behavior for a selected Dart class.
NpmAccess
npm access for newly published versions. Existing versions are unchanged.

Functions

assembleNativePackage({required BuiltModule module, required Directory output, required Map<String, Object?> metadata, Map<String, File> assets = const {}}) → Future<Directory>
Assemble one native target without backend fallback or install scripts.
assemblePackage({required List<BuiltModule> modules, required Directory output, required Map<String, Object?> metadata, BuildTarget target = BuildTarget.native, bool wasmFallback = false, Map<String, File> assets = const {}}) → Future<Directory>
Assemble separately built platforms and optional Wasm into one npm package.
assemblePackageSet({required List<BuiltModule> modules, required Directory output, required Map<String, Object?> metadata, BuildTarget target = BuildTarget.native, bool wasmFallback = false, Map<String, File> assets = const {}}) → Future<List<Directory>>
Assemble a lightweight entry package and optional native platform packages.
assembleWasmPackage({required BuiltModule module, required Directory output, required Map<String, Object?> metadata, Map<String, File> assets = const {}}) → Future<Directory>
Assemble an npm package from an already built Dart Wasm module.
buildLibrary({required Uri library, required Directory output, String? packagesPath, ExternalLibrary? external, BuildTarget target = builder.BuildTarget.wasm, Directory? nativeRuntime}) → Future<BuiltModule>
Build a library's selected declarations or rebuild a managed module.
buildPackage({required Uri library, required Directory output, required Map<String, Object?> metadata, Map<String, File> assets = const {}, String? packagesPath, ExternalLibrary? external, BuildTarget target = BuildTarget.wasm, Set<BuildTarget>? targets, bool wasmFallback = false, Directory? nativeRuntime}) → Future<Directory>
Build and assemble an npm package, or replace a managed package.

Exceptions / Errors

BindingDiagnostic