"""
@generated by mypy-protobuf. Do not edit manually!
isort:skip_file
"""
import builtins
import collections.abc
import google.protobuf.descriptor
import google.protobuf.internal.containers
import google.protobuf.message
import sys
if sys.version_info >= (3, 8):
import typing as typing_extensions
else:
import typing_extensions
[docs]
DESCRIPTOR: google.protobuf.descriptor.FileDescriptor
[docs]
class Node(google.protobuf.message.Message):
[docs]
DESCRIPTOR: google.protobuf.descriptor.Descriptor
[docs]
NODE_ID_FIELD_NUMBER: builtins.int
[docs]
CONDENSED_NODE_TYPE_FIELD_NUMBER: builtins.int
[docs]
FEATURE_VALUES_FIELD_NUMBER: builtins.int
"""should be unique for nodes per node_type"""
[docs]
condensed_node_type: builtins.int
"""condensed_node_type are integer values that correspond 1:1 to a node_type: string
See GraphMetadata for mapping. If not provided, assumed homogeneous.
"""
@property
[docs]
def feature_values(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.float]:
"""feature_values for a node"""
def __init__(
self,
*,
node_id: builtins.int = ...,
condensed_node_type: builtins.int | None = ...,
feature_values: collections.abc.Iterable[builtins.float] | None = ...,
) -> None: ...
[docs]
def HasField(self, field_name: typing_extensions.Literal["_condensed_node_type", b"_condensed_node_type", "condensed_node_type", b"condensed_node_type"]) -> builtins.bool: ...
[docs]
def ClearField(self, field_name: typing_extensions.Literal["_condensed_node_type", b"_condensed_node_type", "condensed_node_type", b"condensed_node_type", "feature_values", b"feature_values", "node_id", b"node_id"]) -> None: ...
[docs]
def WhichOneof(self, oneof_group: typing_extensions.Literal["_condensed_node_type", b"_condensed_node_type"]) -> typing_extensions.Literal["condensed_node_type"] | None: ...
[docs]
class Edge(google.protobuf.message.Message):
[docs]
DESCRIPTOR: google.protobuf.descriptor.Descriptor
[docs]
SRC_NODE_ID_FIELD_NUMBER: builtins.int
[docs]
DST_NODE_ID_FIELD_NUMBER: builtins.int
[docs]
CONDENSED_EDGE_TYPE_FIELD_NUMBER: builtins.int
[docs]
FEATURE_VALUES_FIELD_NUMBER: builtins.int
[docs]
src_node_id: builtins.int
"""the src_node_id & dst_node_id that the edge spans across
node types for these nodes is encoded in condensed_edge_type
"""
[docs]
dst_node_id: builtins.int
[docs]
condensed_edge_type: builtins.int
"""Graph is assumed homogeneous if condensed_edge_type is not provided
We store condensed representation here instead of EdgeType to optimize
on storage space. Otherwise we would be storing atleast 3*32bytes of information : (
src_node_type: string, dst_node_type: string, edge_type: string
)
See GraphMetadata for mapping
"""
@property
[docs]
def feature_values(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.float]:
"""features_values for an edge"""
def __init__(
self,
*,
src_node_id: builtins.int = ...,
dst_node_id: builtins.int = ...,
condensed_edge_type: builtins.int | None = ...,
feature_values: collections.abc.Iterable[builtins.float] | None = ...,
) -> None: ...
[docs]
def HasField(self, field_name: typing_extensions.Literal["_condensed_edge_type", b"_condensed_edge_type", "condensed_edge_type", b"condensed_edge_type"]) -> builtins.bool: ...
[docs]
def ClearField(self, field_name: typing_extensions.Literal["_condensed_edge_type", b"_condensed_edge_type", "condensed_edge_type", b"condensed_edge_type", "dst_node_id", b"dst_node_id", "feature_values", b"feature_values", "src_node_id", b"src_node_id"]) -> None: ...
[docs]
def WhichOneof(self, oneof_group: typing_extensions.Literal["_condensed_edge_type", b"_condensed_edge_type"]) -> typing_extensions.Literal["condensed_edge_type"] | None: ...
[docs]
class EdgeType(google.protobuf.message.Message):
[docs]
DESCRIPTOR: google.protobuf.descriptor.Descriptor
[docs]
RELATION_FIELD_NUMBER: builtins.int
[docs]
SRC_NODE_TYPE_FIELD_NUMBER: builtins.int
[docs]
DST_NODE_TYPE_FIELD_NUMBER: builtins.int
"""The relation of source / destination node_type
i.e. (Person , is_friend, Person) ; "Person" is node_type for both
src and dst nodes, and "is_friend" is the "relation"
"""
[docs]
src_node_type: builtins.str
[docs]
dst_node_type: builtins.str
def __init__(
self,
*,
relation: builtins.str = ...,
src_node_type: builtins.str = ...,
dst_node_type: builtins.str = ...,
) -> None: ...
[docs]
def ClearField(self, field_name: typing_extensions.Literal["dst_node_type", b"dst_node_type", "relation", b"relation", "src_node_type", b"src_node_type"]) -> None: ...
[docs]
global___EdgeType = EdgeType
[docs]
class Graph(google.protobuf.message.Message):
"""Represents a graph; usually used to represent a rooted k-hop subgraph for a bigger graph"""
[docs]
DESCRIPTOR: google.protobuf.descriptor.Descriptor
[docs]
NODES_FIELD_NUMBER: builtins.int
[docs]
EDGES_FIELD_NUMBER: builtins.int
@property
[docs]
def nodes(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Node]: ...
@property
[docs]
def edges(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Edge]: ...
def __init__(
self,
*,
nodes: collections.abc.Iterable[global___Node] | None = ...,
edges: collections.abc.Iterable[global___Edge] | None = ...,
) -> None: ...
[docs]
def ClearField(self, field_name: typing_extensions.Literal["edges", b"edges", "nodes", b"nodes"]) -> None: ...