@zeniai/client-epic-state 5.0.82-betaAK7 → 5.0.82-betaAR1

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.
Files changed (96) hide show
  1. package/lib/commonStateTypes/amount.d.ts +1 -2
  2. package/lib/commonStateTypes/amount.js +2 -5
  3. package/lib/commonStateTypes/workingDayHelper.d.ts +0 -11
  4. package/lib/commonStateTypes/workingDayHelper.js +1 -31
  5. package/lib/entity/approvalRule/approvalRulePayload.d.ts +34 -5
  6. package/lib/entity/approvalRule/approvalRulePayload.js +130 -10
  7. package/lib/entity/approvalRule/approvalRuleSelector.d.ts +25 -1
  8. package/lib/entity/approvalRule/approvalRuleSelector.js +40 -0
  9. package/lib/entity/approvalRule/approvalRuleState.d.ts +59 -7
  10. package/lib/epic.d.ts +1 -5
  11. package/lib/epic.js +1 -5
  12. package/lib/esm/commonStateTypes/amount.js +1 -3
  13. package/lib/esm/commonStateTypes/workingDayHelper.js +0 -29
  14. package/lib/esm/entity/approvalRule/approvalRulePayload.js +130 -10
  15. package/lib/esm/entity/approvalRule/approvalRuleSelector.js +35 -0
  16. package/lib/esm/epic.js +1 -5
  17. package/lib/esm/index.js +4 -8
  18. package/lib/esm/reducer.js +0 -6
  19. package/lib/esm/view/spendManagement/autotransferRules/autoTransferRulesSelector.js +2 -43
  20. package/lib/esm/view/spendManagement/billPay/billPaySetupApproverView/billPaySetupApproverViewReducer.js +29 -11
  21. package/lib/esm/view/spendManagement/billPay/billPaySetupApproverView/epic/deleteBillPayApprovalRuleEpic.js +11 -2
  22. package/lib/esm/view/spendManagement/billPay/billPaySetupApproverView/epic/fetchBillPaySetupApproverViewEpic.js +9 -4
  23. package/lib/esm/view/spendManagement/billPay/billPaySetupApproverView/epic/initializeBillPaySetupApproverViewUpdateDataEpic.js +11 -7
  24. package/lib/esm/view/spendManagement/billPay/billPaySetupApproverView/epic/saveBillPaySetupApproverViewUpdatesEpic.js +14 -4
  25. package/lib/esm/view/spendManagement/billPay/billPaySetupApproverView/types/commonPayload.js +121 -16
  26. package/lib/esm/view/spendManagement/billPay/editBillView/editBillViewSelector.js +7 -2
  27. package/lib/esm/view/spendManagement/reimbursement/remiSetupApproverView/epic/deleteRemiApprovalRuleEpic.js +11 -2
  28. package/lib/esm/view/spendManagement/reimbursement/remiSetupApproverView/epic/fetchRemiSetupApproverViewEpic.js +9 -2
  29. package/lib/esm/view/spendManagement/reimbursement/remiSetupApproverView/epic/initializeRemiSetupApproverViewUpdateDataEpic.js +11 -7
  30. package/lib/esm/view/spendManagement/reimbursement/remiSetupApproverView/epic/saveRemiSetupApproverViewUpdatesEpic.js +14 -4
  31. package/lib/esm/view/spendManagement/reimbursement/remiSetupApproverView/remiSetupApproverViewReducer.js +28 -10
  32. package/lib/index.d.ts +5 -12
  33. package/lib/index.js +22 -36
  34. package/lib/reducer.d.ts +0 -6
  35. package/lib/reducer.js +0 -6
  36. package/lib/view/companyTaskManagerView/companyTaskManagerViewReducer.d.ts +2 -2
  37. package/lib/view/companyView/types/cockpitTypes.d.ts +1 -1
  38. package/lib/view/people/peopleTypes.d.ts +1 -1
  39. package/lib/view/spendManagement/autotransferRules/autoTransferRulesPayload.d.ts +1 -1
  40. package/lib/view/spendManagement/autotransferRules/autoTransferRulesSelector.d.ts +0 -18
  41. package/lib/view/spendManagement/autotransferRules/autoTransferRulesSelector.js +3 -45
  42. package/lib/view/spendManagement/billPay/billPaySetupApproverView/billPaySetupApproverViewReducer.d.ts +7 -3
  43. package/lib/view/spendManagement/billPay/billPaySetupApproverView/billPaySetupApproverViewReducer.js +29 -11
  44. package/lib/view/spendManagement/billPay/billPaySetupApproverView/epic/deleteBillPayApprovalRuleEpic.js +11 -2
  45. package/lib/view/spendManagement/billPay/billPaySetupApproverView/epic/fetchBillPaySetupApproverViewEpic.js +9 -4
  46. package/lib/view/spendManagement/billPay/billPaySetupApproverView/epic/initializeBillPaySetupApproverViewUpdateDataEpic.js +10 -6
  47. package/lib/view/spendManagement/billPay/billPaySetupApproverView/epic/saveBillPaySetupApproverViewUpdatesEpic.js +13 -3
  48. package/lib/view/spendManagement/billPay/billPaySetupApproverView/types/commonPayload.d.ts +48 -1
  49. package/lib/view/spendManagement/billPay/billPaySetupApproverView/types/commonPayload.js +123 -17
  50. package/lib/view/spendManagement/billPay/billPaySetupApproverView/types/commonState.d.ts +31 -5
  51. package/lib/view/spendManagement/billPay/editBillView/editBillViewSelector.js +7 -2
  52. package/lib/view/spendManagement/chargeCards/chargeCardList/chargeCardList.d.ts +1 -1
  53. package/lib/view/spendManagement/reimbursement/remiSetupApproverView/epic/deleteRemiApprovalRuleEpic.js +11 -2
  54. package/lib/view/spendManagement/reimbursement/remiSetupApproverView/epic/fetchRemiSetupApproverViewEpic.js +9 -2
  55. package/lib/view/spendManagement/reimbursement/remiSetupApproverView/epic/initializeRemiSetupApproverViewUpdateDataEpic.js +10 -6
  56. package/lib/view/spendManagement/reimbursement/remiSetupApproverView/epic/saveRemiSetupApproverViewUpdatesEpic.js +13 -3
  57. package/lib/view/spendManagement/reimbursement/remiSetupApproverView/remiSetupApproverViewReducer.d.ts +7 -3
  58. package/lib/view/spendManagement/reimbursement/remiSetupApproverView/remiSetupApproverViewReducer.js +28 -10
  59. package/lib/view/taskManager/taskListView/taskList.d.ts +3 -3
  60. package/package.json +1 -1
  61. package/lib/esm/view/spendManagement/cashManagement/autoSweepFlow/autoSweepFlowPayload.js +0 -27
  62. package/lib/esm/view/spendManagement/cashManagement/autoSweepFlow/autoSweepFlowReducer.js +0 -68
  63. package/lib/esm/view/spendManagement/cashManagement/autoSweepFlow/autoSweepFlowSelector.js +0 -29
  64. package/lib/esm/view/spendManagement/cashManagement/autoSweepFlow/autoSweepFlowState.js +0 -46
  65. package/lib/esm/view/spendManagement/cashManagement/autoSweepFlow/epics/fetchCashManagementSettingsEpic.js +0 -34
  66. package/lib/esm/view/spendManagement/cashManagement/autoSweepFlow/epics/saveAutoSweepSettingsEpic.js +0 -32
  67. package/lib/esm/view/spendManagement/cashManagement/cashManagementOverview/cashManagementOverviewPayload.js +0 -37
  68. package/lib/esm/view/spendManagement/cashManagement/cashManagementOverview/cashManagementOverviewReducer.js +0 -49
  69. package/lib/esm/view/spendManagement/cashManagement/cashManagementOverview/cashManagementOverviewSelector.js +0 -181
  70. package/lib/esm/view/spendManagement/cashManagement/cashManagementOverview/cashManagementOverviewState.js +0 -5
  71. package/lib/esm/view/spendManagement/cashManagement/cashManagementOverview/epics/fetchCashManagementBannerEpic.js +0 -28
  72. package/lib/esm/view/spendManagement/cashManagement/cashManagementOverview/epics/fetchCashManagementOverviewPageEpic.js +0 -39
  73. package/lib/view/spendManagement/cashManagement/autoSweepFlow/autoSweepFlowPayload.d.ts +0 -45
  74. package/lib/view/spendManagement/cashManagement/autoSweepFlow/autoSweepFlowPayload.js +0 -32
  75. package/lib/view/spendManagement/cashManagement/autoSweepFlow/autoSweepFlowReducer.d.ts +0 -21
  76. package/lib/view/spendManagement/cashManagement/autoSweepFlow/autoSweepFlowReducer.js +0 -72
  77. package/lib/view/spendManagement/cashManagement/autoSweepFlow/autoSweepFlowSelector.d.ts +0 -40
  78. package/lib/view/spendManagement/cashManagement/autoSweepFlow/autoSweepFlowSelector.js +0 -33
  79. package/lib/view/spendManagement/cashManagement/autoSweepFlow/autoSweepFlowState.d.ts +0 -35
  80. package/lib/view/spendManagement/cashManagement/autoSweepFlow/autoSweepFlowState.js +0 -52
  81. package/lib/view/spendManagement/cashManagement/autoSweepFlow/epics/fetchCashManagementSettingsEpic.d.ts +0 -17
  82. package/lib/view/spendManagement/cashManagement/autoSweepFlow/epics/fetchCashManagementSettingsEpic.js +0 -38
  83. package/lib/view/spendManagement/cashManagement/autoSweepFlow/epics/saveAutoSweepSettingsEpic.d.ts +0 -7
  84. package/lib/view/spendManagement/cashManagement/autoSweepFlow/epics/saveAutoSweepSettingsEpic.js +0 -36
  85. package/lib/view/spendManagement/cashManagement/cashManagementOverview/cashManagementOverviewPayload.d.ts +0 -32
  86. package/lib/view/spendManagement/cashManagement/cashManagementOverview/cashManagementOverviewPayload.js +0 -42
  87. package/lib/view/spendManagement/cashManagement/cashManagementOverview/cashManagementOverviewReducer.d.ts +0 -15
  88. package/lib/view/spendManagement/cashManagement/cashManagementOverview/cashManagementOverviewReducer.js +0 -53
  89. package/lib/view/spendManagement/cashManagement/cashManagementOverview/cashManagementOverviewSelector.d.ts +0 -35
  90. package/lib/view/spendManagement/cashManagement/cashManagementOverview/cashManagementOverviewSelector.js +0 -186
  91. package/lib/view/spendManagement/cashManagement/cashManagementOverview/cashManagementOverviewState.d.ts +0 -71
  92. package/lib/view/spendManagement/cashManagement/cashManagementOverview/cashManagementOverviewState.js +0 -8
  93. package/lib/view/spendManagement/cashManagement/cashManagementOverview/epics/fetchCashManagementBannerEpic.d.ts +0 -16
  94. package/lib/view/spendManagement/cashManagement/cashManagementOverview/epics/fetchCashManagementBannerEpic.js +0 -32
  95. package/lib/view/spendManagement/cashManagement/cashManagementOverview/epics/fetchCashManagementOverviewPageEpic.d.ts +0 -10
  96. package/lib/view/spendManagement/cashManagement/cashManagementOverview/epics/fetchCashManagementOverviewPageEpic.js +0 -43
