import type React from 'react'; import type { TableCellProps } from '@mui/material'; import type { Charge, TableMode } from '../../../types/index.js'; import { getGeographyBoxColor } from '../../../utils/index.js'; import type { ActionType, FlagType } from './ActionCell'; export type GeographyBoxVariant = keyof ReturnType; export type PaymentMethod = 'VISA' | 'card' | 'MASTERCARD' | 'APPLE_PAY' | 'KNET' | 'MADA'; export interface DateCellBaseProps extends TableCellProps { value: string | Date; format?: object; flagIcon?: string; hasFlag?: boolean; tableMode?: TableMode; } export interface OrderCellProps extends TableCellProps { label: string; value: number | string; items?: Array<{ id: string; description?: string; name?: string; }>; } export interface SourceCellProps extends TableCellProps { geographyVariant?: 'G' | 'L' | 'R'; flagIcon?: string; payment?: Partial; card?: { last_four: string; }; isTextShown?: boolean; showGeographyBox?: boolean; customerInitiated?: boolean; } export interface ActionCellProps extends TableCellProps { row?: unknown; flag?: FlagType; actions?: Array<{ label: string; onClick: (e: React.MouseEvent) => void; onRightClick?: (e: React.MouseEvent) => void; icon?: ActionType; isLoading?: boolean; isError?: boolean; isSuccess?: boolean; isShown?: boolean; hasActionMenu?: boolean; iconSrc?: string; customIcon?: React.ReactNode; }>; flagTooltip?: React.ReactNode; flagsCount?: number; dropdownAction?: React.ReactNode; onCloseDropdown?: () => void; rowId?: string; isDropdownShown?: boolean; showJsonViewer?: boolean; isTextShown?: boolean; showIdButton?: boolean; onCopyId?: () => void; renderDropdown?: (anchorEl: HTMLElement | null, setAnchorEl: (anchorEl: HTMLElement | null) => void) => React.ReactNode; startSlot?: React.ReactNode; } export interface DeviceCellProps extends TableCellProps { deviceType?: 'DESKTOP' | 'PHONE' | 'TABLET'; geographyVariant?: 'G' | 'L' | 'R'; isTextShown?: boolean; deviceCountry?: string; } export declare enum ChargeStatus { ABANDONED = "ABANDONED", IN_PROGRESS = "IN_PROGRESS", VOID = "VOID", CANCELLED = "CANCELLED", CAPTURED = "CAPTURED", INITIATED = "INITIATED", FAILED = "FAILED", DECLINED = "DECLINED", RESTRICTED = "RESTRICTED", TIMEDOUT = "TIMEDOUT", UNKNOWN = "UNKNOWN", AUTHORIZED = "AUTHORIZED" }