@markuplint/ml-core 3.3.0 → 3.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (45) hide show
  1. package/lib/index.d.ts +11 -1
  2. package/lib/ml-core.d.ts +22 -11
  3. package/lib/ml-dom/helper/create-node.d.ts +4 -1
  4. package/lib/ml-dom/helper/getIndent.d.ts +7 -7
  5. package/lib/ml-dom/helper/walkers.d.ts +11 -3
  6. package/lib/ml-dom/helper/walkers.js +1 -0
  7. package/lib/ml-dom/manipulations/child-node-methods.d.ts +18 -5
  8. package/lib/ml-dom/manipulations/get-children.d.ts +3 -1
  9. package/lib/ml-dom/node/attr.d.ts +89 -89
  10. package/lib/ml-dom/node/block.d.ts +30 -30
  11. package/lib/ml-dom/node/character-data.d.ts +59 -52
  12. package/lib/ml-dom/node/child-node.d.ts +6 -1
  13. package/lib/ml-dom/node/comment.d.ts +15 -12
  14. package/lib/ml-dom/node/document-fragment.d.ts +22 -19
  15. package/lib/ml-dom/node/document-type.d.ts +34 -31
  16. package/lib/ml-dom/node/document.d.ts +1600 -1586
  17. package/lib/ml-dom/node/document.js +12 -0
  18. package/lib/ml-dom/node/dom-token-list.d.ts +26 -26
  19. package/lib/ml-dom/node/dom-token-list.js +5 -5
  20. package/lib/ml-dom/node/element.d.ts +1894 -1888
  21. package/lib/ml-dom/node/named-node-map.d.ts +44 -39
  22. package/lib/ml-dom/node/named-node-map.js +2 -1
  23. package/lib/ml-dom/node/node-list.d.ts +9 -3
  24. package/lib/ml-dom/node/node-list.js +17 -2
  25. package/lib/ml-dom/node/node-store.d.ts +3 -3
  26. package/lib/ml-dom/node/node.d.ts +492 -472
  27. package/lib/ml-dom/node/node.js +4 -2
  28. package/lib/ml-dom/node/parent-node.d.ts +66 -57
  29. package/lib/ml-dom/node/rule-mapper.d.ts +7 -7
  30. package/lib/ml-dom/node/rule-mapper.js +3 -0
  31. package/lib/ml-dom/node/text.d.ts +49 -46
  32. package/lib/ml-dom/node/types.d.ts +67 -11
  33. package/lib/ml-dom/node/unexpected-call-error.d.ts +1 -2
  34. package/lib/ml-dom/token/token.d.ts +44 -44
  35. package/lib/ml-rule/create-test-rule.d.ts +5 -3
  36. package/lib/ml-rule/ml-rule-context.d.ts +56 -48
  37. package/lib/ml-rule/ml-rule.d.ts +25 -23
  38. package/lib/ml-rule/types.d.ts +19 -13
  39. package/lib/plugin/types.d.ts +5 -5
  40. package/lib/ruleset/index.d.ts +4 -4
  41. package/lib/test/index.d.ts +19 -7
  42. package/lib/test/index.js +1 -1
  43. package/lib/types.d.ts +7 -7
  44. package/lib/utils/get-location-from-chars.d.ts +9 -4
  45. package/package.json +9 -7
