import { type JsonValue } from '../../hub/types/json.js';
export type ConversionMetaValue = JsonValue;
export type ConversionMetaRecord = Record<string, ConversionMetaValue>;
export type ConversionMetaEntries = Iterable<[string, ConversionMetaValue]>;
export type ConversionMetaInput = ConversionMetaBag | ConversionMetaRecord | ConversionMetaEntries | undefined;
export declare class ConversionMetaBag {
    private readonly store;
    constructor(initial?: ConversionMetaInput);
    static from(input?: ConversionMetaInput): ConversionMetaBag;
    keys(): string[];
    has(key: string): boolean;
    get<T extends ConversionMetaValue>(key: string): T | undefined;
    set(key: string, value: ConversionMetaValue | undefined): void;
    consume<T extends ConversionMetaValue>(key: string): T | undefined;
    ingest(input?: ConversionMetaInput): void;
    entries(): ConversionMetaEntries;
    snapshot(): ConversionMetaRecord;
    toJSON(): ConversionMetaRecord;
    clone(): ConversionMetaBag;
}
