import { SortOrder } from '@zeniai/client-epic-state'; import { ResponsiveSized } from '../../../../../context/windowSizeProvider'; import { TransactionLineColumnKey, TransactionLineCompressedColumnKey } from '../common'; /** Header row height (Figma frame 5240:7220). */ export declare const DEFAULT_LIST_HEADER_HEIGHT_REGULAR = 32; /** Sort key union for the non-JE transaction line table. */ export type TransactionLineSortKey = "description" | "category" | "class" | "amount"; export interface TransactionLineRowSortConfig { sortKey: TransactionLineSortKey; sortOrder: SortOrder; } /** Default sort the table opens with (mirrors the JE default). */ export declare const transactionLineDefaultSortConfig: TransactionLineRowSortConfig; /** * Header item shape (mirrors `journalEntryHeaderConfig.ts` but typed * for the non-JE column key union). */ export interface TransactionLineRowHeaderItemData { customStyle: { cellStyle?: React.CSSProperties; common?: React.CSSProperties; quickView?: React.CSSProperties; }; key: TransactionLineColumnKey | TransactionLineCompressedColumnKey; /** Default direction applied when the column is freshly clicked. */ sortOrder: SortOrder; value: string; /** Fixed-pixel widths per breakpoint. */ width: ResponsiveSized; /** Percentage of the content area (0–100) used when the table fits the viewport. */ widthPercentage: number; } /** * Convenience narrowing helper used by the header click handler. The * compressed `amount` key is also sortable but the compressed view does * not show sort affordances, so this helper covers full-view sortable * keys only. */ export declare const isSortableKey: (key: string) => key is TransactionLineSortKey; export declare const toTransactionLineSortKey: (key: string) => TransactionLineSortKey;