getDisableDirectives() {
		const problems = [];
		const directives = [];

		this.getInlineConfigNodes().forEach(comment => {
			// Step 1: Parse the directive
			const {
				label,
				value,
				justification: justificationPart,
			} = commentParser.parseDirective(comment.value);

			// Step 2: Validate the directive does not span multiple lines
			if (
				label === "eslint-disable-line" &&
				comment.position.start.line !== comment.position.end.line
			) {
				const message = `${label} comment should not span multiple lines.`;

				problems.push({
					ruleId: null,
					message,
					loc: comment.position,
				});
				return;
			}

			// Step 3: Extract the directive value and create the Directive object
			switch (label) {
				case "eslint-disable":
				case "eslint-enable":
				case "eslint-disable-next-line":
				case "eslint-disable-line": {
					const directiveType = label.slice("eslint-".length);

					directives.push(
						new Directive({
							type: /** @type {DirectiveType} */ (directiveType),
							node: comment,
							value,
							justification: justificationPart,
						}),
					);
				}

				// no default
			}
		});

		return { problems, directives };
	}
Returns an all directive nodes that enable or disable rules along with any problems
encountered while parsing the directives.
@returns {{problems:Array<FileProblem>,directives:Array<Directive>}} Information
     that ESLint needs to further process the directives.