Edge class

A relationship between two revisions in the Kumiho system.

Edges track dependencies, derivations, and references between revisions. They form a directed graph that can be traversed to understand asset relationships and impact analysis. The Dart SDK exposes edges as a lightweight model object so dependency graph tooling can be built without importing generated protobuf types.

// Create an edge
final edge = await revision.createEdge(texture, EdgeType.dependsOn);

// Query edges
final edges = await revision.getEdges();
for (final edge in edges) {
  print('${edge.sourceKref.uri} ${edge.edgeType} ${edge.targetKref.uri}');
}
Inheritance

Constructors

Edge(Edge response, dynamic client)
Creates an Edge from a protobuf response.

Properties

author ↔ String
The user ID who created the edge.
latefinal
client → dynamic
The client instance for making API calls.
finalinherited
createdAt ↔ String?
ISO timestamp when the edge was created.
latefinal
edgeType ↔ String
The type of relationship (e.g., "DEPENDS_ON", "DERIVED_FROM").
latefinal
hashCode → int
The hash code for this object.
no setterinherited
metadata ↔ Map<String, String>
Custom metadata key-value pairs.
latefinal
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
sourceKref ↔ Kref
Reference to the source revision.
latefinal
targetKref ↔ Kref
Reference to the target revision.
latefinal
username ↔ String
Display name of the creator.
latefinal

Methods

delete() → Future<void>
Deletes this edge.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toString() → String
A string representation of this object.
override

Operators

operator ==(Object other) → bool
The equality operator.
inherited