/**
* @param {{ ast: HTMLProgram; text: string; comments: CommentContent[] }} config
* @returns {HTMLSourceCode}
*/
export function createHTMLSourceCode(config: {
ast: HTMLProgram;
text: string;
comments: CommentContent[];
}): HTMLSourceCode;
import type { HTMLProgram } from "@html-eslint/parser";
import type { CommentContent } from "@html-eslint/types";
/** @extends TextSourceCodeBase */
declare class HTMLSourceCode extends TextSourceCodeBase {
/** @param {{ ast: HTMLProgram; text: string; comments: CommentContent[] }} config */
constructor({ ast, text, comments }: {
ast: HTMLProgram;
text: string;
comments: CommentContent[];
});
/** @property */
comments: CommentContent[];
parentsMap: Map;
lineStartIndices: number[];
/**
* @param {BaseNode} node
* @returns {[number, number]}
*/
getRange(node: BaseNode): [number, number];
/**
* @param {BaseNode} node
* @returns {import("@eslint/plugin-kit").SourceLocation}
*/
getLoc(node: BaseNode): import("@eslint/plugin-kit").SourceLocation;
getLines(): string[];
/**
* @private
* @returns {CommentContent[]}
*/
private getAllComments;
getInlineConfigNodes(): CommentContent[];
getDisableDirectives(): {
problems: {
ruleId: null | string;
message: string;
loc: SourceLocation;
}[];
directives: Directive[];
};
traverse(): TraversalStep[];
/**
* @param {AnyHTMLNode} node
* @returns
*/
getParent(node: AnyHTMLNode): any;
/**
* @private
* @param {NodeOrTokenData} _node
* @returns {HTMLComment | null}
*/
private getJSDocComment;
/** Stub implementations for ESLint's SourceCode API Compatibility */
/**
* @private
* @deprecated HTM does not have scopes
* @param {NodeOrTokenData} node
* @returns {Scope.Scope | null}
*/
private getScope;
/**
* @private
* @deprecated HTML does not have scopes
* @returns {Scope.ScopeManager | null}
*/
private get scopeManager();
}
import type { SourceCodeOptions } from "./types";
import { TextSourceCodeBase } from "@eslint/plugin-kit";
import type { BaseNode } from "../types";
import type { SourceLocation } from "@eslint/plugin-kit";
import { Directive } from "@eslint/plugin-kit";
import type { TraversalStep } from "@eslint/core";
import type { AnyHTMLNode } from "@html-eslint/types";
export {};
//# sourceMappingURL=html-source-code.d.ts.map