@@ -5,6 +5,5 @@ export interface Currency {
5
5
  export interface Amount extends Currency {
6
6
  amount: number;
7
7
  }
8
- export declare const toAmount: (amount: number, currency_code: string, currency_symbol?: string) => Amount;
8
+ export declare const toAmount: (amount: number, currency_code: string, currency_symbol: string) => Amount;
9
9
  export declare const toAmountWC: (amount: number, currency: Currency) => Amount;
10
- export declare const zeroAmount: (currencyCode?: string, currencySymbol?: string) => Amount;
@@ -1,15 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.zeroAmount = exports.toAmountWC = exports.toAmount = void 0;
4
- const CURRENCY_SYMBOL_USD = '$';
3
+ exports.toAmountWC = exports.toAmount = void 0;
5
4
  const toAmount = (amount, currency_code, currency_symbol) => ({
6
5
  amount: amount,
7
6
  currencyCode: currency_code,
8
- currencySymbol: currency_symbol ?? CURRENCY_SYMBOL_USD,
7
+ currencySymbol: currency_symbol,
9
8
  });
10
9
  exports.toAmount = toAmount;
11
10
  /* to amount with currency */
12
11
  const toAmountWC = (amount, currency) => (0, exports.toAmount)(amount, currency.currencyCode, currency.currencySymbol);
13
12
  exports.toAmountWC = toAmountWC;
14
- const zeroAmount = (currencyCode = 'USD', currencySymbol = '$') => (0, exports.toAmount)(0, currencyCode, currencySymbol);
15
- exports.zeroAmount = zeroAmount;
@@ -4,17 +4,6 @@ export declare const startDate = "2000-01-01";
4
4
  export declare const endDate = "2070-12-31";
5
5
  export declare const PAYMENT_BUSINESS_DAYS = 4;
6
6
  export declare const holidaysFormatted: string[];
7
- /**
8
- * Returns the next scheduled transfer date for a recurring transfer/sweep,
9
- * given a frequency cadence. Advances by the cadence and then skips past
10
- * weekends and US holidays. Used by both:
11
- * - `<ReviewAutoTransferRuleDrawer>` (web-c) for the display "next transfer"
12
- * - `saveAutoSweepSettingsEpic` for the `first_transfer_date` PUT payload
13
- *
14
- * Unknown frequencies fall through to "today" (subject to the weekend/holiday
15
- * shift), matching the prior behavior of the web-c helper.
16
- */
17
- export declare const getNextTransferDate: (frequency: string | undefined) => ZeniDate;
18
7
  export declare const getNextNthWorkingDay: (date: Date, filterDaysIndex: number[], numberOfWorkingDays: number) => Date;
19
8
  export declare const getPreviousNthWorkingDay: (date: Date, filterDaysIndex: number[], numberOfWorkingDays: number) => Date;
20
9
  export declare const isHolidayToday: (filterDaysIndex: number[]) => boolean;
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.isHoliday = exports.getYearsList = exports.filterDays = exports.isHolidayToday = exports.getPreviousNthWorkingDay = exports.getNextNthWorkingDay = exports.getNextTransferDate = exports.holidaysFormatted = exports.PAYMENT_BUSINESS_DAYS = exports.endDate = exports.startDate = exports.standardFormat = void 0;
6
+ exports.isHoliday = exports.getYearsList = exports.filterDays = exports.isHolidayToday = exports.getPreviousNthWorkingDay = exports.getNextNthWorkingDay = exports.holidaysFormatted = exports.PAYMENT_BUSINESS_DAYS = exports.endDate = exports.startDate = exports.standardFormat = void 0;
7
7
  const date_holidays_1 = __importDefault(require("date-holidays"));
8
8
  const zeniDayJS_1 = require("../zeniDayJS");
9
9
  exports.standardFormat = 'MM/DD/YYYY';
@@ -16,36 +16,6 @@ const holidays = dateHolidays
16
16
  .filter((holiday) => holiday.type === 'public' || holiday.type === 'bank')
17
17
  .map((holiday) => (0, zeniDayJS_1.date)(holiday.date).toDate()); // https://www.linkedin.com/pulse/fix-invalid-date-safari-ie-hatem-ahmad/
18
18
  exports.holidaysFormatted = holidays.map((holiday) => (0, zeniDayJS_1.date)(holiday.toDateString()).format(exports.standardFormat));
19
- /**
20
- * Returns the next scheduled transfer date for a recurring transfer/sweep,
21
- * given a frequency cadence. Advances by the cadence and then skips past
22
- * weekends and US holidays. Used by both:
23
- * - `<ReviewAutoTransferRuleDrawer>` (web-c) for the display "next transfer"
24
- * - `saveAutoSweepSettingsEpic` for the `first_transfer_date` PUT payload
25
- *
26
- * Unknown frequencies fall through to "today" (subject to the weekend/holiday
27
- * shift), matching the prior behavior of the web-c helper.
28
- */
29
- const getNextTransferDate = (frequency) => {
30
- const date = new Date();
31
- if (frequency === 'daily') {
32
- date.setDate(date.getDate() + 1);
33
- }
34
- else if (frequency === 'weekly') {
35
- date.setDate(date.getDate() + 7);
36
- }
37
- else if (frequency === 'biweekly') {
38
- date.setDate(date.getDate() + 14);
39
- }
40
- else if (frequency === 'monthly') {
41
- date.setMonth(date.getMonth() + 1);
42
- }
43
- const isWeekend = date.getDay() === 0 || date.getDay() === 6;
44
- const isHolidayDate = (0, exports.isHoliday)((0, zeniDayJS_1.date)(date.toDateString()));
45
- const result = isWeekend || isHolidayDate ? (0, exports.getNextNthWorkingDay)(date, [0, 6], 1) : date;
46
- return (0, zeniDayJS_1.date)(result.toDateString());
47
- };
48
- exports.getNextTransferDate = getNextTransferDate;
49
19
  const getNextNthWorkingDay = (date, filterDaysIndex, numberOfWorkingDays) => {
50
20
  const currentDate = new Date(date.toDateString());
51
21
  const holidaysFormatted = holidays.map((holiday) => (0, zeniDayJS_1.date)(holiday.toDateString()).format(exports.standardFormat));
@@ -1,11 +1,27 @@
1
1
  import { ApprovalRule } from './approvalRuleState';
2
+ /**
3
+ * Condition Payload — one entry inside criteria.conditions[].
4
+ *
5
+ * field examples: 'amount' | 'vendor_id' | 'department_id'
6
+ * type examples: 'gte' | 'lte' | 'eq' | 'in' | 'not_in'
7
+ * value: number for amount comparisons; string[] for in / not_in lookups.
8
+ */
9
+ export interface ConditionPayload {
10
+ field: string;
11
+ type: string;
12
+ value: number | string[];
13
+ }
14
+ /**
15
+ * Criteria Payload — list of conditions joined by `criteria_operator`.
16
+ *
17
+ * `currency_code` / `currency_symbol` apply to amount conditions inside
18
+ * `conditions[]`. Kept here pending confirmation that they should remain.
19
+ */
2
20
  export interface CriteriaPayload {
21
+ conditions: ConditionPayload[];
22
+ criteria_operator: string;
3
23
  currency_code: string;
4
24
  currency_symbol: string;
5
- min: number;
6
- range_entity: string;
7
- type: string;
8
- max?: number | null;
9
25
  }
10
26
  export interface ActorPayload {
11
27
  type: string;
@@ -25,11 +41,24 @@ export interface StepPayload {
25
41
  export interface ApprovalRulePayload {
26
42
  approval_rule_id: string;
27
43
  create_time: string;
28
- criteria: CriteriaPayload[];
44
+ criteria: CriteriaPayload;
29
45
  entity_type: string;
30
46
  name: string | null;
31
47
  steps: StepPayload[];
32
48
  update_time: string;
49
+ are_approvals_serialized?: boolean;
50
+ description?: string | null;
51
+ is_fallback?: boolean;
52
+ /**
53
+ * Approval Rules 3.0 — when `true`, the rule enforces separation of
54
+ * duties (a user can't approve their own request even if they are
55
+ * also an approver). The list-page rule card surfaces this as a
56
+ * green "Separation of duties" capsule.
57
+ */
58
+ is_separation_of_duty_enabled?: boolean;
59
+ pending_approvals_count?: number;
60
+ pending_entity_approval_update_status?: string;
61
+ priority?: number;
33
62
  version?: number | string;
34
63
  }
35
64
  /**
@@ -17,19 +17,139 @@ const toApprovalRule = (payload) => ({
17
17
  version: payload.version,
18
18
  criteria: toApprovalCriteria(payload.criteria),
19
19
  steps: toApprovalSteps(payload.steps),
20
+ description: payload.description ?? undefined,
21
+ priority: payload.priority,
22
+ isFallback: payload.is_fallback ?? false,
23
+ separationOfDuties: payload.is_separation_of_duty_enabled ?? false,
24
+ areApprovalsSerialized: payload.are_approvals_serialized,
25
+ pendingApprovalsCount: payload.pending_approvals_count,
26
+ pendingEntityApprovalUpdateStatus: payload.pending_entity_approval_update_status,
20
27
  });
21
28
  exports.toApprovalRule = toApprovalRule;
29
+ /**
30
+ * Maps the wire-level criteria block into the state-side discriminated
31
+ * `Criteria[]` union.
32
+ *
33
+ * The wire keeps each condition as a flat row inside `conditions[]`.
34
+ * Amount comparisons can show up as a `gte` only, a `lte` only, or a
35
+ * `gte` + `lte` pair — those collapse into a single AmountCriteria whose
36
+ * `comparator` is `greater_than`, `less_than`, or `range` respectively.
37
+ *
38
+ * Vendor and department conditions map one-to-one: `in` becomes `is`,
39
+ * `not_in` becomes `is_not`.
40
+ *
41
+ * Resilient to two forms of upstream drift:
42
+ * - Missing / null criteria → returns [].
43
+ * - Legacy criteria shape (array of amount-range objects, the pre-3.0
44
+ * wire) → converted to an AmountCriteria so existing rules in production
45
+ * still render while the backend rolls out.
46
+ */
22
47
  const toApprovalCriteria = (payload) => {
23
- return payload.map((criteria) => ({
24
- rangeType: criteria.type,
25
- rangeEntity: criteria.range_entity,
26
- range: {
27
- min: (0, amount_1.toAmount)(criteria.min, criteria.currency_code, criteria.currency_symbol),
28
- max: criteria.max != null
29
- ? (0, amount_1.toAmount)(criteria.max, criteria.currency_code, criteria.currency_symbol)
30
- : undefined,
31
- },
32
- }));
48
+ if (payload == null) {
49
+ return [];
50
+ }
51
+ if (Array.isArray(payload)) {
52
+ // Legacy pre-3.0 wire: an array of amount-range entries.
53
+ return legacyAmountRangeToCriteria(payload);
54
+ }
55
+ if (!Array.isArray(payload.conditions)) {
56
+ return [];
57
+ }
58
+ const results = [];
59
+ const amountCriteria = toAmountCriteria(payload);
60
+ if (amountCriteria != null) {
61
+ results.push(amountCriteria);
62
+ }
63
+ payload.conditions
64
+ .filter((condition) => condition.field === 'vendor_id')
65
+ .forEach((condition) => {
66
+ const vendor = toVendorCriteria(condition);
67
+ if (vendor != null) {
68
+ results.push(vendor);
69
+ }
70
+ });
71
+ payload.conditions
72
+ .filter((condition) => condition.field === 'department_id')
73
+ .forEach((condition) => {
74
+ const department = toDepartmentCriteria(condition);
75
+ if (department != null) {
76
+ results.push(department);
77
+ }
78
+ });
79
+ return results;
80
+ };
81
+ const legacyAmountRangeToCriteria = (legacy) => {
82
+ if (legacy.length === 0) {
83
+ return [];
84
+ }
85
+ const first = legacy[0] ?? {};
86
+ const currency = first.currency_code ?? 'USD';
87
+ const symbol = first.currency_symbol ?? '$';
88
+ const min = typeof first.min === 'number'
89
+ ? (0, amount_1.toAmount)(first.min, currency, symbol)
90
+ : undefined;
91
+ const max = typeof first.max === 'number'
92
+ ? (0, amount_1.toAmount)(first.max, currency, symbol)
93
+ : undefined;
94
+ if (min == null && max == null) {
95
+ return [];
96
+ }
97
+ const comparator = min != null && max != null
98
+ ? 'range'
99
+ : min != null
100
+ ? 'greater_than'
101
+ : 'less_than';
102
+ return [{ type: 'amount', comparator, min, max }];
103
+ };
104
+ const toAmountCriteria = (payload) => {
105
+ if (!Array.isArray(payload.conditions)) {
106
+ return undefined;
107
+ }
108
+ const amountConditions = payload.conditions.filter((condition) => condition.field === 'amount');
109
+ const gteCondition = amountConditions.find((condition) => condition.type === 'gte' || condition.type === 'eq');
110
+ const lteCondition = amountConditions.find((condition) => condition.type === 'lte');
111
+ if (gteCondition == null && lteCondition == null) {
112
+ return undefined;
113
+ }
114
+ const currencyCode = payload.currency_code ?? 'USD';
115
+ const currencySymbol = payload.currency_symbol ?? '$';
116
+ const min = typeof gteCondition?.value === 'number'
117
+ ? (0, amount_1.toAmount)(gteCondition.value, currencyCode, currencySymbol)
118
+ : undefined;
119
+ const max = typeof lteCondition?.value === 'number'
120
+ ? (0, amount_1.toAmount)(lteCondition.value, currencyCode, currencySymbol)
121
+ : undefined;
122
+ let comparator;
123
+ if (min != null && max != null) {
124
+ comparator = 'range';
125
+ }
126
+ else if (min != null) {
127
+ comparator = 'greater_than';
128
+ }
129
+ else {
130
+ comparator = 'less_than';
131
+ }
132
+ return { type: 'amount', comparator, min, max };
133
+ };
134
+ const toVendorCriteria = (condition) => {
135
+ if (!Array.isArray(condition.value)) {
136
+ return undefined;
137
+ }
138
+ return {
139
+ type: 'vendor',
140
+ operator: condition.type === 'not_in' ? 'is_not' : 'is',
141
+ vendorIds: condition.value,
142
+ };
143
+ };
144
+ const toDepartmentCriteria = (condition) => {
145
+ if (!Array.isArray(condition.value)) {
146
+ return undefined;
147
+ }
148
+ return {
149
+ type: 'department',
150
+ operator: condition.type === 'not_in' ? 'is_not' : 'is',
151
+ departmentIds: condition.value,
152
+ };
33
153
  };
34
154
  const toApprovalSteps = (payload) => {
35
155
  return payload.map((step) => ({
@@ -1,4 +1,28 @@
1
1
  import { ID } from '../../commonStateTypes/common';
2
- import { ApprovalRule, ApprovalRuleState } from './approvalRuleState';
2
+ import { EntityType } from '../entityApprovalStatus/entityApprovalStatusState';
3
+ import { AmountCriteria, ApprovalRule, ApprovalRuleState, Criteria, DepartmentCriteria, VendorCriteria } from './approvalRuleState';
3
4
  export declare function getApprovalRuleById(approvalRuleState: ApprovalRuleState, approvalRuleId: ID): ApprovalRule | undefined;
4
5
  export declare function getApprovalRulesByIds(approvalRuleState: ApprovalRuleState, approvalRuleIds: ID[]): ApprovalRule[];
6
+ /**
7
+ * Returns the amount-range portion of a rule's criteria, if any.
8
+ *
9
+ * Use this whenever a caller needs to read amount min/max from the new
10
+ * discriminated `Criteria` union without inlining a type guard.
11
+ */
12
+ export declare function getAmountCriteria(criteria: Criteria[]): AmountCriteria | undefined;
13
+ export declare function getVendorCriteria(criteria: Criteria[]): VendorCriteria | undefined;
14
+ export declare function getDepartmentCriteria(criteria: Criteria[]): DepartmentCriteria | undefined;
15
+ /**
16
+ * Returns all rules of the given entityType, sorted by `priority` ascending.
17
+ *
18
+ * Rules without a `priority` value sort to the end (treated as Infinity).
19
+ * Use this for the list page where rules render in evaluation order.
20
+ */
21
+ export declare function getApprovalRulesByEntityType(approvalRuleState: ApprovalRuleState, entityType: EntityType): ApprovalRule[];
22
+ /**
23
+ * Returns the tenant's fallback rule for the given entityType, if one exists.
24
+ *
25
+ * The fallback rule is shown by the "fallback engine active" banner on the
26
+ * list page and is used to handle bills/reimbursements that match no other rule.
27
+ */
28
+ export declare function getFallbackApprovalRule(approvalRuleState: ApprovalRuleState, entityType: EntityType): ApprovalRule | undefined;
@@ -2,6 +2,11 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getApprovalRuleById = getApprovalRuleById;
4
4
  exports.getApprovalRulesByIds = getApprovalRulesByIds;
5
+ exports.getAmountCriteria = getAmountCriteria;
6
+ exports.getVendorCriteria = getVendorCriteria;
7
+ exports.getDepartmentCriteria = getDepartmentCriteria;
8
+ exports.getApprovalRulesByEntityType = getApprovalRulesByEntityType;
9
+ exports.getFallbackApprovalRule = getFallbackApprovalRule;
5
10
  function getApprovalRuleById(approvalRuleState, approvalRuleId) {
6
11
  return approvalRuleState.approvalRuleById[approvalRuleId] ?? undefined;
7
12
  }
@@ -11,3 +16,38 @@ function getApprovalRulesByIds(approvalRuleState, approvalRuleIds) {
11
16
  .filter((value) => value != null);
12
17
  return approvalRulesByIds;
13
18
  }
19
+ /**
20
+ * Returns the amount-range portion of a rule's criteria, if any.
21
+ *
22
+ * Use this whenever a caller needs to read amount min/max from the new
23
+ * discriminated `Criteria` union without inlining a type guard.
24
+ */
25
+ function getAmountCriteria(criteria) {
26
+ return criteria.find((c) => c.type === 'amount');
27
+ }
28
+ function getVendorCriteria(criteria) {
29
+ return criteria.find((c) => c.type === 'vendor');
30
+ }
31
+ function getDepartmentCriteria(criteria) {
32
+ return criteria.find((c) => c.type === 'department');
33
+ }
34
+ /**
35
+ * Returns all rules of the given entityType, sorted by `priority` ascending.
36
+ *
37
+ * Rules without a `priority` value sort to the end (treated as Infinity).
38
+ * Use this for the list page where rules render in evaluation order.
39
+ */
40
+ function getApprovalRulesByEntityType(approvalRuleState, entityType) {
41
+ return Object.values(approvalRuleState.approvalRuleById)
42
+ .filter((rule) => rule.entityType === entityType)
43
+ .sort((a, b) => (a.priority ?? Infinity) - (b.priority ?? Infinity));
44
+ }
45
+ /**
46
+ * Returns the tenant's fallback rule for the given entityType, if one exists.
47
+ *
48
+ * The fallback rule is shown by the "fallback engine active" banner on the
49
+ * list page and is used to handle bills/reimbursements that match no other rule.
50
+ */
51
+ function getFallbackApprovalRule(approvalRuleState, entityType) {
52
+ return Object.values(approvalRuleState.approvalRuleById).find((rule) => rule.entityType === entityType && rule.isFallback === true);
53
+ }
@@ -25,14 +25,48 @@ export interface Actor {
25
25
  subType?: AttributeType | RoleType;
26
26
  userId?: ID;
27
27
  }
28
- export interface Criteria {
29
- range: {
30
- min: Amount;
31
- max?: Amount;
32
- };
33
- rangeEntity: string;
34
- rangeType: string;
28
+ /**
29
+ * Approval rule criteria — discriminated union over the three condition
30
+ * types the wire format supports: amount, vendor, and department.
31
+ *
32
+ * State-side, each rule carries a `Criteria[]` with at most one variant of
33
+ * each kind (e.g. one AmountCriteria + one VendorCriteria + one DepartmentCriteria).
34
+ *
35
+ * Form-side, the rule create/edit form uses `ApprovalRuleFormCriteria`
36
+ * (defined in commonState) — a structured object with named slots for
37
+ * amount/vendor/department. Epics translate between the two.
38
+ */
39
+ export type AmountComparator = 'greater_than' | 'less_than' | 'range';
40
+ export interface AmountCriteria {
41
+ comparator: AmountComparator;
42
+ type: 'amount';
43
+ /** Upper bound. Present for `less_than` and `range`. */
44
+ max?: Amount;
45
+ /** Lower bound. Present for `greater_than` and `range`. */
46
+ min?: Amount;
47
+ }
48
+ export interface VendorCriteria {
49
+ operator: 'is' | 'is_not';
50
+ type: 'vendor';
51
+ vendorIds: ID[];
35
52
  }
53
+ export interface DepartmentCriteria {
54
+ departmentIds: ID[];
55
+ operator: 'is' | 'is_not';
56
+ type: 'department';
57
+ }
58
+ export type Criteria = AmountCriteria | VendorCriteria | DepartmentCriteria;
59
+ /**
60
+ * Approval Rules 3.0 — canonical discriminator across the three
61
+ * condition variants. Derived from the `Criteria` union's `type`
62
+ * field so it can't drift from the underlying data model.
63
+ *
64
+ * Used by the unified `ConditionRow` UI component to switch which
65
+ * variant body to render, and by chip-rendering helpers on the list
66
+ * page to pick a label format. Consumers should import this type
67
+ * rather than redeclaring the three string literals locally.
68
+ */
69
+ export type ConditionType = Criteria['type'];
36
70
  export interface Step {
37
71
  actors: Actor[];
38
72
  operator: StepOperatorType;
@@ -51,7 +85,25 @@ export interface ApprovalRule {
51
85
  entityType: EntityType;
52
86
  steps: Step[];
53
87
  updateTime: ZeniDate;
88
+ /** Backend bookkeeping: whether approval steps must run serialized. */
89
+ areApprovalsSerialized?: boolean;
90
+ /** Free-text description shown beneath the rule name on the list page. */
91
+ description?: string;
92
+ /** True when this rule is the tenant's default fallback rule. */
93
+ isFallback?: boolean;
54
94
  name?: string;
95
+ /** Backend bookkeeping: number of entities currently pending against this rule. */
96
+ pendingApprovalsCount?: number;
97
+ /** Backend bookkeeping: status of background updates against this rule. */
98
+ pendingEntityApprovalUpdateStatus?: string;
99
+ /** Rule's position in the evaluation order; lower number = higher priority. */
100
+ priority?: number;
101
+ /**
102
+ * When on, the creator of a bill/reimbursement cannot auto-approve
103
+ * their own request even if they are also an approver. Backend spec
104
+ * is still pending — kept optional for now.
105
+ */
106
+ separationOfDuties?: boolean;
55
107
  version?: number | string;
56
108
  }
57
109
  export interface Approvers {
package/lib/epic.d.ts CHANGED
@@ -368,10 +368,6 @@ import { ActionType as FetchMagicLinkTenantActionType } from './view/spendManage
368
368
  import { ActionType as SaveMagicLinkBankAccountActionType } from './view/spendManagement/billPay/magicLinkView/epics/saveMagicLinkBankAccountEpic';
369
369
  import { ActionType as FetchPreviousBillsActionType } from './view/spendManagement/billPay/previousBills/fetchPreviousBillsEpic';
370
370
  import { ActionType as WiseRedirectActionType } from './view/spendManagement/billPay/wiseRedirectView/wiseRedirectEpic';
371
- import { ActionType as FetchCashManagementSettingsActionType } from './view/spendManagement/cashManagement/autoSweepFlow/epics/fetchCashManagementSettingsEpic';
372
- import { ActionType as SaveAutoSweepSettingsActionType } from './view/spendManagement/cashManagement/autoSweepFlow/epics/saveAutoSweepSettingsEpic';
373
- import { ActionType as FetchCashManagementBannerActionType } from './view/spendManagement/cashManagement/cashManagementOverview/epics/fetchCashManagementBannerEpic';
374
- import { ActionType as FetchCashManagementOverviewPageActionType } from './view/spendManagement/cashManagement/cashManagementOverview/epics/fetchCashManagementOverviewPageEpic';
375
371
  import { ActionType as InitializeCardUserOnboardingLocalDataActionType } from './view/spendManagement/chargeCards/cardUserOnboarding/epics/initializeCardUserOnboardingLocalDataEpic';
376
372
  import { ActionType as saveCardOnboardingUserDetailsActionType } from './view/spendManagement/chargeCards/cardUserOnboarding/epics/saveCardOnboardingUserDetailsEpic';
377
373
  import { ActionType as FetchCashbackDetailActionType } from './view/spendManagement/chargeCards/cashbackDetail/fetchCashbackDetailEpic';
@@ -577,6 +573,6 @@ import { ActionType as FetchZeniAccStatePageActionType } from './view/zeniAccSta
577
573
  import { ActionType as FetchZeniAccountsPromoCardActionType } from './view/zeniAccountsPromoCard/zeniAccountsPromoCardEpic';
578
574
  import { ActionType as ApproveOAuthConsentActionType } from './view/zeniOAuthView/epics/approveOAuthConsentEpic';
579
575
  /** Root action type is union of all the epic action type */
580
- export type RootActionType = AcceptBillPayTermsActionType | ApproveOAuthConsentActionType | AcceptBillPayUpdatedTermsActionType | AcceptChargeCardTermsActionType | AcceptEmployeeRemiTermsActionType | AcceptMasterTOSEpicActionType | AcceptRemiTermsActionType | AcceptTreasuryTermsActionType | AcceptZeniAccountTermsActionType | AddCardPaymentSourceActionType | ApproveOrRejectBillActionType | ApproveOrRejectBillsBulkActionActionType | ApproveOrRejectRemiActionType | ApproveOrRejectRemisBulkActionActionType | ApproveVendorGlobalReviewActionType | ArchiveTaskActionType | BackgroundRefetchReviewTabActionType | BalanceSheetActionType | BalanceSheetForTimeframeActionType | BulkUpdateTasksListActionType | CancelAiAccountantOnboardingActionType | CancelAndDeleteBillActionType | CancelAndDeleteRemiActionType | CancelOrDeleteBillsBulkActionActionType | CancelOrDeleteRemisBulkActionActionType | CancelScheduleAccruedJournalEntryActionType | CardBalanceActionType | CashBalanceActionType | CashFlowActionType | CashFlowForTimeframeActionType | CashInCashOutActionType | CashPositionActionType | ChangeZeniPersonRolesActionType | CheckDepositActionType | ClearAllActionType | CloseChargeCardActionType | CloseChargeCardsActionType | CombinedStatementActionType | ReportsResyncActionType | InitiateReportsClassViewRefetchingActionType | CompanyManagementSavePendingUpdatesActionType | CompanyManagementSaveUpdatesActionType | ConfirmCardSetupIntentActionType | CreateAddressActionType | CreateBankAccountActionType | CreateCardSetupIntentActionType | CreateCheckingAccountActionType | CreateCompanyAddressActionType | CreateCompanyOfficersActionType | CreateCompanyUserAddressActionType | CreateAutoTransferRuleActionType | CreateGlobalMerchantActionType | CreateInternationalBankAccountActionType | CreateNewSchedulesAccruedActionType | CreateNewSchedulesActionType | CreateNewTaskGroupActionType | CreatePaymentInstrumentActionType | CreateSessionActionType | CreateSessionAndSubmitActionType | CreateTagActionType | CreateTaskFromTaskGroupTemplateActionType | CreateTransferEntryActionType | CreateUserBankAccountActionType | CurrencyConversionActionType | DeleteAccountStatementActionType | DeleteAutoTransferRuleActionType | ExcludeAccountFromReconciliationActionType | IncludeAccountInReconciliationActionType | DeleteBankAccountActionType | DeleteBillActionType | DeleteBillPayApprovalRuleActionType | DeleteChatSessionActionType | DeleteFileActionType | DeleteFileListActionType | DeleteInternationalBankAccountActionType | DeletePaymentInstrumentActionType | DeletePersonActionType | DeleteRemiActionType | DeleteRemiApprovalRuleActionType | DeleteScheduleAccruedDetailActionType | DeleteScheduleDetailActionType | DeleteTagActionType | DeleteTaskActionType | SnoozeTaskActionType | UnsnoozeTaskActionType | DeleteTaskGroupActionType | DeleteTransactionAttachmentActionType | DeleteUserBankAccountActionType | DoMagicLinkSignInActionType | DepositAccountTransactionListActionType | DownloadAccountingProviderAttachmentActionType | DragNDropTasksActionType | EnableChargeCardAutoPayActionType | EnableSetupActionType | EstablishOnboardingPlaidConnectionActionType | EstablishPlaidConnectionActionType | ExpressInterestChargeCardActionType | ExpressPayActionType | FetchAccountHistoryActionType | FetchAccountListActionType | FetchAccountListForAccountTypesActionType | FetchAccountSettingsListForAccountTypesActionType | FetchAccruedScheduleListActionType | FetchActiveTenantActionType | FetchAddressActionType | FetchAiAccountantCustomersActionType | FetchAiAccountantJobsActionType | FetchAutoTransferReviewDetailActionType | FetchAutoTransferRuleHistoryActionType | FetchAutoTransferRulesActionType | FetchAllCockpitViewsActionType | FetchAllExpenseAutomationTabsActionType | FetchAllPeopleRequiredActionType | FetchAllTagsActionType | FetchAllTaskGroupsActionType | FetchAllTenantsActionType | FetchAggregatedReportActionType | FetchApAgingActionType | FetchApAgingDetailActionType | FetchArAgingActionType | FetchArAgingDetailActionType | FetchAuditReportGroupViewActionType | FetchAuditRuleGroupViewActionType | FetchBankAccountsListActionType | FetchBankConnectionsViewActionType | FetchBankCountryNameByIbanActionType | FetchBankNameByRoutingActionType | FetchBankNameBySwiftActionType | FetchBillAndInitializeLocalStoreActionType | FetchBillDetailActionType | FetchBillingAccountsListActionType | FetchBillListActionType | FetchBillListPerTabActionType | FetchBillPayApproversDetailsActionType | FetchBillPayApproversListActionType | FetchBillPayCardActionType | FetchBillPayConfigActionType | FetchBillPaySetupApproverViewActionType | FetchBillPaySetupViewActionType | FetchCardProfilesActionType | FetchCashbackDetailActionType | FetchCashManagementSettingsActionType | SaveAutoSweepSettingsActionType | FetchCashManagementBannerActionType | FetchCashManagementOverviewPageActionType | FetchChargeCardConfigActionType | FetchChargeCardDetailActionType | FetchChargeCardDetailPageActionType | FetchChargeCardListActionType | FetchChargeCardListPageActionType | FetchChargeCardPaymentPageActionType | FetchChargeCardRepaymentDetailActionType | FetchChargeCardPaymentHistoryActionType | FetchChargeCardSetupViewActionType | FetchChargeCardStatementListActionType | FetchChargeCardTransactionAttachmentsActionType | FetchChargeCardTransactionListActionType | FetchChargeCardTransactionStatisticsActionType | FetchChargeCardsRecurringExpensesActionType | FetchChatHistoryActionType | FetchChatSessionsForUserActionType | FetchClassListActionType | FetchCollaborationAuthTokenActionType | FetchCompanyBillingAddressActionType | FetchCompanyConfigActionType | FetchCompanyHealthMetricConfigViewEpicActionType | FetchCompanyHealthMetricViewEpicActionType | FetchCompanyManagementActionType | FetchCompanyMetaDataActionType | FetchCompanyMonthEndReportHistoricDataActionType | FetchCompanyMonthEndReportHistoricDatesActionType | FetchCompanyMonthEndReportTemplatesActionType | FetchCompanyMonthEndReportViewActionType | FetchCompanyOnboardingViewActionType | FetchCompanyPassportViewActionType | FetchCompanyPortfolioActionType | FetchCompanyTaskManagerViewActionType | FetchTaskManagerMetricsActionType | FetchCreditAccountActionType | FetchCreditAccountRepaymentActionType | FetchCreditAgentMacroActionType | FetchCurrencyConversionValueActionType | FetchDashboardActionType | FetchDashboardLayoutActionType | FetchDebitCardSummaryActionType | FetchDepositAccountActionType | FetchDepositAccountDetailActionType | FetchDepositAccountLimitActionType | FetchDepositAccountListActionType | FetchDepositAccountListForCardsActionType | FetchDepositAccStatementListActionType | FetchDownloadSchedulesActionType | FetchDuplicateBillActionType | FetchDuplicateReimbursementEpicActionType | FetchEditBillDetailPageActionType | FetchEditRemiDetailPageActionType | FetchEligibleActionsForBillActionType | FetchEntityAutoCompleteActionType | FetchEntityHistoryActionType | FetchEntityRecommendationsByTransactionIdActionType | FetchEntityRecommendationsForLineUpdateActionType | FetchExcludedResourcesActionType | FetchExpenseAutomationFluxAnalysisActionType | FetchExpenseAutomationInitializeTransactionCategorizationViewLocalDataActionType | FetchExpenseAutomationJEScheduleActionType | FetchExpenseAutomationJESchedulePageActionType | FetchExpenseAutomationMarkTransactionAsNotMiscategorizedActionType | FetchExpenseAutomationMissingReceiptsActionType | BulkUploadReceiptsActionType | ConfirmBulkUploadMatchActionType | FetchBulkUploadBatchDetailsActionType | FetchMultipleBatchDetailsActionType | FetchMoreBatchDetailsActionType | FetchBulkUploadBatchesActionType | FetchCompletedTransactionsActionType | RefetchCompletedTransactionsOnBulkUploadSortActionType | RefreshBatchDetailsForBatchIdActionType | SearchTransactionsForManualMatchActionType | WatchBulkUploadBatchStatusActionType | BulkUploadMatchResultToastActionType | SyncTabsAfterAutomatchActionType | RestoreAutomatchingActionType | FetchExpenseAutomationReconciliationsViewActionType | FetchExpenseAutomationSaveTransactionCategorizationActionType | FetchExpenseAutomationTransactionCategorizationActionType | FetchExpenseAutomationTransactionCategorizationViewActionType | FetchExpenseAutomationUpdateTransactionCategorizationEpicActionType | FetchExpenseTrendActionType | FetchExternalConnectionsActionType | FetchFileActionType | FetchFileListActionType | FetchForecastListActionType | FetchGlobalMerchantAutoCompleteActionType | FetchGlobalMerchantRecommendationActionType | FetchIncomeTrendActionType | FetchInternationalWireDynamicFormActionType | FetchIntlVerificationFormActionType | FetchIssueCardPageActionType | FetchMagicLinkBankNameByRoutingActionType | FetchMagicLinkBankNameBySwiftActionType | FetchMagicLinkBillActionType | FetchMagicLinkTenantActionType | FetchManagementActionType | FetchMerchantListActionType | FetchMonthClosePerformanceTrendActionType | FetchMonthEndCloseChecksActionType | FetchMyProfileActionType | FetchMyProfileViewActionType | FetchNetBurnOrIncomeStoryCardActionType | FetchNetBurnOrIncomeWithForecastActionType | FetchNotificationSettingsActionType | FetchNotificationSettingsViewActionType | FetchNotificationUnreadCountActionType | FetchNotificationViewActionType | FetchRegisteredInterestsActionType | FetchOnboardingActionType | FetchOnboardingCompletedCompaniesActionType | FetchOnboardingCustomerSetupViewActionType | FetchOnboardingCustomerViewActionType | FetchOpExWithForecastActionType | FetchOwnerListActionType | FetchParentSubsidiaryManagementActionType | FetchPaymentAccountBalanceActionType | FetchPaymentAccountListActionType | FetchPaymentSourcesActionType | FetchPortfolioActionType | FetchPreviousBillsActionType | FetchQBOConnectionPoolActionType | FetchRecommendationByEntityIdActionType | FetchRecommendationByEntityNameActionType | FetchRecommendationsAndUpdateMerchantRecommendationsActionType | FetchRecommendationsAndUpdateVendorRecommendationsActionType | FetchRecommendedBillExpenseActionType | FetchReferralsActionType | FetchReimbursementCardActionType | FetchReimbursementConfigActionType | FetchRemiAndInitializeLocalStoreActionType | FetchRemiApproversDetailsActionType | FetchRemiApproversListActionType | FetchRemiDetailActionType | FetchRemiListActionType | FetchRemiListPerTabActionType | FetchRemiSetupApproverViewActionType | FetchRemiSetupViewActionType | FetchRevenueWithForecastActionType | FetchReviewCompanyActionType | FetchReviewTransferDetailActionType | FetchRewardsPlanActionType | FetchScheduleAccruedDetailsActionType | FetchScheduleAccruedDetailsPageActionType | FetchScheduleDetailsActionType | FetchScheduleDetailsPageActionType | FetchScheduleListActionType | FetchSchedulesListActionType | FetchSubscriptionActionType | FetchSubscriptionAddOnsActionType | FetchSubscriptionCouponsActionType | FetchSubscriptionCreateEstimateActionType | FetchSubscriptionDetailsActionType | FetchSubscriptionListActionType | FetchSubscriptionPlansActionType | FetchSubscriptionSummaryForTenantActionType | FetchSubscriptionUpdateEstimateActionType | FetchSuggestedQuestionsActionType | FetchTaskDetailActionType | FetchTaskDetailPageActionType | FetchTaskGroupTemplatesActionType | FetchTaskHistoryActionType | FetchTaskListActionType | FetchTaskListPageActionType | FetchTasksCardActionType | FetchTransactionActivityLogActionType | FetchTransactionDetailActionType | FetchTransactionListByAccountActionType | FetchTransactionListByClassActionType | FetchTransactionListByProjectActionType | FetchTransactionListByEntityActionType | FetchTransactionsForEntityActionType | FetchTransactionsListByCategoryTypeActionType | FetchTransferAccountsActionType | FetchTreasuryStatementListActionType | FetchTreasuryDetailActionType | FetchTreasuryFundsActionType | FetchTreasuryHistoryActionType | FetchTreasurySetupViewActionType | FetchTreasuryTaxLetterListActionType | FetchTreasuryTransactionListActionType | UpdatePortfolioAllocationActionType | FetchPortfolioAllocationActionType | FetchTrendForEntityActionType | FetchUserDetailActionType | FetchUserFinancialAccountActionType | FetchUserListByTypeActionType | FetchUserRoleConfigActionType | FetchVendor1099TypeListActionType | FetchVendorActionType | FetchVendorAndUpdateBillLocalDataActionType | FetchVendorByNameAndParseInvoiceActionType | FetchVendorDetailsActionType | FetchVendorFirstReviewAttachmentsActionType | FetchVendorFirstReviewViewActionType | FetchVendorGlobalReviewViewActionType | FetchVendorsActionType | FetchVendorsFiling1099ActionType | FetchVendorsFiling1099AllActionType | FetchVendorsFiling1099DownloadActionType | FetchVendorTabViewActionType | FetchVendorTypeListActionType | FetchZeniAccountListPageActionType | FetchZeniAccountsConfigActionType | FetchZeniAccountSetupViewActionType | FetchZeniAccountsPromoCardActionType | FetchZeniAccStatePageActionType | FetchZeniUsersActionType | GetOnboardingEmailGroupActionType | GetOnboardingPlaidLinkTokenActionType | GetPaymentAccountsActionType | GetPlaidLinkTokenActionType | IgnoreExpenseAutomationJEScheduleActionType | ImproveUsingZeniGPTActionType | InitialiseExpenseAutomationLocalDataForSelectedAccountIdActionType | InitializeAccountMappingViewActionType | InitializeAccountSettingsViewEpicActionType | InitializeBillPaySetupApproverViewUpdateDataActionType | InitializeBillToLocalStoreActionType | InitializeCardUserOnboardingLocalDataActionType | InitializeCompanyHealthMetricViewLocalDataEpicActionType | InitializeEditPersonActionType | InitializeExpenseAutomationJeScheduleLocalDataActionType | InitializeInternationalWireLocalDataActionType | InitializeIntlVerificationFormEpicActionType | InitializeMyProfileLocalDataActionType | InitializeOnboardingCustomerViewUpdateDataActionType | InitializeRemiSetupApproverViewUpdateDataActionType | InitializeRemiToLocalStoreActionType | InitializeScheduleAccruedDetailLocalDataActionType | InitializeScheduleDetailLocalDataActionType | InitializeSubscriptionLocalDataActionType | InitializeTaskToLocalStoreActionType | InitializeTransactionDetailLocalDataActionType | InitializeVendorAddressActionType | InitiateChargeCardRepaymentActionType | InsightsCardActionType | InvitePeopleActionType | InviteZeniPeopleActionType | IssueChargeCardActionType | LockChargeCardActionType | LockChargeCardsActionType | MarkAsCompleteScheduleDetailActionType | MarkTransactionAsNotMiscategorizedActionType | NetBurnOrIncomeActionType | NetBurnOrIncomeClassesViewActionType | NetBurnOrIncomeForTimeframeActionType | NetBurnOrIncomeForTimeframeClassesViewActionType | NotifyMeForFeatureActionType | OpExActionType | OpExByVendorReportActionType | OpExByVendorReportForTimeframeActionType | OpExByVendorReportSummaryActionType | OpExClassesViewActionType | OpExForTimeframeClassesViewActionType | OpExForTimeframeViewActionType | ParallelFetchAccountTransactionListActionType | ParallelFetchClassTransactionListActionType | ParallelFetchProjectTransactionListActionType | ParallelFetchEntityTransactionListActionType | ParallelFetchTransactionListByCategoryTypeActionType | ParseInvoiceToBillActionType | ParseReceiptsToRemiActionType | PeopleActionType | PeoplePageActionType | PeopleSaveUpdatesActionType | ProfitAndLossActionType | ProfitAndLossClassesViewActionType | ProfitAndLossForTimeframeActionType | ProfitAndLossForTimeframeClassesViewActionType | ProfitAndLossForTimeframeProjectViewActionType | ProfitAndLossProjectViewActionType | FetchProjectListActionType | PushToastNotificationActionType | RecommendationForAccountSettingsActionType | RecommendationForAccountTypeActionType | RefreshExpenseAutomationCurrentTabActionType | RefreshIntegrationsDataActionType | RejectVendorGlobalReviewActionType | ResendCardInviteActionType | ResendInviteActionType | ResendOtpActionType | ResendVerifyDeviceOTPActionType | ResendReferralInviteActionType | ResetTransactionVendorLocalDataActionType | ResetVendorDetailLocalDataActionType | RetryBankAccountConnectionActionType | RetryBankAccountConnectionForOnboardingActionType | RetryExpenseAutomationJEScheduleActionType | RetryOrRefundBillActionType | RevenueActionType | RevenueClassesViewActionType | RevenueForTimeframeClassesViewActionType | RevenueForTimeframeViewActionType | ValidateBillsBulkActionActionType | ReviewDraftRemisBulkActionActionTye | ReviewExpenseAutomationFluxAnalysisActionType | RevokeCardInviteActionType | RevokeChargeCardsInviteActionType | SaveAccountMappingViewActionType | SaveAccountSettingsViewEpicActionType | SaveAddressActionType | SaveBillDetailActionType | SaveBillPaySetupApproverViewUpdatesActionType | saveCardOnboardingUserDetailsActionType | SaveCompanyBillingAddressActionType | SaveCompanyHealthMetricByIdEpicActionType | SaveCompanyMonthEndReportActionType | SaveCompanyPassportDetailsActionType | SaveCreditAgentMacroActionType | SaveExpenseAutomationReconciliationDetailActionType | SaveExternalConnectionActionType | SaveMagicLinkBankAccountActionType | SaveNotificationSettingsEpicActionType | SaveOnboardingCustomerCompletedStatusActionType | SaveOnboardingCustomerNotesActionType | SaveOnboardingCustomerViewUpdatesActionType | SaveRealTimeApprovalActionType | SaveReasonForAuditRuleActionType | SaveReconciliationReviewActionType | SaveRemiDetailActionType | SaveRemiSetupApproverViewUpdatesActionType | SaveScheduleAccruedDetailsActionType | SaveScheduleDetailsActionType | SaveSubscriptionNotesUpdatesActionType | SaveSubscriptionUpdatesActionType | SaveTaskDetailActionType | SaveTranactionVendorActionType | SaveTransactionDetailActionType | SaveVendorActionType | SaveVendorDetailsViewActionType | SaveVendorFirstReviewViewActionType | ScheduleTenantCreditScoreCronActionType | SendCompanyMonthEndReportActionType | SendOnboardingCustomerViewInviteActionType | SendOtpActionType | SendReferralInviteActionType | SendEmailMagicLinkToUserActionType | SessionHeartbeatActionType | SignInActionType | SignOutActionType | VerifyDeviceWithTwoFAActionType | StatementCloseDayActionType | StopSubmitActionType | StopSubmitQuestionActionType | SubmitDraftBillsBulkActionActionType | SubmitDraftRemisBulkActionActionType | SubmitExpressPayActionType | SubmitIntlVerificationActionType | SubmitQuestionActionType | ToggleReportUIOptionForecastModeActionType | TopExActionType | TransferMoneyActionType | TreasuryTransferMoneyActionType | TriggerAiAccountantJobActionType | TriggerReviewTabRefetchActionType | UnlinkPaymentAccountActionType | UnlockChargeCardActionType | UnlockChargeCardsActionType | UpdateAccruedJESchedulesActionType | UpdateAddressActionType | UpdateAutoTransferRuleActionType | UpdateAmountsInScheduleAccruedDetailActionType | UpdateAmountsInScheduleDetailActionType | UpdateBusinessVerificationDetailsActionType | UpdateCardProfileActionType | UpdateChargeCardDetailActionType | UpdateChargeCardLimitActionType | UpdateChargeCardNameActionType | UpdateChargeCardsLimitActionType | UpdateAccountingClassesEnabledActionType | UpdateCompanyDetailsActionType | UpdateCompanyOfficerActionType | UpdateCompanyPassportLocalStoreDataActionType | UpdateDashboardLayoutActionType | UpdateDebitCardPinAttemptActionType | UpdateDepositAccountActionType | UpdateDynamicFormActionType | UpdateExpenseAutomationReconciliationBalanceLocalDataActionType | UpdateFileNameActionType | UpdateFilesMetadataActionType | UpdateJESchedulesActionType | UpdateMappedCashAccountActionType | UpdateMileageDetailsActionType | UpdateMyProfileActionType | UpdateNetBurnOrIncomeStoryCardSettingsActionType | UpdateNotificationViewAllNotificationsStatusActionType | UpdateNotificationViewNotificationStatusActionType | UpdateOnboardingCustomerViewActionType | UpdateOnboardingCustomerViewCompleteStatusActionType | UpdateOnboardingCustomerViewDashboardLoadedActionType | UpdateOnboardingCustomerViewLocalStoreDataActionType | UpdateOnboardingPaymentAccountLoginStatusActionType | UpdateOnboardingPaymentAccountStatusActionType | UpdatePaymentAccountActionType | UpdatePaymentAccountLoginStatusActionType | UpdatePaymentAccountStatusActionType | UpdatePhysicalChargeCardAttemptActionType | UpdatePrimaryContactActionType | UpdatePrimaryFundingAccountActionType | UpdateReferViewedActionType | UpdateRemiSetupViewLocalStoreDataActionType | UpdateReportUIOptionCOABalancesRangeActionType | UpdateReportUIOptionIsCompareModeActionType | UpdateReportUIOptionIsCompareModeOnActionType | UpdateReportUIOptionThisPeriodActionType | UpdateReportUIOptionTimeFrameActionType | UpdateQBOConnectionPoolExternalConnectionActionType | UpdateSectionAccountsViewActionType | UpdateSectionClassesViewV2ActionType | UpdateSectionProjectViewActionType | UpdateSelectedVendorForCreateFlowActionType | UpdateSetupViewLocalStoreDataActionType | UpdateTaskFromListViewActionType | UpdateTaskGroupNameActionType | FetchCannedResponsesActionType | SaveCannedResponseActionType | DeleteCannedResponseActionType | UpdateTransactionDetailActionType | UpdateTransactionOnUploadSuccessActionType | UpdateTreasuryVideoViewedActionType | UpdateVendorContactActionType | UploadAccountStatementActionType | UploadMissingReceiptSuccessEpicActionType | UploadTransactionReceiptSuccessEpicActionType | VendorFiling1099UploadDetailsSaveActionType | VendorsTabFetchVendorActionType | VendorsTabFetchVendorDetailPageViewActionType | VendorsTabFetchVendorDetailsActionType | VendorsTabResetVendorDetailLocalDataActionType | VendorsTabSaveVendorActionType | VerifyOtpActionType | VerifyUserActionType | WiseRedirectActionType;
576
+ export type RootActionType = AcceptBillPayTermsActionType | ApproveOAuthConsentActionType | AcceptBillPayUpdatedTermsActionType | AcceptChargeCardTermsActionType | AcceptEmployeeRemiTermsActionType | AcceptMasterTOSEpicActionType | AcceptRemiTermsActionType | AcceptTreasuryTermsActionType | AcceptZeniAccountTermsActionType | AddCardPaymentSourceActionType | ApproveOrRejectBillActionType | ApproveOrRejectBillsBulkActionActionType | ApproveOrRejectRemiActionType | ApproveOrRejectRemisBulkActionActionType | ApproveVendorGlobalReviewActionType | ArchiveTaskActionType | BackgroundRefetchReviewTabActionType | BalanceSheetActionType | BalanceSheetForTimeframeActionType | BulkUpdateTasksListActionType | CancelAiAccountantOnboardingActionType | CancelAndDeleteBillActionType | CancelAndDeleteRemiActionType | CancelOrDeleteBillsBulkActionActionType | CancelOrDeleteRemisBulkActionActionType | CancelScheduleAccruedJournalEntryActionType | CardBalanceActionType | CashBalanceActionType | CashFlowActionType | CashFlowForTimeframeActionType | CashInCashOutActionType | CashPositionActionType | ChangeZeniPersonRolesActionType | CheckDepositActionType | ClearAllActionType | CloseChargeCardActionType | CloseChargeCardsActionType | CombinedStatementActionType | ReportsResyncActionType | InitiateReportsClassViewRefetchingActionType | CompanyManagementSavePendingUpdatesActionType | CompanyManagementSaveUpdatesActionType | ConfirmCardSetupIntentActionType | CreateAddressActionType | CreateBankAccountActionType | CreateCardSetupIntentActionType | CreateCheckingAccountActionType | CreateCompanyAddressActionType | CreateCompanyOfficersActionType | CreateCompanyUserAddressActionType | CreateAutoTransferRuleActionType | CreateGlobalMerchantActionType | CreateInternationalBankAccountActionType | CreateNewSchedulesAccruedActionType | CreateNewSchedulesActionType | CreateNewTaskGroupActionType | CreatePaymentInstrumentActionType | CreateSessionActionType | CreateSessionAndSubmitActionType | CreateTagActionType | CreateTaskFromTaskGroupTemplateActionType | CreateTransferEntryActionType | CreateUserBankAccountActionType | CurrencyConversionActionType | DeleteAccountStatementActionType | DeleteAutoTransferRuleActionType | ExcludeAccountFromReconciliationActionType | IncludeAccountInReconciliationActionType | DeleteBankAccountActionType | DeleteBillActionType | DeleteBillPayApprovalRuleActionType | DeleteChatSessionActionType | DeleteFileActionType | DeleteFileListActionType | DeleteInternationalBankAccountActionType | DeletePaymentInstrumentActionType | DeletePersonActionType | DeleteRemiActionType | DeleteRemiApprovalRuleActionType | DeleteScheduleAccruedDetailActionType | DeleteScheduleDetailActionType | DeleteTagActionType | DeleteTaskActionType | SnoozeTaskActionType | UnsnoozeTaskActionType | DeleteTaskGroupActionType | DeleteTransactionAttachmentActionType | DeleteUserBankAccountActionType | DoMagicLinkSignInActionType | DepositAccountTransactionListActionType | DownloadAccountingProviderAttachmentActionType | DragNDropTasksActionType | EnableChargeCardAutoPayActionType | EnableSetupActionType | EstablishOnboardingPlaidConnectionActionType | EstablishPlaidConnectionActionType | ExpressInterestChargeCardActionType | ExpressPayActionType | FetchAccountHistoryActionType | FetchAccountListActionType | FetchAccountListForAccountTypesActionType | FetchAccountSettingsListForAccountTypesActionType | FetchAccruedScheduleListActionType | FetchActiveTenantActionType | FetchAddressActionType | FetchAiAccountantCustomersActionType | FetchAiAccountantJobsActionType | FetchAutoTransferReviewDetailActionType | FetchAutoTransferRuleHistoryActionType | FetchAutoTransferRulesActionType | FetchAllCockpitViewsActionType | FetchAllExpenseAutomationTabsActionType | FetchAllPeopleRequiredActionType | FetchAllTagsActionType | FetchAllTaskGroupsActionType | FetchAllTenantsActionType | FetchAggregatedReportActionType | FetchApAgingActionType | FetchApAgingDetailActionType | FetchArAgingActionType | FetchArAgingDetailActionType | FetchAuditReportGroupViewActionType | FetchAuditRuleGroupViewActionType | FetchBankAccountsListActionType | FetchBankConnectionsViewActionType | FetchBankCountryNameByIbanActionType | FetchBankNameByRoutingActionType | FetchBankNameBySwiftActionType | FetchBillAndInitializeLocalStoreActionType | FetchBillDetailActionType | FetchBillingAccountsListActionType | FetchBillListActionType | FetchBillListPerTabActionType | FetchBillPayApproversDetailsActionType | FetchBillPayApproversListActionType | FetchBillPayCardActionType | FetchBillPayConfigActionType | FetchBillPaySetupApproverViewActionType | FetchBillPaySetupViewActionType | FetchCardProfilesActionType | FetchCashbackDetailActionType | FetchChargeCardConfigActionType | FetchChargeCardDetailActionType | FetchChargeCardDetailPageActionType | FetchChargeCardListActionType | FetchChargeCardListPageActionType | FetchChargeCardPaymentPageActionType | FetchChargeCardRepaymentDetailActionType | FetchChargeCardPaymentHistoryActionType | FetchChargeCardSetupViewActionType | FetchChargeCardStatementListActionType | FetchChargeCardTransactionAttachmentsActionType | FetchChargeCardTransactionListActionType | FetchChargeCardTransactionStatisticsActionType | FetchChargeCardsRecurringExpensesActionType | FetchChatHistoryActionType | FetchChatSessionsForUserActionType | FetchClassListActionType | FetchCollaborationAuthTokenActionType | FetchCompanyBillingAddressActionType | FetchCompanyConfigActionType | FetchCompanyHealthMetricConfigViewEpicActionType | FetchCompanyHealthMetricViewEpicActionType | FetchCompanyManagementActionType | FetchCompanyMetaDataActionType | FetchCompanyMonthEndReportHistoricDataActionType | FetchCompanyMonthEndReportHistoricDatesActionType | FetchCompanyMonthEndReportTemplatesActionType | FetchCompanyMonthEndReportViewActionType | FetchCompanyOnboardingViewActionType | FetchCompanyPassportViewActionType | FetchCompanyPortfolioActionType | FetchCompanyTaskManagerViewActionType | FetchTaskManagerMetricsActionType | FetchCreditAccountActionType | FetchCreditAccountRepaymentActionType | FetchCreditAgentMacroActionType | FetchCurrencyConversionValueActionType | FetchDashboardActionType | FetchDashboardLayoutActionType | FetchDebitCardSummaryActionType | FetchDepositAccountActionType | FetchDepositAccountDetailActionType | FetchDepositAccountLimitActionType | FetchDepositAccountListActionType | FetchDepositAccountListForCardsActionType | FetchDepositAccStatementListActionType | FetchDownloadSchedulesActionType | FetchDuplicateBillActionType | FetchDuplicateReimbursementEpicActionType | FetchEditBillDetailPageActionType | FetchEditRemiDetailPageActionType | FetchEligibleActionsForBillActionType | FetchEntityAutoCompleteActionType | FetchEntityHistoryActionType | FetchEntityRecommendationsByTransactionIdActionType | FetchEntityRecommendationsForLineUpdateActionType | FetchExcludedResourcesActionType | FetchExpenseAutomationFluxAnalysisActionType | FetchExpenseAutomationInitializeTransactionCategorizationViewLocalDataActionType | FetchExpenseAutomationJEScheduleActionType | FetchExpenseAutomationJESchedulePageActionType | FetchExpenseAutomationMarkTransactionAsNotMiscategorizedActionType | FetchExpenseAutomationMissingReceiptsActionType | BulkUploadReceiptsActionType | ConfirmBulkUploadMatchActionType | FetchBulkUploadBatchDetailsActionType | FetchMultipleBatchDetailsActionType | FetchMoreBatchDetailsActionType | FetchBulkUploadBatchesActionType | FetchCompletedTransactionsActionType | RefetchCompletedTransactionsOnBulkUploadSortActionType | RefreshBatchDetailsForBatchIdActionType | SearchTransactionsForManualMatchActionType | WatchBulkUploadBatchStatusActionType | BulkUploadMatchResultToastActionType | SyncTabsAfterAutomatchActionType | RestoreAutomatchingActionType | FetchExpenseAutomationReconciliationsViewActionType | FetchExpenseAutomationSaveTransactionCategorizationActionType | FetchExpenseAutomationTransactionCategorizationActionType | FetchExpenseAutomationTransactionCategorizationViewActionType | FetchExpenseAutomationUpdateTransactionCategorizationEpicActionType | FetchExpenseTrendActionType | FetchExternalConnectionsActionType | FetchFileActionType | FetchFileListActionType | FetchForecastListActionType | FetchGlobalMerchantAutoCompleteActionType | FetchGlobalMerchantRecommendationActionType | FetchIncomeTrendActionType | FetchInternationalWireDynamicFormActionType | FetchIntlVerificationFormActionType | FetchIssueCardPageActionType | FetchMagicLinkBankNameByRoutingActionType | FetchMagicLinkBankNameBySwiftActionType | FetchMagicLinkBillActionType | FetchMagicLinkTenantActionType | FetchManagementActionType | FetchMerchantListActionType | FetchMonthClosePerformanceTrendActionType | FetchMonthEndCloseChecksActionType | FetchMyProfileActionType | FetchMyProfileViewActionType | FetchNetBurnOrIncomeStoryCardActionType | FetchNetBurnOrIncomeWithForecastActionType | FetchNotificationSettingsActionType | FetchNotificationSettingsViewActionType | FetchNotificationUnreadCountActionType | FetchNotificationViewActionType | FetchRegisteredInterestsActionType | FetchOnboardingActionType | FetchOnboardingCompletedCompaniesActionType | FetchOnboardingCustomerSetupViewActionType | FetchOnboardingCustomerViewActionType | FetchOpExWithForecastActionType | FetchOwnerListActionType | FetchParentSubsidiaryManagementActionType | FetchPaymentAccountBalanceActionType | FetchPaymentAccountListActionType | FetchPaymentSourcesActionType | FetchPortfolioActionType | FetchPreviousBillsActionType | FetchQBOConnectionPoolActionType | FetchRecommendationByEntityIdActionType | FetchRecommendationByEntityNameActionType | FetchRecommendationsAndUpdateMerchantRecommendationsActionType | FetchRecommendationsAndUpdateVendorRecommendationsActionType | FetchRecommendedBillExpenseActionType | FetchReferralsActionType | FetchReimbursementCardActionType | FetchReimbursementConfigActionType | FetchRemiAndInitializeLocalStoreActionType | FetchRemiApproversDetailsActionType | FetchRemiApproversListActionType | FetchRemiDetailActionType | FetchRemiListActionType | FetchRemiListPerTabActionType | FetchRemiSetupApproverViewActionType | FetchRemiSetupViewActionType | FetchRevenueWithForecastActionType | FetchReviewCompanyActionType | FetchReviewTransferDetailActionType | FetchRewardsPlanActionType | FetchScheduleAccruedDetailsActionType | FetchScheduleAccruedDetailsPageActionType | FetchScheduleDetailsActionType | FetchScheduleDetailsPageActionType | FetchScheduleListActionType | FetchSchedulesListActionType | FetchSubscriptionActionType | FetchSubscriptionAddOnsActionType | FetchSubscriptionCouponsActionType | FetchSubscriptionCreateEstimateActionType | FetchSubscriptionDetailsActionType | FetchSubscriptionListActionType | FetchSubscriptionPlansActionType | FetchSubscriptionSummaryForTenantActionType | FetchSubscriptionUpdateEstimateActionType | FetchSuggestedQuestionsActionType | FetchTaskDetailActionType | FetchTaskDetailPageActionType | FetchTaskGroupTemplatesActionType | FetchTaskHistoryActionType | FetchTaskListActionType | FetchTaskListPageActionType | FetchTasksCardActionType | FetchTransactionActivityLogActionType | FetchTransactionDetailActionType | FetchTransactionListByAccountActionType | FetchTransactionListByClassActionType | FetchTransactionListByProjectActionType | FetchTransactionListByEntityActionType | FetchTransactionsForEntityActionType | FetchTransactionsListByCategoryTypeActionType | FetchTransferAccountsActionType | FetchTreasuryStatementListActionType | FetchTreasuryDetailActionType | FetchTreasuryFundsActionType | FetchTreasuryHistoryActionType | FetchTreasurySetupViewActionType | FetchTreasuryTaxLetterListActionType | FetchTreasuryTransactionListActionType | UpdatePortfolioAllocationActionType | FetchPortfolioAllocationActionType | FetchTrendForEntityActionType | FetchUserDetailActionType | FetchUserFinancialAccountActionType | FetchUserListByTypeActionType | FetchUserRoleConfigActionType | FetchVendor1099TypeListActionType | FetchVendorActionType | FetchVendorAndUpdateBillLocalDataActionType | FetchVendorByNameAndParseInvoiceActionType | FetchVendorDetailsActionType | FetchVendorFirstReviewAttachmentsActionType | FetchVendorFirstReviewViewActionType | FetchVendorGlobalReviewViewActionType | FetchVendorsActionType | FetchVendorsFiling1099ActionType | FetchVendorsFiling1099AllActionType | FetchVendorsFiling1099DownloadActionType | FetchVendorTabViewActionType | FetchVendorTypeListActionType | FetchZeniAccountListPageActionType | FetchZeniAccountsConfigActionType | FetchZeniAccountSetupViewActionType | FetchZeniAccountsPromoCardActionType | FetchZeniAccStatePageActionType | FetchZeniUsersActionType | GetOnboardingEmailGroupActionType | GetOnboardingPlaidLinkTokenActionType | GetPaymentAccountsActionType | GetPlaidLinkTokenActionType | IgnoreExpenseAutomationJEScheduleActionType | ImproveUsingZeniGPTActionType | InitialiseExpenseAutomationLocalDataForSelectedAccountIdActionType | InitializeAccountMappingViewActionType | InitializeAccountSettingsViewEpicActionType | InitializeBillPaySetupApproverViewUpdateDataActionType | InitializeBillToLocalStoreActionType | InitializeCardUserOnboardingLocalDataActionType | InitializeCompanyHealthMetricViewLocalDataEpicActionType | InitializeEditPersonActionType | InitializeExpenseAutomationJeScheduleLocalDataActionType | InitializeInternationalWireLocalDataActionType | InitializeIntlVerificationFormEpicActionType | InitializeMyProfileLocalDataActionType | InitializeOnboardingCustomerViewUpdateDataActionType | InitializeRemiSetupApproverViewUpdateDataActionType | InitializeRemiToLocalStoreActionType | InitializeScheduleAccruedDetailLocalDataActionType | InitializeScheduleDetailLocalDataActionType | InitializeSubscriptionLocalDataActionType | InitializeTaskToLocalStoreActionType | InitializeTransactionDetailLocalDataActionType | InitializeVendorAddressActionType | InitiateChargeCardRepaymentActionType | InsightsCardActionType | InvitePeopleActionType | InviteZeniPeopleActionType | IssueChargeCardActionType | LockChargeCardActionType | LockChargeCardsActionType | MarkAsCompleteScheduleDetailActionType | MarkTransactionAsNotMiscategorizedActionType | NetBurnOrIncomeActionType | NetBurnOrIncomeClassesViewActionType | NetBurnOrIncomeForTimeframeActionType | NetBurnOrIncomeForTimeframeClassesViewActionType | NotifyMeForFeatureActionType | OpExActionType | OpExByVendorReportActionType | OpExByVendorReportForTimeframeActionType | OpExByVendorReportSummaryActionType | OpExClassesViewActionType | OpExForTimeframeClassesViewActionType | OpExForTimeframeViewActionType | ParallelFetchAccountTransactionListActionType | ParallelFetchClassTransactionListActionType | ParallelFetchProjectTransactionListActionType | ParallelFetchEntityTransactionListActionType | ParallelFetchTransactionListByCategoryTypeActionType | ParseInvoiceToBillActionType | ParseReceiptsToRemiActionType | PeopleActionType | PeoplePageActionType | PeopleSaveUpdatesActionType | ProfitAndLossActionType | ProfitAndLossClassesViewActionType | ProfitAndLossForTimeframeActionType | ProfitAndLossForTimeframeClassesViewActionType | ProfitAndLossForTimeframeProjectViewActionType | ProfitAndLossProjectViewActionType | FetchProjectListActionType | PushToastNotificationActionType | RecommendationForAccountSettingsActionType | RecommendationForAccountTypeActionType | RefreshExpenseAutomationCurrentTabActionType | RefreshIntegrationsDataActionType | RejectVendorGlobalReviewActionType | ResendCardInviteActionType | ResendInviteActionType | ResendOtpActionType | ResendVerifyDeviceOTPActionType | ResendReferralInviteActionType | ResetTransactionVendorLocalDataActionType | ResetVendorDetailLocalDataActionType | RetryBankAccountConnectionActionType | RetryBankAccountConnectionForOnboardingActionType | RetryExpenseAutomationJEScheduleActionType | RetryOrRefundBillActionType | RevenueActionType | RevenueClassesViewActionType | RevenueForTimeframeClassesViewActionType | RevenueForTimeframeViewActionType | ValidateBillsBulkActionActionType | ReviewDraftRemisBulkActionActionTye | ReviewExpenseAutomationFluxAnalysisActionType | RevokeCardInviteActionType | RevokeChargeCardsInviteActionType | SaveAccountMappingViewActionType | SaveAccountSettingsViewEpicActionType | SaveAddressActionType | SaveBillDetailActionType | SaveBillPaySetupApproverViewUpdatesActionType | saveCardOnboardingUserDetailsActionType | SaveCompanyBillingAddressActionType | SaveCompanyHealthMetricByIdEpicActionType | SaveCompanyMonthEndReportActionType | SaveCompanyPassportDetailsActionType | SaveCreditAgentMacroActionType | SaveExpenseAutomationReconciliationDetailActionType | SaveExternalConnectionActionType | SaveMagicLinkBankAccountActionType | SaveNotificationSettingsEpicActionType | SaveOnboardingCustomerCompletedStatusActionType | SaveOnboardingCustomerNotesActionType | SaveOnboardingCustomerViewUpdatesActionType | SaveRealTimeApprovalActionType | SaveReasonForAuditRuleActionType | SaveReconciliationReviewActionType | SaveRemiDetailActionType | SaveRemiSetupApproverViewUpdatesActionType | SaveScheduleAccruedDetailsActionType | SaveScheduleDetailsActionType | SaveSubscriptionNotesUpdatesActionType | SaveSubscriptionUpdatesActionType | SaveTaskDetailActionType | SaveTranactionVendorActionType | SaveTransactionDetailActionType | SaveVendorActionType | SaveVendorDetailsViewActionType | SaveVendorFirstReviewViewActionType | ScheduleTenantCreditScoreCronActionType | SendCompanyMonthEndReportActionType | SendOnboardingCustomerViewInviteActionType | SendOtpActionType | SendReferralInviteActionType | SendEmailMagicLinkToUserActionType | SessionHeartbeatActionType | SignInActionType | SignOutActionType | VerifyDeviceWithTwoFAActionType | StatementCloseDayActionType | StopSubmitActionType | StopSubmitQuestionActionType | SubmitDraftBillsBulkActionActionType | SubmitDraftRemisBulkActionActionType | SubmitExpressPayActionType | SubmitIntlVerificationActionType | SubmitQuestionActionType | ToggleReportUIOptionForecastModeActionType | TopExActionType | TransferMoneyActionType | TreasuryTransferMoneyActionType | TriggerAiAccountantJobActionType | TriggerReviewTabRefetchActionType | UnlinkPaymentAccountActionType | UnlockChargeCardActionType | UnlockChargeCardsActionType | UpdateAccruedJESchedulesActionType | UpdateAddressActionType | UpdateAutoTransferRuleActionType | UpdateAmountsInScheduleAccruedDetailActionType | UpdateAmountsInScheduleDetailActionType | UpdateBusinessVerificationDetailsActionType | UpdateCardProfileActionType | UpdateChargeCardDetailActionType | UpdateChargeCardLimitActionType | UpdateChargeCardNameActionType | UpdateChargeCardsLimitActionType | UpdateAccountingClassesEnabledActionType | UpdateCompanyDetailsActionType | UpdateCompanyOfficerActionType | UpdateCompanyPassportLocalStoreDataActionType | UpdateDashboardLayoutActionType | UpdateDebitCardPinAttemptActionType | UpdateDepositAccountActionType | UpdateDynamicFormActionType | UpdateExpenseAutomationReconciliationBalanceLocalDataActionType | UpdateFileNameActionType | UpdateFilesMetadataActionType | UpdateJESchedulesActionType | UpdateMappedCashAccountActionType | UpdateMileageDetailsActionType | UpdateMyProfileActionType | UpdateNetBurnOrIncomeStoryCardSettingsActionType | UpdateNotificationViewAllNotificationsStatusActionType | UpdateNotificationViewNotificationStatusActionType | UpdateOnboardingCustomerViewActionType | UpdateOnboardingCustomerViewCompleteStatusActionType | UpdateOnboardingCustomerViewDashboardLoadedActionType | UpdateOnboardingCustomerViewLocalStoreDataActionType | UpdateOnboardingPaymentAccountLoginStatusActionType | UpdateOnboardingPaymentAccountStatusActionType | UpdatePaymentAccountActionType | UpdatePaymentAccountLoginStatusActionType | UpdatePaymentAccountStatusActionType | UpdatePhysicalChargeCardAttemptActionType | UpdatePrimaryContactActionType | UpdatePrimaryFundingAccountActionType | UpdateReferViewedActionType | UpdateRemiSetupViewLocalStoreDataActionType | UpdateReportUIOptionCOABalancesRangeActionType | UpdateReportUIOptionIsCompareModeActionType | UpdateReportUIOptionIsCompareModeOnActionType | UpdateReportUIOptionThisPeriodActionType | UpdateReportUIOptionTimeFrameActionType | UpdateQBOConnectionPoolExternalConnectionActionType | UpdateSectionAccountsViewActionType | UpdateSectionClassesViewV2ActionType | UpdateSectionProjectViewActionType | UpdateSelectedVendorForCreateFlowActionType | UpdateSetupViewLocalStoreDataActionType | UpdateTaskFromListViewActionType | UpdateTaskGroupNameActionType | FetchCannedResponsesActionType | SaveCannedResponseActionType | DeleteCannedResponseActionType | UpdateTransactionDetailActionType | UpdateTransactionOnUploadSuccessActionType | UpdateTreasuryVideoViewedActionType | UpdateVendorContactActionType | UploadAccountStatementActionType | UploadMissingReceiptSuccessEpicActionType | UploadTransactionReceiptSuccessEpicActionType | VendorFiling1099UploadDetailsSaveActionType | VendorsTabFetchVendorActionType | VendorsTabFetchVendorDetailPageViewActionType | VendorsTabFetchVendorDetailsActionType | VendorsTabResetVendorDetailLocalDataActionType | VendorsTabSaveVendorActionType | VerifyOtpActionType | VerifyUserActionType | WiseRedirectActionType;
581
577
  declare const rootEpic: Epic<RootActionType>;
582
578
  export default rootEpic;