async load(
    permissions = {},
    {
      force,
      onExistingUsers = "fail",
      onExistingUsersWarning = false,
      refresh = "false",
      user = null,
    } = {},
  ) {
    assertIsObject(permissions);

    await this._create("createOrReplaceRole", permissions.roles, "roles", {
      force,
      refresh,
      user,
    });

    await this._create(
      "createOrReplaceProfile",
      permissions.profiles,
      "profiles",
      { refresh, user },
    );

    const usersToLoad = await this._getUsersToLoad(permissions.users, {
      onExistingUsers,
      warning: onExistingUsersWarning,
    });

    await this._create("createUser", usersToLoad, "users", { refresh, user });
  }
Loads permissions into the app
@param {Object} permissions Object containing roles, profiles and users
@param {Object} opts - force, onExistingUsers (fail), onExistingUsersWarning (false), user (null)