nodejs-audio-visualizer 5.1.0 → 5.2.0

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.
Files changed (50) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +3 -2
  3. package/dist/audio.d.ts +13 -13
  4. package/dist/audio.js +128 -128
  5. package/dist/beats.d.ts +39 -39
  6. package/dist/beats.js +220 -220
  7. package/dist/bpmEncoder.d.ts +14 -14
  8. package/dist/bpmEncoder.js +97 -97
  9. package/dist/config.d.ts +78 -77
  10. package/dist/config.js +377 -369
  11. package/dist/config.js.map +1 -1
  12. package/dist/dsp.d.ts +16 -16
  13. package/dist/dsp.js +76 -76
  14. package/dist/highlight.d.ts +34 -34
  15. package/dist/highlight.js +334 -334
  16. package/dist/image.d.ts +97 -92
  17. package/dist/image.js +545 -538
  18. package/dist/image.js.map +1 -1
  19. package/dist/index.d.ts +87 -79
  20. package/dist/index.js +597 -566
  21. package/dist/index.js.map +1 -1
  22. package/dist/subtitleConvert.d.ts +3 -3
  23. package/dist/subtitleConvert.js +61 -61
  24. package/dist/video.d.ts +150 -120
  25. package/dist/video.js +677 -582
  26. package/dist/video.js.map +1 -1
  27. package/dist/waitForEventLoop.d.ts +1 -1
  28. package/dist/waitForEventLoop.js +5 -5
  29. package/package.json +62 -62
  30. package/src/audio.ts +129 -129
  31. package/src/beats.ts +279 -279
  32. package/src/bpmEncoder.ts +97 -97
  33. package/src/config.ts +487 -476
  34. package/src/dsp.ts +95 -95
  35. package/src/highlight.ts +291 -291
  36. package/src/image.ts +707 -700
  37. package/src/index.ts +79 -37
  38. package/src/subtitleConvert.ts +63 -63
  39. package/src/tests/audio.test.ts +102 -102
  40. package/src/tests/beats.test.ts +134 -134
  41. package/src/tests/config.test.ts +534 -496
  42. package/src/tests/dsp.test.ts +24 -24
  43. package/src/tests/highlight.test.ts +178 -178
  44. package/src/tests/image.test.ts +319 -308
  45. package/src/tests/index.test.ts +180 -180
  46. package/src/tests/subtitleConvert.test.ts +23 -23
  47. package/src/tests/video.test.ts +535 -447
  48. package/src/typings.d.ts +28 -28
  49. package/src/video.ts +856 -722
  50. package/src/waitForEventLoop.ts +2 -2
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,3 @@
1
- export declare const isLikelyLrc: (text: string) => boolean;
2
- export declare const lrcToSrt: (lrc: string) => string;
3
- export declare const normalizeInlineSubtitlesToSrt: (text: string) => string;
1
+ export declare const isLikelyLrc: (text: string) => boolean;
2
+ export declare const lrcToSrt: (lrc: string) => string;
3
+ export declare const normalizeInlineSubtitlesToSrt: (text: string) => string;
@@ -1,62 +1,62 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- /** LRC timestamp line: [mm:ss.xx] text — hundredths optional after dot. */
4
- var LRC_LINE = /^\[(\d+):(\d+)(?:\.(\d+))?\]\s*(.*)$/;
5
- exports.isLikelyLrc = function (text) {
6
- var body = text.replace(/^\uFEFF/, '');
7
- for (var _i = 0, _a = body.split(/\r?\n/); _i < _a.length; _i++) {
8
- var line = _a[_i];
9
- var t = line.trim();
10
- if (t.length === 0) {
11
- continue;
12
- }
13
- return LRC_LINE.test(t);
14
- }
15
- return false;
16
- };
17
- var msToSrtTime = function (ms) {
18
- var h = Math.floor(ms / 3600000);
19
- var m = Math.floor((ms % 3600000) / 60000);
20
- var s = Math.floor((ms % 60000) / 1000);
21
- var milli = ms % 1000;
22
- var pad = function (n, w) { return String(n).padStart(w, '0'); };
23
- return pad(h, 2) + ":" + pad(m, 2) + ":" + pad(s, 2) + "," + pad(milli, 3);
24
- };
25
- var DEFAULT_TAIL_MS = 2000;
26
- exports.lrcToSrt = function (lrc) {
27
- var body = lrc.replace(/^\uFEFF/, '');
28
- var entries = [];
29
- for (var _i = 0, _a = body.split(/\r?\n/); _i < _a.length; _i++) {
30
- var line = _a[_i];
31
- var match = line.trim().match(LRC_LINE);
32
- if (!match) {
33
- continue;
34
- }
35
- var min = parseInt(match[1], 10);
36
- var sec = parseInt(match[2], 10);
37
- var centisec = match[3] !== undefined
38
- ? parseInt(match[3].padEnd(2, '0').slice(0, 2), 10)
39
- : 0;
40
- var startMs = (min * 60 + sec) * 1000 + centisec * 10;
41
- var text = (match[4] || '').trim();
42
- if (text.length > 0) {
43
- entries.push({ startMs: startMs, text: text });
44
- }
45
- }
46
- entries.sort(function (a, b) { return a.startMs - b.startMs; });
47
- var out = '';
48
- for (var i = 0; i < entries.length; i++) {
49
- var start = entries[i].startMs;
50
- var end = i + 1 < entries.length
51
- ? Math.max(entries[i + 1].startMs, start + 1)
52
- : start + DEFAULT_TAIL_MS;
53
- out += i + 1 + "\n";
54
- out += msToSrtTime(start) + " --> " + msToSrtTime(end) + "\n";
55
- out += entries[i].text + "\n\n";
56
- }
57
- return out.length > 0 ? out.replace(/\n*$/, '\n') : '';
58
- };
59
- exports.normalizeInlineSubtitlesToSrt = function (text) {
60
- return exports.isLikelyLrc(text) ? exports.lrcToSrt(text) : text;
61
- };
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ /** LRC timestamp line: [mm:ss.xx] text — hundredths optional after dot. */
4
+ var LRC_LINE = /^\[(\d+):(\d+)(?:\.(\d+))?\]\s*(.*)$/;
5
+ exports.isLikelyLrc = function (text) {
6
+ var body = text.replace(/^\uFEFF/, '');
7
+ for (var _i = 0, _a = body.split(/\r?\n/); _i < _a.length; _i++) {
8
+ var line = _a[_i];
9
+ var t = line.trim();
10
+ if (t.length === 0) {
11
+ continue;
12
+ }
13
+ return LRC_LINE.test(t);
14
+ }
15
+ return false;
16
+ };
17
+ var msToSrtTime = function (ms) {
18
+ var h = Math.floor(ms / 3600000);
19
+ var m = Math.floor((ms % 3600000) / 60000);
20
+ var s = Math.floor((ms % 60000) / 1000);
21
+ var milli = ms % 1000;
22
+ var pad = function (n, w) { return String(n).padStart(w, '0'); };
23
+ return pad(h, 2) + ":" + pad(m, 2) + ":" + pad(s, 2) + "," + pad(milli, 3);
24
+ };
25
+ var DEFAULT_TAIL_MS = 2000;
26
+ exports.lrcToSrt = function (lrc) {
27
+ var body = lrc.replace(/^\uFEFF/, '');
28
+ var entries = [];
29
+ for (var _i = 0, _a = body.split(/\r?\n/); _i < _a.length; _i++) {
30
+ var line = _a[_i];
31
+ var match = line.trim().match(LRC_LINE);
32
+ if (!match) {
33
+ continue;
34
+ }
35
+ var min = parseInt(match[1], 10);
36
+ var sec = parseInt(match[2], 10);
37
+ var centisec = match[3] !== undefined
38
+ ? parseInt(match[3].padEnd(2, '0').slice(0, 2), 10)
39
+ : 0;
40
+ var startMs = (min * 60 + sec) * 1000 + centisec * 10;
41
+ var text = (match[4] || '').trim();
42
+ if (text.length > 0) {
43
+ entries.push({ startMs: startMs, text: text });
44
+ }
45
+ }
46
+ entries.sort(function (a, b) { return a.startMs - b.startMs; });
47
+ var out = '';
48
+ for (var i = 0; i < entries.length; i++) {
49
+ var start = entries[i].startMs;
50
+ var end = i + 1 < entries.length
51
+ ? Math.max(entries[i + 1].startMs, start + 1)
52
+ : start + DEFAULT_TAIL_MS;
53
+ out += i + 1 + "\n";
54
+ out += msToSrtTime(start) + " --> " + msToSrtTime(end) + "\n";
55
+ out += entries[i].text + "\n\n";
56
+ }
57
+ return out.length > 0 ? out.replace(/\n*$/, '\n') : '';
58
+ };
59
+ exports.normalizeInlineSubtitlesToSrt = function (text) {
60
+ return exports.isLikelyLrc(text) ? exports.lrcToSrt(text) : text;
61
+ };
62
62
  //# sourceMappingURL=subtitleConvert.js.map
