n8n-nodes-nessus
Version:
n8n community node for Tenable Nessus vulnerability scanner integration
51 lines (50 loc) • 2.28 kB
TypeScript
import { IExecuteFunctions, IDataObject } from 'n8n-workflow';
interface PaginationOptions {
limit?: number;
offset?: number;
sort?: string;
order?: 'asc' | 'desc';
}
export declare class NessusApi {
private executeFunctions;
constructor(executeFunctions: IExecuteFunctions);
private makeRequest;
private parseNessusError;
private buildPaginationParams;
listScans(paginationOptions?: PaginationOptions): Promise<any>;
getScanDetails(scanId: number): Promise<any>;
createScan(scanData: IDataObject): Promise<any>;
launchScan(scanId: number, altTargets?: string[]): Promise<any>;
stopScan(scanId: number): Promise<any>;
pauseScan(scanId: number): Promise<any>;
resumeScan(scanId: number): Promise<any>;
deleteScan(scanId: number): Promise<any>;
exportScan(scanId: number, format: string, historyId?: number): Promise<any>;
getScanExportStatus(scanId: number, fileId: number): Promise<any>;
downloadScanExport(scanId: number, fileId: number): Promise<any>;
copyScan(scanId: number, folderId?: number, name?: string): Promise<any>;
listPolicies(paginationOptions?: PaginationOptions): Promise<any>;
getPolicyDetails(policyId: number): Promise<any>;
createPolicy(policyData: IDataObject): Promise<any>;
updatePolicy(policyId: number, policyData: IDataObject): Promise<any>;
deletePolicy(policyId: number): Promise<any>;
copyPolicy(policyId: number): Promise<any>;
listFolders(): Promise<any>;
createFolder(name: string): Promise<any>;
deleteFolder(folderId: number): Promise<any>;
listPluginFamilies(paginationOptions?: PaginationOptions): Promise<any>;
listPluginsInFamily(familyId: number, paginationOptions?: PaginationOptions): Promise<any>;
getPluginDetails(pluginId: number): Promise<any>;
getSessionDetails(): Promise<any>;
editSession(sessionData: IDataObject): Promise<any>;
listScanTemplates(): Promise<any>;
listPolicyTemplates(): Promise<any>;
private validateId;
private validateScanData;
private validatePolicyData;
private validateFolderName;
private validateExportFormat;
deleteManyScans(scanIds: number[]): Promise<any>;
deleteManyPolicies(policyIds: number[]): Promise<any>;
}
export {};