import { AccountPayload } from '../../../../entity/account/accountPayload'; import { ApprovalRulePayload } from '../../../../entity/approvalRule/approvalRulePayload'; import { BankAccountPayload } from '../../../../entity/bankAccount/bankAccountPayload'; import { BillTransactionPayload } from '../../../../entity/billPay/billTransaction/billTransactionPayload'; import { RecurringBillConfigResponsePayload, RecurringBillDataPayload } from '../../../../entity/billPay/recurringBills/recurringBillsPayload'; import { DepositAccountPayload } from '../../../../entity/depositAccount/depositAccountPayload'; import { EntityApprovalStatusPayload } from '../../../../entity/entityApprovalStatus/entityApprovalStatusPayload'; import { PaymentAccountPayload } from '../../../../entity/paymentAccount/paymentAccountPayload'; import { PaymentInstrumentPayload } from '../../../../entity/paymentInstrument/paymentInstrumentPayload'; import { UserPayload } from '../../../../entity/user/userPayload'; import { VendorPayload } from '../../../../entity/vendor/vendorPayload'; import { ZeniAPIResponse } from '../../../../responsePayload'; interface ApproveOrRejectBillPayload { approval_rules: ApprovalRulePayload[]; entity_approvals: EntityApprovalStatusPayload[]; users: UserPayload[]; } export interface BillDetailViewPayload extends ApproveOrRejectBillPayload { accounts: AccountPayload[]; bank_accounts: BankAccountPayload[]; deposit_accounts: DepositAccountPayload[]; payment_accounts: PaymentAccountPayload[]; payment_instruments: PaymentInstrumentPayload[]; query: BillDetailQuery; query_definitions: Record; recurring_bill_configs: RecurringBillConfigResponsePayload[]; recurring_bills: RecurringBillDataPayload[]; transaction: BillTransactionPayload; vendors: VendorPayload[]; } export interface EligibleActionsPayload { is_refund_eligible: boolean | null; is_retry_eligible: { is_ibt_retry_eligible: boolean | null; is_obp_retry_eligible: boolean | null; }; } export interface BillDetailQuery { bill_pay_provider: string; is_include_payment_accounts_info: boolean; transaction_type: string; } export type BillDetailViewResponse = ZeniAPIResponse; export type EligibleActionsResponse = ZeniAPIResponse; export type ApproveOrRejectBillResponse = ZeniAPIResponse; export interface PreviousBillsPayload { entity_approvals: EntityApprovalStatusPayload[]; query: PreviousBillsQuery; transactions: BillTransactionPayload[]; } export interface PreviousBillsQuery { bill_pay_provider: string; end_date: string; entity_id: string; entity_name: string; entity_type: string; is_include_attachment: boolean; is_include_events: boolean; is_include_payment_accounts_info: boolean; limit: number; sort_by: string; sort_order: string; start_date: string; transaction_type: string; } export type PreviousBillsResponse = ZeniAPIResponse; export {};