/*******************************************************************************
 * Copyright (c) 2023-2026 Maxprograms.
 *
 * This program and the accompanying materials
 * are made available under the terms of the Eclipse   License 1.0
 * which accompanies this distribution, and is available at
 * https://www.eclipse.org/org/documents/epl-v10.html
 *
 * Contributors:
 *     Maxprograms - initial API and implementation
 *******************************************************************************/
import { Writable } from "node:stream";
import { Catalog } from "../Catalog.js";
import { ContentHandler } from "../ContentHandler.js";
import { Grammar } from "../grammar/Grammar.js";
import { XMLAttribute } from "../XMLAttribute.js";
export declare class JsonEventStreamWriter implements ContentHandler {
    private readonly writer;
    private arrayStarted;
    private firstEvent;
    private closed;
    private catalog;
    private grammar;
    constructor(writer: Writable);
    initialize(): void;
    setCatalog(catalog: Catalog): void;
    setGrammar(grammar: Grammar | undefined): void;
    getGrammar(): Grammar | undefined;
    getCurrentText(): string;
    startDocument(): void;
    endDocument(): void;
    xmlDeclaration(version: string, encoding: string, standalone: string | undefined): void;
    startElement(name: string, atts: Array<XMLAttribute>): void;
    endElement(name: string): void;
    internalSubset(declaration: string): void;
    characters(ch: string): void;
    ignorableWhitespace(ch: string): void;
    comment(ch: string): void;
    processingInstruction(target: string, data: string): void;
    startCDATA(): void;
    endCDATA(): void;
    startDTD(name: string, publicId: string, systemId: string): void;
    endDTD(): void;
    skippedEntity(name: string): void;
    private writeEvent;
    private closeArray;
    private ensureArrayStarted;
}
