{
  "factory": {
    "id": "jks-keystore",
    "type": "entaxy.security.keystore",
    "parent": "abstract-keystore",
    "displayName": "JKS :: KEYSTORE",
    "isAbstract": false,
    "label": "security,keystore,jks",
    "description": "Factory jks-keystore of entaxy.security.keystore. For more details see <a target=\"_blank\" href=\"https://docs.entaxy.ru/entaxy-core/${project.version}/core/security/keystores.html\">Entaxy docs</a>"
  },
  "entaxy.security.keystore": {},
  "fields": {
    "__keystorePasswordFile": {
      "type": "String",
      "isHidden": true,
      "required": true,
      "@INTERNAL": true,
      "@RESOURCE": {
        "endType": "String",
        "__content": {
          "@CALCULATED": {
            "expression": "${#OWNER#.properties.keystorePassword}",
            "lazy": false
          }
        },
        "provider": "entaxy-keystore",
        "location": {
          "@CALCULATED": {
            "expression": "${#OWNER#.objectId}.${#OWNER#.properties.keystoreType}.pwd",
            "lazy": false
          }
        },
        "scope": "runtime",
        "resourceRefConfig": {
          "isRefByValueOnly": true
        }
      },
      "defaultValue": {
        "@CALCULATED": {
          "expression": "${properties.keystorePassword}",
          "lazy": false
        }
      }
    },
    "keystoreFile": {
      "description": "A field for uploading the keystore file that contains cryptographic keys and certificates. For more details see <a target=\"_blank\" href=\"https://docs.entaxy.ru/entaxy-core/${project.version}/core/security/keystores.html\">Entaxy docs</a>"
    },
    "keystoreType": {
      "description": "Defines the format of the keystore, such as JKS (Java KeyStore) or PKCS12 (Public Key Cryptography Standards #12). For more details see <a target=\"_blank\" href=\"https://docs.entaxy.ru/entaxy-core/${project.version}/core/security/keystores.html\">Entaxy docs</a>",
      "@TYPEINFO": {
        "type": "enum",
        "values": [
          "jks",
          "pkcs12"
        ]
      }
    },
    "keystorePassword": {
      "isHidden": false
    }
  },
  "outputs": {
    "init": {
      "isDefault": true,
      "config": {
        "configurable": false
      },
      "fields": {
        "__keystorePasswordFile": {}
      }
    }
  }
}
