{
  "id": "Datasource.asyncdeletecallback",
  "nodeType": "class",
  "name": "AsyncDeleteCallback",
  "namespace": "Datasource",
  "startToken": {
    "type": "declaration.entity.name.class",
    "text": "AsyncDeleteCallback",
    "textToLower": "asyncdeletecallback",
    "isAux": false,
    "range": {
      "start": {
        "line": -1,
        "character": 0
      },
      "end": {
        "line": -1,
        "character": 0
      },
      "isEmpty": true,
      "isSingleLine": true
    },
    "id": "declaration.entity.name.class_AsyncDeleteCallback_-1:0"
  },
  "order": 0,
  "memberOrder": 0,
  "accessModifier": {
    "type": "keyword.modifier.access",
    "text": "global",
    "textToLower": "global",
    "isAux": false,
    "range": {
      "start": {
        "line": -1,
        "character": 0
      },
      "end": {
        "line": -1,
        "character": 0
      },
      "isEmpty": true,
      "isSingleLine": true
    },
    "id": "keyword.modifier.access_global_-1:0"
  },
  "sharingModifier": {
    "type": "keyword.modifier.sharing",
    "text": "without sharing",
    "textToLower": "without sharing",
    "isAux": false,
    "range": {
      "start": {
        "line": -1,
        "character": 0
      },
      "end": {
        "line": -1,
        "character": 0
      },
      "isEmpty": true,
      "isSingleLine": true
    },
    "id": "keyword.modifier.sharing_without sharing_-1:0"
  },
  "description": "A callback class that the Database.deleteAsync method references. Salesforce calls this class after the remote deleteAsync operation is completed. This class provides the compensating transaction in the completion context of the delete operation. Extend this class to define the actions to execute after the remote delete operation finishes execution.",
  "documentation": "https://developer.salesforce.com/docs/atlas.en-us.apexcode.meta/apexcode/apex_class_DataSource_AsyncDeleteCallback.htm",
  "classes": {},
  "interfaces": {},
  "enums": {},
  "variables": {},
  "methods": {
    "processdelete(database.deleteresult)": {
      "id": "Datasource.asyncdeletecallback.method.processdelete(database.deleteresult)",
      "nodeType": "method",
      "name": "processDelete",
      "startToken": {
        "type": "declaration.entity.name.function",
        "text": "processDelete",
        "textToLower": "processdelete",
        "isAux": false,
        "range": {
          "start": {
            "line": -1,
            "character": 0
          },
          "end": {
            "line": -1,
            "character": 0
          },
          "isEmpty": true,
          "isSingleLine": true
        },
        "id": "declaration.entity.name.function_processDelete_-1:0"
      },
      "parentId": "Datasource.asyncdeletecallback",
      "order": 1,
      "memberOrder": 1,
      "accessModifier": {
        "type": "keyword.modifier.access",
        "text": "public",
        "textToLower": "public",
        "isAux": false,
        "range": {
          "start": {
            "line": 0,
            "character": 0
          },
          "end": {
            "line": 0,
            "character": 6
          },
          "isEmpty": false,
          "isSingleLine": true
        },
        "id": "token.type.identifier_public_0:0"
      },
      "signature": "public void processDelete(Database.DeleteResult deleteResult)",
      "overrideSignature": "public override void processDelete(Database.DeleteResult deleteResult)",
      "simplifiedSignature": "processDelete(Database.DeleteResult)",
      "datatype": {
        "id": "Datasource.asyncdeletecallback.processdelete.datatype.void",
        "nodeType": "datatype",
        "name": "void",
        "startToken": {
          "type": "datatype.primitive",
          "text": "void",
          "textToLower": "void",
          "isAux": false,
          "range": {
            "start": {
              "line": 0,
              "character": 7
            },
            "end": {
              "line": 0,
              "character": 11
            },
            "isEmpty": false,
            "isSingleLine": true
          },
          "id": "token.type.identifier_void_0:7"
        },
        "parentId": "Datasource.asyncdeletecallback.processdelete",
        "order": 0,
        "memberOrder": 0,
        "type": "void"
      },
      "description": "Override this method to define actions that Salesforce executes after a remote Database.deleteAsync operation is completed. For example, based on the results of the remote operation, you can update custom object data or other data that's stored in the Salesforce org..",
      "parentName": "AsyncDeleteCallback",
      "variables": {},
      "params": {
        "deleteresult": {
          "id": "Datasource.asyncdeletecallback.method.processdelete(database.deleteresult).varParam.deleteresult",
          "nodeType": "variable",
          "name": "deleteResult",
          "startToken": {
            "type": "declaration.entity.name.variable",
            "text": "deleteResult",
            "textToLower": "deleteresult",
            "isAux": false,
            "range": {
              "start": {
                "line": 0,
                "character": 48
              },
              "end": {
                "line": 0,
                "character": 60
              },
              "isEmpty": false,
              "isSingleLine": true
            },
            "id": "token.type.identifier_deleteResult_0:48"
          },
          "endToken": {
            "type": "declaration.entity.name.variable",
            "text": "deleteResult",
            "textToLower": "deleteresult",
            "isAux": false,
            "range": {
              "start": {
                "line": 0,
                "character": 48
              },
              "end": {
                "line": 0,
                "character": 60
              },
              "isEmpty": false,
              "isSingleLine": true
            },
            "id": "token.type.identifier_deleteResult_0:48"
          },
          "parentId": "Datasource.asyncdeletecallback.method.processdelete(database.deleteresult)",
          "order": 1,
          "memberOrder": 1,
          "datatype": {
            "id": "Datasource.asyncdeletecallback.processdelete.datatype.Database.DeleteResult",
            "nodeType": "datatype",
            "name": "Database.DeleteResult",
            "startToken": {
              "type": "datatype.support.namespace",
              "text": "Database",
              "textToLower": "database",
              "isAux": false,
              "range": {
                "start": {
                  "line": 0,
                  "character": 26
                },
                "end": {
                  "line": 0,
                  "character": 34
                },
                "isEmpty": false,
                "isSingleLine": true
              },
              "id": "token.type.identifier_Database_0:26"
            },
            "parentId": "Datasource.asyncdeletecallback.processdelete",
            "order": 0,
            "memberOrder": 0,
            "type": "Database.DeleteResult"
          },
          "description": "The result of the asynchronous delete operation.",
          "scope": null
        }
      },
      "queries": [],
      "exceptions": []
    }
  },
  "constructors": {},
  "extendsType": "",
  "implementTypes": [],
  "implements": {},
  "totalMembers": 1,
  "queries": []
}