UNPKG

wikiparser-node

Version:

A Node.js parser for MediaWiki markup with AST

59 lines (58 loc) 1.8 kB
import { Token } from './index'; import { AtomToken } from './atom'; import { HiddenToken } from './hidden'; import type { Config, LintError, AST } from '../base'; /** * argument wrapped in `{{{}}}` * * `{{{}}}`包裹的参数 * @classdesc `{childNodes: [AtomToken, ?Token, ...HiddenToken[]]}` */ export declare abstract class ArgToken extends Token { #private; readonly name: string; readonly childNodes: readonly [AtomToken] | readonly [AtomToken, Token, ...HiddenToken[]]; abstract get firstChild(): AtomToken; abstract get lastChild(): Token; abstract get children(): [AtomToken] | [AtomToken, Token, ...HiddenToken[]]; abstract get firstElementChild(): AtomToken; abstract get lastElementChild(): Token; get type(): 'arg'; /** default value / 预设值 */ get default(): string | false; set default(value: string | false); /** @param parts 以'|'分隔的各部分 */ constructor(parts: readonly string[], config: Config, accum?: Token[]); cloneNode(): this; /** * Remove redundant parts * * 移除无效部分 */ removeRedundant(): void; /** * @override * @param i position of the child node / 移除位置 */ removeAt(i: number): Token; /** * @override * @param token node to be inserted / 待插入的子节点 * @param i position to be inserted at / 插入位置 */ insertAt<T extends Token>(token: T, i?: number): T; /** * Set the argument name * * 设置参数名 * @param name new argument name / 新参数名 */ setName(name: string): void; /** * Set the default value * * 设置预设值 * @param value default value / 预设值 */ setDefault(value: string | false): void; }