/**
 * Low-level helpers for MaterializedViewService.
 *
 * Provides in-memory property reader construction, shard OID partitioning,
 * and the legacy shard-to-tree-entry mapper.
 *
 * P5-LEGACY: _shardToEntry and buildInMemoryPropertyReader exist to support
 * callers that persist via persistIndexTree(). Will be removed when callers
 * migrate to IndexStorePort.writeShards().
 *
 * @module domain/services/MaterializedViewHelpers
 */
import PropertyIndexReader from './index/PropertyIndexReader.ts';
import type CodecPort from '../../ports/CodecPort.ts';
import type { IndexShard } from '../artifacts/IndexShard.ts';
/** Prefix for property shard paths in the index tree. */
export declare const PROPS_PREFIX = "props_";
/**
 * Creates a PropertyIndexReader backed by an in-memory tree map.
 */
export declare function buildInMemoryPropertyReader(tree: Record<string, Uint8Array>, codec: CodecPort): PropertyIndexReader;
/**
 * Partitions shard OID entries into index vs property buckets.
 */
export declare function partitionShardOids(shardOids: Record<string, string>): {
    indexOids: Record<string, string>;
    propOids: Record<string, string>;
};
/**
 * Maps an IndexShard to its tree path and serializable payload.
 *
 * P5-LEGACY: Duplicates IndexShardEncodeTransform._encode() in
 * infrastructure. Exists only to support _encodeShardsToTree() for
 * the applyDiff() legacy path. Dies when IncrementalIndexUpdater
 * is migrated to IndexStorePort.
 */
export declare function shardToEntry(shard: IndexShard): {
    path: string;
    payload: unknown;
};
