import { ModifierFlags, type Node, type NodeArray, type SourceFile, SyntaxKind } from "../../ast/index.ts";
import { RemoteNodeBase, type SourceFileInfo } from "./node.infrastructure.ts";
export declare class RemoteNodeList extends Array<RemoteNode> implements NodeArray<RemoteNode> {
    static get [Symbol.species](): ArrayConstructor;
    parent: RemoteNode;
    private _hasTrailingCommaMemo;
    transformFlags: number;
    protected view: DataView;
    protected index: number;
    private _byteIndex;
    private _cursorIndex;
    private _cursorNodeIndex;
    get pos(): number;
    get end(): number;
    get next(): number;
    get hasTrailingComma(): boolean;
    set hasTrailingComma(value: boolean | undefined);
    private computeHasTrailingComma;
    private get data();
    private sourceFile;
    constructor(view: DataView, index: number, parent: RemoteNode, sourceFile: SourceFileInfo, offsetNodes: number);
    get 0(): RemoteNode;
    get 1(): RemoteNode;
    get 2(): RemoteNode;
    get 3(): RemoteNode;
    get 4(): RemoteNode;
    get 5(): RemoteNode;
    get 6(): RemoteNode;
    get 7(): RemoteNode;
    get 8(): RemoteNode;
    get 9(): RemoteNode;
    get 10(): RemoteNode;
    get 11(): RemoteNode;
    get 12(): RemoteNode;
    get 13(): RemoteNode;
    get 14(): RemoteNode;
    get 15(): RemoteNode;
    [Symbol.iterator](): ArrayIterator<RemoteNode>;
    forEachNode<T>(visitNode: (node: RemoteNode) => T | undefined): T | undefined;
    at(index: number): RemoteNode;
    private getOrCreateChildAtNodeIndex;
    __print(): string;
}
export declare class RemoteNode extends RemoteNodeBase implements Node {
    protected static NODE_LEN: number;
    protected get sourceFile(): SourceFileInfo;
    protected _sourceFile: SourceFileInfo;
    get id(): string;
    constructor(view: DataView, index: number, parent: RemoteNode, sourceFile: SourceFileInfo, offsetNodes: number);
    forEachChild<T>(visitNode: (node: Node) => T, visitList?: (list: NodeArray<Node>) => T): T | undefined;
    get jsDoc(): readonly Node[] | undefined;
    getSourceFile(): SourceFile;
    getStart(sourceFile?: SourceFile, includeJsDocComment?: boolean): number;
    getFullStart(): number;
    getEnd(): number;
    getWidth(sourceFile?: SourceFile): number;
    getFullWidth(): number;
    getLeadingTriviaWidth(sourceFile?: SourceFile): number;
    getFullText(sourceFile?: SourceFile): string;
    getText(sourceFile?: SourceFile): string;
    protected getString(index: number): string;
    private getOrCreateChildAtNodeIndex;
    private hasChildren;
    private getNamedChild;
    private getChildAtOrder;
    __print(): string;
    __printChildren(): string;
    __printSubtree(): string;
    get containsOnlyTriviaWhiteSpaces(): boolean;
    get isArrayType(): boolean;
    get isBracketed(): boolean;
    get isExportEquals(): boolean;
    get isNameFirst(): boolean;
    get isTypeOf(): boolean;
    get isTypeOnly(): boolean;
    get multiLine(): boolean;
    get keyword(): SyntaxKind | undefined;
    get keywordToken(): SyntaxKind | undefined;
    get operator(): SyntaxKind | undefined;
    get phaseModifier(): SyntaxKind | undefined;
    get token(): SyntaxKind | undefined;
    get templateFlags(): number | undefined;
    get tokenFlags(): number;
    get argument(): RemoteNode | undefined;
    get argumentExpression(): RemoteNode | undefined;
    get arguments(): RemoteNodeList | undefined;
    get assertsModifier(): RemoteNode | undefined;
    get asteriskToken(): RemoteNode | undefined;
    get attributes(): RemoteNode | RemoteNodeList | undefined;
    get awaitModifier(): RemoteNode | undefined;
    get block(): RemoteNode | undefined;
    get body(): RemoteNode | undefined;
    get caseBlock(): RemoteNode | undefined;
    get catchClause(): RemoteNode | undefined;
    get checkType(): RemoteNode | undefined;
    get children(): RemoteNode | RemoteNodeList | undefined;
    get className(): RemoteNode | undefined;
    get clauses(): RemoteNodeList | undefined;
    get closingElement(): RemoteNode | undefined;
    get closingFragment(): RemoteNode | undefined;
    get colonToken(): RemoteNode | undefined;
    get comment(): RemoteNodeList | undefined;
    get condition(): RemoteNode | undefined;
    get constraint(): RemoteNode | undefined;
    get declarationList(): RemoteNode | undefined;
    get declarations(): RemoteNodeList | undefined;
    get defaultType(): RemoteNode | undefined;
    get dotDotDotToken(): RemoteNode | undefined;
    get elements(): RemoteNodeList | undefined;
    get elementType(): RemoteNode | undefined;
    get elseStatement(): RemoteNode | undefined;
    get endOfFileToken(): RemoteNode | undefined;
    get equalsGreaterThanToken(): RemoteNode | undefined;
    get equalsToken(): RemoteNode | undefined;
    get exclamationToken(): RemoteNode | undefined;
    get exportClause(): RemoteNode | undefined;
    get expression(): RemoteNode | undefined;
    get exprName(): RemoteNode | undefined;
    get extendsType(): RemoteNode | undefined;
    get falseType(): RemoteNode | undefined;
    get finallyBlock(): RemoteNode | undefined;
    get head(): RemoteNode | undefined;
    get heritageClauses(): RemoteNodeList | undefined;
    get importClause(): RemoteNode | undefined;
    get incrementor(): RemoteNode | undefined;
    get indexType(): RemoteNode | undefined;
    get initializer(): RemoteNode | undefined;
    get jsdocPropertyTags(): RemoteNode | undefined;
    get label(): RemoteNode | undefined;
    get left(): RemoteNode | undefined;
    get literal(): RemoteNode | undefined;
    get members(): RemoteNodeList | undefined;
    get modifiers(): RemoteNodeList | undefined;
    get moduleReference(): RemoteNode | undefined;
    get moduleSpecifier(): RemoteNode | undefined;
    get name(): RemoteNode | undefined;
    get namedBindings(): RemoteNode | undefined;
    get nameExpression(): RemoteNode | undefined;
    get namespace(): RemoteNode | undefined;
    get nameType(): RemoteNode | undefined;
    get objectAssignmentInitializer(): RemoteNode | undefined;
    get objectType(): RemoteNode | undefined;
    get openingElement(): RemoteNode | undefined;
    get openingFragment(): RemoteNode | undefined;
    get operand(): RemoteNode | undefined;
    get operatorToken(): RemoteNode | undefined;
    get parameterName(): RemoteNode | undefined;
    get parameters(): RemoteNodeList | undefined;
    get postfixToken(): RemoteNode | undefined;
    get properties(): RemoteNodeList | undefined;
    get propertyName(): RemoteNode | undefined;
    get qualifier(): RemoteNode | undefined;
    get questionDotToken(): RemoteNode | undefined;
    get questionToken(): RemoteNode | undefined;
    get readonlyToken(): RemoteNode | undefined;
    get right(): RemoteNode | undefined;
    get statement(): RemoteNode | undefined;
    get statements(): RemoteNodeList | undefined;
    get tag(): RemoteNode | undefined;
    get tagName(): RemoteNode | undefined;
    get tags(): RemoteNodeList | undefined;
    get template(): RemoteNode | undefined;
    get templateSpans(): RemoteNodeList | undefined;
    get thenStatement(): RemoteNode | undefined;
    get thisArg(): RemoteNode | undefined;
    get trueType(): RemoteNode | undefined;
    get tryBlock(): RemoteNode | undefined;
    get tupleNameSource(): RemoteNode | undefined;
    get type(): RemoteNode | undefined;
    get typeArguments(): RemoteNodeList | undefined;
    get typeExpression(): RemoteNode | undefined;
    get typeName(): RemoteNode | undefined;
    get typeParameter(): RemoteNode | undefined;
    get typeParameters(): RemoteNodeList | undefined;
    get types(): RemoteNodeList | undefined;
    get value(): RemoteNode | undefined;
    get variableDeclaration(): RemoteNode | undefined;
    get whenFalse(): RemoteNode | undefined;
    get whenTrue(): RemoteNode | undefined;
    get text(): string | undefined;
    /**
     * Stock Identifier/PrivateIdentifier carry `escapedText` (leading "__"
     * escaped with an extra "_"); the JS printer's synthesized-node path
     * (`idText`) reads it. tsgo stores the unescaped text, so escape here.
     */
    get escapedText(): string | undefined;
    get rawText(): string | undefined;
    get flags(): number;
    /** Raw NodeFlags without fork remapping — used by tsgo internal dispatchers. */
    get _rawFlags(): number;
    get modifierFlags(): ModifierFlags;
}
//# sourceMappingURL=node.generated.d.ts.map