export type GraphMeta = {
  backend?: string;
  graph_query_id?: string;
  node_limit?: number;
  edge_limit?: number;
  nodes?: number;
  edges?: number;
};

export type SelectionQueryMeta = {
  id: string;
  label: string;
};

export type SelectionQueryResult = {
  queryId: string;
  selectedIds: number[];
  neighborIds: number[];
};

export type SelectionTripleTerm = {
  type: string;
  value: string;
  lang?: string;
};

export type SelectionTriple = {
  s: SelectionTripleTerm;
  p: SelectionTripleTerm;
  o: SelectionTripleTerm;
  subject_id?: number;
  predicate_id?: number;
  object_id?: number;
};

export type SelectionTripleResult = {
  queryId: string;
  selectedIds: number[];
  triples: SelectionTriple[];
};
