@sirmrmarty/n8n-nodes-tmux-orchestrator
Version:
n8n nodes for orchestrating Claude AI agents through tmux sessions
41 lines (40 loc) • 1.36 kB
TypeScript
import * as fs from 'fs';
export interface SecureTempFileOptions {
prefix?: string;
suffix?: string;
directory?: string;
mode?: number;
maxAge?: number;
keepOnExit?: boolean;
}
export interface SecureTempFileInfo {
path: string;
cleanup: () => Promise<void>;
isValid: () => boolean;
getStats: () => fs.Stats | null;
}
export declare class SecureTempFileManager {
private static readonly DEFAULT_TEMP_DIR;
private static readonly DEFAULT_MODE;
private static readonly DEFAULT_DIR_MODE;
private static readonly MAX_TEMP_FILES;
private static readonly DEFAULT_MAX_AGE;
private static activeTempFiles;
private static cleanupScheduled;
static createSecureTempFile(content: string | Buffer, options?: SecureTempFileOptions): Promise<SecureTempFileInfo>;
static createSecureTempDirectory(options?: SecureTempFileOptions): Promise<{
path: string;
cleanup: () => Promise<void>;
}>;
static getSecureTempDir(customDir?: string): Promise<string>;
static cleanupAll(): Promise<void>;
static getStats(): {
activeFiles: number;
oldestFileAge: number;
totalSize: number;
};
private static ensureSecureDirectory;
private static generateSecureFilename;
private static scheduleGlobalCleanup;
private static cleanupStaleFiles;
}