text: # coding=utf-8
  # *** WARNING: this file was generated by the Pulumi SDK Generator. ***
  # *** Do not edit by hand unless you're certain you know what you are doing! ***
  
  import warnings
  import pulumi
  import pulumi.runtime
  from typing import Any, Mapping, Optional, Sequence, Union
  from ... import _utilities, _tables
  from ._enums import *
  
  __all__ = [
      'IdentityResponse',
      'SkuResponse',
      'SystemDataResponse',
  ]
  
  @pulumi.output_type
  class IdentityResponse(dict):
      """
      Identity for the resource.
      """
      def __init__(__self__, *,
                   principal_id: str,
                   tenant_id: str,
                   type: Optional[str] = None):
          """
          Identity for the resource.
          :param str principal_id: The principal ID of resource identity.
          :param str tenant_id: The tenant ID of resource.
          :param str type: The identity type.
          """
          pulumi.set(__self__, "principal_id", principal_id)
          pulumi.set(__self__, "tenant_id", tenant_id)
          if type is not None:
              pulumi.set(__self__, "type", type)
  
      @property
      @pulumi.getter(name="principalId")
      def principal_id(self) -> str:
          """
          The principal ID of resource identity.
          """
          return pulumi.get(self, "principal_id")
  
      @property
      @pulumi.getter(name="tenantId")
      def tenant_id(self) -> str:
          """
          The tenant ID of resource.
          """
          return pulumi.get(self, "tenant_id")
  
      @property
      @pulumi.getter
      def type(self) -> Optional[str]:
          """
          The identity type.
          """
          return pulumi.get(self, "type")
  
      def _translate_property(self, prop):
          return _tables.CAMEL_TO_SNAKE_CASE_TABLE.get(prop) or prop
  
  
  @pulumi.output_type
  class SkuResponse(dict):
      """
      The resource model definition representing SKU
      """
      def __init__(__self__, *,
                   name: str,
                   capacity: Optional[int] = None,
                   family: Optional[str] = None,
                   size: Optional[str] = None,
                   tier: Optional[str] = None):
          """
          The resource model definition representing SKU
          :param str name: The name of the SKU. Ex - P3. It is typically a letter+number code
          :param int capacity: If the SKU supports scale out/in then the capacity integer should be included. If scale out/in is not possible for the resource this may be omitted.
          :param str family: If the service has different generations of hardware, for the same SKU, then that can be captured here.
          :param str size: The SKU size. When the name field is the combination of tier and some other value, this would be the standalone code. 
          :param str tier: This field is required to be implemented by the Resource Provider if the service has more than one tier, but is not required on a PUT.
          """
          pulumi.set(__self__, "name", name)
          if capacity is not None:
              pulumi.set(__self__, "capacity", capacity)
          if family is not None:
              pulumi.set(__self__, "family", family)
          if size is not None:
              pulumi.set(__self__, "size", size)
          if tier is not None:
              pulumi.set(__self__, "tier", tier)
  
      @property
      @pulumi.getter
      def name(self) -> str:
          """
          The name of the SKU. Ex - P3. It is typically a letter+number code
          """
          return pulumi.get(self, "name")
  
      @property
      @pulumi.getter
      def capacity(self) -> Optional[int]:
          """
          If the SKU supports scale out/in then the capacity integer should be included. If scale out/in is not possible for the resource this may be omitted.
          """
          return pulumi.get(self, "capacity")
  
      @property
      @pulumi.getter
      def family(self) -> Optional[str]:
          """
          If the service has different generations of hardware, for the same SKU, then that can be captured here.
          """
          return pulumi.get(self, "family")
  
      @property
      @pulumi.getter
      def size(self) -> Optional[str]:
          """
          The SKU size. When the name field is the combination of tier and some other value, this would be the standalone code. 
          """
          return pulumi.get(self, "size")
  
      @property
      @pulumi.getter
      def tier(self) -> Optional[str]:
          """
          This field is required to be implemented by the Resource Provider if the service has more than one tier, but is not required on a PUT.
          """
          return pulumi.get(self, "tier")
  
      def _translate_property(self, prop):
          return _tables.CAMEL_TO_SNAKE_CASE_TABLE.get(prop) or prop
  
  
  @pulumi.output_type
  class SystemDataResponse(dict):
      """
      Metadata pertaining to creation and last modification of the resource.
      """
      def __init__(__self__, *,
                   created_at: Optional[str] = None,
                   created_by: Optional[str] = None,
                   created_by_type: Optional[str] = None,
                   last_modified_at: Optional[str] = None,
                   last_modified_by: Optional[str] = None,
                   last_modified_by_type: Optional[str] = None):
          """
          Metadata pertaining to creation and last modification of the resource.
          :param str created_at: The timestamp of resource creation (UTC).
          :param str created_by: The identity that created the resource.
          :param str created_by_type: The type of identity that created the resource.
          :param str last_modified_at: The timestamp of resource last modification (UTC)
          :param str last_modified_by: The identity that last modified the resource.
          :param str last_modified_by_type: The type of identity that last modified the resource.
          """
          if created_at is not None:
              pulumi.set(__self__, "created_at", created_at)
          if created_by is not None:
              pulumi.set(__self__, "created_by", created_by)
          if created_by_type is not None:
              pulumi.set(__self__, "created_by_type", created_by_type)
          if last_modified_at is not None:
              pulumi.set(__self__, "last_modified_at", last_modified_at)
          if last_modified_by is not None:
              pulumi.set(__self__, "last_modified_by", last_modified_by)
          if last_modified_by_type is not None:
              pulumi.set(__self__, "last_modified_by_type", last_modified_by_type)
  
      @property
      @pulumi.getter(name="createdAt")
      def created_at(self) -> Optional[str]:
          """
          The timestamp of resource creation (UTC).
          """
          return pulumi.get(self, "created_at")
  
      @property
      @pulumi.getter(name="createdBy")
      def created_by(self) -> Optional[str]:
          """
          The identity that created the resource.
          """
          return pulumi.get(self, "created_by")
  
      @property
      @pulumi.getter(name="createdByType")
      def created_by_type(self) -> Optional[str]:
          """
          The type of identity that created the resource.
          """
          return pulumi.get(self, "created_by_type")
  
      @property
      @pulumi.getter(name="lastModifiedAt")
      def last_modified_at(self) -> Optional[str]:
          """
          The timestamp of resource last modification (UTC)
          """
          return pulumi.get(self, "last_modified_at")
  
      @property
      @pulumi.getter(name="lastModifiedBy")
      def last_modified_by(self) -> Optional[str]:
          """
          The identity that last modified the resource.
          """
          return pulumi.get(self, "last_modified_by")
  
      @property
      @pulumi.getter(name="lastModifiedByType")
      def last_modified_by_type(self) -> Optional[str]:
          """
          The type of identity that last modified the resource.
          """
          return pulumi.get(self, "last_modified_by_type")
  
      def _translate_property(self, prop):
          return _tables.CAMEL_TO_SNAKE_CASE_TABLE.get(prop) or prop
  
  
  