{
  "version": "1.0",
  "resources": {
    "Aliase": {
      "operation": "ListAliases",
      "resourceIdentifier": {
        "AliasName": "Aliases[].AliasName",
        "TargetKeyId": "Aliases[].TargetKeyId"
      }
    },
    "Key": {
      "operation": "ListKeys",
      "resourceIdentifier": {
        "KeyId": "Keys[].KeyId"
      }
    },
    "CustomKeyStore": {
      "operation": "DescribeCustomKeyStores",
      "resourceIdentifier": {
        "CustomKeyStoreId": "CustomKeyStores[].CustomKeyStoreId",
        "CustomKeyStoreName": "CustomKeyStores[].CustomKeyStoreName"
      }
    }
  },
  "operations": {
    "CancelKeyDeletion": {
      "KeyId": {
        "completions": [
          {
            "parameters": {},
            "resourceName": "Key",
            "resourceIdentifier": "KeyId"
          }
        ]
      }
    },
    "DeleteAlias": {
      "AliasName": {
        "completions": [
          {
            "parameters": {},
            "resourceName": "Aliase",
            "resourceIdentifier": "AliasName"
          }
        ]
      }
    },
    "DeleteImportedKeyMaterial": {
      "KeyId": {
        "completions": [
          {
            "parameters": {},
            "resourceName": "Key",
            "resourceIdentifier": "KeyId"
          }
        ]
      }
    },
    "DescribeKey": {
      "KeyId": {
        "completions": [
          {
            "parameters": {},
            "resourceName": "Key",
            "resourceIdentifier": "KeyId"
          }
        ]
      }
    },
    "DisableKey": {
      "KeyId": {
        "completions": [
          {
            "parameters": {},
            "resourceName": "Key",
            "resourceIdentifier": "KeyId"
          }
        ]
      }
    },
    "DisableKeyRotation": {
      "KeyId": {
        "completions": [
          {
            "parameters": {},
            "resourceName": "Key",
            "resourceIdentifier": "KeyId"
          }
        ]
      }
    },
    "EnableKey": {
      "KeyId": {
        "completions": [
          {
            "parameters": {},
            "resourceName": "Key",
            "resourceIdentifier": "KeyId"
          }
        ]
      }
    },
    "EnableKeyRotation": {
      "KeyId": {
        "completions": [
          {
            "parameters": {},
            "resourceName": "Key",
            "resourceIdentifier": "KeyId"
          }
        ]
      }
    },
    "Encrypt": {
      "KeyId": {
        "completions": [
          {
            "parameters": {},
            "resourceName": "Key",
            "resourceIdentifier": "KeyId"
          }
        ]
      }
    },
    "GenerateDataKey": {
      "KeyId": {
        "completions": [
          {
            "parameters": {},
            "resourceName": "Key",
            "resourceIdentifier": "KeyId"
          }
        ]
      }
    },
    "GenerateDataKeyWithoutPlaintext": {
      "KeyId": {
        "completions": [
          {
            "parameters": {},
            "resourceName": "Key",
            "resourceIdentifier": "KeyId"
          }
        ]
      }
    },
    "GetKeyPolicy": {
      "KeyId": {
        "completions": [
          {
            "parameters": {},
            "resourceName": "Key",
            "resourceIdentifier": "KeyId"
          }
        ]
      }
    },
    "GetKeyRotationStatus": {
      "KeyId": {
        "completions": [
          {
            "parameters": {},
            "resourceName": "Key",
            "resourceIdentifier": "KeyId"
          }
        ]
      }
    },
    "GetParametersForImport": {
      "KeyId": {
        "completions": [
          {
            "parameters": {},
            "resourceName": "Key",
            "resourceIdentifier": "KeyId"
          }
        ]
      }
    },
    "ImportKeyMaterial": {
      "KeyId": {
        "completions": [
          {
            "parameters": {},
            "resourceName": "Key",
            "resourceIdentifier": "KeyId"
          }
        ]
      }
    },
    "ListAliases": {
      "KeyId": {
        "completions": [
          {
            "parameters": {},
            "resourceName": "Key",
            "resourceIdentifier": "KeyId"
          }
        ]
      }
    },
    "ListGrants": {
      "KeyId": {
        "completions": [
          {
            "parameters": {},
            "resourceName": "Key",
            "resourceIdentifier": "KeyId"
          }
        ]
      }
    },
    "ListKeyPolicies": {
      "KeyId": {
        "completions": [
          {
            "parameters": {},
            "resourceName": "Key",
            "resourceIdentifier": "KeyId"
          }
        ]
      }
    },
    "ListResourceTags": {
      "KeyId": {
        "completions": [
          {
            "parameters": {},
            "resourceName": "Key",
            "resourceIdentifier": "KeyId"
          }
        ]
      }
    },
    "PutKeyPolicy": {
      "KeyId": {
        "completions": [
          {
            "parameters": {},
            "resourceName": "Key",
            "resourceIdentifier": "KeyId"
          }
        ]
      }
    },
    "RetireGrant": {
      "KeyId": {
        "completions": [
          {
            "parameters": {},
            "resourceName": "Key",
            "resourceIdentifier": "KeyId"
          }
        ]
      }
    },
    "RevokeGrant": {
      "KeyId": {
        "completions": [
          {
            "parameters": {},
            "resourceName": "Key",
            "resourceIdentifier": "KeyId"
          }
        ]
      }
    },
    "ScheduleKeyDeletion": {
      "KeyId": {
        "completions": [
          {
            "parameters": {},
            "resourceName": "Key",
            "resourceIdentifier": "KeyId"
          }
        ]
      }
    },
    "TagResource": {
      "KeyId": {
        "completions": [
          {
            "parameters": {},
            "resourceName": "Key",
            "resourceIdentifier": "KeyId"
          }
        ]
      }
    },
    "UntagResource": {
      "KeyId": {
        "completions": [
          {
            "parameters": {},
            "resourceName": "Key",
            "resourceIdentifier": "KeyId"
          }
        ]
      }
    },
    "UpdateAlias": {
      "AliasName": {
        "completions": [
          {
            "parameters": {},
            "resourceName": "Aliase",
            "resourceIdentifier": "AliasName"
          }
        ]
      },
      "TargetKeyId": {
        "completions": [
          {
            "parameters": {},
            "resourceName": "Aliase",
            "resourceIdentifier": "TargetKeyId"
          }
        ]
      }
    },
    "UpdateKeyDescription": {
      "KeyId": {
        "completions": [
          {
            "parameters": {},
            "resourceName": "Key",
            "resourceIdentifier": "KeyId"
          }
        ]
      }
    },
    "ConnectCustomKeyStore": {
      "CustomKeyStoreId": {
        "completions": [
          {
            "parameters": {},
            "resourceName": "CustomKeyStore",
            "resourceIdentifier": "CustomKeyStoreId"
          }
        ]
      }
    },
    "CreateAlias": {
      "TargetKeyId": {
        "completions": [
          {
            "parameters": {},
            "resourceName": "Key",
            "resourceIdentifier": "KeyId"
          }
        ]
      }
    },
    "CreateGrant": {
      "KeyId": {
        "completions": [
          {
            "parameters": {},
            "resourceName": "Key",
            "resourceIdentifier": "KeyId"
          }
        ]
      }
    },
    "CreateKey": {
      "CustomKeyStoreId": {
        "completions": [
          {
            "parameters": {},
            "resourceName": "CustomKeyStore",
            "resourceIdentifier": "CustomKeyStoreId"
          }
        ]
      }
    },
    "Decrypt": {
      "KeyId": {
        "completions": [
          {
            "parameters": {},
            "resourceName": "Key",
            "resourceIdentifier": "KeyId"
          }
        ]
      }
    },
    "DeleteCustomKeyStore": {
      "CustomKeyStoreId": {
        "completions": [
          {
            "parameters": {},
            "resourceName": "CustomKeyStore",
            "resourceIdentifier": "CustomKeyStoreId"
          }
        ]
      }
    },
    "DeriveSharedSecret": {
      "KeyId": {
        "completions": [
          {
            "parameters": {},
            "resourceName": "Key",
            "resourceIdentifier": "KeyId"
          }
        ]
      }
    },
    "DescribeCustomKeyStores": {
      "CustomKeyStoreId": {
        "completions": [
          {
            "parameters": {},
            "resourceName": "CustomKeyStore",
            "resourceIdentifier": "CustomKeyStoreId"
          }
        ]
      },
      "CustomKeyStoreName": {
        "completions": [
          {
            "parameters": {},
            "resourceName": "CustomKeyStore",
            "resourceIdentifier": "CustomKeyStoreName"
          }
        ]
      }
    },
    "DisconnectCustomKeyStore": {
      "CustomKeyStoreId": {
        "completions": [
          {
            "parameters": {},
            "resourceName": "CustomKeyStore",
            "resourceIdentifier": "CustomKeyStoreId"
          }
        ]
      }
    },
    "GenerateDataKeyPair": {
      "KeyId": {
        "completions": [
          {
            "parameters": {},
            "resourceName": "Key",
            "resourceIdentifier": "KeyId"
          }
        ]
      }
    },
    "GenerateDataKeyPairWithoutPlaintext": {
      "KeyId": {
        "completions": [
          {
            "parameters": {},
            "resourceName": "Key",
            "resourceIdentifier": "KeyId"
          }
        ]
      }
    },
    "GenerateMac": {
      "KeyId": {
        "completions": [
          {
            "parameters": {},
            "resourceName": "Key",
            "resourceIdentifier": "KeyId"
          }
        ]
      }
    },
    "GenerateRandom": {
      "CustomKeyStoreId": {
        "completions": [
          {
            "parameters": {},
            "resourceName": "CustomKeyStore",
            "resourceIdentifier": "CustomKeyStoreId"
          }
        ]
      }
    },
    "GetPublicKey": {
      "KeyId": {
        "completions": [
          {
            "parameters": {},
            "resourceName": "Key",
            "resourceIdentifier": "KeyId"
          }
        ]
      }
    },
    "ListKeyRotations": {
      "KeyId": {
        "completions": [
          {
            "parameters": {},
            "resourceName": "Key",
            "resourceIdentifier": "KeyId"
          }
        ]
      }
    },
    "ReEncrypt": {
      "SourceKeyId": {
        "completions": [
          {
            "parameters": {},
            "resourceName": "Key",
            "resourceIdentifier": "KeyId"
          }
        ]
      },
      "DestinationKeyId": {
        "completions": [
          {
            "parameters": {},
            "resourceName": "Key",
            "resourceIdentifier": "KeyId"
          }
        ]
      }
    },
    "ReplicateKey": {
      "KeyId": {
        "completions": [
          {
            "parameters": {},
            "resourceName": "Key",
            "resourceIdentifier": "KeyId"
          }
        ]
      }
    },
    "RotateKeyOnDemand": {
      "KeyId": {
        "completions": [
          {
            "parameters": {},
            "resourceName": "Key",
            "resourceIdentifier": "KeyId"
          }
        ]
      }
    },
    "Sign": {
      "KeyId": {
        "completions": [
          {
            "parameters": {},
            "resourceName": "Key",
            "resourceIdentifier": "KeyId"
          }
        ]
      }
    },
    "UpdateCustomKeyStore": {
      "CustomKeyStoreId": {
        "completions": [
          {
            "parameters": {},
            "resourceName": "CustomKeyStore",
            "resourceIdentifier": "CustomKeyStoreId"
          }
        ]
      }
    },
    "UpdatePrimaryRegion": {
      "KeyId": {
        "completions": [
          {
            "parameters": {},
            "resourceName": "Key",
            "resourceIdentifier": "KeyId"
          }
        ]
      }
    },
    "Verify": {
      "KeyId": {
        "completions": [
          {
            "parameters": {},
            "resourceName": "Key",
            "resourceIdentifier": "KeyId"
          }
        ]
      }
    },
    "VerifyMac": {
      "KeyId": {
        "completions": [
          {
            "parameters": {},
            "resourceName": "Key",
            "resourceIdentifier": "KeyId"
          }
        ]
      }
    }
  }
}
