Permission_Types.ps1xml

<?xml version="1.0" encoding="utf-8" ?>
<Types>
  <Type>
    <Name>Permission.TargetPermission</Name>
    <Members>
      <MemberSet>
        <Name>PSStandardMembers</Name>
        <Members>
          <PropertySet>
            <Name>DefaultDisplayPropertySet</Name>
            <ReferencedProperties>
              <Name>Path</Name>
              <Name>NetworkPaths</Name>
            </ReferencedProperties>
          </PropertySet>
        </Members>
      </MemberSet>
    </Members>
  </Type>
  <Type>
    <Name>Permission.ParentItemPermission</Name>
    <Members>
      <MemberSet>
        <Name>PSStandardMembers</Name>
        <Members>
          <PropertySet>
            <Name>DefaultDisplayPropertySet</Name>
            <ReferencedProperties>
              <Name>Item</Name>
              <Name>Items</Name>
            </ReferencedProperties>
          </PropertySet>
        </Members>
      </MemberSet>
      <ScriptProperty>
        <Name>Items</Name>
        <GetScriptBlock>
          ForEach ($item in $this.json) {
            [PSCustomObject]@{
              PSTypeName = 'Permission.ItemPermission'
              Item = $item.Grouping
              Access = $this.PassThru
            }
          }
        </GetScriptBlock>
      </ScriptProperty>
      <ScriptProperty>
        <Name>ItemPaths</Name>
        <GetScriptBlock>$this.json.Grouping</GetScriptBlock>
      </ScriptProperty>
    </Members>
  </Type>
  <Type>
    <Name>Permission.ChildItemPermission</Name>
    <Members>
      <MemberSet>
        <Name>PSStandardMembers</Name>
        <Members>
          <PropertySet>
            <Name>DefaultDisplayPropertySet</Name>
            <ReferencedProperties>
              <Name>Item</Name>
              <Name>Access</Name>
            </ReferencedProperties>
          </PropertySet>
        </Members>
      </MemberSet>
    </Members>
  </Type>
  <Type>
    <Name>Permission.Item</Name>
    <Members>
      <MemberSet>
        <Name>PSStandardMembers</Name>
        <Members>
          <PropertySet>
            <Name>DefaultDisplayPropertySet</Name>
            <ReferencedProperties>
              <Name>Path</Name>
              <Name>Access</Name>
            </ReferencedProperties>
          </PropertySet>
          <NoteProperty>
            <Name>DefaultDisplayProperty</Name>
            <Value>Path</Value>
          </NoteProperty>
          <PropertySet>
            <Name>DefaultKeyPropertySet</Name>
            <ReferencedProperties>
              <Name>Path</Name>
            </ReferencedProperties>
          </PropertySet>
        </Members>
      </MemberSet>
    </Members>
  </Type>
</Types>