import type { GraphNode, QuadMatch } from "@ldobjects/rdf-utils"; import type { BlankNode, Dataset, NamedNode } from "@rdfjs/types"; import type { ArrayProxyTarget } from "./arrayProxy/createArrayHandler"; import type { SubjectProxy } from "./subjectProxy/SubjectProxy"; import type { ArrayProxy } from "./arrayProxy/ArrayProxy"; import type { ContextUtil } from "./ContextUtil"; import type { LanguageOrdering } from "./language/languageTypes"; export interface ProxyContextOptions { dataset: Dataset; contextUtil: ContextUtil; writeGraphs: GraphNode[]; languageOrdering: LanguageOrdering; prefilledArrayTargets?: ArrayProxyTarget[]; state?: Record; } export declare class ProxyContext { private subjectMap; private arrayMap; readonly dataset: Dataset; readonly contextUtil: ContextUtil; readonly writeGraphs: GraphNode[]; readonly languageOrdering: LanguageOrdering; state: Record; constructor(options: ProxyContextOptions); createSubjectProxy(node: NamedNode | BlankNode): SubjectProxy; protected createSubjectHandler(): ProxyHandler; private getArrayKey; createArrayProxy(quadMatch: QuadMatch, isSubjectOriented?: boolean, initialTarget?: ArrayProxyTarget, isLangStringArray?: boolean): ArrayProxy; protected createArrayHandler(): ProxyHandler; duplicate(alternativeOptions: Partial): ProxyContext; }