ansimax 1.3.1 → 1.3.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -960,7 +960,82 @@ interface RenderOptions$1 {
960
960
  /** Use braille (2×4 sub-char resolution). Overrides halfBlock. */
961
961
  braille?: boolean;
962
962
  }
963
+ /**
964
+ * Render a 2D grid of pixels (`{r, g, b, a?}` objects) as terminal output
965
+ * using half-block characters (`▀`) to fit two vertical pixels per row.
966
+ * This doubles vertical resolution compared to one-character-per-pixel.
967
+ *
968
+ * @param pixels - 2D grid of pixel objects.
969
+ * @param opts - Render options (scale, background, etc.).
970
+ *
971
+ * @example basic pixel art
972
+ * ```js
973
+ * import { renderPixelArt } from 'ansimax';
974
+ *
975
+ * const heart = [
976
+ * [null, {r:255,g:0,b:0}, null, {r:255,g:0,b:0}, null],
977
+ * [{r:255,g:0,b:0}, {r:255,g:0,b:0}, {r:255,g:0,b:0}, {r:255,g:0,b:0}, {r:255,g:0,b:0}],
978
+ * [{r:255,g:0,b:0}, {r:255,g:0,b:0}, {r:255,g:0,b:0}, {r:255,g:0,b:0}, {r:255,g:0,b:0}],
979
+ * [null, {r:255,g:0,b:0}, {r:255,g:0,b:0}, {r:255,g:0,b:0}, null],
980
+ * [null, null, {r:255,g:0,b:0}, null, null],
981
+ * ];
982
+ *
983
+ * console.log(renderPixelArt(heart));
984
+ * ```
985
+ *
986
+ * @example with scale (each pixel rendered as multiple chars)
987
+ * ```js
988
+ * console.log(renderPixelArt(myPixels, { scale: 2 }));
989
+ * // Each pixel becomes 2x2 in the output
990
+ * ```
991
+ *
992
+ * @example with background color (transparent pixels show through)
993
+ * ```js
994
+ * console.log(renderPixelArt(myPixels, {
995
+ * background: { r: 30, g: 30, b: 30 },
996
+ * }));
997
+ * ```
998
+ *
999
+ * @example combined with a sprite from SPRITES
1000
+ * ```js
1001
+ * import { renderPixelArt, SPRITES } from 'ansimax';
1002
+ *
1003
+ * console.log(renderPixelArt(SPRITES.heart.pixels, { scale: 3 }));
1004
+ * ```
1005
+ */
963
1006
  declare const renderPixelArt: (pixels: PixelGrid, opts?: RenderOptions$1) => string;
1007
+ /**
1008
+ * Built-in sprite library — small pre-defined pixel art ready for use.
1009
+ *
1010
+ * Each entry has a `pixels` property containing a `PixelGrid`.
1011
+ *
1012
+ * Currently available: `heart`, `star`, `arrow`, `check`, `x`, `bell`,
1013
+ * `gear`, `bolt`, `flag`, `crown`.
1014
+ *
1015
+ * @example render a built-in sprite
1016
+ * ```js
1017
+ * import { renderPixelArt, SPRITES } from 'ansimax';
1018
+ *
1019
+ * console.log(renderPixelArt(SPRITES.heart.pixels));
1020
+ * console.log(renderPixelArt(SPRITES.star.pixels, { scale: 2 }));
1021
+ * ```
1022
+ *
1023
+ * @example list all available sprites
1024
+ * ```js
1025
+ * console.log('Available sprites:', Object.keys(SPRITES).join(', '));
1026
+ * ```
1027
+ *
1028
+ * @example compose sprites on a canvas
1029
+ * ```js
1030
+ * import { createCanvas, SPRITES } from 'ansimax';
1031
+ *
1032
+ * const canvas = createCanvas(30, 10);
1033
+ * canvas.drawSprite(2, 2, SPRITES.heart.pixels);
1034
+ * canvas.drawSprite(10, 2, SPRITES.star.pixels);
1035
+ * canvas.drawSprite(18, 2, SPRITES.crown.pixels);
1036
+ * canvas.print();
1037
+ * ```
1038
+ */
964
1039
  declare const SPRITES: Record<string, {
965
1040
  pixels: PixelGrid;
966
1041
  }>;
