import type { IriTerm } from "sparqljs";
import Dataset from "./dataset.ts";
import Graph from "./graph.ts";
/**
 * A simple Dataset backed by a HashMap.
 * @extends Dataset
 */
export default class HashMapDataset<TGraph extends Graph = Graph> extends Dataset<TGraph> {
    private _defaultGraph;
    private readonly _namedGraphs;
    /**
     * Constructor
     * @param defaultGraphIRI - IRI of the Default Graph
     * @param defaultGraph     - Default Graph
     */
    constructor(defaultGraph: TGraph);
    get iris(): IriTerm[];
    setDefaultGraph(graph: TGraph): void;
    getDefaultGraph(): TGraph;
    addNamedGraph(graph: TGraph): void;
    getNamedGraph(iri: IriTerm): Promise<TGraph>;
    hasNamedGraph(iri: IriTerm): boolean;
    deleteNamedGraph(iri: IriTerm): void;
}
