{
  "version": 2,
  "outputCapture": "direct-nodejs",
  "$schema": "http://json-schema.org/draft-07/schema",
  "title": "native federation browser builder",
  "description": "builder for native federation browser apps",
  "type": "object",
  "properties": {
    "target": {
      "type": "string",
      "description": "target configured for the esbuild builder"
    },
    "dev": {
      "type": "boolean",
      "description": "Set this to true to start the builder in dev mode",
      "default": false
    },
    "watch": {
      "type": "boolean"
    },
    "port": {
      "type": "number",
      "default": 0
    },
    "entryPoints": {
      "type": "array"
    },
    "rebuildDelay": {
      "type": "number",
      "default": 2000,
      "description": "The delay for rebuilding federation artifacts. This allows to have more resources for refreshing your micro frontend in the browser."
    },
    "skipHtmlTransform": {
      "type": "boolean",
      "default": false
    },
    "baseHref": {
      "type": "string"
    },
    "projectName": {
      "type": "string"
    },
    "outputPath": {
      "type": "string"
    },
    "esmsInitOptions": {
      "type": "object",
      "description": "Options for esms-module-shims https://github.com/guybedford/es-module-shims?tab=readme-ov-file#init-options",
      "default": {
        "shimMode": true
      }
    },
    "ssr": {
      "type": "boolean",
      "description": "uses federation for ssr in ApplicationBuilder too",
      "default": false
    },
    "devServer": {
      "type": "boolean",
      "description": "can be used to disable the dev server when dev=true"
    },
    "tsConfig": {
      "type": "string",
      "description": "A specific tsconfig file for the nf remotes and exposed modules."
    },
    "cacheExternalArtifacts": {
      "type": "boolean",
      "default": true,
      "description": "Will cache the shared externals so they can be re-used between builds",
      "alias": "cache"
    },
    "buildNotifications": {
      "type": "object",
      "properties": {
        "enable": {
          "type": "boolean",
          "default": true,
          "description": "Enable build completion notifications for local development. It will send events to notify when the federation build is complete."
        },
        "endpoint": {
          "type": "string",
          "default": "/@angular-architects/native-federation:build-notifications",
          "description": "You can override the default endpoint to send build completion events to."
        }
      }
    }
  }
}
