/**
 * @packageDocumentation
 * @module Properties
 */
import { PropertyRecord } from "@itwin/appui-abstract";
import { IContentVisitor, ProcessFieldHierarchiesProps, ProcessMergedValueProps, ProcessPrimitiveValueProps, StartArrayProps, StartCategoryProps, StartContentProps, StartFieldProps, StartItemProps, StartStructProps } from "@itwin/presentation-common";
/**
 * A `Content` visitor that traverses all content, creates a `PropertyRecord` for each property
 * and streams them into the given callback function.
 *
 * @public
 */
export declare class PropertyRecordsBuilder implements IContentVisitor {
    private _internal;
    constructor(visitPropertyRecord: (record: PropertyRecord) => void);
    startContent(props: StartContentProps): boolean;
    finishContent(): void;
    startItem(props: StartItemProps): boolean;
    finishItem(): void;
    processFieldHierarchies(props: ProcessFieldHierarchiesProps): void;
    startCategory(props: StartCategoryProps): boolean;
    finishCategory(): void;
    startField(props: StartFieldProps): boolean;
    finishField(): void;
    startStruct(props: StartStructProps): boolean;
    finishStruct(): void;
    startArray(props: StartArrayProps): boolean;
    finishArray(): void;
    processMergedValue(props: ProcessMergedValueProps): void;
    processPrimitiveValue(props: ProcessPrimitiveValueProps): void;
}
//# sourceMappingURL=PropertyRecordsBuilder.d.ts.map