package/dist/video.d.ts CHANGED
@@ -1,120 +1,150 @@
1
- /// <reference types="node" />
2
- import { Readable, Writable } from 'stream';
3
- import { TempoEstimate } from './beats';
4
- export interface AudioMuxSegment {
5
- seekSeconds: number;
6
- durationSeconds: number;
7
- }
8
- interface FfmpegVideoWriterConfig {
9
- audioFilename: string;
10
- subtitleFilename?: string;
11
- /** ASS `Alignment` in FFmpeg `subtitles` `force_style` (e.g. 2 bottom, 5 middle, 8 top). Default 2. */
12
- subtitleAlignmentAss?: number;
13
- videoFileName: string;
14
- fps: number;
15
- crf?: string;
16
- preset?: string;
17
- onStderr?: (data: any) => any;
18
- /** When set with `audioDurationSeconds`, passed to ffmpeg before `-i` for muxed highlight. */
19
- audioSeekSeconds?: number;
20
- audioDurationSeconds?: number;
21
- /** One contiguous trim of the same audio file (muxed highlight). */
22
- audioSegment?: AudioMuxSegment;
23
- }
24
- export declare const spawnFfmpegVideoWriter: (config: FfmpegVideoWriterConfig) => import("child_process").ChildProcessWithoutNullStreams;
25
- export interface VideoInfo {
26
- width: number;
27
- height: number;
28
- duration: number;
29
- }
30
- export interface SceneChange {
31
- frameNumber: number;
32
- pts: number;
33
- ptsTime: number;
34
- }
35
- export declare const detectSceneChanges: (videoPath: string, threshold?: number) => Promise<SceneChange[]>;
36
- export declare const getVideoInfo: (videoPath: string) => Promise<VideoInfo>;
37
- export declare const buildVideoFilter: (sourceWidth: number, sourceHeight: number, targetWidth: number, targetHeight: number) => string;
38
- export declare const spawnVideoFrameReader: (config: {
39
- videoPath: string;
40
- fps: number;
41
- totalFrames: number;
42
- width?: number | undefined;
43
- height?: number | undefined;
44
- sourceWidth?: number | undefined;
45
- sourceHeight?: number | undefined;
46
- }) => import("child_process").ChildProcessWithoutNullStreams;
47
- export declare const readVideoFrame: (stream: Readable, frameSize: number, timeoutMs?: number) => Promise<Buffer | null>;
48
- export declare const getProgress: (onProgress: (currentFrame: number) => any) => (stderrOutput: Buffer) => void;
49
- export declare const calculateProgress: (framesCount: number, callback: (progress: number) => any) => (currentFrame: number) => any;
50
- export declare const waitDrain: (stream: Writable, processStream?: {
51
- once: (eventName: string, listener: (...args: any[]) => void) => any;
52
- removeListener: (eventName: string, listener: (...args: any[]) => void) => any;
53
- } | undefined, timeoutMs?: number) => Promise<boolean>;
54
- export interface ProcessExitResult {
55
- exitCode: number;
56
- reason?: string;
57
- }
58
- export declare const waitForProcessExit: (processStream: {
59
- once: (eventName: string, listener: (...args: any[]) => void) => any;
60
- removeListener: (eventName: string, listener: (...args: any[]) => void) => any;
61
- }, timeoutMs?: number) => Promise<ProcessExitResult>;
62
- export interface VideoSegment {
63
- outputStartFrame: number;
64
- videoSeekSeconds: number;
65
- frameCount: number;
66
- }
67
- /** Minimum time between auto-edit cuts; cuts still land on beats. */
68
- export declare const DEFAULT_AUTO_EDIT_MIN_CUT_INTERVAL_SECONDS = 2;
69
- /** Window after the minimum gap in which the strongest beat is chosen. */
70
- export declare const DEFAULT_AUTO_EDIT_MAX_CUT_INTERVAL_SECONDS = 4;
71
- /** Half a bar of 4/4, used as the minimum gap when tempo is known. */
72
- export declare const AUTO_EDIT_MIN_CUT_BEATS = 2;
73
- /** One bar of 4/4, used as the maximum gap when tempo is known. */
74
- export declare const AUTO_EDIT_MAX_CUT_BEATS = 4;
75
- /** Snap an onset to the tempo grid when it is within this fraction of a beat. */
76
- export declare const BEAT_SNAP_TOLERANCE = 0.25;
77
- export declare const cutIntervalSecondsFromTempo: (bpm: number) => {
78
- minCutIntervalSeconds: number;
79
- maxCutIntervalSeconds: number;
80
- };
81
- export declare const snapBeatsToTempoGrid: (beats: {
82
- frameIndex: number;
83
- intensity?: number | undefined;
84
- }[], tempo: Pick<TempoEstimate, "periodFrames" | "phaseFrame">, totalFrames: number) => {
85
- frameIndex: number;
86
- intensity?: number | undefined;
87
- }[];
88
- /** Every BPM-grid beat, with onset intensity copied onto the nearest grid frame. */
89
- export declare const projectBeatsOntoTempoGrid: (beats: {
90
- frameIndex: number;
91
- intensity?: number | undefined;
92
- }[], tempo: Pick<TempoEstimate, "periodFrames" | "phaseFrame">, totalFrames: number) => {
93
- frameIndex: number;
94
- intensity?: number | undefined;
95
- }[];
96
- export declare const selectAutoEditCutFrames: (beats: {
97
- frameIndex: number;
98
- intensity?: number | undefined;
99
- }[], fps: number, totalFrames: number, minIntervalSeconds?: number, maxIntervalSeconds?: number) => number[];
100
- export declare const buildBeatSyncedSegments: (beatFrameIndices: number[], totalFrames: number, sceneChanges: SceneChange[], videoDuration: number, fps: number, options?: {
101
- beatIntensities?: number[] | undefined;
102
- minCutIntervalSeconds?: number | undefined;
103
- maxCutIntervalSeconds?: number | undefined;
104
- tempo?: TempoEstimate | undefined;
105
- } | undefined) => VideoSegment[];
106
- export declare const getCutFrameIndices: (segments: VideoSegment[]) => number[];
107
- export declare const writeConcatFile: (segments: VideoSegment[], videoPath: string, videoDuration: number, fps: number) => string;
108
- export declare const writeSubtitlesFile: (subtitles: string) => string;
109
- export declare const spawnConcatVideoFrameReader: (config: {
110
- concatFilePath: string;
111
- fps: number;
112
- totalFrames: number;
113
- width?: number | undefined;
114
- height?: number | undefined;
115
- sourceWidth?: number | undefined;
116
- sourceHeight?: number | undefined;
117
- }) => import("child_process").ChildProcessWithoutNullStreams;
118
- export declare const cleanupTempFile: (filePath: string) => void;
119
- export declare const cleanupConcatFile: (filePath: string) => void;
120
- export {};
1
+ /// <reference types="node" />
2
+ import { Readable, Writable } from 'stream';
3
+ import { TempoEstimate } from './beats';
4
+ export interface AudioMuxSegment {
5
+ seekSeconds: number;
6
+ durationSeconds: number;
7
+ }
8
+ interface FfmpegVideoWriterConfig {
9
+ audioFilename: string;
10
+ subtitleFilename?: string;
11
+ /** ASS `Alignment` in FFmpeg `subtitles` `force_style` (e.g. 2 bottom, 5 middle, 8 top). Default 2. */
12
+ subtitleAlignmentAss?: number;
13
+ videoFileName: string;
14
+ fps: number;
15
+ crf?: string;
16
+ preset?: string;
17
+ onStderr?: (data: any) => any;
18
+ /** When set with `audioDurationSeconds`, passed to ffmpeg before `-i` for muxed highlight. */
19
+ audioSeekSeconds?: number;
20
+ audioDurationSeconds?: number;
21
+ /** One contiguous trim of the same audio file (muxed highlight). */
22
+ audioSegment?: AudioMuxSegment;
23
+ }
24
+ export declare const spawnFfmpegVideoWriter: (config: FfmpegVideoWriterConfig) => import("child_process").ChildProcessWithoutNullStreams;
25
+ export interface VideoInfo {
26
+ width: number;
27
+ height: number;
28
+ duration: number;
29
+ }
30
+ export interface SceneChange {
31
+ frameNumber: number;
32
+ pts: number;
33
+ ptsTime: number;
34
+ }
35
+ export declare const detectSceneChanges: (videoPath: string, threshold?: number) => Promise<SceneChange[]>;
36
+ export declare const getVideoInfo: (videoPath: string) => Promise<VideoInfo>;
37
+ export declare const buildVideoFilter: (sourceWidth: number, sourceHeight: number, targetWidth: number, targetHeight: number) => string;
38
+ export declare const spawnVideoFrameReader: (config: {
39
+ videoPath: string;
40
+ fps: number;
41
+ totalFrames: number;
42
+ width?: number | undefined;
43
+ height?: number | undefined;
44
+ sourceWidth?: number | undefined;
45
+ sourceHeight?: number | undefined;
46
+ }) => import("child_process").ChildProcessWithoutNullStreams;
47
+ export declare const readVideoFrame: (stream: Readable, frameSize: number, timeoutMs?: number) => Promise<Buffer | null>;
48
+ export declare const getProgress: (onProgress: (currentFrame: number) => any) => (stderrOutput: Buffer) => void;
49
+ export declare const calculateProgress: (framesCount: number, callback: (progress: number) => any) => (currentFrame: number) => any;
50
+ export declare const waitDrain: (stream: Writable, processStream?: {
51
+ once: (eventName: string, listener: (...args: any[]) => void) => any;
52
+ removeListener: (eventName: string, listener: (...args: any[]) => void) => any;
53
+ } | undefined, timeoutMs?: number) => Promise<boolean>;
54
+ export interface ProcessExitResult {
55
+ exitCode: number;
56
+ reason?: string;
57
+ }
58
+ export declare const waitForProcessExit: (processStream: {
59
+ once: (eventName: string, listener: (...args: any[]) => void) => any;
60
+ removeListener: (eventName: string, listener: (...args: any[]) => void) => any;
61
+ }, timeoutMs?: number) => Promise<ProcessExitResult>;
62
+ export interface VideoSegment {
63
+ outputStartFrame: number;
64
+ videoSeekSeconds: number;
65
+ frameCount: number;
66
+ /** Index into the background video sources array; defaults to 0 when omitted. */
67
+ videoIndex?: number;
68
+ }
69
+ /** Minimum time between auto-edit cuts; cuts still land on beats. */
70
+ export declare const DEFAULT_AUTO_EDIT_MIN_CUT_INTERVAL_SECONDS = 2;
71
+ /** Window after the minimum gap in which the strongest beat is chosen. */
72
+ export declare const DEFAULT_AUTO_EDIT_MAX_CUT_INTERVAL_SECONDS = 4;
73
+ /** Half a bar of 4/4, used as the minimum gap when tempo is known. */
74
+ export declare const AUTO_EDIT_MIN_CUT_BEATS = 2;
75
+ /** One bar of 4/4, used as the maximum gap when tempo is known. */
76
+ export declare const AUTO_EDIT_MAX_CUT_BEATS = 4;
77
+ /** Snap an onset to the tempo grid when it is within this fraction of a beat. */
78
+ export declare const BEAT_SNAP_TOLERANCE = 0.25;
79
+ export declare const cutIntervalSecondsFromTempo: (bpm: number) => {
80
+ minCutIntervalSeconds: number;
81
+ maxCutIntervalSeconds: number;
82
+ };
83
+ export declare const snapBeatsToTempoGrid: (beats: {
84
+ frameIndex: number;
85
+ intensity?: number | undefined;
86
+ }[], tempo: Pick<TempoEstimate, "periodFrames" | "phaseFrame">, totalFrames: number) => {
87
+ frameIndex: number;
88
+ intensity?: number | undefined;
89
+ }[];
90
+ /** Every BPM-grid beat, with onset intensity copied onto the nearest grid frame. */
91
+ export declare const projectBeatsOntoTempoGrid: (beats: {
92
+ frameIndex: number;
93
+ intensity?: number | undefined;
94
+ }[], tempo: Pick<TempoEstimate, "periodFrames" | "phaseFrame">, totalFrames: number) => {
95
+ frameIndex: number;
96
+ intensity?: number | undefined;
97
+ }[];
98
+ export declare const selectAutoEditCutFrames: (beats: {
99
+ frameIndex: number;
100
+ intensity?: number | undefined;
101
+ }[], fps: number, totalFrames: number, minIntervalSeconds?: number, maxIntervalSeconds?: number) => number[];
102
+ /**
103
+ * Splits `totalFrames` into segments that cycle through `videoDurations` in order, each
104
+ * segment playing one source video from the start. Used for `video.path` arrays with
105
+ * `autoEdit` disabled, so the given videos play one after another (looping the sequence).
106
+ * `startVideoIndex` rotates which video plays first (e.g. so separate auto-highlight outputs
107
+ * each open with a different video).
108
+ */
109
+ export declare const buildSequentialVideoSegments: (totalFrames: number, videoDurations: number[], fps: number, startVideoIndex?: number) => VideoSegment[];
110
+ /**
111
+ * Builds auto-edit cut segments like `buildBeatSyncedSegments`, but instead of switching
112
+ * between detected scenes within a single video, each segment is assigned a video from
113
+ * `videoCount` sources. Videos are picked by shuffling the full set into a "bag" and cycling
114
+ * through it (reshuffling once exhausted), rather than picking uniformly at random each time,
115
+ * so every video plays about as often as the others instead of some clumping together while
116
+ * others go unpicked for long stretches. The same video never plays twice in a row, including
117
+ * across a reshuffle.
118
+ */
119
+ export declare const buildShuffledVideoSegments: (beatFrameIndices: number[], totalFrames: number, videoCount: number, fps: number, options?: {
120
+ beatIntensities?: number[] | undefined;
121
+ minCutIntervalSeconds?: number | undefined;
122
+ maxCutIntervalSeconds?: number | undefined;
123
+ tempo?: TempoEstimate | undefined;
124
+ randomFn?: (() => number) | undefined;
125
+ } | undefined) => VideoSegment[];
126
+ export declare const buildBeatSyncedSegments: (beatFrameIndices: number[], totalFrames: number, sceneChanges: SceneChange[], videoDuration: number, fps: number, options?: {
127
+ beatIntensities?: number[] | undefined;
128
+ minCutIntervalSeconds?: number | undefined;
129
+ maxCutIntervalSeconds?: number | undefined;
130
+ tempo?: TempoEstimate | undefined;
131
+ } | undefined) => VideoSegment[];
132
+ export declare const getCutFrameIndices: (segments: VideoSegment[]) => number[];
133
+ export interface VideoSourceInfo {
134
+ path: string;
135
+ duration: number;
136
+ }
137
+ export declare const writeConcatFile: (segments: VideoSegment[], videoSources: VideoSourceInfo[], fps: number) => string;
138
+ export declare const writeSubtitlesFile: (subtitles: string) => string;
139
+ export declare const spawnConcatVideoFrameReader: (config: {
140
+ concatFilePath: string;
141
+ fps: number;
142
+ totalFrames: number;
143
+ width?: number | undefined;
144
+ height?: number | undefined;
145
+ sourceWidth?: number | undefined;
146
+ sourceHeight?: number | undefined;
147
+ }) => import("child_process").ChildProcessWithoutNullStreams;
148
+ export declare const cleanupTempFile: (filePath: string) => void;
149
+ export declare const cleanupConcatFile: (filePath: string) => void;
150
+ export {};