diff --git a/src/libraries/Microsoft.PowerFx.Core/Entities/External/TableDelegationInfo.cs b/src/libraries/Microsoft.PowerFx.Core/Entities/External/TableDelegationInfo.cs
index b9361447b2..9a0032d792 100644
--- a/src/libraries/Microsoft.PowerFx.Core/Entities/External/TableDelegationInfo.cs
+++ b/src/libraries/Microsoft.PowerFx.Core/Entities/External/TableDelegationInfo.cs
@@ -1,6 +1,7 @@
// Copyright (c) Microsoft Corporation.
// Licensed under the MIT license.
+using System;
using System.Collections.Generic;
using System.Linq;
using Microsoft.CodeAnalysis;
@@ -22,7 +23,8 @@ public abstract class TableDelegationInfo
// Used to indicate whether this table has selectable columns
public SelectionRestrictions SelectionRestriction { get; init; }
- public SummarizeRestrictions SummarizeRestriction { get; init; }
+ [Obsolete("preview")]
+ public SummarizeCapabilities SummarizeCapabilities { get; init; }
// Defines ungroupable columns
public GroupRestrictions GroupRestriction { get; init; }
@@ -264,20 +266,25 @@ public SelectionRestrictions()
}
}
- public sealed class SummarizeRestrictions
+ [Obsolete("preview")]
+ public class SummarizeCapabilities
{
- ///
- /// List of properties that can not be summarized.
- ///
- public ICollection NonSummarizableProperties { get; init; }
-
- public ICollection NotSupportedSummarizeMethods { get; init; }
-
- public SummarizeRestrictions()
+ public virtual bool IsSummarizableProperty(string propertyName)
+ {
+ return false;
+ }
+
+ public virtual bool IsSummarizableMethod(SummarizeMethod method)
+ {
+ return false;
+ }
+
+ public SummarizeCapabilities()
{
}
}
+ [Obsolete("preview")]
public enum SummarizeMethod
{
None,
diff --git a/src/libraries/Microsoft.PowerFx.Core/Public/Values/DelegationParameters.cs b/src/libraries/Microsoft.PowerFx.Core/Public/Values/DelegationParameters.cs
index 9e3c9db056..f606401c19 100644
--- a/src/libraries/Microsoft.PowerFx.Core/Public/Values/DelegationParameters.cs
+++ b/src/libraries/Microsoft.PowerFx.Core/Public/Values/DelegationParameters.cs
@@ -73,6 +73,9 @@ public enum DelegationParameterFeatures
// $apply
Apply = 1 << 4,
+ // $apply = groupby((field1, ..), field with sum as TotalSum)
+ ApplyGroupBy = 1 << 5,
+
/*
To be implemented later when needed
diff --git a/src/tests/Microsoft.PowerFx.Core.Tests.Shared/PublicSurfaceTests.cs b/src/tests/Microsoft.PowerFx.Core.Tests.Shared/PublicSurfaceTests.cs
index 6a9a8368f3..352871be4b 100644
--- a/src/tests/Microsoft.PowerFx.Core.Tests.Shared/PublicSurfaceTests.cs
+++ b/src/tests/Microsoft.PowerFx.Core.Tests.Shared/PublicSurfaceTests.cs
@@ -202,6 +202,8 @@ public void PublicSurface_Tests()
"Microsoft.PowerFx.Core.Entities.IRefreshable",
"Microsoft.PowerFx.Core.Entities.SelectionRestrictions",
"Microsoft.PowerFx.Core.Entities.SortRestrictions",
+ "Microsoft.PowerFx.Core.Entities.SummarizeCapabilities",
+ "Microsoft.PowerFx.Core.Entities.SummarizeMethod",
"Microsoft.PowerFx.Core.Entities.TableDelegationInfo",
"Microsoft.PowerFx.Core.Functions.Delegation.DelegationOperator",
"Microsoft.PowerFx.Core.Localization.ErrorResourceKey",