Skip to content

API / wxt / WxtHooks

Interface: WxtHooks ​

Source: packages/wxt/src/types.ts:523

Contents ​

Properties ​

build:before ​

build:before: (wxt) => HookResult

Source: packages/wxt/src/types.ts:1396

Called before the build is started in both dev mode and build mode.

Parameters ​

wxt ​

Wxt

The configured WXT object

Returns ​

HookResult


build:done ​

build:done: (wxt, output) => HookResult

Source: packages/wxt/src/types.ts:1404

Called once the build process has finished. You can add files to the build summary here by pushing to output.publicAssets.

Parameters ​

wxt ​

Wxt

The configured WXT object

output ​

Readonly<BuildOutput>

The results of the build

Returns ​

HookResult


build:manifestGenerated ​

build:manifestGenerated: (wxt, manifest) => HookResult

Source: packages/wxt/src/types.ts:1412

Called once the manifest has been generated. Used to transform the manifest by reference before it is written to the output directory.

Parameters ​

wxt ​

Wxt

The configured WXT object

manifest ​

Manifest

The manifest that was generated

Returns ​

HookResult


build:publicAssets ​

build:publicAssets: (wxt, files) => HookResult

Source: packages/wxt/src/types.ts:1448

Called when public assets are found. You can modify the files list by reference to add or remove public files.

Parameters ​

wxt ​

Wxt

The configured WXT object

files ​

ResolvedPublicFile[]

The list of files that will be copied into the output directory

Returns ​

HookResult


config:resolved ​

config:resolved: (wxt) => HookResult

Source: packages/wxt/src/types.ts:1338

Called whenever config is loaded or reloaded. Use this hook to modify config by modifying wxt.config.

Parameters ​

wxt ​

Wxt

The configured WXT object

Returns ​

HookResult


entrypoints:found ​

entrypoints:found: (wxt, infos) => HookResult

Source: packages/wxt/src/types.ts:1423

Called once the names and paths of all entrypoints have been resolved.

Parameters ​

wxt ​

Wxt

The configured WXT object

infos ​

EntrypointInfo[]

List of entrypoints found in the project's entrypoints directory

Returns ​

HookResult


entrypoints:grouped ​

entrypoints:grouped: (wxt, groups) => HookResult

Source: packages/wxt/src/types.ts:1439

Called once all entrypoints have been grouped into their build groups.

Parameters ​

wxt ​

Wxt

The configured WXT object

groups ​

EntrypointGroup[]

The list of groups to build in each build step

Returns ​

HookResult


entrypoints:resolved ​

entrypoints:resolved: (wxt, entrypoints) => HookResult

Source: packages/wxt/src/types.ts:1432

Called once all entrypoints have been loaded from the entrypointsDir. Use wxt.builder.importEntrypoint to load entrypoint options from the file, or manually define them.

Parameters ​

wxt ​

Wxt

The configured WXT object

entrypoints ​

Entrypoint[]

The list of entrypoints to be built

Returns ​

HookResult


prepare:publicPaths ​

prepare:publicPaths: (wxt, paths) => HookResult

Source: packages/wxt/src/types.ts:1390

Called before generating the list of public paths inside .wxt/types/paths.d.ts. Use this hook to add additional paths (relative to output directory) WXT doesn't add automatically.

Parameters ​

wxt ​

Wxt

The configured WXT object

paths ​

PublicPathEntry[]

This list of paths TypeScript allows browser.runtime.getURL to be called with.

Returns ​

HookResult

Example ​

ts
wxt.hooks.hook('prepare:publicPaths', (wxt, paths) => {
    paths.push('icons/128.png');
    paths.push({
      type: 'templateLiteral',
      path: '_favicon/?${string}',
    });
  });

prepare:tsconfig ​

prepare:tsconfig: (wxt, configs) => HookResult

Source: packages/wxt/src/types.ts:1371

Called before WXT writes your tsconfig to the disk, allowing full customization by modifying the object by reference.

Parameters ​

wxt ​

Wxt

configs ​

PrepareTsconfigs

Returns ​

HookResult

Since ​

0.20.28

Example ​

ts
wxt.hooks.hook('prepare:tsconfig', (wxt, { tsconfig }) => {
    tsconfig.compilerOptions.lib.push('WebWorker');
  });

prepare:types ​

prepare:types: (wxt, entries) => HookResult

Source: packages/wxt/src/types.ts:1360

Called before WXT writes .wxt/tsconfig.json and .wxt/wxt.d.ts, allowing addition of custom references and declarations in wxt.d.ts, or directly modifying the options in tsconfig.json.

