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

> 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 { BuildResult } from '@angular-devkit/build-webpack';
import { ConfigOptions } from 'karma';
import { Configuration } from 'webpack';
import { DevServerBuildOutput } from '@angular-devkit/build-webpack';
import { json } from '@angular-devkit/core';
import { JsonObject } from '@angular-devkit/core';
import { Observable } from 'rxjs';
import webpack from 'webpack';
import { WebpackLoggingCallback } from '@angular-devkit/build-webpack';

// @public (undocumented)
export type AssetPattern = AssetPatternObject | string;

// @public (undocumented)
export interface AssetPatternObject {
    followSymlinks?: boolean;
    glob: string;
    ignore?: string[];
    input: string;
    output: string;
}

// @public
export interface BrowserBuilderOptions {
    allowedCommonJsDependencies?: string[];
    aot?: boolean;
    assets?: AssetPattern[];
    baseHref?: string;
    budgets?: Budget[];
    buildOptimizer?: boolean;
    commonChunk?: boolean;
    crossOrigin?: CrossOrigin;
    deleteOutputPath?: boolean;
    // @deprecated
    deployUrl?: string;
    extractLicenses?: boolean;
    fileReplacements?: FileReplacement[];
    i18nDuplicateTranslation?: I18NTranslation;
    i18nMissingTranslation?: I18NTranslation;
    index: IndexUnion;
    inlineStyleLanguage?: InlineStyleLanguage;
    localize?: Localize;
    main: string;
    namedChunks?: boolean;
    ngswConfigPath?: string;
    optimization?: OptimizationUnion;
    outputHashing?: OutputHashing;
    outputPath: string;
    poll?: number;
    polyfills?: string;
    preserveSymlinks?: boolean;
    progress?: boolean;
    resourcesOutputPath?: string;
    scripts?: ExtraEntryPoint[];
    serviceWorker?: boolean;
    // @deprecated
    showCircularDependencies?: boolean;
    sourceMap?: SourceMapUnion;
    statsJson?: boolean;
    stylePreprocessorOptions?: StylePreprocessorOptions;
    styles?: ExtraEntryPoint[];
    subresourceIntegrity?: boolean;
    tsConfig: string;
    vendorChunk?: boolean;
    verbose?: boolean;
    watch?: boolean;
    webWorkerTsConfig?: string;
}

// @public
export type BrowserBuilderOutput = json.JsonObject & BuilderOutput & {
    baseOutputPath: string;
    outputPaths: string[];
    outputPath: string;
};

// @public (undocumented)
export interface Budget {
    baseline?: string;
    error?: string;
    maximumError?: string;
    maximumWarning?: string;
    minimumError?: string;
    minimumWarning?: string;
    name?: string;
    type: Type;
    warning?: string;
}

// @public
export enum CrossOrigin {
    // (undocumented)
    Anonymous = "anonymous",
    // (undocumented)
    None = "none",
    // (undocumented)
    UseCredentials = "use-credentials"
}

// @public (undocumented)
export type DevServerBuilderOptions = Schema & json.JsonObject;

// @public
export type DevServerBuilderOutput = DevServerBuildOutput & {
    baseUrl: string;
};

// @public
export function executeBrowserBuilder(options: BrowserBuilderOptions, context: BuilderContext, transforms?: {
    webpackConfiguration?: ExecutionTransformer<webpack.Configuration>;
    logging?: WebpackLoggingCallback;
    indexHtml?: IndexHtmlTransform;
}): Observable<BrowserBuilderOutput>;

// @public
export function executeDevServerBuilder(options: DevServerBuilderOptions, context: BuilderContext, transforms?: {
    webpackConfiguration?: ExecutionTransformer<webpack.Configuration>;
    logging?: WebpackLoggingCallback;
    indexHtml?: IndexHtmlTransform;
}): Observable<DevServerBuilderOutput>;

// @public
export function executeExtractI18nBuilder(options: ExtractI18nBuilderOptions, context: BuilderContext, transforms?: {
    webpackConfiguration?: ExecutionTransformer<webpack.Configuration>;
}): Promise<BuildResult>;

// @public
export function executeKarmaBuilder(options: KarmaBuilderOptions, context: BuilderContext, transforms?: {
    webpackConfiguration?: ExecutionTransformer<Configuration>;
    karmaOptions?: (options: KarmaConfigOptions) => KarmaConfigOptions;
}): Observable<BuilderOutput>;

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

// @public
export function executeProtractorBuilder(options: ProtractorBuilderOptions, context: BuilderContext): Promise<BuilderOutput>;

// @public
export function executeServerBuilder(options: ServerBuilderOptions, context: BuilderContext, transforms?: {
    webpackConfiguration?: ExecutionTransformer<webpack.Configuration>;
}): Observable<ServerBuilderOutput>;

