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

import datetime
import sys
import types
import typing

import winsdk._winrt as _winrt
import winsdk.windows.foundation.numerics
import winsdk.windows.perception.spatial

Self = typing.TypeVar('Self')

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

class SpatialGraphInteropPreview(_winrt.Object):
    @staticmethod
    def _from(obj: _winrt.Object) -> SpatialGraphInteropPreview: ...
    @typing.overload
    @staticmethod
    def create_coordinate_system_for_node(node_id: _winrt.Guid) -> typing.Optional[winsdk.windows.perception.spatial.SpatialCoordinateSystem]: ...
    @typing.overload
    @staticmethod
    def create_coordinate_system_for_node(node_id: _winrt.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: _winrt.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: _winrt.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]: ...

