class_docstr: Duck-typed version of the DGLHeteroGraph class made for cuGraph
  for storing graph structure and node/edge feature data.
  
  This object is wrapper around cugraph's Multi GPU MultiGraph and returns samples
  that conform with `DGLHeteroGraph`
  See: https://docs.rapids.ai/api/cugraph/nightly/api_docs/cugraph_dgl.html
class_docstr_tok: ["Duck-typed","version","of","the","DGLHeteroGraph","class","made","for","cuGraph","for","storing","graph","structure","and","node\/edge","feature","data",".","This","object","is","wrapper","around","cugraph","'s","Multi","GPU","MultiGraph","and","returns","samples","that","conform","with","`","DGLHeteroGraph","`","See",":","https",":","\/\/docs.rapids.ai\/api\/cugraph\/nightly\/api_docs\/cugraph_dgl.html"]
docstr: Return the number of nodes in the graph.
  Alias of ``num_nodes``
  Parameters
  ----------
  ntype : str, optional
      The node type name. If given, it returns the number of nodes of the
      type.
      If not given (default), it  returns the total number of nodes
      of all types.
  
  Returns
  -------
  int
      The number of nodes.
code: def number_of_nodes(self, ntype: str = None) -> int:
      """
      Return the number of nodes in the graph.
      Alias of ``num_nodes``
      Parameters
      ----------
      ntype : str, optional
          The node type name. If given, it returns the number of nodes of the
          type.
          If not given (default), it  returns the total number of nodes
          of all types.
  
      Returns
      -------
      int
          The number of nodes.
      """
      return self.num_nodes(ntype)
  
imports: from __future__ import annotations
  from typing import Optional, Sequence, Tuple, Dict, Union
  from functools import cached_property
  from cugraph.utilities.utils import import_optional, MissingModule
  from cugraph.gnn import FeatureStore
  from cugraph.gnn.dgl_extensions.dgl_uniform_sampler import DGLUniformSampler
  import cudf
  import dask_cudf
  import cupy
  from cugraph_dgl.utils.cugraph_storage_utils import _assert_valid_canonical_etype, backend_dtype_to_np_dtype_dict, add_edge_ids_to_edges_dict, add_node_offset_to_edges_dict
  from cugraph_dgl.utils.feature_storage import dgl_FeatureStorage
label_desc: Use image node_id 12 for calling the CuGraphStorage obj's underlying member method code with example usage: obj.number_of_nodes(ntype) and returns: self