@@ -985,6 +1060,78 @@ interface GradientRectOptions {
985
1060
  /** Render in braille mode for 2× horizontal × 4× vertical resolution. */
986
1061
  braille?: boolean;
987
1062
  }
1063
+ /**
1064
+ * Render a rectangle filled with a multi-color gradient. Supports horizontal,
1065
+ * vertical, diagonal, arbitrary-angle, radial, and conic gradient styles.
1066
+ *
1067
+ * @param opts - Configuration: dimensions, colors, style, dithering.
1068
+ *
1069
+ * @example horizontal gradient (default)
1070
+ * ```js
1071
+ * import { gradientRect } from 'ansimax';
1072
+ *
1073
+ * console.log(gradientRect({
1074
+ * width: 40, height: 10,
1075
+ * colors: ['#ff0000', '#0000ff'],
1076
+ * }));
1077
+ * ```
1078
+ *
1079
+ * @example vertical gradient with multiple stops
1080
+ * ```js
1081
+ * console.log(gradientRect({
1082
+ * width: 30, height: 15,
1083
+ * colors: ['#ff0000', '#ffff00', '#00ff00', '#0000ff'],
1084
+ * style: 'vertical',
1085
+ * }));
1086
+ * ```
1087
+ *
1088
+ * @example arbitrary angle (45° = bottom-left to top-right)
1089
+ * ```js
1090
+ * console.log(gradientRect({
1091
+ * width: 40, height: 20,
1092
+ * colors: ['#bd93f9', '#ff79c6'],
1093
+ * style: 'diagonal',
1094
+ * angle: 45,
1095
+ * }));
1096
+ * ```
1097
+ *
1098
+ * @example radial gradient (center to edge)
1099
+ * ```js
1100
+ * console.log(gradientRect({
1101
+ * width: 30, height: 15,
1102
+ * colors: ['#ffffff', '#000000'],
1103
+ * style: 'radial',
1104
+ * }));
1105
+ * ```
1106
+ *
1107
+ * @example conic (rainbow wheel) — v1.2.0+
1108
+ * ```js
1109
+ * console.log(gradientRect({
1110
+ * width: 30, height: 15,
1111
+ * colors: ['#ff0000', '#ffff00', '#00ff00', '#00ffff', '#0000ff', '#ff00ff', '#ff0000'],
1112
+ * style: 'conic',
1113
+ * startAngle: 0,
1114
+ * }));
1115
+ * ```
1116
+ *
1117
+ * @example with Bayer dithering for smoother tonal transitions
1118
+ * ```js
1119
+ * console.log(gradientRect({
1120
+ * width: 60, height: 20,
1121
+ * colors: ['#000033', '#ffcc00'],
1122
+ * dither: 'bayer',
1123
+ * }));
1124
+ * ```
1125
+ *
1126
+ * @example braille mode (4× vertical resolution per cell)
1127
+ * ```js
1128
+ * console.log(gradientRect({
1129
+ * width: 60, height: 30,
1130
+ * colors: ['#ff0000', '#0000ff'],
1131
+ * braille: true,
1132
+ * }));
1133
+ * ```
1134
+ */
988
1135
  declare const gradientRect: (opts?: GradientRectOptions) => string;
