{
 "additionalProperties": false,
 "createOnlyProperties": [
  "/properties/UserPoolId",
  "/properties/ClientId"
 ],
 "definitions": {
  "LinksType": {
   "additionalProperties": false,
   "maxProperties": 12,
   "minProperties": 1,
   "patternProperties": {
    "^cognito:(default|english|french|spanish|german|bahasa-indonesia|italian|japanese|korean|portuguese-brazil|chinese-(simplified|traditional))$": {
     "maxLength": 1024,
     "minLength": 1,
     "pattern": "^[\\p{L}\\p{M}\\p{S}\\p{N}\\p{P}]+$",
     "type": "string"
    }
   },
   "type": "object"
  },
  "TermsEnforcementType": {
   "enum": [
    "NONE"
   ],
   "type": "string"
  },
  "TermsIdType": {
   "pattern": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[4][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}$",
   "type": "string"
  },
  "TermsNameType": {
   "pattern": "^(terms-of-use|privacy-policy)$",
   "type": "string"
  },
  "TermsSourceType": {
   "enum": [
    "LINK"
   ],
   "type": "string"
  }
 },
 "primaryIdentifier": [
  "/properties/UserPoolId",
  "/properties/TermsId"
 ],
 "properties": {
  "ClientId": {
   "type": "string"
  },
  "Enforcement": {
   "$ref": "#/definitions/TermsEnforcementType"
  },
  "Links": {
   "$ref": "#/definitions/LinksType"
  },
  "TermsId": {
   "$ref": "#/definitions/TermsIdType"
  },
  "TermsName": {
   "$ref": "#/definitions/TermsNameType"
  },
  "TermsSource": {
   "$ref": "#/definitions/TermsSourceType"
  },
  "UserPoolId": {
   "type": "string"
  }
 },
 "readOnlyProperties": [
  "/properties/TermsId"
 ],
 "required": [
  "UserPoolId",
  "TermsName",
  "TermsSource",
  "Enforcement",
  "Links"
 ],
 "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git",
 "tagging": {
  "cloudFormationSystemTags": false,
  "tagOnCreate": false,
  "tagUpdatable": false,
  "taggable": false
 },
 "typeName": "AWS::Cognito::Terms",
 "writeOnlyProperties": [
  "/properties/ClientId"
 ]
}
