@startuml
skinparam shadowing false
skinparam packageStyle rectangle

title building-block-identity package map

package "building-block-identity" {
  package "Contracts" {
    class IssueIdentityTokenRequest
    class IssueIdentityTokenResponse
    class EvaluateIdentityPolicyRequest
    class EvaluateIdentityPolicyResponse
    class IdentityPolicyContextRequest
    class IdentityPolicyContextResponse
    class RefreshIdentitySessionRequest
    class RefreshIdentitySessionResponse
  }

  package "Abstractions" {
    interface IIdentityCapabilityContract
  }
}

package "blueprint-platform" {
  class ContractEnvelope
}

ContractEnvelope <.. IssueIdentityTokenRequest
ContractEnvelope <.. EvaluateIdentityPolicyRequest
ContractEnvelope <.. IdentityPolicyContextRequest

note bottom
Contracts-only repository.
No runtime or persistence implementation.
end note
@enduml