989
1136
  interface CanvasRenderOptions extends RenderOptions$1 {
990
1137
  /** Render only the dirty region instead of the whole canvas. Default: false. */
@@ -1011,6 +1158,61 @@ interface Canvas {
1011
1158
  /** Deep copy of the current pixel grid. Mutations don't affect the canvas. */
1012
1159
  pixels: PixelGrid;
1013
1160
  }
1161
+ /**
1162
+ * Create a mutable in-memory canvas with drawing primitives (line, rect,
1163
+ * circle, sprite). The canvas tracks dirty regions so subsequent renders
1164
+ * can update only changed pixels (useful for animation).
1165
+ *
1166
+ * @param width - Canvas width in pixels (1 to MAX_DIMENSION).
1167
+ * @param height - Canvas height in pixels (1 to MAX_DIMENSION).
1168
+ * @param fillColor - Initial fill (`null` for transparent). Default `null`.
1169
+ * @returns A Canvas object with drawing methods.
1170
+ *
1171
+ * @example draw and render a simple scene
1172
+ * ```js
1173
+ * import { createCanvas } from 'ansimax';
1174
+ *
1175
+ * const canvas = createCanvas(40, 20, { r: 20, g: 20, b: 30 });
1176
+ *
1177
+ * canvas.drawRect(5, 5, 30, 10, { r: 100, g: 200, b: 255 }, true);
1178
+ * canvas.drawCircle(20, 10, 4, { r: 255, g: 200, b: 0 }, true);
1179
+ * canvas.drawLine(0, 0, 39, 19, { r: 255, g: 0, b: 100 });
1180
+ *
1181
+ * canvas.print(); // render and write to stdout
1182
+ * ```
1183
+ *
1184
+ * @example animated frame with dirty-region tracking
1185
+ * ```js
1186
+ * const canvas = createCanvas(60, 30);
1187
+ *
1188
+ * for (let frame = 0; frame < 100; frame++) {
1189
+ * canvas.setPixel(frame % 60, 15, { r: 255, g: 0, b: 0 });
1190
+ *
1191
+ * // Only re-render changed pixels (much faster than full redraw)
1192
+ * process.stdout.write(canvas.render({ dirtyOnly: true }));
1193
+ * await new Promise(r => setTimeout(r, 50));
1194
+ * }
1195
+ * ```
1196
+ *
1197
+ * @example composite sprites
1198
+ * ```js
1199
+ * import { createCanvas, SPRITES } from 'ansimax';
1200
+ *
1201
+ * const canvas = createCanvas(40, 20);
1202
+ * canvas.drawSprite(5, 5, SPRITES.heart.pixels);
1203
+ * canvas.drawSprite(20, 5, SPRITES.star.pixels);
1204
+ * canvas.print();
1205
+ * ```
1206
+ *
1207
+ * @example resize while preserving content
1208
+ * ```js
1209
+ * const canvas = createCanvas(20, 10, { r: 50, g: 50, b: 50 });
1210
+ * canvas.drawCircle(10, 5, 3, { r: 255, g: 0, b: 0 });
1211
+ *
1212
+ * canvas.resize(40, 20); // existing pixels remain in upper-left
1213
+ * canvas.print();
1214
+ * ```
1215
+ */
1014
1216
  declare const createCanvas: (width: number, height: number, fillColor?: Pixel) => Canvas;
1015
1217
  declare const images: {
1016
1218
  render: (pixels: PixelGrid, opts?: RenderOptions$1) => string;
@@ -1077,6 +1279,20 @@ interface BoxOptions {
1077
1279
  borderStyle?: BoxStyle;
1078
1280
  /** Fix inner content width. Lines are padded/truncated to fit. */
1079
1281
  width?: number | null;
1282
+ /**
1283
+ * Optional title shown in the top border, e.g. `─ Title ─────`.
1284
+ * When set, the box expands to fit the title if content is narrower.
1285
+ *
1286
+ * @since 1.3.3
1287
+ */
1288
+ title?: string | null;
1289
+ /**
1290
+ * Title alignment in the top border: `'left'` | `'center'` (default) | `'right'`.
1291
+ * Only applies when `title` is set.
1292
+ *
1293
+ * @since 1.3.3
1294
+ */
1295
+ titleAlign?: 'left' | 'center' | 'right';
1080
1296
  }
1081
1297
  interface BannerOptions {
1082
1298
  font?: FontName | string;
@@ -1092,6 +1308,13 @@ interface DividerOptions {
1092
1308
  width?: number | null;
1093
1309
  label?: string | null;
1094
1310
  style?: BoxStyle;
1311
+ /**
1312
+ * Label alignment: `'left'` | `'center'` (default) | `'right'`.
1313
+ * Only applies when `label` is set.
1314
+ *
1315
+ * @since 1.3.3
1316
+ */
1317
+ align?: 'left' | 'center' | 'right';
1095
1318
  }
1096
1319
  interface LogoOptions {
1097
1320
  gradient?: ColorFn | null;
@@ -2097,9 +2320,16 @@ interface FrameOptions {
2097
2320
  */
2098
2321
  bottomChar?: string;
2099
2322
  /**
2100
- * Optional title shown centered in the top edge.
2323
+ * Optional title shown in the top edge.
2101
2324
  */
2102
2325
  title?: string;
2326
+ /**
2327
+ * Title alignment: `'left'` | `'center'` (default) | `'right'`.
2328
+ * Only applies when `title` is set.
2329
+ *
2330
+ * @since 1.3.3
2331
+ */
2332
+ titleAlign?: 'left' | 'center' | 'right';
2103
2333
  }
2104
2334
  /**
2105
2335
  * Add decorative top/bottom rule lines around a block (lighter than `ascii.box`
@@ -2137,11 +2367,71 @@ interface FrameOptions {
2137
2367
  * ```
2138
2368
  */
2139
2369
  declare const frame: (block: string, opts?: FrameOptions) => string;
2370
+ interface GridOptions {
2371
+ /** Number of columns. Required. */
2372
+ columns: number;
2373
+ /** Horizontal gap between cells. Default `1`. */
2374
+ gapX?: number;
2375
+ /** Vertical gap between rows. Default `0`. */
2376
+ gapY?: number;
2377
+ /** Horizontal alignment of content within each cell. Default `'start'`. */
2378
+ alignX?: Alignment;
2379
+ /** Vertical alignment of content within each cell. Default `'start'`. */
2380
+ alignY?: Alignment;
2381
+ /**
2382
+ * Fix each cell to this width (in visible characters). If omitted, cells
2383
+ * use the max width of the widest block in their column.
2384
+ */
2385
+ cellWidth?: number | null;
2386
+ }
2387
+ /**
2388
+ * Arrange blocks in a grid of N columns, flowing left-to-right then
2389
+ * top-to-bottom. Each row is auto-sized to its tallest block, and each
2390
+ * column is auto-sized to its widest block (unless `cellWidth` is fixed).
2391
+ *
2392
+ * Internally uses `vsplit` for rows + `hsplit` for the column stack, so
2393
+ * all alignment + ANSI rules behave consistently.
2394
+ *
2395
+ * @param blocks - Pre-rendered string blocks. Flows in reading order.
2396
+ * @param opts - Grid configuration. `columns` is required.
2397
+ *
2398
+ * @example 2×2 grid of stats cards
2399
+ * ```js
2400
+ * import { panels, ascii } from 'ansimax';
2401
+ *
2402
+ * const cards = [
2403
+ * ascii.box('FILES\n42', { borderStyle: 'rounded', padding: 1 }),
2404
+ * ascii.box('LINES\n1247', { borderStyle: 'rounded', padding: 1 }),
2405
+ * ascii.box('TESTS\n38', { borderStyle: 'rounded', padding: 1 }),
2406
+ * ascii.box('COV\n98%', { borderStyle: 'rounded', padding: 1 }),
2407
+ * ];
2408
+ *
2409
+ * console.log(panels.grid(cards, { columns: 2, gapX: 2, gapY: 1 }));
2410
+ * ```
2411
+ *
2412
+ * @example 3-column gallery with auto-flow
2413
+ * ```js
2414
+ * // 7 items in 3 columns → 3 rows: [3, 3, 1]
2415
+ * const items = ['One', 'Two', 'Three', 'Four', 'Five', 'Six', 'Seven'];
2416
+ * console.log(panels.grid(items, { columns: 3, gapX: 4 }));
2417
+ * ```
2418
+ *
2419
+ * @example uniform cell width for visual consistency
2420
+ * ```js
2421
+ * console.log(panels.grid(blocks, {
2422
+ * columns: 4,
2423
+ * cellWidth: 15,
2424
+ * alignX: 'center',
2425
+ * }));
2426
+ * ```
2427
+ */
2428
+ declare const grid: (blocks: string[], opts: GridOptions) => string;
2140
2429
  declare const panels: {
2141
2430
  vsplit: (blocks: string[], opts?: VsplitOptions) => string;
2142
2431
  hsplit: (blocks: string[], opts?: HsplitOptions) => string;
2143
2432
  center: (block: string, opts: CenterOptions) => string;
2144
2433
  frame: (block: string, opts?: FrameOptions) => string;
2434
+ grid: (blocks: string[], opts: GridOptions) => string;
2145
2435
  };
2146
2436
 
2147
2437
  /**
@@ -2199,6 +2489,23 @@ interface PrettyOptions {
2199
2489
  * @since 1.3.1
2200
2490
  */
2201
2491
  inlineArrayMaxLength?: number;
2492
+ /**
2493
+ * Output mode controls what kind of string is produced:
2494
+ *
2495
+ * - `'display'` (default) — terminal-friendly output with colors (when
2496
+ * enabled) and informational placeholders like `[Circular]`,
2497
+ * `[Function: name]`, `Symbol(x)`, `Map(2) {...}`, `Set(3) {...}`,
2498
+ * `Date(2026-06-13T...)`, `BigInt(123n)`. Not parseable as JSON.
2499
+ *
2500
+ * - `'json'` — strict, parseable JSON output. Colors are forced off,
2501
+ * circular references throw `TypeError`, and types not representable
2502
+ * in JSON (functions, symbols, undefined) are omitted from objects /
2503
+ * replaced with `null` in arrays. Map/Set are converted to objects/arrays.
2504
+ * Dates become ISO strings. BigInt becomes a number (or string if too large).
2505
+ *
2506
+ * @since 1.3.3
2507
+ */
2508
+ mode?: 'display' | 'json';
2202
2509
  }
2203
2510
  /**
2204
2511
  * Pretty-print a JavaScript value with colored output suitable for
@@ -2416,4 +2723,4 @@ declare const ansimax: {
2416
2723
  configure: (opts?: AnsimaxConfig, meta?: ConfigureOptions) => void;
2417
2724
  };
2418
2725
 
2419
- export { ASCII_RAMPS, type Alignment, type AnimateGradientController, type AnimateGradientOptions, type AnimationHooks, type AnimationSpeed, type AnsiCode, type AnsimaxConfig, type AsciiRamp, BEL, BG, type BadgeOptions, type BallOptions, type BannerOptions, type BoxOptions, type BoxStyle, type BreatheOptions, DEFAULTS as CONFIG_DEFAULTS, CSI, type Canvas, type CanvasRenderOptions, type CenterOptions, type ColorChain, type ColorFn, type ColorLevel, type ColorMode, type ColorSupport, type ColumnsOptions, type ConfigChangeListener, type ConfigKey, type ConfigKeyListener, type ConfigureOptions, type CountdownOptions, type CustomOptions, DEFAULT_TERM_COLS, DEFAULT_TERM_ROWS, type DebounceOptions, type DiffType, type Dimensions, type DividerOptions, type DotsOptions, ESC, type EasingFn, type EasingName, type EraseMode, FG, FRAME_MS, type FadeOptions, type FigletFont, type FigletOptions, type FontMap, type FontName, type FrameCallback, type FrameHandle, type FrameOptions, type FromImageOptions, type GlitchOptions, type Glyph, type GradientOptions, type GradientRectOptions, type HsplitOptions, type PrettyOptions as JsonPrettyOptions, type LineDiff, type LiveController, type LiveOptions, type LoadingBarOptions, type LogoOptions, MENU_CANCELLED, type MemoizeOptions, type MenuInput, type MenuOptions, type MenuOutput, type MenuResult, type MultiLoader, type MultiLoaderItem, OSC, type OnResizeOptions, type OutputBuffer, type ParallelOptions, type ParallelStep, type Pixel, type PixelGrid, type PlayController, type PlayOptions, type PresetName, type ProgressAnimateOptions, type ProgressBarOptions, type ProgressOptions, type PulseOptions, type RGB, type RGBA, type RegisterFontOptions, type RenderOptions$1 as RenderOptions, type ResizeListener, type ReusableGradient, type RevealOptions, SPINNERS, SPRITES, ST, STYLE, type SectionOptions, type SleepOptions, type SlideOptions, type SpinOptions, type SpinnerType, type StatusOptions, type StatusType, type StopFn, type StreamOptions, type TableBorderStyle, type TableOptions, type Task, type TaskResult, type TasksOptions, type Theme, type BannerOpts as ThemeBannerOpts, type ThemeChangeListener, type ThemeInstance, type ThemeStyleName, type TimelineEvent, type TimelineOptions, type TreeData, type TreeDimensions, type TreeNode, type RenderOptions as TreeRenderOptions, type TreeStyle, type TypeDeleteOptions, type TypewriterOptions, type VsplitOptions, type WalkVisitor, type WaveOptions, type WriteAsyncOptions, animate, animateGradient, ascii, bell, bg256, bgRgb, box, canAnimate, cancelTerminalFrame, center$1 as center, center as centerBlock, chain, charWidth, clamp, clearAnsiCache, clearColorCache, clearRenderCache, clearThemeColorCache, color, colorLevel, presets as colorPresets, components, compose, configure, countNodes, createCanvas, createGradient, createOutputBuffer, createTheme, cursor, debounce, ansimax as default, diffLines, escapeRegex, fg256, fgRgb, figletText, filterTree, findInTree, flipHorizontal, flipVertical, frame, frames, fromImage, getConfig, getConfigValue, getRenderCacheSize, getSpeedMultiplier, getTerminalHeight, getTerminalWidth, gradient, gradientColor, gradientRect, graphemes, hasFont, hexToRgb, hideCursor, hsplit, images, isHexColor, isNoColor, json, pretty as jsonPretty, lerp, lerpColor, link, listFonts, listPresets, loader, mapTree, measureTree, memoize, nextTick, onConfigChange, onConfigKeyChange, onResize, once, padBoth, padEnd, padStart, panels, parseFiglet, pauseListeners, presetNames, presets, rainbow, registerFont, registerPreset, renderPixelArt, renderTree, renderTreeStream, repeatVisible, requestTerminalFrame, reset, resetColorSupportCache, resetConfig, resetCursorRefCount, resetFramesCursorCount, resetLoaderCursorCount, resetNoColor, resumeListeners, reverseGradient, rgbTo256, rgbToHex, rotate90, safeJson, screen, setNoColor, setTitle, sgr, showCursor, sleep, sleepFrame, sliceAnsi, stripAnsi$1 as stripAnsi, stripAnsi$2 as stripAnsiCodes, stripAnsi as stripAnsiColors, supportsColor, supportsColorLevel, termSize, themes, throttle, tree, trees, truncateAnsi, visibleLen, vsplit, walkTree, withConfig, wordWrap, wrapAnsi, write, writeAsync, writeErr, writeln, writelnErr };
2726
+ export { ASCII_RAMPS, type Alignment, type AnimateGradientController, type AnimateGradientOptions, type AnimationHooks, type AnimationSpeed, type AnsiCode, type AnsimaxConfig, type AsciiRamp, BEL, BG, type BadgeOptions, type BallOptions, type BannerOptions, type BoxOptions, type BoxStyle, type BreatheOptions, DEFAULTS as CONFIG_DEFAULTS, CSI, type Canvas, type CanvasRenderOptions, type CenterOptions, type ColorChain, type ColorFn, type ColorLevel, type ColorMode, type ColorSupport, type ColumnsOptions, type ConfigChangeListener, type ConfigKey, type ConfigKeyListener, type ConfigureOptions, type CountdownOptions, type CustomOptions, DEFAULT_TERM_COLS, DEFAULT_TERM_ROWS, type DebounceOptions, type DiffType, type Dimensions, type DividerOptions, type DotsOptions, ESC, type EasingFn, type EasingName, type EraseMode, FG, FRAME_MS, type FadeOptions, type FigletFont, type FigletOptions, type FontMap, type FontName, type FrameCallback, type FrameHandle, type FrameOptions, type FromImageOptions, type GlitchOptions, type Glyph, type GradientOptions, type GradientRectOptions, type GridOptions, type HsplitOptions, type PrettyOptions as JsonPrettyOptions, type LineDiff, type LiveController, type LiveOptions, type LoadingBarOptions, type LogoOptions, MENU_CANCELLED, type MemoizeOptions, type MenuInput, type MenuOptions, type MenuOutput, type MenuResult, type MultiLoader, type MultiLoaderItem, OSC, type OnResizeOptions, type OutputBuffer, type ParallelOptions, type ParallelStep, type Pixel, type PixelGrid, type PlayController, type PlayOptions, type PresetName, type ProgressAnimateOptions, type ProgressBarOptions, type ProgressOptions, type PulseOptions, type RGB, type RGBA, type RegisterFontOptions, type RenderOptions$1 as RenderOptions, type ResizeListener, type ReusableGradient, type RevealOptions, SPINNERS, SPRITES, ST, STYLE, type SectionOptions, type SleepOptions, type SlideOptions, type SpinOptions, type SpinnerType, type StatusOptions, type StatusType, type StopFn, type StreamOptions, type TableBorderStyle, type TableOptions, type Task, type TaskResult, type TasksOptions, type Theme, type BannerOpts as ThemeBannerOpts, type ThemeChangeListener, type ThemeInstance, type ThemeStyleName, type TimelineEvent, type TimelineOptions, type TreeData, type TreeDimensions, type TreeNode, type RenderOptions as TreeRenderOptions, type TreeStyle, type TypeDeleteOptions, type TypewriterOptions, type VsplitOptions, type WalkVisitor, type WaveOptions, type WriteAsyncOptions, animate, animateGradient, ascii, bell, bg256, bgRgb, box, canAnimate, cancelTerminalFrame, center$1 as center, center as centerBlock, chain, charWidth, clamp, clearAnsiCache, clearColorCache, clearRenderCache, clearThemeColorCache, color, colorLevel, presets as colorPresets, components, compose, configure, countNodes, createCanvas, createGradient, createOutputBuffer, createTheme, cursor, debounce, ansimax as default, diffLines, escapeRegex, fg256, fgRgb, figletText, filterTree, findInTree, flipHorizontal, flipVertical, frame, frames, fromImage, getConfig, getConfigValue, getRenderCacheSize, getSpeedMultiplier, getTerminalHeight, getTerminalWidth, gradient, gradientColor, gradientRect, graphemes, grid, hasFont, hexToRgb, hideCursor, hsplit, images, isHexColor, isNoColor, json, pretty as jsonPretty, lerp, lerpColor, link, listFonts, listPresets, loader, mapTree, measureTree, memoize, nextTick, onConfigChange, onConfigKeyChange, onResize, once, padBoth, padEnd, padStart, panels, parseFiglet, pauseListeners, presetNames, presets, rainbow, registerFont, registerPreset, renderPixelArt, renderTree, renderTreeStream, repeatVisible, requestTerminalFrame, reset, resetColorSupportCache, resetConfig, resetCursorRefCount, resetFramesCursorCount, resetLoaderCursorCount, resetNoColor, resumeListeners, reverseGradient, rgbTo256, rgbToHex, rotate90, safeJson, screen, setNoColor, setTitle, sgr, showCursor, sleep, sleepFrame, sliceAnsi, stripAnsi$1 as stripAnsi, stripAnsi$2 as stripAnsiCodes, stripAnsi as stripAnsiColors, supportsColor, supportsColorLevel, termSize, themes, throttle, tree, trees, truncateAnsi, visibleLen, vsplit, walkTree, withConfig, wordWrap, wrapAnsi, write, writeAsync, writeErr, writeln, writelnErr };