n8n/packages/nodes-base/nodes/Cortex/AnalyzerInterface.ts
2023-04-21 14:23:15 +03:00

85 lines
1.6 KiB
TypeScript

import type { IDataObject } from 'n8n-workflow';
export const enum JobStatus {
WAITING = 'Waiting',
INPROGRESS = 'InProgress',
SUCCESS = 'Success',
FAILURE = 'Failure',
DELETED = 'Deleted',
}
export const enum TLP {
white,
green,
amber,
red,
}
export const enum ObservableDataType {
'domain' = 'domain',
'file' = 'file',
'filename' = 'filename',
'fqdn' = 'fqdn',
'hash' = 'hash',
'ip' = 'ip',
'mail' = 'mail',
'mail_subject' = 'mail_subject',
'other' = 'other',
'regexp' = 'regexp',
'registry' = 'registry',
'uri_path' = 'uri_path',
'url' = 'url',
'user-agent' = 'user-agent',
}
export interface IJob {
id?: string;
organization?: string;
analyzerDefinitionId?: string;
analyzerId?: string;
analyzerName?: string;
dataType?: ObservableDataType;
status?: JobStatus;
data?: string;
attachment?: IDataObject;
parameters?: IDataObject;
message?: string;
tlp?: TLP;
startDate?: Date;
endDate?: Date;
createdAt?: Date;
createdBy?: string;
updatedAt?: Date;
updatedBy?: Date;
report?: IDataObject | string;
}
export interface IAnalyzer {
id?: string;
analyzerDefinitionId?: string;
name?: string;
version?: string;
description?: string;
author?: string;
url?: string;
license?: string;
dataTypeList?: ObservableDataType[];
baseConfig?: string;
jobCache?: number;
rate?: number;
rateUnit?: string;
configuration?: IDataObject;
createdBy?: string;
updatedAt?: Date;
updatedBy?: Date;
}
export interface IResponder {
id?: string;
name?: string;
version?: string;
description?: string;
dataTypeList?: string[];
maxTlp?: number;
maxPap?: number;
cortexIds?: string[] | undefined;
}