Parameters ​

wxt ​

Wxt

entries ​

WxtDirEntry[]

Returns ​

HookResult

Example ​

ts
wxt.hooks.hook('prepare:types', (wxt, entries) => {
    // Add a file, ".wxt/types/example.d.ts", that defines a global
    // variable called "example" in the TS project.
    entries.push({
      path: 'types/example.d.ts',
      text: 'declare const a: string;',
      tsReference: true,
    });
    // use module to add Triple-Slash Directive in .wxt/wxt.d.ts
    // eg: /// <reference types="@types/example" />
    entries.push({
      module: '@types/example',
    });
  });

ready ​

ready: (wxt) => HookResult

Source: packages/wxt/src/types.ts:1331

Called after WXT modules are initialized, when the WXT instance is ready to be used. wxt.server isn't available yet, use server:created to get it.

Parameters ​

wxt ​

Wxt

The configured WXT object

Returns ​

HookResult


server:closed ​

server:closed: (wxt, server) => HookResult

Source: packages/wxt/src/types.ts:1512

Called when the dev server is stopped.

Parameters ​

wxt ​

Wxt

The configured WXT object

server ​

WxtDevServer

Same as wxt.server, the object WXT uses to control the dev server.

Returns ​

HookResult


server:created ​

server:created: (wxt, server) => HookResult

Source: packages/wxt/src/types.ts:1496

Called when the dev server is created (and wxt.server is assigned). Server has not been started yet.

Parameters ​

wxt ​

Wxt

The configured WXT object

server ​

WxtDevServer

Same as wxt.server, the object WXT uses to control the dev server.

Returns ​

HookResult


server:started ​

server:started: (wxt, server) => HookResult

Source: packages/wxt/src/types.ts:1504

Called when the dev server is started.

Parameters ​

wxt ​

Wxt

The configured WXT object

server ​

WxtDevServer

Same as wxt.server, the object WXT uses to control the dev server.

Returns ​

HookResult


vite:build:extendConfig ​

vite:build:extendConfig: (entrypoints, viteConfig) => HookResult

Source: packages/wxt/src/types.ts:532

Called when WXT has created Vite's config for a build step. Useful if you want to add plugins or update the vite config per entrypoint group.

Parameters ​

entrypoints ​

readonly Entrypoint[]

The list of entrypoints being built with the provided config.

viteConfig ​

InlineConfig

The config that will be used for the dev server.

Returns ​

HookResult


vite:devServer:extendConfig ​

vite:devServer:extendConfig: (config) => HookResult

Source: packages/wxt/src/types.ts:543

Called when WXT has created Vite's config for the dev server. Useful if you want to add plugins or update the vite config per entrypoint group.

Parameters ​

config ​

InlineConfig

The config that will be used to build the entrypoints. Can be updated by reference.

Returns ​

HookResult


zip:done ​

zip:done: (wxt, zipFiles) => HookResult

Source: packages/wxt/src/types.ts:1487

Called after the entire zip process is complete.

Parameters ​

wxt ​

Wxt

The configured WXT object

zipFiles ​

string[]

An array of paths to all created zip files

Returns ​

HookResult


zip:extension:done ​

zip:extension:done: (wxt, zipPath) => HookResult

Source: packages/wxt/src/types.ts:1467

Called after zipping the extension files.

Parameters ​

wxt ​

Wxt

The configured WXT object

zipPath ​

string

The path to the created extension zip file

Returns ​

HookResult


zip:extension:start ​

zip:extension:start: (wxt) => HookResult

Source: packages/wxt/src/types.ts:1460

Called before zipping the extension files.

Parameters ​

wxt ​

Wxt

The configured WXT object

Returns ​

HookResult


zip:sources:done ​

zip:sources:done: (wxt, zipPath) => HookResult

Source: packages/wxt/src/types.ts:1480

Called after zipping the source files (for Firefox).

Parameters ​

wxt ​

Wxt

The configured WXT object

zipPath ​

string

The path to the created sources zip file

Returns ​

HookResult


zip:sources:start ​

zip:sources:start: (wxt) => HookResult

Source: packages/wxt/src/types.ts:1473

Called before zipping the source files (for Firefox).

Parameters ​

wxt ​

Wxt

The configured WXT object

Returns ​

HookResult


zip:start ​

zip:start: (wxt) => HookResult

Source: packages/wxt/src/types.ts:1454

Called before the zip process starts.

Parameters ​

wxt ​

Wxt

The configured WXT object

Returns ​

HookResult


Generated using typedoc-plugin-markdown and TypeDoc