Skip to content

Commit 27a4e65

Browse files
authored
🤖 Merge PR DefinitelyTyped#72149 fix: make N3 Store implement RDF.DataSet by @jeswr
1 parent 71e4e43 commit 27a4e65

File tree

1 file changed

+25
-6
lines changed

1 file changed

+25
-6
lines changed

types/n3/index.d.ts

Lines changed: 25 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -263,8 +263,10 @@ export class StreamWriter<Q extends RDF.BaseQuad = RDF.Quad> extends stream.Tran
263263
import(stream: RDF.Stream<Q>): EventEmitter;
264264
}
265265

266-
export class StoreFactory implements RDF.DatasetCoreFactory<RDF.BaseQuad, Quad, Store> {
267-
dataset(quads?: RDF.BaseQuad[]): Store;
266+
export class StoreFactory
267+
implements RDF.DatasetCoreFactory<RDF.BaseQuad, Quad, Store>, RDF.DatasetFactory<RDF.BaseQuad, Quad, Store>
268+
{
269+
dataset(quads?: RDF.BaseQuad[] | RDF.DatasetCore): Store;
268270
}
269271

270272
export interface Rule {
@@ -287,8 +289,22 @@ export class Store<
287289
Q_N3 extends BaseQuad = Quad,
288290
OutQuad extends RDF.BaseQuad = RDF.Quad,
289291
InQuad extends RDF.BaseQuad = RDF.Quad,
290-
> implements RDF.Store<Q_RDF>, RDF.DatasetCore<OutQuad, InQuad> {
291-
constructor(triples?: Q_RDF[], options?: StoreOptions);
292+
> implements RDF.Store<Q_RDF>, RDF.Dataset<OutQuad, InQuad> {
293+
constructor(triples?: Q_RDF[] | RDF.Dataset<InQuad, InQuad>, options?: StoreOptions);
294+
addAll(quads: RDF.Dataset<InQuad, InQuad> | InQuad[]): this;
295+
contains(other: RDF.Dataset<InQuad, InQuad>): boolean;
296+
deleteMatches(subject?: RDF.Term, predicate?: RDF.Term, object?: RDF.Term, graph?: RDF.Term): this;
297+
difference(other: RDF.Dataset<InQuad, InQuad>): RDF.Dataset<OutQuad, InQuad>;
298+
equals(other: RDF.Dataset<InQuad, InQuad>): boolean;
299+
filter(iteratee: (quad: OutQuad, dataset: this) => boolean): RDF.Dataset<OutQuad, InQuad>;
300+
intersection(other: RDF.Dataset<InQuad, InQuad>): RDF.Dataset<OutQuad, InQuad>;
301+
map(iteratee: (quad: OutQuad, dataset: RDF.Dataset<OutQuad, OutQuad>) => OutQuad): RDF.Dataset<OutQuad, InQuad>;
302+
reduce<A>(callback: (accumulator: A, quad: OutQuad, dataset: this) => A, initialValue?: A): A;
303+
toArray(): OutQuad[];
304+
toCanonical(): string;
305+
toStream(): RDF.Stream<OutQuad>;
306+
toString(): string;
307+
union(quads: RDF.Dataset<InQuad, InQuad>): RDF.Dataset<OutQuad, InQuad>;
292308
readonly size: number;
293309
add(quad: InQuad): this;
294310
addQuad(
@@ -302,7 +318,7 @@ export class Store<
302318
addQuads(quads: Q_RDF[]): void;
303319
delete(quad: InQuad): this;
304320
has(quad: InQuad): boolean;
305-
import(stream: RDF.Stream<Q_RDF>): EventEmitter;
321+
import(stream: RDF.Stream<Q_RDF & InQuad>): EventEmitter & Promise<this>;
306322
removeQuad(
307323
subject: Q_RDF["subject"],
308324
predicate: Q_RDF["predicate"],
@@ -327,10 +343,13 @@ export class Store<
327343
predicate?: Term | null,
328344
object?: Term | null,
329345
graph?: Term | null,
330-
): RDF.Stream<Q_RDF> & RDF.DatasetCore<OutQuad, InQuad>;
346+
): RDF.Stream<Q_RDF> & RDF.Dataset<OutQuad, InQuad>;
331347
countQuads(subject: OTerm, predicate: OTerm, object: OTerm, graph: OTerm): number;
348+
forEach(callback: (quad: OutQuad, dataset: this) => void): void;
332349
forEach(callback: QuadCallback<Q_N3>, subject: OTerm, predicate: OTerm, object: OTerm, graph: OTerm): void;
350+
every(iteratee: (quad: OutQuad, dataset: this) => boolean): boolean;
333351
every(callback: QuadPredicate<Q_N3>, subject: OTerm, predicate: OTerm, object: OTerm, graph: OTerm): boolean;
352+
some(iteratee: (quad: OutQuad, dataset: this) => boolean): boolean;
334353
some(callback: QuadPredicate<Q_N3>, subject: OTerm, predicate: OTerm, object: OTerm, graph: OTerm): boolean;
335354
getSubjects(predicate: OTerm, object: OTerm, graph: OTerm): Array<Q_N3["subject"]>;
336355
forSubjects(callback: (result: Q_N3["subject"]) => void, predicate: OTerm, object: OTerm, graph: OTerm): void;

0 commit comments

Comments
 (0)