@@ -187,7 +187,8 @@ class MLNode extends token_1.MLToken {
187
187
  * @see https://dom.spec.whatwg.org/#ref-for-dom-node-firstchild%E2%91%A0
188
188
  */
189
189
  get firstChild() {
190
- return this.childNodes[0] || null;
190
+ var _a;
191
+ return (_a = this.childNodes[0]) !== null && _a !== void 0 ? _a : null;
191
192
  }
192
193
  /**
193
194
  * **IT THROWS AN ERROR WHEN CALLING THIS.**
@@ -207,7 +208,8 @@ class MLNode extends token_1.MLToken {
207
208
  * @see https://dom.spec.whatwg.org/#ref-for-dom-node-lastchild%E2%91%A0
208
209
  */
209
210
  get lastChild() {
210
- return this.childNodes[this.childNodes.length - 1] || null;
211
+ var _a;
212
+ return (_a = this.childNodes[this.childNodes.length - 1]) !== null && _a !== void 0 ? _a : null;
211
213
  }
212
214
  /**
213
215
  * @implements `@markuplint/ml-core` API: `MLNode`
@@ -6,61 +6,70 @@ import { MLNode } from './node';
6
6
  *
7
7
  * @see https://dom.spec.whatwg.org/#interface-parentnode
8
8
  */
9
- export declare abstract class MLParentNode<T extends RuleConfigValue, O = null, A extends MLASTAbstractNode = MLASTAbstractNode> extends MLNode<T, O, A> implements ParentNode {
10
- #private;
11
- /**
12
- * @implements DOM API: `Element`, `Document`, `DocumentFragment`
13
- * @see https://dom.spec.whatwg.org/#dom-parentnode-childelementcount
14
- */
15
- get childElementCount(): number;
16
- /**
17
- * @implements DOM API: `Element`, `Document`, `DocumentFragment`
18
- * @see https://dom.spec.whatwg.org/#ref-for-dom-parentnode-children%E2%91%A0
19
- */
20
- get children(): HTMLCollectionOf<MLElement<T, O>>;
21
- /**
22
- * @implements DOM API: `Element`, `Document`, `DocumentFragment`
23
- * @see https://dom.spec.whatwg.org/#ref-for-dom-parentnode-firstelementchild%E2%91%A0
24
- */
25
- get firstElementChild(): MLElement<T, O>;
26
- /**
27
- * @implements DOM API: `Element`, `Document`, `DocumentFragment`
28
- * @see https://dom.spec.whatwg.org/#ref-for-dom-parentnode-lastelementchild%E2%91%A0
29
- */
30
- get lastElementChild(): MLElement<T, O>;
31
- /**
32
- * **IT THROWS AN ERROR WHEN CALLING THIS.**
33
- *
34
- * @unsupported
35
- * @implements DOM API: `Element`, `Document`, `DocumentFragment`
36
- * @see https://dom.spec.whatwg.org/#ref-for-dom-parentnode-append%E2%91%A0
37
- */
38
- append(...nodes: (string | Node)[]): void;
39
- /**
40
- * **IT THROWS AN ERROR WHEN CALLING THIS.**
41
- *
42
- * @unsupported
43
- * @implements DOM API: `Element`, `Document`, `DocumentFragment`
44
- * @see https://dom.spec.whatwg.org/#ref-for-dom-parentnode-prepend%E2%91%A0
45
- */
46
- prepend(...nodes: (string | Node)[]): void;
47
- /**
48
- * @implements DOM API: `Element`, `Document`, `DocumentFragment`
49
- * @see https://dom.spec.whatwg.org/#ref-for-dom-parentnode-queryselector%E2%91%A0
50
- */
51
- querySelector(selectors: string): MLElement<T, O> | null;
52
- /**
53
- * @implements DOM API: `Element`, `Document`, `DocumentFragment`
54
- * @see https://dom.spec.whatwg.org/#ref-for-dom-parentnode-queryselectorall%E2%91%A0
55
- */
56
- querySelectorAll(selectors: string): NodeListOf<MLElement<T, O>>;
57
- /**
58
- * **IT THROWS AN ERROR WHEN CALLING THIS.**
59
- *
60
- * @unsupported
61
- * @implements DOM API: `Element`, `Document`, `DocumentFragment`
62
- * @see https://dom.spec.whatwg.org/#ref-for-dom-parentnode-replacechildren%E2%91%A0
63
- */
64
- replaceChildren(...nodes: (string | Node)[]): void;
65
- protected _descendantsToArray<N extends MLNode<T, O>>(filter?: (node: MLNode<T, O>) => N | null | void): ReadonlyArray<N>;
9
+ export declare abstract class MLParentNode<
10
+ T extends RuleConfigValue,
11
+ O = null,
12
+ A extends MLASTAbstractNode = MLASTAbstractNode,
13
+ >
14
+ extends MLNode<T, O, A>
15
+ implements ParentNode
16
+ {
17
+ #private;
18
+ /**
19
+ * @implements DOM API: `Element`, `Document`, `DocumentFragment`
20
+ * @see https://dom.spec.whatwg.org/#dom-parentnode-childelementcount
21
+ */
22
+ get childElementCount(): number;
23
+ /**
24
+ * @implements DOM API: `Element`, `Document`, `DocumentFragment`
25
+ * @see https://dom.spec.whatwg.org/#ref-for-dom-parentnode-children%E2%91%A0
26
+ */
27
+ get children(): HTMLCollectionOf<MLElement<T, O>>;
28
+ /**
29
+ * @implements DOM API: `Element`, `Document`, `DocumentFragment`
30
+ * @see https://dom.spec.whatwg.org/#ref-for-dom-parentnode-firstelementchild%E2%91%A0
31
+ */
32
+ get firstElementChild(): MLElement<T, O> | null;
33
+ /**
34
+ * @implements DOM API: `Element`, `Document`, `DocumentFragment`
35
+ * @see https://dom.spec.whatwg.org/#ref-for-dom-parentnode-lastelementchild%E2%91%A0
36
+ */
37
+ get lastElementChild(): MLElement<T, O> | null;
38
+ /**
39
+ * **IT THROWS AN ERROR WHEN CALLING THIS.**
40
+ *
41
+ * @unsupported
42
+ * @implements DOM API: `Element`, `Document`, `DocumentFragment`
43
+ * @see https://dom.spec.whatwg.org/#ref-for-dom-parentnode-append%E2%91%A0
44
+ */
45
+ append(...nodes: (string | Node)[]): void;
46
+ /**
47
+ * **IT THROWS AN ERROR WHEN CALLING THIS.**
48
+ *
49
+ * @unsupported
50
+ * @implements DOM API: `Element`, `Document`, `DocumentFragment`
51
+ * @see https://dom.spec.whatwg.org/#ref-for-dom-parentnode-prepend%E2%91%A0
52
+ */
53
+ prepend(...nodes: (string | Node)[]): void;
54
+ /**
55
+ * @implements DOM API: `Element`, `Document`, `DocumentFragment`
56
+ * @see https://dom.spec.whatwg.org/#ref-for-dom-parentnode-queryselector%E2%91%A0
57
+ */
58
+ querySelector(selectors: string): MLElement<T, O> | null;
59
+ /**
60
+ * @implements DOM API: `Element`, `Document`, `DocumentFragment`
61
+ * @see https://dom.spec.whatwg.org/#ref-for-dom-parentnode-queryselectorall%E2%91%A0
62
+ */
63
+ querySelectorAll(selectors: string): NodeListOf<MLElement<T, O>>;
64
+ /**
65
+ * **IT THROWS AN ERROR WHEN CALLING THIS.**
66
+ *
67
+ * @unsupported
68
+ * @implements DOM API: `Element`, `Document`, `DocumentFragment`
69
+ * @see https://dom.spec.whatwg.org/#ref-for-dom-parentnode-replacechildren%E2%91%A0
70
+ */
71
+ replaceChildren(...nodes: (string | Node)[]): void;
72
+ protected _descendantsToArray<N extends MLNode<T, O>>(
73
+ filter?: (node: MLNode<T, O>) => N | null | void,
74
+ ): ReadonlyArray<N>;
66
75
  }
@@ -4,14 +4,14 @@ import type { AnyRule } from '@markuplint/ml-config';
4
4
  import type { Specificity } from '@markuplint/selector';
5
5
  type RuleType = 'rules' | 'nodeRules' | 'childNodeRules';
6
6
  type MappingLayer = {
7
- from: RuleType;
8
- specificity: Specificity;
9
- rule: AnyRule;
7
+ from: RuleType;
8
+ specificity: Specificity;
9
+ rule: AnyRule;
10
10
  };
11
11
  export declare class RuleMapper {
12
- #private;
13
- constructor(document: MLDocument<any, any>);
14
- apply(): void;
15
- set(node: MLNode<any, any>, ruleName: string, rule: MappingLayer): void;
12
+ #private;
13
+ constructor(document: MLDocument<any, any>);
14
+ apply(): void;
15
+ set(node: MLNode<any, any>, ruleName: string, rule: MappingLayer): void;
16
16
  }
17
17
  export {};
@@ -24,6 +24,9 @@ class RuleMapper {
24
24
  ruleMapperNodeLog('<%s>', node.nodeName);
25
25
  Object.keys(rules).forEach(ruleName => {
26
26
  const rule = rules[ruleName];
27
+ if (!rule) {
28
+ return;
29
+ }
27
30
  node.rules[ruleName] = rule.rule;
28
31
  ruleMapperNodeRuleLog('[from: %s(%s)] %s: %o', rule.from, rule.specificity, ruleName, rule.rule);
29
32
  });
@@ -2,50 +2,53 @@ import type { TextNodeType } from './types';
2
2
  import type { MLASTText } from '@markuplint/ml-ast';
3
3
  import type { RuleConfigValue } from '@markuplint/ml-config';
4
4
  import { MLCharacterData } from './character-data';
5
- export declare class MLText<T extends RuleConfigValue, O = null> extends MLCharacterData<T, O, MLASTText> implements Text {
6
- /**
7
- * **IT THROWS AN ERROR WHEN CALLING THIS.**
8
- *
9
- * @unsupported
10
- * @implements DOM API: `Text`
11
- */
12
- get assignedSlot(): HTMLSlotElement;
13
- /**
14
- * Returns a string appropriate for the type of node as `Text`
15
- *
16
- * @see https://dom.spec.whatwg.org/#ref-for-attr%E2%91%A4
17
- */
18
- get nodeName(): "#text";
19
- /**
20
- * Returns a number appropriate for the type of `Text`
21
- */
22
- get nodeType(): TextNodeType;
23
- get textContent(): string | null;
24
- /**
25
- * **IT THROWS AN ERROR WHEN CALLING THIS.**
26
- *
27
- * @unsupported
28
- * @implements DOM API: `Text`
29
- * @see https://dom.spec.whatwg.org/#ref-for-dom-text-splittext%E2%91%A0
30
- */
31
- get wholeText(): string;
32
- /**
33
- * Returns `true` if a parent element is `<script>` or `<style>`
34
- *
35
- * @implements `@markuplint/ml-core` API: `MLText`
36
- * @see https://html.spec.whatwg.org/multipage/syntax.html#raw-text-elements
37
- */
38
- isRawTextElementContent(): boolean;
39
- /**
40
- * @implements `@markuplint/ml-core` API: `MLText`
41
- */
42
- isWhitespace(): boolean;
43
- /**
44
- * **IT THROWS AN ERROR WHEN CALLING THIS.**
45
- *
46
- * @unsupported
47
- * @implements DOM API: `Text`
48
- * @see https://dom.spec.whatwg.org/#ref-for-dom-text-wholetext%E2%91%A0
49
- */
50
- splitText(offset: number): Text;
5
+ export declare class MLText<T extends RuleConfigValue, O = null>
6
+ extends MLCharacterData<T, O, MLASTText>
7
+ implements Text
8
+ {
9
+ /**
10
+ * **IT THROWS AN ERROR WHEN CALLING THIS.**
11
+ *
12
+ * @unsupported
13
+ * @implements DOM API: `Text`
14
+ */
15
+ get assignedSlot(): HTMLSlotElement;
16
+ /**
17
+ * Returns a string appropriate for the type of node as `Text`
18
+ *
19
+ * @see https://dom.spec.whatwg.org/#ref-for-attr%E2%91%A4
20
+ */
21
+ get nodeName(): '#text';
22
+ /**
23
+ * Returns a number appropriate for the type of `Text`
24
+ */
25
+ get nodeType(): TextNodeType;
26
+ get textContent(): string | null;
27
+ /**
28
+ * **IT THROWS AN ERROR WHEN CALLING THIS.**
29
+ *
30
+ * @unsupported
31
+ * @implements DOM API: `Text`
32
+ * @see https://dom.spec.whatwg.org/#ref-for-dom-text-splittext%E2%91%A0
33
+ */
34
+ get wholeText(): string;
35
+ /**
36
+ * Returns `true` if a parent element is `<script>` or `<style>`
37
+ *
38
+ * @implements `@markuplint/ml-core` API: `MLText`
39
+ * @see https://html.spec.whatwg.org/multipage/syntax.html#raw-text-elements
40
+ */
41
+ isRawTextElementContent(): boolean;
42
+ /**
43
+ * @implements `@markuplint/ml-core` API: `MLText`
44
+ */
45
+ isWhitespace(): boolean;
46
+ /**
47
+ * **IT THROWS AN ERROR WHEN CALLING THIS.**
48
+ *
49
+ * @unsupported
50
+ * @implements DOM API: `Text`
51
+ * @see https://dom.spec.whatwg.org/#ref-for-dom-text-wholetext%E2%91%A0
52
+ */
53
+ splitText(offset: number): Text;
51
54
  }
@@ -1,4 +1,3 @@
1
- import type { MLToken } from '../token/token';
2
1
  import type { MLAttr } from './attr';
3
2
  import type { MLBlock } from './block';
4
3
  import type { MLComment } from './comment';
@@ -8,10 +7,55 @@ import type { MLDocumentType } from './document-type';
8
7
  import type { MLElement } from './element';
9
8
  import type { MLNode } from './node';
10
9
  import type { MLText } from './text';
11
- import type { MLASTAbstractNode, MLASTAttr, MLASTComment, MLASTDoctype, MLASTElement, MLASTParentNode, MLASTPreprocessorSpecificBlock, MLASTText, MLToken as MLASTToken } from '@markuplint/ml-ast/';
10
+ import type { MLToken } from '../token/token';
11
+ import type {
12
+ MLASTAbstractNode,
13
+ MLASTAttr,
14
+ MLASTComment,
15
+ MLASTDoctype,
16
+ MLASTElement,
17
+ MLASTParentNode,
18
+ MLASTPreprocessorSpecificBlock,
19
+ MLASTText,
20
+ MLToken as MLASTToken,
21
+ } from '@markuplint/ml-ast/';
12
22
  import type { PretenderARIA, RuleConfigValue } from '@markuplint/ml-config';
13
- export type MappedNode<N, T extends RuleConfigValue, O = null> = N extends MLASTElement ? MLElement<T, O> : N extends MLASTParentNode ? MLElement<T, O> : N extends MLASTComment ? MLComment<T, O> : N extends MLASTText ? MLText<T, O> : N extends MLASTDoctype ? MLDocumentType<T, O> : N extends MLASTPreprocessorSpecificBlock ? MLBlock<T, O> : N extends MLASTAbstractNode ? MLNode<T, O, MLASTAbstractNode> : N extends MLASTAttr ? MLAttr<T, O> : N extends MLASTToken ? MLToken : never;
14
- export type NodeTypeOf<NT extends NodeType, T extends RuleConfigValue, O = null> = NT extends ElementNodeType ? MLElement<T, O> : NT extends CommentNodeType ? MLComment<T, O> : NT extends TextNodeType ? MLText<T, O> : NT extends DocumentNodeType ? MLDocument<T, O> : NT extends DocumentTypeNodeType ? MLDocumentType<T, O> : NT extends DocumentFragmentNodeType ? MLDocumentFragment<T, O> : NT extends MarkuplintPreprocessorBlockType ? MLBlock<T, O> : NT extends AttributeNodeType ? MLAttr<T, O> : never;
23
+ export type MappedNode<N, T extends RuleConfigValue, O = null> = N extends MLASTElement
24
+ ? MLElement<T, O>
25
+ : N extends MLASTParentNode
26
+ ? MLElement<T, O>
27
+ : N extends MLASTComment
28
+ ? MLComment<T, O>
29
+ : N extends MLASTText
30
+ ? MLText<T, O>
31
+ : N extends MLASTDoctype
32
+ ? MLDocumentType<T, O>
33
+ : N extends MLASTPreprocessorSpecificBlock
34
+ ? MLBlock<T, O>
35
+ : N extends MLASTAbstractNode
36
+ ? MLNode<T, O, MLASTAbstractNode>
37
+ : N extends MLASTAttr
38
+ ? MLAttr<T, O>
39
+ : N extends MLASTToken
40
+ ? MLToken
41
+ : never;
42
+ export type NodeTypeOf<NT extends NodeType, T extends RuleConfigValue, O = null> = NT extends ElementNodeType
43
+ ? MLElement<T, O>
44
+ : NT extends CommentNodeType
45
+ ? MLComment<T, O>
46
+ : NT extends TextNodeType
47
+ ? MLText<T, O>
48
+ : NT extends DocumentNodeType
49
+ ? MLDocument<T, O>
50
+ : NT extends DocumentTypeNodeType
51
+ ? MLDocumentType<T, O>
52
+ : NT extends DocumentFragmentNodeType
53
+ ? MLDocumentFragment<T, O>
54
+ : NT extends MarkuplintPreprocessorBlockType
55
+ ? MLBlock<T, O>
56
+ : NT extends AttributeNodeType
57
+ ? MLAttr<T, O>
58
+ : never;
15
59
  export type ElementNodeType = 1;
16
60
  export type AttributeNodeType = 2;
17
61
  export type TextNodeType = 3;
@@ -22,14 +66,26 @@ export type DocumentNodeType = 9;
22
66
  export type DocumentTypeNodeType = 10;
23
67
  export type DocumentFragmentNodeType = 11;
24
68
  export type MarkuplintPreprocessorBlockType = 101;
25
- export type NodeType = ElementNodeType | AttributeNodeType | TextNodeType | CDATASectionNodeType | ProcessingInstructionNodeType | CommentNodeType | DocumentNodeType | DocumentTypeNodeType | DocumentFragmentNodeType | MarkuplintPreprocessorBlockType;
26
- export type PretenderContext<N extends MLElement<T, O>, T extends RuleConfigValue, O = null> = PretenderContextPretender<N, T, O> | PretenderContextPretended<N, T, O>;
69
+ export type NodeType =
70
+ | ElementNodeType
71
+ | AttributeNodeType
72
+ | TextNodeType
73
+ | CDATASectionNodeType
74
+ | ProcessingInstructionNodeType
75
+ | CommentNodeType
76
+ | DocumentNodeType
77
+ | DocumentTypeNodeType
78
+ | DocumentFragmentNodeType
79
+ | MarkuplintPreprocessorBlockType;
80
+ export type PretenderContext<N extends MLElement<T, O>, T extends RuleConfigValue, O = null> =
81
+ | PretenderContextPretender<N, T, O>
82
+ | PretenderContextPretended<N, T, O>;
27
83
  export type PretenderContextPretender<N extends MLElement<T, O>, T extends RuleConfigValue, O = null> = {
28
- readonly type: 'pretender';
29
- readonly as: N;
30
- readonly aria?: PretenderARIA;
84
+ readonly type: 'pretender';
85
+ readonly as: N;
86
+ readonly aria?: PretenderARIA;
31
87
  };
32
88
  export type PretenderContextPretended<N extends MLElement<T, O>, T extends RuleConfigValue, O = null> = {
33
- readonly type: 'origin';
34
- readonly origin: N;
89
+ readonly type: 'origin';
90
+ readonly origin: N;
35
91
  };
@@ -1,2 +1 @@
1
- export default class UnexpectedCallError extends Error {
2
- }
1
+ export default class UnexpectedCallError extends Error {}
@@ -1,47 +1,47 @@
1
1
  import type { MLToken as MLASTToken } from '@markuplint/ml-ast';
2
2
  export declare class MLToken<A extends MLASTToken = MLASTToken> {
3
- #private;
4
- readonly uuid: string;
5
- protected readonly _astToken: A;
6
- constructor(astToken: A);
7
- /**
8
- * @implements `@markuplint/ml-core` API: `MLDOMToken`
9
- */
10
- get endCol(): number;
11
- /**
12
- * @implements `@markuplint/ml-core` API: `MLDOMToken`
13
- */
14
- get endLine(): number;
15
- /**
16
- * @implements `@markuplint/ml-core` API: `MLDOMToken`
17
- */
18
- get endOffset(): number;
19
- /**
20
- * @implements `@markuplint/ml-core` API: `MLDOMToken`
21
- */
22
- get originRaw(): string;
23
- /**
24
- * @implements `@markuplint/ml-core` API: `MLDOMToken`
25
- */
26
- get raw(): string;
27
- /**
28
- * @implements `@markuplint/ml-core` API: `MLDOMToken`
29
- */
30
- get startCol(): number;
31
- /**
32
- * @implements `@markuplint/ml-core` API: `MLDOMToken`
33
- */
34
- get startLine(): number;
35
- /**
36
- * @implements `@markuplint/ml-core` API: `MLDOMToken`
37
- */
38
- get startOffset(): number;
39
- /**
40
- * @implements `@markuplint/ml-core` API: `MLDOMToken`
41
- */
42
- fix(raw: string): void;
43
- /**
44
- * @implements `@markuplint/ml-core` API: `MLDOMToken`
45
- */
46
- toString(): string;
3
+ #private;
4
+ readonly uuid: string;
5
+ protected readonly _astToken: A;
6
+ constructor(astToken: A);
7
+ /**
8
+ * @implements `@markuplint/ml-core` API: `MLDOMToken`
9
+ */
10
+ get endCol(): number;
11
+ /**
12
+ * @implements `@markuplint/ml-core` API: `MLDOMToken`
13
+ */
14
+ get endLine(): number;
15
+ /**
16
+ * @implements `@markuplint/ml-core` API: `MLDOMToken`
17
+ */
18
+ get endOffset(): number;
19
+ /**
20
+ * @implements `@markuplint/ml-core` API: `MLDOMToken`
21
+ */
22
+ get originRaw(): string;
23
+ /**
24
+ * @implements `@markuplint/ml-core` API: `MLDOMToken`
25
+ */
26
+ get raw(): string;
27
+ /**
28
+ * @implements `@markuplint/ml-core` API: `MLDOMToken`
29
+ */
30
+ get startCol(): number;
31
+ /**
32
+ * @implements `@markuplint/ml-core` API: `MLDOMToken`
33
+ */
34
+ get startLine(): number;
35
+ /**
36
+ * @implements `@markuplint/ml-core` API: `MLDOMToken`
37
+ */
38
+ get startOffset(): number;
39
+ /**
40
+ * @implements `@markuplint/ml-core` API: `MLDOMToken`
41
+ */
42
+ fix(raw: string): void;
43
+ /**
44
+ * @implements `@markuplint/ml-core` API: `MLDOMToken`
45
+ */
46
+ toString(): string;
47
47
  }
@@ -1,6 +1,8 @@
1
1
  import type { RuleSeed } from './types';
2
2
  import type { RuleConfigValue } from '@markuplint/ml-config';
3
3
  import { MLRule } from './ml-rule';
4
- export declare function createRule<T extends RuleConfigValue, O = null>(seed: RuleSeed<T, O> & {
5
- name: string;
6
- }): MLRule<T, O>;
4
+ export declare function createRule<T extends RuleConfigValue, O = null>(
5
+ seed: RuleSeed<T, O> & {
6
+ name: string;
7
+ },
8
+ ): MLRule<T, O>;
@@ -1,53 +1,61 @@
1
- import type { MLDocument } from '../ml-dom/node/document';
2
1
  import type { CheckerReport } from './types';
2
+ import type { MLDocument } from '../ml-dom/node/document';
3
3
  import type { LocaleSet, Translator } from '@markuplint/i18n';
4
4
  import type { Report, RuleConfigValue } from '@markuplint/ml-config';
5
5
  export declare class MLRuleContext<T extends RuleConfigValue, O = null> {
6
- #private;
7
- readonly document: MLDocument<T, O>;
8
- readonly locale: string;
9
- readonly translate: Translator;
10
- constructor(document: MLDocument<T, O>, locale: LocaleSet);
11
- get reports(): ({
12
- message: string;
13
- line: number;
14
- col: number;
15
- raw: string;
16
- } | {
17
- message: string;
18
- scope: import("@markuplint/ml-config").Scope<T, O>;
19
- } | {
20
- message: string;
21
- scope: import("@markuplint/ml-config").Scope<T, O>;
22
- line: number;
23
- col: number;
24
- raw: string;
25
- })[];
26
- provide(): {
27
- document: MLDocument<T, O>;
28
- translate: Translator;
29
- t: Translator;
30
- reports: ({
31
- message: string;
32
- line: number;
33
- col: number;
34
- raw: string;
35
- } | {
36
- message: string;
37
- scope: import("@markuplint/ml-config").Scope<T, O>;
38
- } | {
39
- message: string;
40
- scope: import("@markuplint/ml-config").Scope<T, O>;
41
- line: number;
42
- col: number;
43
- raw: string;
44
- })[];
45
- report: {
46
- (report: Report<T, O>): undefined;
47
- (report: CheckerReport<T, O>): boolean;
48
- };
49
- };
50
- report(report: Report<T, O>): undefined;
51
- report(report: CheckerReport<T, O>): boolean;
52
- private _push;
6
+ #private;
7
+ readonly document: MLDocument<T, O>;
8
+ readonly locale: string;
9
+ readonly translate: Translator;
10
+ constructor(document: MLDocument<T, O>, locale: LocaleSet);
11
+ get reports(): (
12
+ | {
13
+ message: string;
14
+ line: number;
15
+ col: number;
16
+ raw: string;
17
+ }
18
+ | {
19
+ message: string;
20
+ scope: import('@markuplint/ml-config').Scope<T, O>;
21
+ }
22
+ | {
23
+ message: string;
24
+ scope: import('@markuplint/ml-config').Scope<T, O>;
25
+ line: number;
26
+ col: number;
27
+ raw: string;
28
+ }
29
+ )[];
30
+ provide(): {
31
+ document: MLDocument<T, O>;
32
+ translate: Translator;
33
+ t: Translator;
34
+ reports: (
35
+ | {
36
+ message: string;
37
+ line: number;
38
+ col: number;
39
+ raw: string;
40
+ }
41
+ | {
42
+ message: string;
43
+ scope: import('@markuplint/ml-config').Scope<T, O>;
44
+ }
45
+ | {
46
+ message: string;
47
+ scope: import('@markuplint/ml-config').Scope<T, O>;
48
+ line: number;
49
+ col: number;
50
+ raw: string;
51
+ }
52
+ )[];
53
+ report: {
54
+ (report: Report<T, O>): undefined;
55
+ (report: CheckerReport<T, O>): boolean;
56
+ };
57
+ };
58
+ report(report: Report<T, O>): undefined;
59
+ report(report: CheckerReport<T, O>): boolean;
60
+ private _push;
53
61
  }