import type { TLP } from './AlertInterface'; export const enum ObservableStatus { OK = 'Ok', DELETED = 'Deleted', } 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 IAttachment { name?: string; size?: number; id?: string; contentType?: string; hashes: string[]; } export interface IObservable { // Required attributes id?: string; data?: string; attachment?: IAttachment; dataType?: ObservableDataType; message?: string; startDate?: Date; tlp?: TLP; ioc?: boolean; status?: ObservableStatus; // Optional attributes tags: string[]; // Backend generated attributes createdBy?: string; createdAt?: Date; updatedBy?: string; upadtedAt?: Date; }