import { AddressPayload } from '../../../../entity/address/addressPayload'; import { ChargeCardPayload } from '../../../../entity/chargeCard/chargeCardPayload'; import { ChargeCardMerchantPayload, ChargeCardTransactionPayload } from '../../../../entity/chargeCardTransaction/chargeCardTransactionPayload'; import { ConnectedAccountPayload } from '../../../../entity/connectedAccount/connectedAccountPayload'; import { AmountPayload } from '../../../../entity/reimbursement/reimbursementPayload'; import { AttachmentPayload } from '../../../../entity/transaction/payloadTypes/attachmentPayload'; import { UserPayload } from '../../../../entity/user/userPayload'; import { UserRolePayload } from '../../../../entity/userRole/userRolePayload'; import { ZeniAPIResponse } from '../../../../responsePayload'; interface ChargeCardTransactionAttachmentPayload { attachments: AttachmentPayload[]; } export type UpdateChargeCardTransactionAttachmentResponse = ZeniAPIResponse; interface ChargeCardDetailPayload { addresses: AddressPayload[]; card: ChargeCardPayload; connected_account: ConnectedAccountPayload; user_roles: UserRolePayload[]; users: UserPayload[]; } export type FetchChargeCardDetailResponse = ZeniAPIResponse; export type UpdateChargeCardLimitResponse = ZeniAPIResponse; export interface ChargeCardTransactionListPayload { query: ChargeCardTrasactionQuery; total_count: number; transactions: ChargeCardTransactionPayload[]; } interface ChargeCardTrasactionQuery { limit: number; page_token: null | string; page_token_type: string | null; sort_by: string; sort_order: string; } export type FetchChargeCardTransactionListResponse = ZeniAPIResponse; export type FetchChargeCardTransactionStatisticsResponse = ZeniAPIResponse; export interface ChargeCardTransactionStatisticsPayload { number_of_authorized_transactions_current_month: number; number_of_canceled_transactions_current_month: number; number_of_declined_transactions_current_month: number; number_of_paid_transactions_current_month: number; number_of_transactions_with_receipts_current_month: number; total_number_of_authorized_transactions: number; total_number_of_canceled_transactions: number; total_number_of_declined_transactions: number; total_number_of_paid_transactions: number; total_number_of_transactions_with_receipts: number; } export interface RecurringExpensePayload extends AmountPayload { merchant: ChargeCardMerchantPayload; next_payment_date: string; } interface ChargeCardRecurringExpensePayload { card_id: string; expenses: RecurringExpensePayload[]; } export type FetchChargeCardRecurringExpensesResponse = ZeniAPIResponse; export {};