import { GuidValue } from "@omnia/fx/models"; import { AnalyticsColumn } from "@omnia/workplace/models"; import { AnalyticsReportExportsRequest } from "../../../analytics/shared"; import { AnalyticsReportCommonBlockSettings, AnalyticsReportItem } from "./AnalyticsReport"; export interface AnalyticsReportView { id: GuidValue; name: string; settingsElement: string; viewElement: string; supportClassicPaging: boolean; } export interface IAnalyticsReportViewSettingsProperties { viewSettings: IAnalyticsReportViewSettings; saveSettings: (viewSettings: IAnalyticsReportViewSettings) => void; selectedWidgetAnalyticsColumns: AnalyticsColumn[]; reportColumns: string[]; } export interface IAnalyticsReportViewDisplayProperties { settings: AnalyticsReportCommonBlockSettings; items: AnalyticsReportItem[]; offset?: { value: number; }; allColumns: AnalyticsColumn[]; isLoadingData: { value: boolean; }; sortByChanged?: (sortKey: string, descending: boolean) => void; offsetChanged: (offset: number) => void; exportRequest?: AnalyticsReportExportsRequest; selectedSortColumn?: SortSelection; selectedSortOrder?: SortSelection; } export interface IAnalyticsReportViewSettings { selectedSortColumn: SortSelection; selectedSortOrder: SortSelection; fixedHeader?: boolean; itemLimit: number; optionalQuery: string; } export interface SortSelection { id: string; name: string; }