{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--aws-appsync-resolver.json",
  "title": "AWSAppSyncResolverProperties",
  "description": "Resource Type definition for AWS::AppSync::Resolver. Source:- No source definition found, add manually please",
  "x-lintel": {
    "source": "https://raw.githubusercontent.com/lalcebo/json-schema/master/serverless/resources/cloudformation-modified/aws-appsync-resolver.json",
    "sourceSha256": "d348189427ff5281ce3dc6d397e973b1818e17fb8edcbbd5297edd42ca928d00"
  },
  "type": "object",
  "properties": {
    "TypeName": {
      "oneOf": [
        {
          "type": "string"
        },
        {
          "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
        }
      ]
    },
    "PipelineConfig": {
      "$ref": "#/$defs/PipelineConfig"
    },
    "RequestMappingTemplate": {
      "oneOf": [
        {
          "type": "string"
        },
        {
          "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
        }
      ]
    },
    "ResponseMappingTemplate": {
      "oneOf": [
        {
          "type": "string"
        },
        {
          "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
        }
      ]
    },
    "MaxBatchSize": {
      "type": "integer"
    },
    "SyncConfig": {
      "$ref": "#/$defs/SyncConfig"
    },
    "Code": {
      "oneOf": [
        {
          "type": "string"
        },
        {
          "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
        }
      ]
    },
    "ResponseMappingTemplateS3Location": {
      "oneOf": [
        {
          "type": "string"
        },
        {
          "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
        }
      ]
    },
    "Runtime": {
      "$ref": "#/$defs/AppSyncRuntime"
    },
    "CodeS3Location": {
      "oneOf": [
        {
          "type": "string"
        },
        {
          "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
        }
      ]
    },
    "DataSourceName": {
      "oneOf": [
        {
          "type": "string"
        },
        {
          "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
        }
      ]
    },
    "Kind": {
      "oneOf": [
        {
          "type": "string"
        },
        {
          "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
        }
      ]
    },
    "CachingConfig": {
      "$ref": "#/$defs/CachingConfig"
    },
    "RequestMappingTemplateS3Location": {
      "oneOf": [
        {
          "type": "string"
        },
        {
          "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
        }
      ]
    },
    "FieldName": {
      "oneOf": [
        {
          "type": "string"
        },
        {
          "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
        }
      ]
    },
    "ApiId": {
      "oneOf": [
        {
          "type": "string"
        },
        {
          "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
        }
      ]
    }
  },
  "typeName": "AWS::AppSync::Resolver",
  "readOnlyProperties": [
    "/properties/Id",
    "/properties/ResolverArn"
  ],
  "$defs": {
    "AppSyncRuntime": {
      "type": "object",
      "title": "AWSAppSyncResolverAppSyncRuntimeDefinition",
      "properties": {
        "RuntimeVersion": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "Name": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        }
      },
      "required": [
        "RuntimeVersion",
        "Name"
      ],
      "additionalProperties": false
    },
    "PipelineConfig": {
      "type": "object",
      "title": "AWSAppSyncResolverPipelineConfigDefinition",
      "properties": {
        "Functions": {
          "type": "array",
          "uniqueItems": false,
          "items": {
            "type": "string"
          }
        }
      },
      "additionalProperties": false
    },
    "CachingConfig": {
      "type": "object",
      "title": "AWSAppSyncResolverCachingConfigDefinition",
      "properties": {
        "CachingKeys": {
          "type": "array",
          "uniqueItems": false,
          "items": {
            "type": "string"
          }
        },
        "Ttl": {
          "type": "number"
        }
      },
      "required": [
        "Ttl"
      ],
      "additionalProperties": false
    },
    "SyncConfig": {
      "type": "object",
      "title": "AWSAppSyncResolverSyncConfigDefinition",
      "properties": {
        "ConflictHandler": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "ConflictDetection": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "LambdaConflictHandlerConfig": {
          "$ref": "#/$defs/LambdaConflictHandlerConfig"
        }
      },
      "required": [
        "ConflictDetection"
      ],
      "additionalProperties": false
    },
    "LambdaConflictHandlerConfig": {
      "type": "object",
      "title": "AWSAppSyncResolverLambdaConflictHandlerConfigDefinition",
      "properties": {
        "LambdaConflictHandlerArn": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        }
      },
      "additionalProperties": false
    }
  },
  "primaryIdentifier": [
    "/properties/Id"
  ],
  "additionalProperties": false,
  "required": [
    "TypeName",
    "ApiId",
    "FieldName"
  ],
  "createOnlyProperties": [
    "/properties/ApiId",
    "/properties/FieldName",
    "/properties/TypeName"
  ]
}
