UNPKG

n8n-nodes-binalyze-air

Version:

Binalyze AIR nodes for automating DFIR with n8n workflows

177 lines (176 loc) 5.22 kB
import { IExecuteFunctions, ILoadOptionsFunctions } from 'n8n-workflow'; import { AirCredentials } from '../../../../credentials/AirApi.credentials'; export interface InterACTSession { _id: string; sessionId: string; endpointId: string; status: string; createdAt: string; createdBy: string; updatedAt: string; lastActivity: string; } export interface InterACTCommand { _id: string; sessionId: string; command: string; status: string; result?: string; output?: string; error?: string; executedAt: string; completedAt?: string; } export interface InterACTMessage { _id: string; messageId: string; sessionId: string; type: string; content: string; timestamp: string; status: string; } export interface ExecuteCommandRequest { command: string; timeout?: number; workingDirectory?: string; environment?: Record<string, string>; } export interface ExecuteCommandResponse { success: boolean; result: { messageId: string; command?: string; status?: string; output?: string; error?: string; session?: { id: string; }; exitCode?: number; cwd?: string; body?: string; }; statusCode: number; errors: string[]; } export interface ExecuteAsyncCommandRequest { command: string; timeout?: number; workingDirectory?: string; environment?: Record<string, string>; } export interface ExecuteAsyncCommandResponse { success: boolean; result: { messageId: string; command: string; status: string; jobId: string; }; statusCode: number; errors: string[]; } export interface InterruptCommandResponse { success: boolean; result: { messageId: string; status: string; message: string; }; statusCode: number; errors: string[]; } export interface CloseSessionResponse { success: boolean; result: { sessionId: string; status: string; message: string; }; statusCode: number; errors: string[]; } export interface GetCommandMessageResponse { success: boolean; result: InterACTMessage & { output?: string; error?: string; exitCode?: number; }; statusCode: number; errors: string[]; } export interface AssignInterACTTaskRequest { sessionType: string; commands?: string[]; timeout?: number; filter: { searchTerm?: string; name?: string; ipAddress?: string; groupId?: string; groupFullPath?: string; managedStatus?: string[]; isolationStatus?: string[]; platform?: string[]; issue?: string; onlineStatus?: string[]; tags?: string[]; version?: string; policy?: string; includedEndpointIds?: string[]; excludedEndpointIds?: string[]; organizationIds?: (string | number)[]; }; } export interface CreateInterACTSessionRequest { assetId: string; caseId?: string | null; taskConfig: { choice: string; }; } export interface AssignInterACTTaskResponse { success: boolean; result: Array<{ _id: string; name: string; sessionId: string; endpointId: string; organizationId: number; loginUrl?: string; shellUrl?: string; reportUrl?: string; }>; statusCode: number; errors: string[]; } export interface CreateInterACTSessionResponse { success: boolean; result: { id: string; type: string; data: { sessionId: string; idleTimeout: number; config: any; privileges: string[]; }; assetId: string; loginUrl: string; shellUrl: string; reportUrl: string; }; statusCode: number; errors: string[]; } export declare const api: { executeCommand(context: IExecuteFunctions | ILoadOptionsFunctions, credentials: AirCredentials, sessionId: string, data: ExecuteCommandRequest): Promise<ExecuteCommandResponse>; executeAsyncCommand(context: IExecuteFunctions | ILoadOptionsFunctions, credentials: AirCredentials, sessionId: string, data: ExecuteAsyncCommandRequest): Promise<ExecuteAsyncCommandResponse>; interruptCommand(context: IExecuteFunctions | ILoadOptionsFunctions, credentials: AirCredentials, sessionId: string, messageId: string): Promise<InterruptCommandResponse>; closeSession(context: IExecuteFunctions | ILoadOptionsFunctions, credentials: AirCredentials, sessionId: string): Promise<CloseSessionResponse>; getCommandMessage(context: IExecuteFunctions | ILoadOptionsFunctions, credentials: AirCredentials, sessionId: string, messageId: string): Promise<GetCommandMessageResponse>; assignInterACTTask(context: IExecuteFunctions | ILoadOptionsFunctions, credentials: AirCredentials, data: AssignInterACTTaskRequest): Promise<AssignInterACTTaskResponse>; createInterACTSession(context: IExecuteFunctions | ILoadOptionsFunctions, credentials: AirCredentials, data: CreateInterACTSessionRequest): Promise<CreateInterACTSessionResponse>; };