<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <TargetFrameworks>net48;net8.0</TargetFrameworks>
    <Configurations>Debug;Release;Local</Configurations>
    <PlatformTarget>x64</PlatformTarget>
  </PropertyGroup>
  <PropertyGroup>
    <PolySharpExcludeGeneratedTypes>System.Range;System.Index</PolySharpExcludeGeneratedTypes>
    <ILRepackTargetConfigurations>Debug;Release;Local</ILRepackTargetConfigurations>
    <ILRepackRenameInternalized>true</ILRepackRenameInternalized>
  </PropertyGroup>
  <!--
  It doesn't matter that these API references are perfectly aligned, because these are specifiying min versions
  The revit projects will resolve their correct ones
  -->
  <ItemGroup Condition="'$(TargetFramework)' == 'net48'">
    <PackageReference Include="Speckle.Revit.API" VersionOverride="2022.0.2.1" ExcludeAssets="runtime"/>
  </ItemGroup>
  <ItemGroup Condition="'$(TargetFramework)' == 'net8.0'">
    <PackageReference Include="Speckle.Revit.API" VersionOverride="2025.0.0" ExcludeAssets="runtime"/>
  </ItemGroup>
  <ItemGroup>
    <PackageReference Include="ILRepack.FullAuto">
      <PrivateAssets>all</PrivateAssets>
      <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
    </PackageReference>
    <PackageReference Include="Revit.Async" PrivateAssets="all"/>
  </ItemGroup>
</Project>
