## API Report File for "@angular/build"

> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/).

```ts

import { BuilderContext } from '@angular-devkit/architect';
import { BuilderOutput } from '@angular-devkit/architect';
import type { ConfigOptions } from 'karma';
import type http from 'node:http';
import { OutputFile } from 'esbuild';
import type { Plugin as Plugin_2 } from 'esbuild';

// @public (undocumented)
export interface ApplicationBuilderExtensions {
    // (undocumented)
    codePlugins?: Plugin_2[];
    // (undocumented)
    indexHtmlTransformer?: IndexHtmlTransform;
}

// @public
export type ApplicationBuilderOptions = {
    allowedCommonJsDependencies?: string[];
    aot?: boolean;
    appShell?: boolean;
    assets?: AssetPattern[];
    baseHref?: string;
    browser?: string;
    budgets?: Budget[];
    clearScreen?: boolean;
    conditions?: string[];
    crossOrigin?: CrossOrigin;
    define?: {
        [key: string]: string;
    };
    deleteOutputPath?: boolean;
    deployUrl?: string;
    externalDependencies?: string[];
    extractLicenses?: boolean;
    fileReplacements?: FileReplacement[];
    i18nDuplicateTranslation?: I18NTranslation;
    i18nMissingTranslation?: I18NTranslation;
    index?: IndexUnion;
    inlineStyleLanguage?: InlineStyleLanguage;
    loader?: {
        [key: string]: any;
    };
    localize?: Localize;
    namedChunks?: boolean;
    optimization?: OptimizationUnion;
    outputHashing?: OutputHashing;
    outputMode?: OutputMode;
    outputPath?: OutputPathUnion;
    poll?: number;
    polyfills?: string[];
    prerender?: PrerenderUnion;
    preserveSymlinks?: boolean;
    progress?: boolean;
    scripts?: ScriptElement[];
    security?: Security;
    server?: Serv;
    serviceWorker?: Serv;
    sourceMap?: SourceMapUnion;
    ssr?: SsrUnion;
    statsJson?: boolean;
    stylePreprocessorOptions?: StylePreprocessorOptions;
    styles?: StyleElement[];
    subresourceIntegrity?: boolean;
    tsConfig: string;
    verbose?: boolean;
    watch?: boolean;
    webWorkerTsConfig?: string;
};

// @public
export function buildApplication(options: ApplicationBuilderOptions, context: BuilderContext, extensions?: ApplicationBuilderExtensions): AsyncIterable<BuilderOutput>;

// @public (undocumented)
export interface BuildOutputAsset {
    // (undocumented)
    destination: string;
    // (undocumented)
    source: string;
}

// @public (undocumented)
export interface BuildOutputFile extends OutputFile {
    // (undocumented)
    clone: () => BuildOutputFile;
    // (undocumented)
    readonly size: number;
    // (undocumented)
    type: BuildOutputFileType;
}

// @public (undocumented)
export enum BuildOutputFileType {
    // (undocumented)
    Browser = 0,
    // (undocumented)
    Media = 1,
    // (undocumented)
    Root = 4,
    // (undocumented)
    ServerApplication = 2,
    // (undocumented)
    ServerRoot = 3
}

// @public
export type DevServerBuilderOptions = {
    allowedHosts?: AllowedHosts;
    buildTarget: string;
    headers?: {
        [key: string]: string;
    };
    hmr?: boolean;
    host?: string;
    inspect?: Inspect;
    liveReload?: boolean;
    open?: boolean;
    poll?: number;
    port?: number;
    prebundle?: PrebundleUnion;
    proxyConfig?: string;
    servePath?: string;
    ssl?: boolean;
    sslCert?: string;
    sslKey?: string;
    verbose?: boolean;
    watch?: boolean;
};

// @public
export interface DevServerBuilderOutput extends BuilderOutput {
    // (undocumented)
    address?: string;
    // (undocumented)
    baseUrl: string;
    // (undocumented)
    port?: number;
}

// @public
export function executeDevServerBuilder(options: DevServerBuilderOptions, context: BuilderContext, extensions?: {
    buildPlugins?: Plugin_2[];
    middleware?: ((req: http.IncomingMessage, res: http.ServerResponse, next: (err?: unknown) => void) => void)[];
    indexHtmlTransformer?: IndexHtmlTransform;
}): AsyncIterable<DevServerBuilderOutput>;

// @public
export function executeExtractI18nBuilder(options: ExtractI18nBuilderOptions, context: BuilderContext, extensions?: ApplicationBuilderExtensions): Promise<BuilderOutput>;

// @public
export function executeKarmaBuilder(options: KarmaBuilderOptions, context: BuilderContext, transforms?: KarmaBuilderTransformsOptions): AsyncIterable<BuilderOutput>;

// @public
export function executeNgPackagrBuilder(options: NgPackagrBuilderOptions, context: BuilderContext): AsyncIterableIterator<BuilderOutput>;

// @public
export function executeUnitTestBuilder(options: UnitTestBuilderOptions, context: BuilderContext, extensions?: ApplicationBuilderExtensions): AsyncIterable<BuilderOutput>;

// @public
export type ExtractI18nBuilderOptions = {
    buildTarget?: string;
    format?: Format;
    i18nDuplicateTranslation?: I18NDuplicateTranslation;
    outFile?: string;
    outputPath?: string;
    progress?: boolean;
};

// @public
export type KarmaBuilderOptions = {
    aot?: boolean;
    assets?: AssetPattern_2[];
    browsers?: Browsers;
    codeCoverage?: boolean;
    codeCoverageExclude?: string[];
    define?: {
        [key: string]: string;
    };
    exclude?: string[];
    externalDependencies?: string[];
    fileReplacements?: FileReplacement_2[];
    include?: string[];
    inlineStyleLanguage?: InlineStyleLanguage_2;
    karmaConfig?: string;
    loader?: {
        [key: string]: any;
    };
    main?: string;
    poll?: number;
    polyfills?: string[];
    preserveSymlinks?: boolean;
    progress?: boolean;
    reporters?: string[];
    scripts?: ScriptElement_2[];
    sourceMap?: SourceMapUnion_2;
    stylePreprocessorOptions?: StylePreprocessorOptions_2;
    styles?: StyleElement_2[];
    tsConfig: string;
    watch?: boolean;
    webWorkerTsConfig?: string;
};

// @public
export type NgPackagrBuilderOptions = {
    poll?: number;
    project?: string;
    tsConfig?: string;
    watch?: boolean;
};

// @public
export type UnitTestBuilderOptions = {
    browsers?: string[];
    buildTarget: string;
    codeCoverage?: boolean;
    codeCoverageExclude?: string[];
    codeCoverageReporters?: SchemaCodeCoverageReporter[];
    debug?: boolean;
    exclude?: string[];
    include?: string[];
    providersFile?: string;
    reporters?: string[];
    runner: Runner;
    setupFiles?: string[];
    tsConfig: string;
    watch?: boolean;
};

// (No @packageDocumentation comment for this package)

```
