import EdgeRecord from './EdgeRecord.ts';
import NodeRecord from './NodeRecord.ts';
import VisibleEdgePropertyRecord from './VisibleEdgePropertyRecord.ts';
import VisibleNodePropertyRecord from './VisibleNodePropertyRecord.ts';
export type LegacyPropertyProjectionFields = {
    readonly nodeProperties: readonly VisibleNodePropertyRecord[];
    readonly edgeProperties: readonly VisibleEdgePropertyRecord[];
};
/** Runtime-backed collection of visible legacy property compatibility records. */
export default class LegacyPropertyProjection {
    readonly nodeProperties: readonly VisibleNodePropertyRecord[];
    readonly edgeProperties: readonly VisibleEdgePropertyRecord[];
    constructor(fields: LegacyPropertyProjectionFields);
    /** Returns visible property records for a node owner. */
    propertiesForNode(owner: NodeRecord): readonly VisibleNodePropertyRecord[];
    /** Returns visible property records for an edge owner. */
    propertiesForEdge(owner: EdgeRecord): readonly VisibleEdgePropertyRecord[];
}
