{
  "id": "Auth.configurableselfreghandler",
  "nodeType": "interface",
  "name": "ConfigurableSelfRegHandler",
  "namespace": "Auth",
  "startToken": {
    "type": "declaration.entity.name.class",
    "text": "ConfigurableSelfRegHandler",
    "textToLower": "configurableselfreghandler",
    "isAux": false,
    "range": {
      "start": {
        "line": -1,
        "character": 0
      },
      "end": {
        "line": -1,
        "character": 0
      },
      "isEmpty": true,
      "isSingleLine": true
    },
    "id": "declaration.entity.name.class_ConfigurableSelfRegHandler_-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": "Gives you more control over how visitors self-register for your community by creating a class that implements Auth.ConfigurableSelfRegHandler. You choose the user information to collect, and how users identify themselves—with their email address, phone number, or another identifier. Once verified, you create a new external user and log the user in to your community.",
  "documentation": "https://developer.salesforce.com/docs/atlas.en-us.apexcode.meta/apexcode/apex_interface_Auth_ConfigurableSelfRegHandler.htm",
  "classes": {},
  "interfaces": {},
  "enums": {},
  "variables": {},
  "methods": {
    "createuser(id,id,map<schema.sobjectfield,string>,string)": {
      "id": "Auth.configurableselfreghandler.method.createuser(id,id,map<schema.sobjectfield,string>,string)",
      "nodeType": "method",
      "name": "createUser",
      "startToken": {
        "type": "declaration.entity.name.function",
        "text": "createUser",
        "textToLower": "createuser",
        "isAux": false,
        "range": {
          "start": {
            "line": -1,
            "character": 0
          },
          "end": {
            "line": -1,
            "character": 0
          },
          "isEmpty": true,
          "isSingleLine": true
        },
        "id": "declaration.entity.name.function_createUser_-1:0"
      },
      "parentId": "Auth.configurableselfreghandler",
      "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 Id createUser(Id accountId, Id profileId, Map<Schema.SObjectField,String> registrationAttributes, String password)",
      "overrideSignature": "public override Id createUser(Id accountId, Id profileId, Map<Schema.SObjectField,String> registrationAttributes, String password)",
      "simplifiedSignature": "createUser(Id,Id,Map<Schema.SObjectField,String>,String)",
      "datatype": {
        "id": "Auth.configurableselfreghandler.createuser.datatype.Id",
        "nodeType": "datatype",
        "name": "Id",
        "startToken": {
          "type": "datatype.primitive",
          "text": "Id",
          "textToLower": "id",
          "isAux": false,
          "range": {
            "start": {
              "line": 0,
              "character": 7
            },
            "end": {
              "line": 0,
              "character": 9
            },
            "isEmpty": false,
            "isSingleLine": true
          },
          "id": "token.type.identifier_Id_0:7"
        },
        "parentId": "Auth.configurableselfreghandler.createuser",
        "order": 0,
        "memberOrder": 0,
        "type": "Id"
      },
      "description": "Create a community member from the information that the visitor provided on your community’s self-registration page.",
      "parentName": "ConfigurableSelfRegHandler",
      "variables": {},
      "params": {
        "accountid": {
          "id": "Auth.configurableselfreghandler.method.createuser(id,id,map<schema.sobjectfield,string>,string).varParam.accountid",
          "nodeType": "variable",
          "name": "accountId",
          "startToken": {
            "type": "declaration.entity.name.variable",
            "text": "accountId",
            "textToLower": "accountid",
            "isAux": false,
            "range": {
              "start": {
                "line": 0,
                "character": 24
              },
              "end": {
                "line": 0,
                "character": 33
              },
              "isEmpty": false,
              "isSingleLine": true
            },
            "id": "token.type.identifier_accountId_0:24"
          },
          "endToken": {
            "type": "declaration.entity.name.variable",
            "text": "accountId",
            "textToLower": "accountid",
            "isAux": false,
            "range": {
              "start": {
                "line": 0,
                "character": 24
              },
              "end": {
                "line": 0,
                "character": 33
              },
              "isEmpty": false,
              "isSingleLine": true
            },
            "id": "token.type.identifier_accountId_0:24"
          },
          "parentId": "Auth.configurableselfreghandler.method.createuser(id,id,map<schema.sobjectfield,string>,string)",
          "order": 1,
          "memberOrder": 1,
          "datatype": {
            "id": "Auth.configurableselfreghandler.createuser.datatype.Id",
            "nodeType": "datatype",
            "name": "Id",
            "startToken": {
              "type": "datatype.primitive",
              "text": "Id",
              "textToLower": "id",
              "isAux": false,
              "range": {
                "start": {
                  "line": 0,
                  "character": 21
                },
                "end": {
                  "line": 0,
                  "character": 23
                },
                "isEmpty": false,
                "isSingleLine": true
              },
              "id": "token.type.identifier_Id_0:21"
            },
            "parentId": "Auth.configurableselfreghandler.createuser",
            "order": 0,
            "memberOrder": 0,
            "type": "Id"
          },
          "scope": null
        },
        "profileid": {
          "id": "Auth.configurableselfreghandler.method.createuser(id,id,map<schema.sobjectfield,string>,string).varParam.profileid",
          "nodeType": "variable",
          "name": "profileId",
          "startToken": {
            "type": "declaration.entity.name.variable",
            "text": "profileId",
            "textToLower": "profileid",
            "isAux": false,
            "range": {
              "start": {
                "line": 0,
                "character": 38
              },
              "end": {
                "line": 0,
                "character": 47
              },
              "isEmpty": false,
              "isSingleLine": true
            },
            "id": "token.type.identifier_profileId_0:38"
          },
          "endToken": {
            "type": "declaration.entity.name.variable",
            "text": "profileId",
            "textToLower": "profileid",
            "isAux": false,
            "range": {
              "start": {
                "line": 0,
                "character": 38
              },
              "end": {
                "line": 0,
                "character": 47
              },
              "isEmpty": false,
              "isSingleLine": true
            },
            "id": "token.type.identifier_profileId_0:38"
          },
          "parentId": "Auth.configurableselfreghandler.method.createuser(id,id,map<schema.sobjectfield,string>,string)",
          "order": 2,
          "memberOrder": 2,
          "datatype": {
            "id": "Auth.configurableselfreghandler.createuser.datatype.Id",
            "nodeType": "datatype",
            "name": "Id",
            "startToken": {
              "type": "datatype.primitive",
              "text": "Id",
              "textToLower": "id",
              "isAux": false,
              "range": {
                "start": {
                  "line": 0,
                  "character": 35
                },
                "end": {
                  "line": 0,
                  "character": 37
                },
                "isEmpty": false,
                "isSingleLine": true
              },
              "id": "token.type.identifier_Id_0:35"
            },
            "parentId": "Auth.configurableselfreghandler.createuser",
            "order": 0,
            "memberOrder": 0,
            "type": "Id"
          },
          "scope": null
        },
        "registrationattributes": {
          "id": "Auth.configurableselfreghandler.method.createuser(id,id,map<schema.sobjectfield,string>,string).varParam.registrationattributes",
          "nodeType": "variable",
          "name": "registrationAttributes",
          "startToken": {
            "type": "declaration.entity.name.variable",
            "text": "registrationAttributes",
            "textToLower": "registrationattributes",
            "isAux": false,
            "range": {
              "start": {
                "line": 0,
                "character": 81
              },
              "end": {
                "line": 0,
                "character": 103
              },
              "isEmpty": false,
              "isSingleLine": true
            },
            "id": "token.type.identifier_registrationAttributes_0:81"
          },
          "endToken": {
            "type": "declaration.entity.name.variable",
            "text": "registrationAttributes",
            "textToLower": "registrationattributes",
            "isAux": false,
            "range": {
              "start": {
                "line": 0,
                "character": 81
              },
              "end": {
                "line": 0,
                "character": 103
              },
              "isEmpty": false,
              "isSingleLine": true
            },
            "id": "token.type.identifier_registrationAttributes_0:81"
          },
          "parentId": "Auth.configurableselfreghandler.method.createuser(id,id,map<schema.sobjectfield,string>,string)",
          "order": 3,
          "memberOrder": 3,
          "datatype": {
            "id": "Auth.configurableselfreghandler.createuser.datatype.Map<Schema.SObjectField,String>",
            "nodeType": "datatype",
            "name": "Map<Schema.SObjectField,String>",
            "startToken": {
              "type": "datatype.collection",
              "text": "Map",
              "textToLower": "map",
              "isAux": false,
              "range": {
                "start": {
                  "line": 0,
                  "character": 49
                },
                "end": {
                  "line": 0,
                  "character": 52
                },
                "isEmpty": false,
                "isSingleLine": true
              },
              "id": "token.type.identifier_Map_0:49"
            },
            "parentId": "Auth.configurableselfreghandler.createuser",
            "order": 0,
            "memberOrder": 0,
            "type": "Map",
            "value": {
              "id": "Auth.configurableselfreghandler.createuser.datatype.Map<Schema.SObjectField,String>.value.String",
              "nodeType": "datatype",
              "name": "String",
              "startToken": {
                "type": "datatype.primitive",
                "text": "String",
                "textToLower": "string",
                "isAux": false,
                "range": {
                  "start": {
                    "line": 0,
                    "character": 73
                  },
                  "end": {
                    "line": 0,
                    "character": 79
                  },
                  "isEmpty": false,
                  "isSingleLine": true
                },
                "id": "token.type.identifier_String_0:73"
              },
              "order": 0,
              "memberOrder": 0,
              "type": "String"
            },
            "key": {
              "id": "Auth.configurableselfreghandler.createuser.datatype.Map<Schema.SObjectField,String>.key.Schema.SObjectField",
              "nodeType": "datatype",
              "name": "Schema.SObjectField",
              "startToken": {
                "type": "datatype.support.namespace",
                "text": "Schema",
                "textToLower": "schema",
                "isAux": false,
                "range": {
                  "start": {
                    "line": 0,
                    "character": 53
                  },
                  "end": {
                    "line": 0,
                    "character": 59
                  },
                  "isEmpty": false,
                  "isSingleLine": true
                },
                "id": "token.type.identifier_Schema_0:53"
              },
              "order": 0,
              "memberOrder": 0,
              "type": "Schema.SObjectField"
            }
          },
          "scope": null
        },
        "password": {
          "id": "Auth.configurableselfreghandler.method.createuser(id,id,map<schema.sobjectfield,string>,string).varParam.password",
          "nodeType": "variable",
          "name": "password",
          "startToken": {
            "type": "declaration.entity.name.variable",
            "text": "password",
            "textToLower": "password",
            "isAux": false,
            "range": {
              "start": {
                "line": 0,
                "character": 112
              },
              "end": {
                "line": 0,
                "character": 120
              },
              "isEmpty": false,
              "isSingleLine": true
            },
            "id": "token.type.identifier_password_0:112"
          },
          "endToken": {
            "type": "declaration.entity.name.variable",
            "text": "password",
            "textToLower": "password",
            "isAux": false,
            "range": {
              "start": {
                "line": 0,
                "character": 112
              },
              "end": {
                "line": 0,
                "character": 120
              },
              "isEmpty": false,
              "isSingleLine": true
            },
            "id": "token.type.identifier_password_0:112"
          },
          "parentId": "Auth.configurableselfreghandler.method.createuser(id,id,map<schema.sobjectfield,string>,string)",
          "order": 4,
          "memberOrder": 4,
          "datatype": {
            "id": "Auth.configurableselfreghandler.createuser.datatype.String",
            "nodeType": "datatype",
            "name": "String",
            "startToken": {
              "type": "datatype.primitive",
              "text": "String",
              "textToLower": "string",
              "isAux": false,
              "range": {
                "start": {
                  "line": 0,
                  "character": 105
                },
                "end": {
                  "line": 0,
                  "character": 111
                },
                "isEmpty": false,
                "isSingleLine": true
              },
              "id": "token.type.identifier_String_0:105"
            },
            "parentId": "Auth.configurableselfreghandler.createuser",
            "order": 0,
            "memberOrder": 0,
            "type": "String"
          },
          "description": "Default account with which the new user is associated. This value comes from the Account field setting on Login and Registration (L&amp;R) page under Registration Page Configuration. Profile to assign the new user. This value comes from the Profile field setting on the L&amp;R page under Registration Page Configuration. A map of attributes that the registering user entered on the self-registration page. The fields that appear on the self-registration page come from the User Fields selected on the L&amp;R page when the registration type is Configurable Self-Reg Page. The password entered by the user if “Include Password” is selected on the L&amp;R page. (If a password isn’t entered, the handler must generate one because a password is required to create a user.)",
          "scope": null
        }
      },
      "queries": [],
      "exceptions": []
    }
  },
  "constructors": {},
  "extendsType": "",
  "implementTypes": [],
  "implements": {},
  "totalMembers": 1,
  "queries": []
}