@harbortouch/skytab-analytics-report-utils 0.14.5 → 0.16.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.cts CHANGED
@@ -1221,6 +1221,7 @@ interface ColumnGroupConfig {
1221
1221
  lastWeekFields?: string[];
1222
1222
  lastYearFields?: string[];
1223
1223
  }
1224
+ type ReportSectionName = 'common.report-section.revenue-class' | 'common.report-section.payments' | 'common.report-section.cash' | 'common.report-section.taxes' | 'common.report-section.refunds-voids' | 'common.report-section.discounts' | 'common.report-section.sales-by-day-part' | 'common.report-section.sales-by-order-type';
1224
1225
  interface ReportConfig<TField extends string = string> {
1225
1226
  fields: Record<TField, ColumnPresentationConfig<TField>>;
1226
1227
  availableColumns: TField[];
@@ -1228,6 +1229,11 @@ interface ReportConfig<TField extends string = string> {
1228
1229
  columnGroups?: ColumnGroupConfig[];
1229
1230
  chartFields?: TField[];
1230
1231
  hasFooter: boolean;
1232
+ dataAccessKey?: string;
1233
+ sectionName?: ReportSectionName;
1234
+ totalsLabel?: string;
1235
+ extraFooterRowsKey?: string;
1236
+ extraFooterFields?: string[];
1231
1237
  }
1232
1238
 
1233
1239
  declare const Report: {
@@ -1245,7 +1251,7 @@ declare const Report: {
1245
1251
  readonly DAILY_SALES_TRENDS: "daily-sales-trends";
1246
1252
  };
1247
1253
  type ReportType = (typeof Report)[keyof typeof Report];
1248
- declare const getReportConfig: (reportType: ReportType) => ReportConfig<string> | null;
1254
+ declare const getReportConfig: (reportType: ReportType) => ReportConfig<string> | ReportConfig<string>[] | null;
1249
1255
  declare const getReportExportFileName: ({ reportType, startDate, endDate, format, }: {
1250
1256
  reportType: ReportType;
1251
1257
  startDate: Date;
@@ -1319,6 +1325,9 @@ declare const dailySalesConfig: {
1319
1325
  readonly availableColumns: DailySalesField[];
1320
1326
  readonly defaultVisibleColumns: DailySalesField[];
1321
1327
  readonly hasFooter: true;
1328
+ readonly dataAccessKey: "salesByRevClass";
1329
+ readonly sectionName: "common.report-section.revenue-class";
1330
+ readonly extraFooterRowsKey: "salesByRevClassFooter";
1322
1331
  };
1323
1332
 
1324
1333
  type DailySalesLiveField = 'groupById' | 'groupByName' | 'itemsQuantity' | 'salesAmountGross' | 'discountsAmount' | 'inclusiveTaxesAmount' | 'salesAmountNet' | 'salesMixPct' | 'guestsCount';
@@ -1335,6 +1344,8 @@ declare const dailySalesPaymentsConfig: {
1335
1344
  readonly availableColumns: DailySalesPaymentsField[];
1336
1345
  readonly defaultVisibleColumns: DailySalesPaymentsField[];
1337
1346
  readonly hasFooter: true;
1347
+ readonly dataAccessKey: "payments";
1348
+ readonly sectionName: "common.report-section.payments";
1338
1349
  };
1339
1350
 
1340
1351
  type DailySalesDiscountsField = 'discountName' | 'ticketCount' | 'itemCount' | 'discountsAmount';
@@ -1343,6 +1354,8 @@ declare const dailySalesDiscountsConfig: {
1343
1354
  readonly availableColumns: DailySalesDiscountsField[];
1344
1355
  readonly defaultVisibleColumns: DailySalesDiscountsField[];
1345
1356
  readonly hasFooter: true;
1357
+ readonly dataAccessKey: "discounts";
1358
+ readonly sectionName: "common.report-section.discounts";
1346
1359
  };
1347
1360
 
1348
1361
  type DailySalesRefundsVoidsField = 'description' | 'count' | 'amount' | 'pctSales';
@@ -1351,6 +1364,8 @@ declare const dailySalesRefundsVoidsConfig: {
1351
1364
  readonly availableColumns: DailySalesRefundsVoidsField[];
1352
1365
  readonly defaultVisibleColumns: DailySalesRefundsVoidsField[];
1353
1366
  readonly hasFooter: true;
1367
+ readonly dataAccessKey: "refundsVoids";
1368
+ readonly sectionName: "common.report-section.refunds-voids";
1354
1369
  };
1355
1370
 
1356
1371
  type DailySalesTaxesField = 'taxName' | 'taxableSales' | 'taxesAmount' | 'exemptSales';
@@ -1359,6 +1374,8 @@ declare const dailySalesTaxesConfig: {
1359
1374
  readonly availableColumns: DailySalesTaxesField[];
1360
1375
  readonly defaultVisibleColumns: DailySalesTaxesField[];
1361
1376
  readonly hasFooter: true;
1377
+ readonly dataAccessKey: "taxes";
1378
+ readonly sectionName: "common.report-section.taxes";
1362
1379
  };
1363
1380
 
1364
1381
  type DailySalesCacheField = 'name' | 'amount';
@@ -1367,6 +1384,8 @@ declare const dailySalesCacheConfig: {
1367
1384
  readonly availableColumns: ["name", "amount"];
1368
1385
  readonly defaultVisibleColumns: ["name", "amount"];
1369
1386
  readonly hasFooter: true;
1387
+ readonly dataAccessKey: "cashPayments";
1388
+ readonly sectionName: "common.report-section.cash";
1370
1389
  };
1371
1390
 
1372
1391
  type EmployeeTimecardField = 'locationId' | 'locationName' | 'businessDate' | 'employeeName' | 'isActive' | 'lookup' | 'payrollCode' | 'jobName' | 'isBreak' | 'startTime' | 'endTime' | 'shiftHours';
@@ -1399,7 +1418,47 @@ declare const dailySalesTrendsConfig: {
1399
1418
  readonly availableColumns: DailySalesTrendsField[];
1400
1419
  readonly defaultVisibleColumns: DailySalesTrendsField[];
1401
1420
  readonly hasFooter: true;
1421
+ readonly dataAccessKey: "trendsByDayPart";
1422
+ readonly sectionName: "common.report-section.sales-by-day-part";
1423
+ readonly totalsLabel: "common.report-section.trends-footer.total-sales";
1424
+ readonly extraFooterFields: ["salesAmountNet"];
1402
1425
  };
1426
+ declare const dailySalesTrendsOrderTypeConfig: {
1427
+ readonly fields: Record<DailySalesTrendsField, ColumnPresentationConfig<DailySalesTrendsField>>;
1428
+ readonly availableColumns: DailySalesTrendsField[];
1429
+ readonly defaultVisibleColumns: DailySalesTrendsField[];
1430
+ readonly hasFooter: true;
1431
+ readonly dataAccessKey: "trendsByOrderType";
1432
+ readonly sectionName: "common.report-section.sales-by-order-type";
1433
+ readonly totalsLabel: "common.report-section.trends-footer.total-sales";
1434
+ readonly extraFooterFields: ["salesAmountNet"];
1435
+ };
1436
+
1437
+ interface ReportSectionColumnDef {
1438
+ fieldKey: string;
1439
+ columnKey: ReportColumnKey;
1440
+ isRowLabelKey?: boolean;
1441
+ }
1442
+ interface ReportSectionDefinition {
1443
+ sectionLabel: string;
1444
+ config: ReportConfig;
1445
+ columns: ReportSectionColumnDef[];
1446
+ }
1447
+ declare const DAILY_SALES_CASH_ROW_LABELS: {
1448
+ readonly cashPayments: "common.report-section.cash-row.cash-payments";
1449
+ readonly paidInOuts: "common.report-section.cash-row.paid-in-outs";
1450
+ readonly gratuitiesPaidOut: "common.report-section.cash-row.gratuities-paid-out";
1451
+ readonly ccTipsPaidOut: "common.report-section.cash-row.cc-tips-paid-out";
1452
+ };
1453
+ declare const DAILY_SALES_REV_CLASS_FOOTER_LABELS: {
1454
+ readonly taxTotal: "common.report-section.rev-class-footer.tax-total";
1455
+ readonly gratuities: "common.report-section.rev-class-footer.gratuities";
1456
+ readonly balancePayments: "common.report-section.rev-class-footer.balance-payments";
1457
+ readonly giftCardSales: "common.report-section.rev-class-footer.gift-card-sales";
1458
+ readonly nonSalesRevenue: "common.report-section.rev-class-footer.non-sales-revenue";
1459
+ readonly totalAccountable: "common.report-section.rev-class-footer.total-accountable";
1460
+ };
1461
+ declare const REPORT_SECTION_CONFIGS: Partial<Record<ReportType, ReportSectionDefinition[]>>;
1403
1462
 
1404
1463
  type TimeFormat = '00:00' | '00:00:00' | '00:00-24H';
1405
1464
  interface LocaleOption {
@@ -1442,4 +1501,4 @@ declare const getReportFormattingLocaleOptions: (locations: {
1442
1501
  }[]) => LocaleOption[];
1443
1502
  declare const formatFieldValue: (value: unknown, type: FieldType, localeOptions: LocaleOption, fullRecord: Record<string, unknown> | null | undefined, fieldConfig?: ColumnPresentationConfig) => string;
1444
1503
 
1445
- export { COLUMN_REGISTRY, type CalculateReportTotalsOptions, type ColumnAlignment, type ColumnGroupConfig, type ColumnMetadata, type ColumnPresentationConfig, type DailySalesCacheField, type DailySalesDiscountsField, type DailySalesField, type DailySalesLiveField, type DailySalesPaymentsField, type DailySalesRefundsVoidsField, type DailySalesTaxesField, type DailySalesTrendsField, type EmployeeTimecardField, type EmployeeTipField, type FieldType, type FooterCalculation, type FooterCalculationType, type FormatDateOptions, type FormatMoneyOptions, type FormatNumberOptions, type FormatTimeOptions, type ItemTaxField, type LocaleOption, type ModifierMixField, type ProductMixField, Report, type ReportColumnKey, type ReportConfig, type ReportType, type SalesByItemDetailField, type SalesSummaryField, type TicketLiveField, type TicketSummaryField, type TimeFormat, calculateFieldTotal, calculateReportTotals, dailySalesCacheConfig, dailySalesConfig, dailySalesDiscountsConfig, dailySalesLiveConfig, dailySalesPaymentsConfig, dailySalesRefundsVoidsConfig, dailySalesTaxesConfig, dailySalesTrendsConfig, employeeTimecardConfig, employeeTipConfig, formatDate, formatFieldValue, formatFixedNumber, formatInteger, formatMoney, formatMoneyWithoutSymbol, formatPercent, formatString, formatTime, getColumnAlignment, getColumnExportHeaderLabel, getColumnMetadata, getDateToFormat, getNumberToFormat, getReportConfig, getReportExportFileName, getReportFormattingLocaleOptions, isNumericType, itemTaxConfig, modifierMixConfig, productMixConfig, salesByItemDetailConfig, salesSummaryConfig, ticketLiveConfig, ticketSummaryConfig };
1504
+ export { COLUMN_REGISTRY, type CalculateReportTotalsOptions, type ColumnAlignment, type ColumnGroupConfig, type ColumnMetadata, type ColumnPresentationConfig, DAILY_SALES_CASH_ROW_LABELS, DAILY_SALES_REV_CLASS_FOOTER_LABELS, type DailySalesCacheField, type DailySalesDiscountsField, type DailySalesField, type DailySalesLiveField, type DailySalesPaymentsField, type DailySalesRefundsVoidsField, type DailySalesTaxesField, type DailySalesTrendsField, type EmployeeTimecardField, type EmployeeTipField, type FieldType, type FooterCalculation, type FooterCalculationType, type FormatDateOptions, type FormatMoneyOptions, type FormatNumberOptions, type FormatTimeOptions, type ItemTaxField, type LocaleOption, type ModifierMixField, type ProductMixField, REPORT_SECTION_CONFIGS, Report, type ReportColumnKey, type ReportConfig, type ReportSectionColumnDef, type ReportSectionDefinition, type ReportSectionName, type ReportType, type SalesByItemDetailField, type SalesSummaryField, type TicketLiveField, type TicketSummaryField, type TimeFormat, calculateFieldTotal, calculateReportTotals, dailySalesCacheConfig, dailySalesConfig, dailySalesDiscountsConfig, dailySalesLiveConfig, dailySalesPaymentsConfig, dailySalesRefundsVoidsConfig, dailySalesTaxesConfig, dailySalesTrendsConfig, dailySalesTrendsOrderTypeConfig, employeeTimecardConfig, employeeTipConfig, formatDate, formatFieldValue, formatFixedNumber, formatInteger, formatMoney, formatMoneyWithoutSymbol, formatPercent, formatString, formatTime, getColumnAlignment, getColumnExportHeaderLabel, getColumnMetadata, getDateToFormat, getNumberToFormat, getReportConfig, getReportExportFileName, getReportFormattingLocaleOptions, isNumericType, itemTaxConfig, modifierMixConfig, productMixConfig, salesByItemDetailConfig, salesSummaryConfig, ticketLiveConfig, ticketSummaryConfig };
package/dist/index.d.ts CHANGED
@@ -1221,6 +1221,7 @@ interface ColumnGroupConfig {
1221
1221
  lastWeekFields?: string[];
1222
1222
  lastYearFields?: string[];
1223
1223
  }
1224
+ type ReportSectionName = 'common.report-section.revenue-class' | 'common.report-section.payments' | 'common.report-section.cash' | 'common.report-section.taxes' | 'common.report-section.refunds-voids' | 'common.report-section.discounts' | 'common.report-section.sales-by-day-part' | 'common.report-section.sales-by-order-type';
1224
1225
  interface ReportConfig<TField extends string = string> {
1225
1226
  fields: Record<TField, ColumnPresentationConfig<TField>>;
1226
1227
  availableColumns: TField[];
@@ -1228,6 +1229,11 @@ interface ReportConfig<TField extends string = string> {
1228
1229
  columnGroups?: ColumnGroupConfig[];
1229
1230
  chartFields?: TField[];
1230
1231
  hasFooter: boolean;
1232
+ dataAccessKey?: string;
1233
+ sectionName?: ReportSectionName;
1234
+ totalsLabel?: string;
1235
+ extraFooterRowsKey?: string;
1236
+ extraFooterFields?: string[];
1231
1237
  }
1232
1238
 
1233
1239
  declare const Report: {
@@ -1245,7 +1251,7 @@ declare const Report: {
1245
1251
  readonly DAILY_SALES_TRENDS: "daily-sales-trends";
1246
1252
  };
1247
1253
  type ReportType = (typeof Report)[keyof typeof Report];
1248
- declare const getReportConfig: (reportType: ReportType) => ReportConfig<string> | null;
1254
+ declare const getReportConfig: (reportType: ReportType) => ReportConfig<string> | ReportConfig<string>[] | null;
1249
1255
  declare const getReportExportFileName: ({ reportType, startDate, endDate, format, }: {
1250
1256
  reportType: ReportType;
1251
1257
  startDate: Date;
@@ -1319,6 +1325,9 @@ declare const dailySalesConfig: {
1319
1325
  readonly availableColumns: DailySalesField[];
1320
1326
  readonly defaultVisibleColumns: DailySalesField[];
1321
1327
  readonly hasFooter: true;
1328
+ readonly dataAccessKey: "salesByRevClass";
1329
+ readonly sectionName: "common.report-section.revenue-class";
1330
+ readonly extraFooterRowsKey: "salesByRevClassFooter";
1322
1331
  };
1323
1332
 
1324
1333
  type DailySalesLiveField = 'groupById' | 'groupByName' | 'itemsQuantity' | 'salesAmountGross' | 'discountsAmount' | 'inclusiveTaxesAmount' | 'salesAmountNet' | 'salesMixPct' | 'guestsCount';
@@ -1335,6 +1344,8 @@ declare const dailySalesPaymentsConfig: {
1335
1344
  readonly availableColumns: DailySalesPaymentsField[];
1336
1345
  readonly defaultVisibleColumns: DailySalesPaymentsField[];
1337
1346
  readonly hasFooter: true;
1347
+ readonly dataAccessKey: "payments";
1348
+ readonly sectionName: "common.report-section.payments";
1338
1349
  };
1339
1350
 
1340
1351
  type DailySalesDiscountsField = 'discountName' | 'ticketCount' | 'itemCount' | 'discountsAmount';
@@ -1343,6 +1354,8 @@ declare const dailySalesDiscountsConfig: {
1343
1354
  readonly availableColumns: DailySalesDiscountsField[];
1344
1355
  readonly defaultVisibleColumns: DailySalesDiscountsField[];
1345
1356
  readonly hasFooter: true;
1357
+ readonly dataAccessKey: "discounts";
1358
+ readonly sectionName: "common.report-section.discounts";
1346
1359
  };
1347
1360
 
1348
1361
  type DailySalesRefundsVoidsField = 'description' | 'count' | 'amount' | 'pctSales';
@@ -1351,6 +1364,8 @@ declare const dailySalesRefundsVoidsConfig: {
1351
1364
  readonly availableColumns: DailySalesRefundsVoidsField[];
1352
1365
  readonly defaultVisibleColumns: DailySalesRefundsVoidsField[];
1353
1366
  readonly hasFooter: true;
1367
+ readonly dataAccessKey: "refundsVoids";
1368
+ readonly sectionName: "common.report-section.refunds-voids";
1354
1369
  };
1355
1370
 
1356
1371
  type DailySalesTaxesField = 'taxName' | 'taxableSales' | 'taxesAmount' | 'exemptSales';
@@ -1359,6 +1374,8 @@ declare const dailySalesTaxesConfig: {
1359
1374
  readonly availableColumns: DailySalesTaxesField[];
1360
1375
  readonly defaultVisibleColumns: DailySalesTaxesField[];
1361
1376
  readonly hasFooter: true;
1377
+ readonly dataAccessKey: "taxes";
1378
+ readonly sectionName: "common.report-section.taxes";
1362
1379
  };
1363
1380
 
1364
1381
  type DailySalesCacheField = 'name' | 'amount';
@@ -1367,6 +1384,8 @@ declare const dailySalesCacheConfig: {
1367
1384
  readonly availableColumns: ["name", "amount"];
1368
1385
  readonly defaultVisibleColumns: ["name", "amount"];
1369
1386
  readonly hasFooter: true;
1387
+ readonly dataAccessKey: "cashPayments";
1388
+ readonly sectionName: "common.report-section.cash";
1370
1389
  };
1371
1390
 
1372
1391
  type EmployeeTimecardField = 'locationId' | 'locationName' | 'businessDate' | 'employeeName' | 'isActive' | 'lookup' | 'payrollCode' | 'jobName' | 'isBreak' | 'startTime' | 'endTime' | 'shiftHours';
@@ -1399,7 +1418,47 @@ declare const dailySalesTrendsConfig: {
1399
1418
  readonly availableColumns: DailySalesTrendsField[];
1400
1419
  readonly defaultVisibleColumns: DailySalesTrendsField[];
1401
1420
  readonly hasFooter: true;
1421
+ readonly dataAccessKey: "trendsByDayPart";
1422
+ readonly sectionName: "common.report-section.sales-by-day-part";
1423
+ readonly totalsLabel: "common.report-section.trends-footer.total-sales";
1424
+ readonly extraFooterFields: ["salesAmountNet"];
1402
1425
  };
1426
+ declare const dailySalesTrendsOrderTypeConfig: {
1427
+ readonly fields: Record<DailySalesTrendsField, ColumnPresentationConfig<DailySalesTrendsField>>;
1428
+ readonly availableColumns: DailySalesTrendsField[];
1429
+ readonly defaultVisibleColumns: DailySalesTrendsField[];
1430
+ readonly hasFooter: true;
1431
+ readonly dataAccessKey: "trendsByOrderType";
1432
+ readonly sectionName: "common.report-section.sales-by-order-type";
1433
+ readonly totalsLabel: "common.report-section.trends-footer.total-sales";
1434
+ readonly extraFooterFields: ["salesAmountNet"];
1435
+ };
1436
+
1437
+ interface ReportSectionColumnDef {
1438
+ fieldKey: string;
1439
+ columnKey: ReportColumnKey;
1440
+ isRowLabelKey?: boolean;
1441
+ }
1442
+ interface ReportSectionDefinition {
1443
+ sectionLabel: string;
1444
+ config: ReportConfig;
1445
+ columns: ReportSectionColumnDef[];
1446
+ }
1447
+ declare const DAILY_SALES_CASH_ROW_LABELS: {
1448
+ readonly cashPayments: "common.report-section.cash-row.cash-payments";
1449
+ readonly paidInOuts: "common.report-section.cash-row.paid-in-outs";
1450
+ readonly gratuitiesPaidOut: "common.report-section.cash-row.gratuities-paid-out";
1451
+ readonly ccTipsPaidOut: "common.report-section.cash-row.cc-tips-paid-out";
1452
+ };
1453
+ declare const DAILY_SALES_REV_CLASS_FOOTER_LABELS: {
1454
+ readonly taxTotal: "common.report-section.rev-class-footer.tax-total";
1455
+ readonly gratuities: "common.report-section.rev-class-footer.gratuities";
1456
+ readonly balancePayments: "common.report-section.rev-class-footer.balance-payments";
1457
+ readonly giftCardSales: "common.report-section.rev-class-footer.gift-card-sales";
1458
+ readonly nonSalesRevenue: "common.report-section.rev-class-footer.non-sales-revenue";
1459
+ readonly totalAccountable: "common.report-section.rev-class-footer.total-accountable";
1460
+ };
1461
+ declare const REPORT_SECTION_CONFIGS: Partial<Record<ReportType, ReportSectionDefinition[]>>;
1403
1462
 
1404
1463
  type TimeFormat = '00:00' | '00:00:00' | '00:00-24H';
1405
1464
  interface LocaleOption {
@@ -1442,4 +1501,4 @@ declare const getReportFormattingLocaleOptions: (locations: {
1442
1501
  }[]) => LocaleOption[];
1443
1502
  declare const formatFieldValue: (value: unknown, type: FieldType, localeOptions: LocaleOption, fullRecord: Record<string, unknown> | null | undefined, fieldConfig?: ColumnPresentationConfig) => string;
1444
1503
 
1445
- export { COLUMN_REGISTRY, type CalculateReportTotalsOptions, type ColumnAlignment, type ColumnGroupConfig, type ColumnMetadata, type ColumnPresentationConfig, type DailySalesCacheField, type DailySalesDiscountsField, type DailySalesField, type DailySalesLiveField, type DailySalesPaymentsField, type DailySalesRefundsVoidsField, type DailySalesTaxesField, type DailySalesTrendsField, type EmployeeTimecardField, type EmployeeTipField, type FieldType, type FooterCalculation, type FooterCalculationType, type FormatDateOptions, type FormatMoneyOptions, type FormatNumberOptions, type FormatTimeOptions, type ItemTaxField, type LocaleOption, type ModifierMixField, type ProductMixField, Report, type ReportColumnKey, type ReportConfig, type ReportType, type SalesByItemDetailField, type SalesSummaryField, type TicketLiveField, type TicketSummaryField, type TimeFormat, calculateFieldTotal, calculateReportTotals, dailySalesCacheConfig, dailySalesConfig, dailySalesDiscountsConfig, dailySalesLiveConfig, dailySalesPaymentsConfig, dailySalesRefundsVoidsConfig, dailySalesTaxesConfig, dailySalesTrendsConfig, employeeTimecardConfig, employeeTipConfig, formatDate, formatFieldValue, formatFixedNumber, formatInteger, formatMoney, formatMoneyWithoutSymbol, formatPercent, formatString, formatTime, getColumnAlignment, getColumnExportHeaderLabel, getColumnMetadata, getDateToFormat, getNumberToFormat, getReportConfig, getReportExportFileName, getReportFormattingLocaleOptions, isNumericType, itemTaxConfig, modifierMixConfig, productMixConfig, salesByItemDetailConfig, salesSummaryConfig, ticketLiveConfig, ticketSummaryConfig };
1504
+ export { COLUMN_REGISTRY, type CalculateReportTotalsOptions, type ColumnAlignment, type ColumnGroupConfig, type ColumnMetadata, type ColumnPresentationConfig, DAILY_SALES_CASH_ROW_LABELS, DAILY_SALES_REV_CLASS_FOOTER_LABELS, type DailySalesCacheField, type DailySalesDiscountsField, type DailySalesField, type DailySalesLiveField, type DailySalesPaymentsField, type DailySalesRefundsVoidsField, type DailySalesTaxesField, type DailySalesTrendsField, type EmployeeTimecardField, type EmployeeTipField, type FieldType, type FooterCalculation, type FooterCalculationType, type FormatDateOptions, type FormatMoneyOptions, type FormatNumberOptions, type FormatTimeOptions, type ItemTaxField, type LocaleOption, type ModifierMixField, type ProductMixField, REPORT_SECTION_CONFIGS, Report, type ReportColumnKey, type ReportConfig, type ReportSectionColumnDef, type ReportSectionDefinition, type ReportSectionName, type ReportType, type SalesByItemDetailField, type SalesSummaryField, type TicketLiveField, type TicketSummaryField, type TimeFormat, calculateFieldTotal, calculateReportTotals, dailySalesCacheConfig, dailySalesConfig, dailySalesDiscountsConfig, dailySalesLiveConfig, dailySalesPaymentsConfig, dailySalesRefundsVoidsConfig, dailySalesTaxesConfig, dailySalesTrendsConfig, dailySalesTrendsOrderTypeConfig, employeeTimecardConfig, employeeTipConfig, formatDate, formatFieldValue, formatFixedNumber, formatInteger, formatMoney, formatMoneyWithoutSymbol, formatPercent, formatString, formatTime, getColumnAlignment, getColumnExportHeaderLabel, getColumnMetadata, getDateToFormat, getNumberToFormat, getReportConfig, getReportExportFileName, getReportFormattingLocaleOptions, isNumericType, itemTaxConfig, modifierMixConfig, productMixConfig, salesByItemDetailConfig, salesSummaryConfig, ticketLiveConfig, ticketSummaryConfig };