# WARNING: Please don't edit this file. It was generated by Python/WinRT v1.0.0-beta.9

import datetime
import sys
import types
import typing

import winsdk.system
import winsdk.windows.foundation.numerics
import winsdk.windows.perception.spatial

Self = typing.TypeVar('Self')

class SpatialGraphInteropFrameOfReferencePreview(winsdk.system.Object):
    coordinate_system: typing.Optional[winsdk.windows.perception.spatial.SpatialCoordinateSystem]
    coordinate_system_to_node_transform: winsdk.windows.foundation.numerics.Matrix4x4
    node_id: winsdk.system.Guid
    @staticmethod
    def _from(obj: winsdk.system.Object) -> SpatialGraphInteropFrameOfReferencePreview: ...

class SpatialGraphInteropPreview(winsdk.system.Object):
    @staticmethod
    def _from(obj: winsdk.system.Object) -> SpatialGraphInteropPreview: ...
    @typing.overload
    @staticmethod
    def create_coordinate_system_for_node(node_id: winsdk.system.Guid) -> typing.Optional[winsdk.windows.perception.spatial.SpatialCoordinateSystem]: ...
    @typing.overload
    @staticmethod
    def create_coordinate_system_for_node(node_id: winsdk.system.Guid, relative_position: winsdk.windows.foundation.numerics.Vector3) -> typing.Optional[winsdk.windows.perception.spatial.SpatialCoordinateSystem]: ...
    @typing.overload
    @staticmethod
    def create_coordinate_system_for_node(node_id: winsdk.system.Guid, relative_position: winsdk.windows.foundation.numerics.Vector3, relative_orientation: winsdk.windows.foundation.numerics.Quaternion) -> typing.Optional[winsdk.windows.perception.spatial.SpatialCoordinateSystem]: ...
    @staticmethod
    def create_locator_for_node(node_id: winsdk.system.Guid) -> typing.Optional[winsdk.windows.perception.spatial.SpatialLocator]: ...
    @typing.overload
    @staticmethod
    def try_create_frame_of_reference(coordinate_system: typing.Optional[winsdk.windows.perception.spatial.SpatialCoordinateSystem]) -> typing.Optional[SpatialGraphInteropFrameOfReferencePreview]: ...
    @typing.overload
    @staticmethod
    def try_create_frame_of_reference(coordinate_system: typing.Optional[winsdk.windows.perception.spatial.SpatialCoordinateSystem], relative_position: winsdk.windows.foundation.numerics.Vector3) -> typing.Optional[SpatialGraphInteropFrameOfReferencePreview]: ...
    @typing.overload
    @staticmethod
    def try_create_frame_of_reference(coordinate_system: typing.Optional[winsdk.windows.perception.spatial.SpatialCoordinateSystem], relative_position: winsdk.windows.foundation.numerics.Vector3, relative_orientation: winsdk.windows.foundation.numerics.Quaternion) -> typing.Optional[SpatialGraphInteropFrameOfReferencePreview]: ...

