drawBorder.d.ts 1.7 KB

12345678910111213141516171819202122232425262728293031323334
  1. import type { SpanningCellManager } from './spanningCellManager';
  2. import type { BorderConfig, DrawVerticalLine } from './types/api';
  3. import type { SeparatorGetter } from './types/internal';
  4. declare type Separator = {
  5. readonly left: string;
  6. readonly right: string;
  7. readonly body: string;
  8. readonly bodyJoinOuter?: string;
  9. readonly bodyJoinInner?: string;
  10. readonly join: string;
  11. readonly joinUp?: string;
  12. readonly joinDown?: string;
  13. readonly joinLeft?: string;
  14. readonly joinRight?: string;
  15. };
  16. export declare const drawBorderSegments: (columnWidths: number[], parameters: Parameters<typeof drawBorder>[1]) => string[];
  17. export declare const createSeparatorGetter: (dependencies: Parameters<typeof drawBorder>[1]) => (verticalBorderIndex: number, columnCount: number) => string;
  18. export declare const drawBorder: (columnWidths: number[], parameters: Omit<DrawBorderParameters, 'border'> & {
  19. separator: Separator;
  20. }) => string;
  21. export declare const drawBorderTop: (columnWidths: number[], parameters: DrawBorderParameters) => string;
  22. export declare const drawBorderJoin: (columnWidths: number[], parameters: DrawBorderParameters) => string;
  23. export declare const drawBorderBottom: (columnWidths: number[], parameters: DrawBorderParameters) => string;
  24. export declare type BorderGetterParameters = {
  25. border: BorderConfig;
  26. drawVerticalLine: DrawVerticalLine;
  27. spanningCellManager?: SpanningCellManager;
  28. rowCount?: number;
  29. };
  30. export declare type DrawBorderParameters = Omit<BorderGetterParameters, 'outputColumnWidths'> & {
  31. horizontalBorderIndex?: number;
  32. };
  33. export declare const createTableBorderGetter: (columnWidths: number[], parameters: BorderGetterParameters) => SeparatorGetter;
  34. export {};