{
  "terraformType": "cloud_event_target",
  "service": "events",
  "resourceType": "EventTarget",
  "create": "PutTargets",
  "read": "ListTargets",
  "update": null,
  "delete": "RemoveTargets",
  "list": "ListTargets",
  "importId": "{event_bus_name}/{rule}/{target_id}",
  "identifierAttrs": [
    "rule",
    "event_bus_name",
    "target_id"
  ],
  "createOnly": [
    "rule",
    "event_bus_name",
    "target_id",
    "arn"
  ],
  "computed": [
    "id"
  ],
  "sensitive": [],
  "readSpec": {
    "calls": [
      {
        "operation": {
          "kind": "cloudJson",
          "service": "events",
          "operation": "ListTargets",
          "target": "CloudEvents.ListTargets"
        },
        "requestBindings": [
          {
            "requestPath": "eventBusName",
            "source": {
              "kind": "physicalId",
              "member": "event_bus_name"
            }
          },
          {
            "requestPath": "rule",
            "source": {
              "kind": "physicalId",
              "member": "rule"
            }
          }
        ]
      }
    ],
    "resultSelector": {
      "kind": "list",
      "path": "targets",
      "match_path": "id",
      "physical_id_member": "target_id"
    },
    "observedFields": [
      {
        "source": {
          "kind": "physicalId",
          "member": "event_bus_name"
        },
        "modelField": "eventBusName",
        "transform": "identity"
      },
      {
        "source": {
          "kind": "physicalId",
          "member": "rule"
        },
        "modelField": "rule",
        "transform": "identity"
      },
      {
        "source": {
          "kind": "selected",
          "path": "id"
        },
        "modelField": "targetId",
        "transform": "identity"
      },
      {
        "source": {
          "kind": "selected",
          "path": "arn"
        },
        "modelField": "arn",
        "transform": "identity"
      }
    ],
    "readiness": null,
    "stableComputed": "preserveWhenAbsent",
    "stableComputedFields": [
      "id"
    ]
  },
  "provider": {
    "resourceKind": "event_target",
    "physicalId": [
      "rule",
      "event_bus_name",
      "target_id"
    ],
    "exposeRevision": true,
    "attributes": [
      {
        "name": "id",
        "terraformType": "string",
        "required": false,
        "optional": false,
        "computed": true,
        "sensitive": false,
        "writeOnly": false,
        "requiresReplace": false,
        "createOnly": false
      },
      {
        "name": "rule",
        "terraformType": "string",
        "required": true,
        "optional": false,
        "computed": false,
        "sensitive": false,
        "writeOnly": false,
        "requiresReplace": true,
        "createOnly": true
      },
      {
        "name": "event_bus_name",
        "terraformType": "string",
        "required": true,
        "optional": false,
        "computed": false,
        "sensitive": false,
        "writeOnly": false,
        "requiresReplace": true,
        "createOnly": true
      },
      {
        "name": "target_id",
        "terraformType": "string",
        "required": true,
        "optional": false,
        "computed": false,
        "sensitive": false,
        "writeOnly": false,
        "requiresReplace": true,
        "createOnly": true
      },
      {
        "name": "arn",
        "terraformType": "string",
        "required": true,
        "optional": false,
        "computed": false,
        "sensitive": false,
        "writeOnly": false,
        "requiresReplace": true,
        "createOnly": true
      }
    ]
  },
  "updateStrategy": {
    "kind": "replace"
  }
}
