public interface com.microsoft.azure.management.graphrbac.ServicePrincipal extends com.microsoft.azure.management.graphrbac.ActiveDirectoryObject, com.microsoft.azure.management.resources.fluentcore.model.HasInner<com.microsoft.azure.management.graphrbac.implementation.ServicePrincipalInner>, com.microsoft.azure.management.resources.fluentcore.model.Updatable<com.microsoft.azure.management.graphrbac.ServicePrincipal$Update>
  minor version: 0
  major version: 59
  flags: flags: (0x0601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT
  this_class: com.microsoft.azure.management.graphrbac.ServicePrincipal
  super_class: java.lang.Object
{
  public abstract java.lang.String applicationId();
    descriptor: ()Ljava/lang/String;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract java.util.List<java.lang.String> servicePrincipalNames();
    descriptor: ()Ljava/util/List;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: ()Ljava/util/List<Ljava/lang/String;>;

  public abstract java.util.Map<java.lang.String, com.microsoft.azure.management.graphrbac.PasswordCredential> passwordCredentials();
    descriptor: ()Ljava/util/Map;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: ()Ljava/util/Map<Ljava/lang/String;Lcom/microsoft/azure/management/graphrbac/PasswordCredential;>;

  public abstract java.util.Map<java.lang.String, com.microsoft.azure.management.graphrbac.CertificateCredential> certificateCredentials();
    descriptor: ()Ljava/util/Map;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: ()Ljava/util/Map<Ljava/lang/String;Lcom/microsoft/azure/management/graphrbac/CertificateCredential;>;

  public abstract java.util.Set<com.microsoft.azure.management.graphrbac.RoleAssignment> roleAssignments();
    descriptor: ()Ljava/util/Set;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: ()Ljava/util/Set<Lcom/microsoft/azure/management/graphrbac/RoleAssignment;>;
}
Signature: Ljava/lang/Object;Lcom/microsoft/azure/management/graphrbac/ActiveDirectoryObject;Lcom/microsoft/azure/management/resources/fluentcore/model/HasInner<Lcom/microsoft/azure/management/graphrbac/implementation/ServicePrincipalInner;>;Lcom/microsoft/azure/management/resources/fluentcore/model/Updatable<Lcom/microsoft/azure/management/graphrbac/ServicePrincipal$Update;>;
SourceFile: "ServicePrincipal.java"
NestMembers:
  com.microsoft.azure.management.graphrbac.ServicePrincipal$Definition  com.microsoft.azure.management.graphrbac.ServicePrincipal$DefinitionStages  com.microsoft.azure.management.graphrbac.ServicePrincipal$DefinitionStages$Blank  com.microsoft.azure.management.graphrbac.ServicePrincipal$DefinitionStages$WithApplication  com.microsoft.azure.management.graphrbac.ServicePrincipal$DefinitionStages$WithCreate  com.microsoft.azure.management.graphrbac.ServicePrincipal$DefinitionStages$WithCredential  com.microsoft.azure.management.graphrbac.ServicePrincipal$DefinitionStages$WithRoleAssignment  com.microsoft.azure.management.graphrbac.ServicePrincipal$Update  com.microsoft.azure.management.graphrbac.ServicePrincipal$UpdateStages  com.microsoft.azure.management.graphrbac.ServicePrincipal$UpdateStages$WithCredential  com.microsoft.azure.management.graphrbac.ServicePrincipal$UpdateStages$WithRoleAssignment
InnerClasses:
  public abstract Definition = com.microsoft.azure.management.graphrbac.ServicePrincipal$Definition of com.microsoft.azure.management.graphrbac.ServicePrincipal
  public abstract DefinitionStages = com.microsoft.azure.management.graphrbac.ServicePrincipal$DefinitionStages of com.microsoft.azure.management.graphrbac.ServicePrincipal
  public abstract Update = com.microsoft.azure.management.graphrbac.ServicePrincipal$Update of com.microsoft.azure.management.graphrbac.ServicePrincipal
  public abstract UpdateStages = com.microsoft.azure.management.graphrbac.ServicePrincipal$UpdateStages of com.microsoft.azure.management.graphrbac.ServicePrincipal
    RuntimeInvisibleAnnotations: 
      com.microsoft.azure.management.apigeneration.Fluent(ContainerName = "/Microsoft.Azure.Management.Graph.RBAC.Fluent")