UNPKG

2.65 kBTypeScriptView Raw
1import { BlankNode, BlankNodeLike } from "./blank-node";
2import { NamedNode, NamedNodeLike } from "./named-node";
3import { Variable, VariableLike } from "./variable";
4import { Literal, LiteralLike } from "./literal";
5import { DefaultGraph, DefaultGraphLike } from "./default-graph";
6export declare function isQuadLike(given: unknown): given is QuadLike;
7export declare function isQuad(given?: unknown): given is Quad;
8export declare type QuadSubject = NamedNode | BlankNode | Variable;
9export declare type QuadPredicate = NamedNode | Variable;
10export declare type QuadObject = NamedNode | Literal | BlankNode | Variable;
11export declare type QuadGraph = DefaultGraph | NamedNode | BlankNode | Variable;
12export declare type QuadSubjectLike = NamedNodeLike | BlankNodeLike | VariableLike;
13export declare type QuadPredicateLike = NamedNodeLike | VariableLike;
14export declare type QuadObjectLike = NamedNodeLike | LiteralLike | BlankNodeLike | VariableLike;
15export declare type QuadGraphLike = DefaultGraphLike | NamedNodeLike | BlankNodeLike | VariableLike;
16export declare function isQuadSubject(value?: unknown): value is QuadSubject;
17export declare function isQuadPredicate(value?: unknown): value is QuadPredicate;
18export declare function isQuadObject(value?: unknown): value is QuadObject;
19export declare function isQuadGraph(value?: unknown): value is QuadGraph;
20export declare function isQuadSubjectLike(value?: unknown): value is QuadSubjectLike;
21export declare function isQuadPredicateLike(value?: unknown): value is QuadPredicateLike;
22export declare function isQuadObjectLike(value?: unknown): value is QuadObjectLike;
23export declare function isQuadGraphLike(value?: unknown): value is QuadGraphLike;
24export interface Quad<S extends QuadSubject = QuadSubject, P extends QuadPredicate = QuadPredicate, O extends QuadObject = QuadObject, G extends QuadGraph = QuadGraph> {
25 readonly subject: S;
26 readonly predicate: P;
27 readonly object: O;
28 readonly graph: G;
29 equals(other?: unknown): other is QuadLike;
30}
31export declare class Quad<S extends QuadSubject = QuadSubject, P extends QuadPredicate = QuadPredicate, O extends QuadObject = QuadObject, G extends QuadGraph = QuadGraph> implements Quad<S, P, O, G> {
32 readonly subject: S;
33 readonly predicate: P;
34 readonly object: O;
35 readonly graph: G;
36 constructor(subject: S, predicate: P, object: O, graph: G);
37 toJSON(): {
38 subject: S;
39 predicate: P;
40 object: O;
41 graph: G;
42 };
43}
44export declare type QuadLike = {
45 subject: QuadSubjectLike;
46 predicate: QuadPredicateLike;
47 object: QuadObjectLike;
48 graph: QuadGraphLike;
49};