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; }