{
	"$schema": "http://json-schema.org/schema",
	"type": "object",
	"cli": "nx",
	"description": "Executor to build and deploy cloud functions",
	"properties": {
		"flavor": {
			"type": "string",
			"description": "The flavor to run from the flavors object"
		},
		"flavors": {
			"type": "object",
			"description": "The different flavors to deploy, keyed by the flavor name and value is the firebase project id"
		},
		"envFiles": {
			"type": "object",
			"description": "The different env files to use, keyed by the flavor name and value is the env file path"
		},
		"outputDirectory": {
			"type": "string",
			"description": "The output directory of the build",
			"aliases": ["outDir"]
		},
		"tsconfig": {
			"type": "string",
			"description": "The tsconfig file to use for the build",
			"aliases": ["tsconfig"]
		},
		"region": {
			"type": "string",
			"description": "The default region to deploy the functions to",
			"aliases": ["location"]
		},
		"silent": {
			"type": "boolean",
			"description": "Whether to suppress all logs",
			"aliases": ["s"]
		},
		"dryRun": {
			"type": "boolean",
			"description": "Whether to run the command as a dry run",
			"aliases": ["d", "dry"]
		},
		"verbose": {
			"type": "boolean",
			"description": "Whether to run the command with verbose logging",
			"aliases": ["v"]
		},
		"concurrency": {
			"type": "number",
			"description": "The number of functions to deploy in parallel",
			"aliases": ["c"]
		},
		"envString": {
			"type": "string",
			"description": "Stringify version of the environment.",
			"aliases": ["ciEnv"]
		},
		"production": {
			"type": "boolean",
			"description": "Whether to deploy the production flavor",
			"aliases": ["prod"]
		},
		"development": {
			"type": "boolean",
			"description": "Whether to deploy the development flavor",
			"aliases": ["dev"]
		},
		"functionsDirectory": {
			"type": "string",
			"description": "The directory containing the functions to deploy",
			"aliases": ["functionsDir", "inputDirectory", "inDir"]
		},
		"only": {
			"type": "string",
			"description": "Only deploy the given function names separated by comma",
			"aliases": ["o"]
		},
		"force": {
			"type": "boolean",
			"description": "Force deploy all functions, even if no files changed",
			"aliases": ["f"]
		},
		"packageManager": {
			"type": "string",
			"enum": ["pnpm", "npm", "yarn", "global"],
			"description": "The package manager to use for deploying with firebase-tools",
			"aliases": ["pm"]
		},
		"validate": {
			"type": "boolean",
			"default": false,
			"description": "Will run tsc -noEmits in project root to validate the build",
			"aliases": ["valid"]
		},
		"ignoreMissingEnvironmentKey": {
			"type": "boolean",
			"default": false,
			"description": "Will ignore missing environment keys error",
			"aliases": ["ignoreMissingEnv"]
		},
		"deleteAll": {
			"type": "boolean",
			"default": false,
			"description": "Will delete all functions in the project"
		}
	},
	"required": ["flavors"]
}
