docs: function checkLastToken(member, opts, isLast) {
              /**
               * Resolves the boolean value for the given setting enum value
               * @param {"semi" | "comma" | "none"} type the option name
               * @returns {boolean} the resolved value
               */
              function getOption(type) {
                  if (isLast && !opts.requireLast) {
                      // only turn the option on if its expecting no delimiter for the last member
                      return type === "none";
                  }
                  return opts.delimiter === type;
              }
  
              let messageId;
              let missingDelimiter = false;
              const lastToken = sourceCode.getLastToken(member, {
                  includeComments: false,
              });
  
              const optsSemi = getOption("semi");
              const optsComma = getOption("comma");
              const optsNone = getOption("none");
  
              if (lastToken.value === ";") {
                  if (optsComma) {
                      messageId = "expectedComma";
                  } else if (optsNone) {
                      missingDelimiter = true;
                      messageId = "unexpectedSemi";
                  }
              } else if (lastToken.value === ",") {
                  if (optsSemi) {
                      messageId = "expectedSemi";
                  } else if (optsNone) {
                      missingDelimiter = true;
                      messageId = "unexpectedComma";
                  }
              } else {
                  if (optsSemi) {
                      missingDelimiter = true;
                      messageId = "expectedSemi";
                  } else if (optsComma) {
                      missingDelimiter = true;
                      messageId = "expectedComma";
                  }
              }
  
              if (messageId) {
                  context.report({
                      node: lastToken,
                      loc: {
                          start: {
                              line: lastToken.loc.end.line,
                              column: lastToken.loc.end.column,
                          },
                          end: {
                              line: lastToken.loc.end.line,
                              column: lastToken.loc.end.column,
                          },
                      },
                      messageId,
                      fix(fixer) {
                          if (optsNone) {
                              // remove the unneeded token
                              return fixer.remove(lastToken);
                          }
  
                          const token = optsSemi ? ";" : ",";
  
                          if (missingDelimiter) {
                              // add the missing delimiter
                              return fixer.insertTextAfter(lastToken, token);
                          }
  
                          // correct the current delimiter
                          return fixer.replaceText(lastToken, token);
                      },
                  });
              }
          }