{
  "id": "#",
  "title": "Release Version Generator",
  "description": "A type definition for a release version generator schema",
  "required": [
    "projects",
    "releaseGroup",
    "projectGraph",
    "specifier"
  ],
  "properties": {
    "projects": {
      "title": "Projects",
      "type": "array",
      "items": {
        "type": "object"
      },
      "description": "The projects to release",
      "id": "#projects"
    },
    "releaseGroup": {
      "title": "Release Group",
      "type": "object",
      "description": "The release group",
      "id": "#releaseGroup",
      "default": {}
    },
    "projectGraph": {
      "title": "Project Graph",
      "type": "object",
      "description": "The project graph",
      "id": "#projectGraph",
      "default": {}
    },
    "specifier": {
      "title": "Specifier",
      "type": "string",
      "description": "The specifier",
      "id": "#specifier"
    },
    "specifierSource": {
      "title": "Specifier Source",
      "type": "string",
      "description": "The specifier source",
      "id": "#specifierSource"
    },
    "preid": {
      "title": "Preid",
      "type": "string",
      "description": "The preid",
      "id": "#preid"
    },
    "packageRoot": {
      "title": "Package Root",
      "type": "string",
      "description": "The package root",
      "id": "#packageRoot"
    },
    "currentVersionResolver": {
      "title": "Current Version Resolver",
      "type": "string",
      "description": "The current version resolver",
      "id": "#currentVersionResolver",
      "default": "git-tag"
    },
    "currentVersionResolverMetadata": {
      "title": "Current Version Resolver Metadata",
      "type": "object",
      "description": "The current version resolver metadata",
      "id": "#currentVersionResolverMetadata",
      "default": {}
    },
    "fallbackCurrentVersionResolver": {
      "title": "Fallback Current Version Resolver",
      "type": "string",
      "description": "The fallback current version resolver",
      "id": "#fallbackCurrentVersionResolver",
      "default": "disk"
    },
    "firstRelease": {
      "title": "First Release",
      "type": "boolean",
      "description": "Release the first version",
      "id": "#firstRelease"
    },
    "versionPrefix": {
      "title": "Version Prefix",
      "type": "string",
      "description": "The version prefix",
      "enum": [
        "",
        "auto",
        "~",
        "^",
        "="
      ],
      "id": "#versionPrefix"
    },
    "skipLockFileUpdate": {
      "title": "Skip Lock File Update",
      "type": "boolean",
      "description": "Skip lock file update",
      "id": "#skipLockFileUpdate"
    },
    "installArgs": {
      "title": "Install Args",
      "type": "string",
      "description": "The install arguments",
      "id": "#installArgs"
    },
    "installIgnoreScripts": {
      "title": "Install Ignore Scripts",
      "type": "boolean",
      "description": "Ignore scripts",
      "id": "#installIgnoreScripts"
    },
    "conventionalCommitsConfig": {
      "title": "Conventional Commits Config",
      "type": "object",
      "description": "The conventional commits config",
      "id": "#conventionalCommitsConfig",
      "default": {}
    },
    "deleteVersionPlans": {
      "title": "Delete Version Plans",
      "type": "boolean",
      "description": "Delete version plans",
      "id": "#deleteVersionPlans"
    },
    "updateDependents": {
      "title": "Update Dependents",
      "type": "string",
      "description": "Update dependents",
      "id": "#updateDependents"
    },
    "logUnchangedProjects": {
      "title": "Log Unchanged Projects",
      "type": "boolean",
      "description": "Log unchanged projects",
      "id": "#logUnchangedProjects"
    },
    "preserveLocalDependencyProtocols": {
      "title": "Preserve Local Dependency Protocols",
      "type": "boolean",
      "description": "Preserve local dependency protocols",
      "id": "#preserveLocalDependencyProtocols"
    }
  },
  "type": "object",
  "default": {
    "releaseGroup": {},
    "projectGraph": {},
    "currentVersionResolver": "git-tag",
    "currentVersionResolverMetadata": {},
    "fallbackCurrentVersionResolver": "disk",
    "conventionalCommitsConfig": {}
  }
}