/**
 * Copyright (c) 2025 mol* contributors, licensed under MIT, See LICENSE file for more info.
 *
 * @author David Sehnal <david.sehnal@gmail.com>
 */
import { Category, Encoder } from '../../mol-io/writer/cif/encoder.js';
import { BinaryEncodingProvider } from '../../mol-io/writer/cif/encoder/binary.js';
import { Writer } from '../../mol-io/writer/writer.js';
import { JSONCifFile } from './model.js';
export declare class JSONCifEncoder implements Encoder<string> {
    options?: {
        formatJSON?: boolean;
    } | undefined;
    private data;
    private dataBlocks;
    private encodedData;
    private filter;
    readonly isBinary = false;
    readonly binaryEncodingProvider: BinaryEncodingProvider | undefined;
    setFilter(filter?: Category.Filter): void;
    isCategoryIncluded(name: string): boolean;
    setFormatter(formatter?: Category.Formatter): void;
    startDataBlock(header: string): void;
    writeCategory<Ctx>(category: Category<Ctx>, context?: Ctx, options?: Encoder.WriteCategoryOptions): void;
    encode(): void;
    writeTo(writer: Writer): void;
    getData(): string;
    getSize(): number;
    getFile(): JSONCifFile;
    constructor(encoder: string, options?: {
        formatJSON?: boolean;
    } | undefined);
}