// @public
export type ExecutionTransformer<T> = (input: T) => T | Promise<T>;

// @public (undocumented)
export type ExtractI18nBuilderOptions = Schema_2 & JsonObject;

// @public (undocumented)
export type ExtraEntryPoint = ExtraEntryPointObject | string;

// @public (undocumented)
export interface ExtraEntryPointObject {
    bundleName?: string;
    inject?: boolean;
    input: string;
}

// @public (undocumented)
export interface FileReplacement {
    // (undocumented)
    replace?: string;
    // (undocumented)
    replaceWith?: string;
    // (undocumented)
    src?: string;
    // (undocumented)
    with?: string;
}

// @public
export interface KarmaBuilderOptions {
    assets?: AssetPattern_2[];
    browsers?: string;
    codeCoverage?: boolean;
    codeCoverageExclude?: string[];
    fileReplacements?: FileReplacement_2[];
    include?: string[];
    inlineStyleLanguage?: InlineStyleLanguage_2;
    karmaConfig: string;
    main: string;
    poll?: number;
    polyfills?: string;
    preserveSymlinks?: boolean;
    progress?: boolean;
    reporters?: string[];
    scripts?: ExtraEntryPoint_2[];
    sourceMap?: SourceMapUnion_2;
    stylePreprocessorOptions?: StylePreprocessorOptions_2;
    styles?: ExtraEntryPoint_2[];
    tsConfig: string;
    watch?: boolean;
    webWorkerTsConfig?: string;
}

// @public (undocumented)
export type KarmaConfigOptions = ConfigOptions & {
    buildWebpack?: unknown;
    configFile?: string;
};

// @public
export interface NgPackagrBuilderOptions {
    project: string;
    tsConfig?: string;
    watch?: boolean;
}

// @public (undocumented)
export interface OptimizationObject {
    fonts?: FontsUnion;
    scripts?: boolean;
    styles?: StylesUnion;
}

// @public
export type OptimizationUnion = boolean | OptimizationObject;

// @public
export enum OutputHashing {
    // (undocumented)
    All = "all",
    // (undocumented)
    Bundles = "bundles",
    // (undocumented)
    Media = "media",
    // (undocumented)
    None = "none"
}

// @public
export interface ProtractorBuilderOptions {
    baseUrl?: string;
    devServerTarget?: string;
    grep?: string;
    host?: string;
    invertGrep?: boolean;
    port?: number;
    protractorConfig: string;
    specs?: string[];
    suite?: string;
    webdriverUpdate?: boolean;
}

// @public (undocumented)
export interface ServerBuilderOptions {
    bundleDependencies?: BundleDependenciesUnion;
    deleteOutputPath?: boolean;
    // @deprecated
    deployUrl?: string;
    externalDependencies?: string[];
    extractLicenses?: boolean;
    fileReplacements?: FileReplacement_3[];
    i18nDuplicateTranslation?: I18NTranslation_2;
    i18nMissingTranslation?: I18NTranslation_2;
    inlineStyleLanguage?: InlineStyleLanguage_3;
    localize?: Localize_2;
    main: string;
    namedChunks?: boolean;
    optimization?: OptimizationUnion_2;
    outputHashing?: OutputHashing_2;
    outputPath: string;
    poll?: number;
    preserveSymlinks?: boolean;
    progress?: boolean;
    resourcesOutputPath?: string;
    // @deprecated
    showCircularDependencies?: boolean;
    sourceMap?: SourceMapUnion_3;
    statsJson?: boolean;
    stylePreprocessorOptions?: StylePreprocessorOptions_3;
    tsConfig: string;
    verbose?: boolean;
    watch?: boolean;
}

// @public
export type ServerBuilderOutput = json.JsonObject & BuilderOutput & {
    baseOutputPath: string;
    outputPaths: string[];
    outputPath: string;
};

// @public (undocumented)
export interface SourceMapObject {
    hidden?: boolean;
    scripts?: boolean;
    styles?: boolean;
    vendor?: boolean;
}

// @public
export type SourceMapUnion = boolean | SourceMapObject;

// @public
export interface StylePreprocessorOptions {
    includePaths?: string[];
}

// @public
export enum Type {
    // (undocumented)
    All = "all",
    // (undocumented)
    AllScript = "allScript",
    // (undocumented)
    Any = "any",
    // (undocumented)
    AnyComponentStyle = "anyComponentStyle",
    // (undocumented)
    AnyScript = "anyScript",
    // (undocumented)
    Bundle = "bundle",
    // (undocumented)
    Initial = "initial"
}

// (No @packageDocumentation comment for this package)

```
