@crowdstrike/foundry-js 0.6.0 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../node_modules/uuid/dist/esm-browser/rng.js","../node_modules/uuid/dist/esm-browser/stringify.js","../node_modules/uuid/dist/esm-browser/native.js","../node_modules/uuid/dist/esm-browser/v4.js","../src/apis/version.ts","../src/utils.ts","../src/bridge.ts","../node_modules/tslib/tslib.es6.js","../node_modules/emittery/maps.js","../node_modules/emittery/index.js","../node_modules/typescript-memoize/dist/es2015/memoize-decorator.js","../src/apis/actors/index.ts","../src/apis/alerts/index.ts","../src/apis/customobjects/index.ts","../src/apis/detects/index.ts","../src/apis/devices/index.ts","../src/apis/faas-gateway/index.ts","../src/apis/fwmgr/index.ts","../src/apis/incidents/index.ts","../src/apis/loggingapi/index.ts","../src/apis/mitre/index.ts","../src/apis/plugins/index.ts","../src/apis/remote-response/index.ts","../src/apis/workflows/index.ts","../src/apis/public-api.ts","../src/abstraction/api-integration.ts","../src/abstraction/cloud-function.ts","../src/abstraction/collection.ts","../src/abstraction/logscale.ts","../src/lib/navigation.ts","../src/lib/resize-tracker.ts","../src/lib/ui.ts","../src/api.ts"],"sourcesContent":["// Unique ID creation requires a high quality random # generator. In the browser we therefore\n// require the crypto API and do not support built-in fallback to lower quality random number\n// generators (like Math.random()).\nlet getRandomValues;\nconst rnds8 = new Uint8Array(16);\nexport default function rng() {\n // lazy load so that environments that need to polyfill have a chance to do so\n if (!getRandomValues) {\n // getRandomValues needs to be invoked in a context where \"this\" is a Crypto implementation.\n getRandomValues = typeof crypto !== 'undefined' && crypto.getRandomValues && crypto.getRandomValues.bind(crypto);\n\n if (!getRandomValues) {\n throw new Error('crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported');\n }\n }\n\n return getRandomValues(rnds8);\n}","import validate from './validate.js';\n/**\n * Convert array of 16 byte values to UUID string format of the form:\n * XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\n */\n\nconst byteToHex = [];\n\nfor (let i = 0; i < 256; ++i) {\n byteToHex.push((i + 0x100).toString(16).slice(1));\n}\n\nexport function unsafeStringify(arr, offset = 0) {\n // Note: Be careful editing this code! It's been tuned for performance\n // and works in ways you may not expect. See https://github.com/uuidjs/uuid/pull/434\n return (byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + '-' + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + '-' + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + '-' + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + '-' + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]]).toLowerCase();\n}\n\nfunction stringify(arr, offset = 0) {\n const uuid = unsafeStringify(arr, offset); // Consistency check for valid UUID. If this throws, it's likely due to one\n // of the following:\n // - One or more input array values don't map to a hex octet (leading to\n // \"undefined\" in the uuid)\n // - Invalid input values for the RFC `version` or `variant` fields\n\n if (!validate(uuid)) {\n throw TypeError('Stringified UUID is invalid');\n }\n\n return uuid;\n}\n\nexport default stringify;","const randomUUID = typeof crypto !== 'undefined' && crypto.randomUUID && crypto.randomUUID.bind(crypto);\nexport default {\n randomUUID\n};","import native from './native.js';\nimport rng from './rng.js';\nimport { unsafeStringify } from './stringify.js';\n\nfunction v4(options, buf, offset) {\n if (native.randomUUID && !buf && !options) {\n return native.randomUUID();\n }\n\n options = options || {};\n const rnds = options.random || (options.rng || rng)(); // Per 4.4, set bits for version and `clock_seq_hi_and_reserved`\n\n rnds[6] = rnds[6] & 0x0f | 0x40;\n rnds[8] = rnds[8] & 0x3f | 0x80; // Copy bytes to buffer, if provided\n\n if (buf) {\n offset = offset || 0;\n\n for (let i = 0; i < 16; ++i) {\n buf[offset + i] = rnds[i];\n }\n\n return buf;\n }\n\n return unsafeStringify(rnds);\n}\n\nexport default v4;","export const VERSION = 'current';\n","import type FalconPublicApis from './apis/public-api';\nimport type { LocalData, MessageEnvelope, ResponseMessage } from './types';\n\nexport function assertConnection(falcon: FalconPublicApis) {\n if (!falcon.isConnected) {\n throw new Error('You cannot call this API before having established a connection to the host!');\n }\n}\n\nexport function isValidResponse<DATA extends LocalData>(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n event: MessageEvent<MessageEnvelope<ResponseMessage<DATA>> | any>,\n): event is MessageEvent<MessageEnvelope<ResponseMessage<DATA>>> {\n return !!event?.data?.meta?.messageId;\n}\n","import { v4 as uuidv4 } from 'uuid';\n\nimport { VERSION } from './apis/version';\nimport { isValidResponse } from './utils';\n\nimport type {\n BroadcastMessage,\n DataUpdateMessage,\n LivereloadMessage,\n LocalData,\n MessageEnvelope,\n PayloadOf,\n RequestMessage,\n ResponseFor,\n ResponseMessage,\n UnidirectionalRequestMessage,\n} from './types';\n\nconst CONNECTION_TIMEOUT = 5_000;\nconst API_TIMEOUT = 30_000;\nconst NAVIGATION_TIMEOUT = 5_000;\n\nfunction timeoutForMessage(message: RequestMessage): number | null {\n const timeout =\n message.type === 'connect'\n ? CONNECTION_TIMEOUT\n : message.type === 'api'\n ? API_TIMEOUT\n : message.type === 'navigateTo'\n ? NAVIGATION_TIMEOUT\n : // Requests not explicitly covered above will not have a timeout. This includes 'fileUpload', which is a user interaction that can take any amount of time.\n null;\n\n // In tests we have mocked responses which do not require long timeouts\n return timeout !== null && process.env.VITEST ? 40 : timeout;\n}\n\ninterface BridgeOptions<DATA extends LocalData> {\n onDataUpdate?: (event: DataUpdateMessage<DATA>) => void;\n onBroadcast?: (event: BroadcastMessage) => void;\n onLivereload?: (event: LivereloadMessage) => void;\n}\n\nexport class Bridge<DATA extends LocalData = LocalData> {\n private onDataUpdate: BridgeOptions<DATA>['onDataUpdate'];\n private onBroadcast: BridgeOptions<DATA>['onBroadcast'];\n private onLivereload: BridgeOptions<DATA>['onLivereload'];\n private pendingMessages = new Map<\n string,\n (result: PayloadOf<ResponseMessage>) => void\n >();\n\n private targetOrigin = '*';\n\n constructor({\n onDataUpdate,\n onBroadcast,\n onLivereload,\n }: BridgeOptions<DATA> = {}) {\n this.onDataUpdate = onDataUpdate;\n this.onBroadcast = onBroadcast;\n this.onLivereload = onLivereload;\n\n window.addEventListener('message', this.handleMessage);\n }\n\n public destroy() {\n window.removeEventListener('message', this.handleMessage);\n }\n\n public setOrigin(origin: string) {\n this.targetOrigin = origin;\n }\n\n sendUnidirectionalMessage(message: UnidirectionalRequestMessage) {\n const messageId = uuidv4();\n const eventData: MessageEnvelope<UnidirectionalRequestMessage> = {\n message,\n meta: {\n messageId,\n version: VERSION,\n },\n };\n\n window.parent.postMessage(eventData, this.targetOrigin);\n }\n\n // TODO: For some reason with adding more APIs, return type is not working\n // Promise<PayloadOf<ResponseFor<REQ, DATA>>>\n async postMessage<REQ extends RequestMessage>(message: REQ): Promise<any> {\n return new Promise((resolve, reject) => {\n const messageId = uuidv4();\n\n let timeoutTimer: ReturnType<typeof setTimeout> | undefined;\n const timeoutValue = timeoutForMessage(message);\n\n if (timeoutValue !== null) {\n timeoutTimer = setTimeout(() => {\n reject(\n new Error(\n `Waiting for response from foundry host for \"${message.type}\" message (ID: ${messageId}) timed out after ${timeoutValue}ms`\n )\n );\n }, timeoutValue);\n }\n\n this.pendingMessages.set(messageId, (result) => {\n if (timeoutTimer) {\n clearTimeout(timeoutTimer);\n }\n\n resolve(result as PayloadOf<ResponseFor<REQ, DATA>>);\n });\n\n const eventData: MessageEnvelope<REQ> = {\n message,\n meta: {\n messageId,\n version: VERSION,\n },\n };\n\n window.parent.postMessage(eventData, this.targetOrigin);\n });\n }\n\n private handleMessage = (\n event: MessageEvent<MessageEnvelope<ResponseMessage<DATA>> | unknown>\n ) => {\n if (!isValidResponse<DATA>(event)) {\n return;\n }\n\n const { message } = event.data;\n\n if (message.type === 'data') {\n this.onDataUpdate?.(message);\n\n // data update events are unidirectional and originated from the host, so there cannot be a callback waiting for this message\n return;\n }\n\n if (message.type === 'broadcast') {\n this.onBroadcast?.(message);\n\n // data update events are unidirectional and are proxied via the host, so there cannot be a callback waiting for this message\n return;\n }\n\n if (message.type === 'livereload') {\n this.onLivereload?.(message);\n\n // livereload events are unidirectional and are proxied via the host, so there cannot be a callback waiting for this message\n return;\n }\n\n const { messageId } = event.data.meta;\n const callback = this.pendingMessages.get(messageId);\n\n if (!callback) {\n throw new Error(`Received unexpected message`);\n }\n\n this.pendingMessages.delete(messageId);\n\n callback(message.payload);\n };\n}\n","/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.push(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.push(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n","export const anyMap = new WeakMap();\nexport const eventsMap = new WeakMap();\nexport const producersMap = new WeakMap();\n","import {anyMap, producersMap, eventsMap} from './maps.js';\n\nconst anyProducer = Symbol('anyProducer');\nconst resolvedPromise = Promise.resolve();\n\n// Define symbols for \"meta\" events.\nconst listenerAdded = Symbol('listenerAdded');\nconst listenerRemoved = Symbol('listenerRemoved');\n\nlet canEmitMetaEvents = false;\nlet isGlobalDebugEnabled = false;\n\nfunction assertEventName(eventName) {\n\tif (typeof eventName !== 'string' && typeof eventName !== 'symbol' && typeof eventName !== 'number') {\n\t\tthrow new TypeError('`eventName` must be a string, symbol, or number');\n\t}\n}\n\nfunction assertListener(listener) {\n\tif (typeof listener !== 'function') {\n\t\tthrow new TypeError('listener must be a function');\n\t}\n}\n\nfunction getListeners(instance, eventName) {\n\tconst events = eventsMap.get(instance);\n\tif (!events.has(eventName)) {\n\t\treturn;\n\t}\n\n\treturn events.get(eventName);\n}\n\nfunction getEventProducers(instance, eventName) {\n\tconst key = typeof eventName === 'string' || typeof eventName === 'symbol' || typeof eventName === 'number' ? eventName : anyProducer;\n\tconst producers = producersMap.get(instance);\n\tif (!producers.has(key)) {\n\t\treturn;\n\t}\n\n\treturn producers.get(key);\n}\n\nfunction enqueueProducers(instance, eventName, eventData) {\n\tconst producers = producersMap.get(instance);\n\tif (producers.has(eventName)) {\n\t\tfor (const producer of producers.get(eventName)) {\n\t\t\tproducer.enqueue(eventData);\n\t\t}\n\t}\n\n\tif (producers.has(anyProducer)) {\n\t\tconst item = Promise.all([eventName, eventData]);\n\t\tfor (const producer of producers.get(anyProducer)) {\n\t\t\tproducer.enqueue(item);\n\t\t}\n\t}\n}\n\nfunction iterator(instance, eventNames) {\n\teventNames = Array.isArray(eventNames) ? eventNames : [eventNames];\n\n\tlet isFinished = false;\n\tlet flush = () => {};\n\tlet queue = [];\n\n\tconst producer = {\n\t\tenqueue(item) {\n\t\t\tqueue.push(item);\n\t\t\tflush();\n\t\t},\n\t\tfinish() {\n\t\t\tisFinished = true;\n\t\t\tflush();\n\t\t},\n\t};\n\n\tfor (const eventName of eventNames) {\n\t\tlet set = getEventProducers(instance, eventName);\n\t\tif (!set) {\n\t\t\tset = new Set();\n\t\t\tconst producers = producersMap.get(instance);\n\t\t\tproducers.set(eventName, set);\n\t\t}\n\n\t\tset.add(producer);\n\t}\n\n\treturn {\n\t\tasync next() {\n\t\t\tif (!queue) {\n\t\t\t\treturn {done: true};\n\t\t\t}\n\n\t\t\tif (queue.length === 0) {\n\t\t\t\tif (isFinished) {\n\t\t\t\t\tqueue = undefined;\n\t\t\t\t\treturn this.next();\n\t\t\t\t}\n\n\t\t\t\tawait new Promise(resolve => {\n\t\t\t\t\tflush = resolve;\n\t\t\t\t});\n\n\t\t\t\treturn this.next();\n\t\t\t}\n\n\t\t\treturn {\n\t\t\t\tdone: false,\n\t\t\t\tvalue: await queue.shift(),\n\t\t\t};\n\t\t},\n\n\t\tasync return(value) {\n\t\t\tqueue = undefined;\n\n\t\t\tfor (const eventName of eventNames) {\n\t\t\t\tconst set = getEventProducers(instance, eventName);\n\t\t\t\tif (set) {\n\t\t\t\t\tset.delete(producer);\n\t\t\t\t\tif (set.size === 0) {\n\t\t\t\t\t\tconst producers = producersMap.get(instance);\n\t\t\t\t\t\tproducers.delete(eventName);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tflush();\n\n\t\t\treturn arguments.length > 0\n\t\t\t\t? {done: true, value: await value}\n\t\t\t\t: {done: true};\n\t\t},\n\n\t\t[Symbol.asyncIterator]() {\n\t\t\treturn this;\n\t\t},\n\t};\n}\n\nfunction defaultMethodNamesOrAssert(methodNames) {\n\tif (methodNames === undefined) {\n\t\treturn allEmitteryMethods;\n\t}\n\n\tif (!Array.isArray(methodNames)) {\n\t\tthrow new TypeError('`methodNames` must be an array of strings');\n\t}\n\n\tfor (const methodName of methodNames) {\n\t\tif (!allEmitteryMethods.includes(methodName)) {\n\t\t\tif (typeof methodName !== 'string') {\n\t\t\t\tthrow new TypeError('`methodNames` element must be a string');\n\t\t\t}\n\n\t\t\tthrow new Error(`${methodName} is not Emittery method`);\n\t\t}\n\t}\n\n\treturn methodNames;\n}\n\nconst isMetaEvent = eventName => eventName === listenerAdded || eventName === listenerRemoved;\n\nfunction emitMetaEvent(emitter, eventName, eventData) {\n\tif (isMetaEvent(eventName)) {\n\t\ttry {\n\t\t\tcanEmitMetaEvents = true;\n\t\t\temitter.emit(eventName, eventData);\n\t\t} finally {\n\t\t\tcanEmitMetaEvents = false;\n\t\t}\n\t}\n}\n\nexport default class Emittery {\n\tstatic mixin(emitteryPropertyName, methodNames) {\n\t\tmethodNames = defaultMethodNamesOrAssert(methodNames);\n\t\treturn target => {\n\t\t\tif (typeof target !== 'function') {\n\t\t\t\tthrow new TypeError('`target` must be function');\n\t\t\t}\n\n\t\t\tfor (const methodName of methodNames) {\n\t\t\t\tif (target.prototype[methodName] !== undefined) {\n\t\t\t\t\tthrow new Error(`The property \\`${methodName}\\` already exists on \\`target\\``);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tfunction getEmitteryProperty() {\n\t\t\t\tObject.defineProperty(this, emitteryPropertyName, {\n\t\t\t\t\tenumerable: false,\n\t\t\t\t\tvalue: new Emittery(),\n\t\t\t\t});\n\t\t\t\treturn this[emitteryPropertyName];\n\t\t\t}\n\n\t\t\tObject.defineProperty(target.prototype, emitteryPropertyName, {\n\t\t\t\tenumerable: false,\n\t\t\t\tget: getEmitteryProperty,\n\t\t\t});\n\n\t\t\tconst emitteryMethodCaller = methodName => function (...args) {\n\t\t\t\treturn this[emitteryPropertyName][methodName](...args);\n\t\t\t};\n\n\t\t\tfor (const methodName of methodNames) {\n\t\t\t\tObject.defineProperty(target.prototype, methodName, {\n\t\t\t\t\tenumerable: false,\n\t\t\t\t\tvalue: emitteryMethodCaller(methodName),\n\t\t\t\t});\n\t\t\t}\n\n\t\t\treturn target;\n\t\t};\n\t}\n\n\tstatic get isDebugEnabled() {\n\t\t// In a browser environment, `globalThis.process` can potentially reference a DOM Element with a `#process` ID,\n\t\t// so instead of just type checking `globalThis.process`, we need to make sure that `globalThis.process.env` exists.\n\t\t// eslint-disable-next-line n/prefer-global/process\n\t\tif (typeof globalThis.process?.env !== 'object') {\n\t\t\treturn isGlobalDebugEnabled;\n\t\t}\n\n\t\t// eslint-disable-next-line n/prefer-global/process\n\t\tconst {env} = globalThis.process ?? {env: {}};\n\t\treturn env.DEBUG === 'emittery' || env.DEBUG === '*' || isGlobalDebugEnabled;\n\t}\n\n\tstatic set isDebugEnabled(newValue) {\n\t\tisGlobalDebugEnabled = newValue;\n\t}\n\n\tconstructor(options = {}) {\n\t\tanyMap.set(this, new Set());\n\t\teventsMap.set(this, new Map());\n\t\tproducersMap.set(this, new Map());\n\n\t\tproducersMap.get(this).set(anyProducer, new Set());\n\n\t\tthis.debug = options.debug ?? {};\n\n\t\tif (this.debug.enabled === undefined) {\n\t\t\tthis.debug.enabled = false;\n\t\t}\n\n\t\tif (!this.debug.logger) {\n\t\t\tthis.debug.logger = (type, debugName, eventName, eventData) => {\n\t\t\t\ttry {\n\t\t\t\t\t// TODO: Use https://github.com/sindresorhus/safe-stringify when the package is more mature. Just copy-paste the code.\n\t\t\t\t\teventData = JSON.stringify(eventData);\n\t\t\t\t} catch {\n\t\t\t\t\teventData = `Object with the following keys failed to stringify: ${Object.keys(eventData).join(',')}`;\n\t\t\t\t}\n\n\t\t\t\tif (typeof eventName === 'symbol' || typeof eventName === 'number') {\n\t\t\t\t\teventName = eventName.toString();\n\t\t\t\t}\n\n\t\t\t\tconst currentTime = new Date();\n\t\t\t\tconst logTime = `${currentTime.getHours()}:${currentTime.getMinutes()}:${currentTime.getSeconds()}.${currentTime.getMilliseconds()}`;\n\t\t\t\tconsole.log(`[${logTime}][emittery:${type}][${debugName}] Event Name: ${eventName}\\n\\tdata: ${eventData}`);\n\t\t\t};\n\t\t}\n\t}\n\n\tlogIfDebugEnabled(type, eventName, eventData) {\n\t\tif (Emittery.isDebugEnabled || this.debug.enabled) {\n\t\t\tthis.debug.logger(type, this.debug.name, eventName, eventData);\n\t\t}\n\t}\n\n\ton(eventNames, listener) {\n\t\tassertListener(listener);\n\n\t\teventNames = Array.isArray(eventNames) ? eventNames : [eventNames];\n\t\tfor (const eventName of eventNames) {\n\t\t\tassertEventName(eventName);\n\t\t\tlet set = getListeners(this, eventName);\n\t\t\tif (!set) {\n\t\t\t\tset = new Set();\n\t\t\t\tconst events = eventsMap.get(this);\n\t\t\t\tevents.set(eventName, set);\n\t\t\t}\n\n\t\t\tset.add(listener);\n\n\t\t\tthis.logIfDebugEnabled('subscribe', eventName, undefined);\n\n\t\t\tif (!isMetaEvent(eventName)) {\n\t\t\t\temitMetaEvent(this, listenerAdded, {eventName, listener});\n\t\t\t}\n\t\t}\n\n\t\treturn this.off.bind(this, eventNames, listener);\n\t}\n\n\toff(eventNames, listener) {\n\t\tassertListener(listener);\n\n\t\teventNames = Array.isArray(eventNames) ? eventNames : [eventNames];\n\t\tfor (const eventName of eventNames) {\n\t\t\tassertEventName(eventName);\n\t\t\tconst set = getListeners(this, eventName);\n\t\t\tif (set) {\n\t\t\t\tset.delete(listener);\n\t\t\t\tif (set.size === 0) {\n\t\t\t\t\tconst events = eventsMap.get(this);\n\t\t\t\t\tevents.delete(eventName);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tthis.logIfDebugEnabled('unsubscribe', eventName, undefined);\n\n\t\t\tif (!isMetaEvent(eventName)) {\n\t\t\t\temitMetaEvent(this, listenerRemoved, {eventName, listener});\n\t\t\t}\n\t\t}\n\t}\n\n\tonce(eventNames) {\n\t\tlet off_;\n\n\t\tconst promise = new Promise(resolve => {\n\t\t\toff_ = this.on(eventNames, data => {\n\t\t\t\toff_();\n\t\t\t\tresolve(data);\n\t\t\t});\n\t\t});\n\n\t\tpromise.off = off_;\n\t\treturn promise;\n\t}\n\n\tevents(eventNames) {\n\t\teventNames = Array.isArray(eventNames) ? eventNames : [eventNames];\n\t\tfor (const eventName of eventNames) {\n\t\t\tassertEventName(eventName);\n\t\t}\n\n\t\treturn iterator(this, eventNames);\n\t}\n\n\tasync emit(eventName, eventData) {\n\t\tassertEventName(eventName);\n\n\t\tif (isMetaEvent(eventName) && !canEmitMetaEvents) {\n\t\t\tthrow new TypeError('`eventName` cannot be meta event `listenerAdded` or `listenerRemoved`');\n\t\t}\n\n\t\tthis.logIfDebugEnabled('emit', eventName, eventData);\n\n\t\tenqueueProducers(this, eventName, eventData);\n\n\t\tconst listeners = getListeners(this, eventName) ?? new Set();\n\t\tconst anyListeners = anyMap.get(this);\n\t\tconst staticListeners = [...listeners];\n\t\tconst staticAnyListeners = isMetaEvent(eventName) ? [] : [...anyListeners];\n\n\t\tawait resolvedPromise;\n\t\tawait Promise.all([\n\t\t\t...staticListeners.map(async listener => {\n\t\t\t\tif (listeners.has(listener)) {\n\t\t\t\t\treturn listener(eventData);\n\t\t\t\t}\n\t\t\t}),\n\t\t\t...staticAnyListeners.map(async listener => {\n\t\t\t\tif (anyListeners.has(listener)) {\n\t\t\t\t\treturn listener(eventName, eventData);\n\t\t\t\t}\n\t\t\t}),\n\t\t]);\n\t}\n\n\tasync emitSerial(eventName, eventData) {\n\t\tassertEventName(eventName);\n\n\t\tif (isMetaEvent(eventName) && !canEmitMetaEvents) {\n\t\t\tthrow new TypeError('`eventName` cannot be meta event `listenerAdded` or `listenerRemoved`');\n\t\t}\n\n\t\tthis.logIfDebugEnabled('emitSerial', eventName, eventData);\n\n\t\tconst listeners = getListeners(this, eventName) ?? new Set();\n\t\tconst anyListeners = anyMap.get(this);\n\t\tconst staticListeners = [...listeners];\n\t\tconst staticAnyListeners = [...anyListeners];\n\n\t\tawait resolvedPromise;\n\t\t/* eslint-disable no-await-in-loop */\n\t\tfor (const listener of staticListeners) {\n\t\t\tif (listeners.has(listener)) {\n\t\t\t\tawait listener(eventData);\n\t\t\t}\n\t\t}\n\n\t\tfor (const listener of staticAnyListeners) {\n\t\t\tif (anyListeners.has(listener)) {\n\t\t\t\tawait listener(eventName, eventData);\n\t\t\t}\n\t\t}\n\t\t/* eslint-enable no-await-in-loop */\n\t}\n\n\tonAny(listener) {\n\t\tassertListener(listener);\n\n\t\tthis.logIfDebugEnabled('subscribeAny', undefined, undefined);\n\n\t\tanyMap.get(this).add(listener);\n\t\temitMetaEvent(this, listenerAdded, {listener});\n\t\treturn this.offAny.bind(this, listener);\n\t}\n\n\tanyEvent() {\n\t\treturn iterator(this);\n\t}\n\n\toffAny(listener) {\n\t\tassertListener(listener);\n\n\t\tthis.logIfDebugEnabled('unsubscribeAny', undefined, undefined);\n\n\t\temitMetaEvent(this, listenerRemoved, {listener});\n\t\tanyMap.get(this).delete(listener);\n\t}\n\n\tclearListeners(eventNames) {\n\t\teventNames = Array.isArray(eventNames) ? eventNames : [eventNames];\n\n\t\tfor (const eventName of eventNames) {\n\t\t\tthis.logIfDebugEnabled('clear', eventName, undefined);\n\n\t\t\tif (typeof eventName === 'string' || typeof eventName === 'symbol' || typeof eventName === 'number') {\n\t\t\t\tconst set = getListeners(this, eventName);\n\t\t\t\tif (set) {\n\t\t\t\t\tset.clear();\n\t\t\t\t}\n\n\t\t\t\tconst producers = getEventProducers(this, eventName);\n\t\t\t\tif (producers) {\n\t\t\t\t\tfor (const producer of producers) {\n\t\t\t\t\t\tproducer.finish();\n\t\t\t\t\t}\n\n\t\t\t\t\tproducers.clear();\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tanyMap.get(this).clear();\n\n\t\t\t\tfor (const [eventName, listeners] of eventsMap.get(this).entries()) {\n\t\t\t\t\tlisteners.clear();\n\t\t\t\t\teventsMap.get(this).delete(eventName);\n\t\t\t\t}\n\n\t\t\t\tfor (const [eventName, producers] of producersMap.get(this).entries()) {\n\t\t\t\t\tfor (const producer of producers) {\n\t\t\t\t\t\tproducer.finish();\n\t\t\t\t\t}\n\n\t\t\t\t\tproducers.clear();\n\t\t\t\t\tproducersMap.get(this).delete(eventName);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tlistenerCount(eventNames) {\n\t\teventNames = Array.isArray(eventNames) ? eventNames : [eventNames];\n\t\tlet count = 0;\n\n\t\tfor (const eventName of eventNames) {\n\t\t\tif (typeof eventName === 'string') {\n\t\t\t\tcount += anyMap.get(this).size\n\t\t\t\t\t+ (getListeners(this, eventName)?.size ?? 0)\n\t\t\t\t\t+ (getEventProducers(this, eventName)?.size ?? 0)\n\t\t\t\t\t+ (getEventProducers(this)?.size ?? 0);\n\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tif (typeof eventName !== 'undefined') {\n\t\t\t\tassertEventName(eventName);\n\t\t\t}\n\n\t\t\tcount += anyMap.get(this).size;\n\n\t\t\tfor (const value of eventsMap.get(this).values()) {\n\t\t\t\tcount += value.size;\n\t\t\t}\n\n\t\t\tfor (const value of producersMap.get(this).values()) {\n\t\t\t\tcount += value.size;\n\t\t\t}\n\t\t}\n\n\t\treturn count;\n\t}\n\n\tbindMethods(target, methodNames) {\n\t\tif (typeof target !== 'object' || target === null) {\n\t\t\tthrow new TypeError('`target` must be an object');\n\t\t}\n\n\t\tmethodNames = defaultMethodNamesOrAssert(methodNames);\n\n\t\tfor (const methodName of methodNames) {\n\t\t\tif (target[methodName] !== undefined) {\n\t\t\t\tthrow new Error(`The property \\`${methodName}\\` already exists on \\`target\\``);\n\t\t\t}\n\n\t\t\tObject.defineProperty(target, methodName, {\n\t\t\t\tenumerable: false,\n\t\t\t\tvalue: this[methodName].bind(this),\n\t\t\t});\n\t\t}\n\t}\n}\n\nconst allEmitteryMethods = Object.getOwnPropertyNames(Emittery.prototype).filter(v => v !== 'constructor');\n\nObject.defineProperty(Emittery, 'listenerAdded', {\n\tvalue: listenerAdded,\n\twritable: false,\n\tenumerable: true,\n\tconfigurable: false,\n});\nObject.defineProperty(Emittery, 'listenerRemoved', {\n\tvalue: listenerRemoved,\n\twritable: false,\n\tenumerable: true,\n\tconfigurable: false,\n});\n","export function Memoize(args) {\n let hashFunction;\n let duration;\n let tags;\n if (typeof args === 'object') {\n hashFunction = args.hashFunction;\n duration = args.expiring;\n tags = args.tags;\n }\n else {\n hashFunction = args;\n }\n return (target, propertyKey, descriptor) => {\n if (descriptor.value != null) {\n descriptor.value = getNewFunction(descriptor.value, hashFunction, duration, tags);\n }\n else if (descriptor.get != null) {\n descriptor.get = getNewFunction(descriptor.get, hashFunction, duration, tags);\n }\n else {\n throw 'Only put a Memoize() decorator on a method or get accessor.';\n }\n };\n}\nexport function MemoizeExpiring(expiring, hashFunction) {\n return Memoize({\n expiring,\n hashFunction\n });\n}\nconst clearCacheTagsMap = new Map();\nexport function clear(tags) {\n const cleared = new Set();\n for (const tag of tags) {\n const maps = clearCacheTagsMap.get(tag);\n if (maps) {\n for (const mp of maps) {\n if (!cleared.has(mp)) {\n mp.clear();\n cleared.add(mp);\n }\n }\n }\n }\n return cleared.size;\n}\nfunction getNewFunction(originalMethod, hashFunction, duration = 0, tags) {\n const propMapName = Symbol(`__memoized_map__`);\n return function (...args) {\n let returnedValue;\n if (!this.hasOwnProperty(propMapName)) {\n Object.defineProperty(this, propMapName, {\n configurable: false,\n enumerable: false,\n writable: false,\n value: new Map()\n });\n }\n let myMap = this[propMapName];\n if (Array.isArray(tags)) {\n for (const tag of tags) {\n if (clearCacheTagsMap.has(tag)) {\n clearCacheTagsMap.get(tag).push(myMap);\n }\n else {\n clearCacheTagsMap.set(tag, [myMap]);\n }\n }\n }\n if (hashFunction || args.length > 0 || duration > 0) {\n let hashKey;\n if (hashFunction === true) {\n hashKey = args.map(a => a.toString()).join('!');\n }\n else if (hashFunction) {\n hashKey = hashFunction.apply(this, args);\n }\n else {\n hashKey = args[0];\n }\n const timestampKey = `${hashKey}__timestamp`;\n let isExpired = false;\n if (duration > 0) {\n if (!myMap.has(timestampKey)) {\n isExpired = true;\n }\n else {\n let timestamp = myMap.get(timestampKey);\n isExpired = (Date.now() - timestamp) > duration;\n }\n }\n if (myMap.has(hashKey) && !isExpired) {\n returnedValue = myMap.get(hashKey);\n }\n else {\n returnedValue = originalMethod.apply(this, args);\n myMap.set(hashKey, returnedValue);\n if (duration > 0) {\n myMap.set(timestampKey, Date.now());\n }\n }\n }\n else {\n const hashKey = this;\n if (myMap.has(hashKey)) {\n returnedValue = myMap.get(hashKey);\n }\n else {\n returnedValue = originalMethod.apply(this, args);\n myMap.set(hashKey, returnedValue);\n }\n }\n return returnedValue;\n };\n}\n//# sourceMappingURL=memoize-decorator.js.map","/**\n *\n * This file is autogenerated.\n *\n * DO NOT EDIT DIRECTLY\n *\n **/\n\nimport type { Bridge } from '../../bridge';\n\nimport type {\n ApiResponsePayload,\n BaseApiRequestMessage,\n BaseApiResponseMessage,\n BaseUrlParams,\n QueryParam,\n} from '../../types';\n\nexport type ActorsRequestApi = 'actors';\n\nexport type CommonApiResponseMessage =\n BaseApiResponseMessage<ApiResponsePayload>;\n\nexport interface CommonApiRequestMessage\n extends BaseApiRequestMessage<BaseUrlParams, unknown> {\n api: ActorsRequestApi;\n}\n\n// types for getEntitiesActorsGetV2\n\nexport interface GetEntitiesActorsGetV2QueryParams extends BaseUrlParams {\n ids?: QueryParam;\n}\n\nexport type GetEntitiesActorsGetV2ApiResponse = ApiResponsePayload;\n\nexport type GetEntitiesActorsGetV2ResponseMessage =\n BaseApiResponseMessage<GetEntitiesActorsGetV2ApiResponse>;\n\nexport interface GetEntitiesActorsGetV2RequestMessage\n extends BaseApiRequestMessage<GetEntitiesActorsGetV2QueryParams> {\n api: ActorsRequestApi;\n method: 'getEntitiesActorsGetV2';\n}\n\n// types for getQueriesActorsV2\n\nexport interface GetQueriesActorsV2QueryParams extends BaseUrlParams {\n filter?: string;\n limit?: QueryParam;\n offset?: QueryParam;\n q?: QueryParam;\n sort?: QueryParam;\n}\n\nexport type GetQueriesActorsV2ApiResponse = ApiResponsePayload;\n\nexport type GetQueriesActorsV2ResponseMessage =\n BaseApiResponseMessage<GetQueriesActorsV2ApiResponse>;\n\nexport interface GetQueriesActorsV2RequestMessage\n extends BaseApiRequestMessage<GetQueriesActorsV2QueryParams> {\n api: ActorsRequestApi;\n method: 'getQueriesActorsV2';\n}\n\n// types for postAggregatesActorsGetV2\n\nexport type PostAggregatesActorsGetV2QueryParams = BaseUrlParams;\n\nexport type PostAggregatesActorsGetV2ApiResponse = ApiResponsePayload;\n\nexport interface PostAggregatesActorsGetV2PostData {}\n\nexport type PostAggregatesActorsGetV2ResponseMessage =\n BaseApiResponseMessage<PostAggregatesActorsGetV2ApiResponse>;\n\nexport interface PostAggregatesActorsGetV2RequestMessage\n extends BaseApiRequestMessage<\n PostAggregatesActorsGetV2QueryParams,\n PostAggregatesActorsGetV2PostData\n > {\n api: ActorsRequestApi;\n method: 'postAggregatesActorsGetV2';\n}\n\n// types for postEntitiesActorsGetV2\n\nexport interface PostEntitiesActorsGetV2QueryParams extends BaseUrlParams {\n ids?: QueryParam;\n}\n\nexport type PostEntitiesActorsGetV2ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesActorsGetV2PostData {}\n\nexport type PostEntitiesActorsGetV2ResponseMessage =\n BaseApiResponseMessage<PostEntitiesActorsGetV2ApiResponse>;\n\nexport interface PostEntitiesActorsGetV2RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesActorsGetV2QueryParams,\n PostEntitiesActorsGetV2PostData\n > {\n api: ActorsRequestApi;\n method: 'postEntitiesActorsGetV2';\n}\n\n// types for postEntitiesMitreV1\n\nexport type PostEntitiesMitreV1QueryParams = BaseUrlParams;\n\nexport type PostEntitiesMitreV1ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesMitreV1PostData {}\n\nexport type PostEntitiesMitreV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesMitreV1ApiResponse>;\n\nexport interface PostEntitiesMitreV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesMitreV1QueryParams,\n PostEntitiesMitreV1PostData\n > {\n api: ActorsRequestApi;\n method: 'postEntitiesMitreV1';\n}\n\n// general types\n\nexport type ActorsApiRequestMessage =\n | GetEntitiesActorsGetV2RequestMessage\n | GetQueriesActorsV2RequestMessage\n | PostAggregatesActorsGetV2RequestMessage\n | PostEntitiesActorsGetV2RequestMessage\n | PostEntitiesMitreV1RequestMessage;\n\nexport type ActorsApiResponseMessage =\n | GetEntitiesActorsGetV2ResponseMessage\n | GetQueriesActorsV2ResponseMessage\n | PostAggregatesActorsGetV2ResponseMessage\n | PostEntitiesActorsGetV2ResponseMessage\n | PostEntitiesMitreV1ResponseMessage;\n\nexport class ActorsApiBridge {\n private bridge;\n\n constructor(bridge: Bridge) {\n this.bridge = bridge;\n }\n\n getBridge() {\n return this.bridge;\n }\n\n async getEntitiesActorsGetV2(\n urlParams: GetEntitiesActorsGetV2QueryParams = {}\n ): Promise<GetEntitiesActorsGetV2ApiResponse> {\n const message: GetEntitiesActorsGetV2RequestMessage = {\n type: 'api',\n api: 'actors',\n method: 'getEntitiesActorsGetV2',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getQueriesActorsV2(\n urlParams: GetQueriesActorsV2QueryParams = {}\n ): Promise<GetQueriesActorsV2ApiResponse> {\n const message: GetQueriesActorsV2RequestMessage = {\n type: 'api',\n api: 'actors',\n method: 'getQueriesActorsV2',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postAggregatesActorsGetV2(\n postBody: PostAggregatesActorsGetV2PostData,\n urlParams: PostAggregatesActorsGetV2QueryParams = {}\n ): Promise<PostAggregatesActorsGetV2ApiResponse> {\n const message: PostAggregatesActorsGetV2RequestMessage = {\n type: 'api',\n api: 'actors',\n method: 'postAggregatesActorsGetV2',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesActorsGetV2(\n postBody: PostEntitiesActorsGetV2PostData,\n urlParams: PostEntitiesActorsGetV2QueryParams = {}\n ): Promise<PostEntitiesActorsGetV2ApiResponse> {\n const message: PostEntitiesActorsGetV2RequestMessage = {\n type: 'api',\n api: 'actors',\n method: 'postEntitiesActorsGetV2',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesMitreV1(\n postBody: PostEntitiesMitreV1PostData,\n urlParams: PostEntitiesMitreV1QueryParams = {}\n ): Promise<PostEntitiesMitreV1ApiResponse> {\n const message: PostEntitiesMitreV1RequestMessage = {\n type: 'api',\n api: 'actors',\n method: 'postEntitiesMitreV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n}\n","/**\n *\n * This file is autogenerated.\n *\n * DO NOT EDIT DIRECTLY\n *\n **/\n\nimport type { Bridge } from '../../bridge';\n\nimport type {\n ApiResponsePayload,\n BaseApiRequestMessage,\n BaseApiResponseMessage,\n BaseUrlParams,\n QueryParam,\n} from '../../types';\n\nexport type AlertsRequestApi = 'alerts';\n\nexport type CommonApiResponseMessage =\n BaseApiResponseMessage<ApiResponsePayload>;\n\nexport interface CommonApiRequestMessage\n extends BaseApiRequestMessage<BaseUrlParams, unknown> {\n api: AlertsRequestApi;\n}\n\n// types for deleteEntitiesSuppressedDevicesV1\n\nexport interface DeleteEntitiesSuppressedDevicesV1QueryParams\n extends BaseUrlParams {\n ids?: QueryParam;\n}\n\nexport type DeleteEntitiesSuppressedDevicesV1ApiResponse = ApiResponsePayload;\n\nexport type DeleteEntitiesSuppressedDevicesV1ResponseMessage =\n BaseApiResponseMessage<DeleteEntitiesSuppressedDevicesV1ApiResponse>;\n\nexport interface DeleteEntitiesSuppressedDevicesV1RequestMessage\n extends BaseApiRequestMessage<DeleteEntitiesSuppressedDevicesV1QueryParams> {\n api: AlertsRequestApi;\n method: 'deleteEntitiesSuppressedDevicesV1';\n}\n\n// types for getQueriesAlertsV1\n\nexport interface GetQueriesAlertsV1QueryParams extends BaseUrlParams {\n filter?: string;\n limit?: QueryParam;\n offset?: QueryParam;\n q?: QueryParam;\n sort?: QueryParam;\n}\n\nexport type GetQueriesAlertsV1ApiResponse = ApiResponsePayload;\n\nexport type GetQueriesAlertsV1ResponseMessage =\n BaseApiResponseMessage<GetQueriesAlertsV1ApiResponse>;\n\nexport interface GetQueriesAlertsV1RequestMessage\n extends BaseApiRequestMessage<GetQueriesAlertsV1QueryParams> {\n api: AlertsRequestApi;\n method: 'getQueriesAlertsV1';\n}\n\n// types for patchCombinedAlertsV2\n\nexport type PatchCombinedAlertsV2QueryParams = BaseUrlParams;\n\nexport type PatchCombinedAlertsV2ApiResponse = ApiResponsePayload;\n\nexport interface PatchCombinedAlertsV2PostData {}\n\nexport type PatchCombinedAlertsV2ResponseMessage =\n BaseApiResponseMessage<PatchCombinedAlertsV2ApiResponse>;\n\nexport interface PatchCombinedAlertsV2RequestMessage\n extends BaseApiRequestMessage<\n PatchCombinedAlertsV2QueryParams,\n PatchCombinedAlertsV2PostData\n > {\n api: AlertsRequestApi;\n method: 'patchCombinedAlertsV2';\n}\n\n// types for patchEntitiesAlertsV2\n\nexport type PatchEntitiesAlertsV2QueryParams = BaseUrlParams;\n\nexport type PatchEntitiesAlertsV2ApiResponse = ApiResponsePayload;\n\nexport interface PatchEntitiesAlertsV2PostData {}\n\nexport type PatchEntitiesAlertsV2ResponseMessage =\n BaseApiResponseMessage<PatchEntitiesAlertsV2ApiResponse>;\n\nexport interface PatchEntitiesAlertsV2RequestMessage\n extends BaseApiRequestMessage<\n PatchEntitiesAlertsV2QueryParams,\n PatchEntitiesAlertsV2PostData\n > {\n api: AlertsRequestApi;\n method: 'patchEntitiesAlertsV2';\n}\n\n// types for patchEntitiesSuppressedDevicesV1\n\nexport interface PatchEntitiesSuppressedDevicesV1QueryParams\n extends BaseUrlParams {\n ids?: QueryParam;\n}\n\nexport type PatchEntitiesSuppressedDevicesV1ApiResponse = ApiResponsePayload;\n\nexport interface PatchEntitiesSuppressedDevicesV1PostData {}\n\nexport type PatchEntitiesSuppressedDevicesV1ResponseMessage =\n BaseApiResponseMessage<PatchEntitiesSuppressedDevicesV1ApiResponse>;\n\nexport interface PatchEntitiesSuppressedDevicesV1RequestMessage\n extends BaseApiRequestMessage<\n PatchEntitiesSuppressedDevicesV1QueryParams,\n PatchEntitiesSuppressedDevicesV1PostData\n > {\n api: AlertsRequestApi;\n method: 'patchEntitiesSuppressedDevicesV1';\n}\n\n// types for postAggregatesAlertsV1\n\nexport interface PostAggregatesAlertsV1QueryParams extends BaseUrlParams {\n dateRanges?: QueryParam;\n field?: QueryParam;\n filter?: string;\n from?: QueryParam;\n include?: QueryParam;\n interval?: QueryParam;\n minDocCount?: QueryParam;\n missing?: QueryParam;\n name?: QueryParam;\n q?: QueryParam;\n ranges?: QueryParam;\n size?: QueryParam;\n sort?: QueryParam;\n subAggregates?: QueryParam;\n timeZone?: QueryParam;\n type?: QueryParam;\n}\n\nexport type PostAggregatesAlertsV1ApiResponse = ApiResponsePayload;\n\nexport interface PostAggregatesAlertsV1PostData {}\n\nexport type PostAggregatesAlertsV1ResponseMessage =\n BaseApiResponseMessage<PostAggregatesAlertsV1ApiResponse>;\n\nexport interface PostAggregatesAlertsV1RequestMessage\n extends BaseApiRequestMessage<\n PostAggregatesAlertsV1QueryParams,\n PostAggregatesAlertsV1PostData\n > {\n api: AlertsRequestApi;\n method: 'postAggregatesAlertsV1';\n}\n\n// types for postEntitiesAlertsV1\n\nexport interface PostEntitiesAlertsV1QueryParams extends BaseUrlParams {\n ids?: QueryParam;\n}\n\nexport type PostEntitiesAlertsV1ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesAlertsV1PostData {}\n\nexport type PostEntitiesAlertsV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesAlertsV1ApiResponse>;\n\nexport interface PostEntitiesAlertsV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesAlertsV1QueryParams,\n PostEntitiesAlertsV1PostData\n > {\n api: AlertsRequestApi;\n method: 'postEntitiesAlertsV1';\n}\n\n// types for postEntitiesSuppressedDevicesV1\n\nexport type PostEntitiesSuppressedDevicesV1QueryParams = BaseUrlParams;\n\nexport type PostEntitiesSuppressedDevicesV1ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesSuppressedDevicesV1PostData {}\n\nexport type PostEntitiesSuppressedDevicesV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesSuppressedDevicesV1ApiResponse>;\n\nexport interface PostEntitiesSuppressedDevicesV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesSuppressedDevicesV1QueryParams,\n PostEntitiesSuppressedDevicesV1PostData\n > {\n api: AlertsRequestApi;\n method: 'postEntitiesSuppressedDevicesV1';\n}\n\n// general types\n\nexport type AlertsApiRequestMessage =\n | DeleteEntitiesSuppressedDevicesV1RequestMessage\n | GetQueriesAlertsV1RequestMessage\n | PatchCombinedAlertsV2RequestMessage\n | PatchEntitiesAlertsV2RequestMessage\n | PatchEntitiesSuppressedDevicesV1RequestMessage\n | PostAggregatesAlertsV1RequestMessage\n | PostEntitiesAlertsV1RequestMessage\n | PostEntitiesSuppressedDevicesV1RequestMessage;\n\nexport type AlertsApiResponseMessage =\n | DeleteEntitiesSuppressedDevicesV1ResponseMessage\n | GetQueriesAlertsV1ResponseMessage\n | PatchCombinedAlertsV2ResponseMessage\n | PatchEntitiesAlertsV2ResponseMessage\n | PatchEntitiesSuppressedDevicesV1ResponseMessage\n | PostAggregatesAlertsV1ResponseMessage\n | PostEntitiesAlertsV1ResponseMessage\n | PostEntitiesSuppressedDevicesV1ResponseMessage;\n\nexport class AlertsApiBridge {\n private bridge;\n\n constructor(bridge: Bridge) {\n this.bridge = bridge;\n }\n\n getBridge() {\n return this.bridge;\n }\n\n async deleteEntitiesSuppressedDevicesV1(\n urlParams: DeleteEntitiesSuppressedDevicesV1QueryParams = {}\n ): Promise<DeleteEntitiesSuppressedDevicesV1ApiResponse> {\n const message: DeleteEntitiesSuppressedDevicesV1RequestMessage = {\n type: 'api',\n api: 'alerts',\n method: 'deleteEntitiesSuppressedDevicesV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getQueriesAlertsV1(\n urlParams: GetQueriesAlertsV1QueryParams = {}\n ): Promise<GetQueriesAlertsV1ApiResponse> {\n const message: GetQueriesAlertsV1RequestMessage = {\n type: 'api',\n api: 'alerts',\n method: 'getQueriesAlertsV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async patchCombinedAlertsV2(\n postBody: PatchCombinedAlertsV2PostData,\n urlParams: PatchCombinedAlertsV2QueryParams = {}\n ): Promise<PatchCombinedAlertsV2ApiResponse> {\n const message: PatchCombinedAlertsV2RequestMessage = {\n type: 'api',\n api: 'alerts',\n method: 'patchCombinedAlertsV2',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async patchEntitiesAlertsV2(\n postBody: PatchEntitiesAlertsV2PostData,\n urlParams: PatchEntitiesAlertsV2QueryParams = {}\n ): Promise<PatchEntitiesAlertsV2ApiResponse> {\n const message: PatchEntitiesAlertsV2RequestMessage = {\n type: 'api',\n api: 'alerts',\n method: 'patchEntitiesAlertsV2',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async patchEntitiesSuppressedDevicesV1(\n postBody: PatchEntitiesSuppressedDevicesV1PostData,\n urlParams: PatchEntitiesSuppressedDevicesV1QueryParams = {}\n ): Promise<PatchEntitiesSuppressedDevicesV1ApiResponse> {\n const message: PatchEntitiesSuppressedDevicesV1RequestMessage = {\n type: 'api',\n api: 'alerts',\n method: 'patchEntitiesSuppressedDevicesV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postAggregatesAlertsV1(\n postBody: PostAggregatesAlertsV1PostData,\n urlParams: PostAggregatesAlertsV1QueryParams = {}\n ): Promise<PostAggregatesAlertsV1ApiResponse> {\n const message: PostAggregatesAlertsV1RequestMessage = {\n type: 'api',\n api: 'alerts',\n method: 'postAggregatesAlertsV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesAlertsV1(\n postBody: PostEntitiesAlertsV1PostData,\n urlParams: PostEntitiesAlertsV1QueryParams = {}\n ): Promise<PostEntitiesAlertsV1ApiResponse> {\n const message: PostEntitiesAlertsV1RequestMessage = {\n type: 'api',\n api: 'alerts',\n method: 'postEntitiesAlertsV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesSuppressedDevicesV1(\n postBody: PostEntitiesSuppressedDevicesV1PostData,\n urlParams: PostEntitiesSuppressedDevicesV1QueryParams = {}\n ): Promise<PostEntitiesSuppressedDevicesV1ApiResponse> {\n const message: PostEntitiesSuppressedDevicesV1RequestMessage = {\n type: 'api',\n api: 'alerts',\n method: 'postEntitiesSuppressedDevicesV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n}\n","/**\n *\n * This file is autogenerated.\n *\n * DO NOT EDIT DIRECTLY\n *\n **/\n\nimport type { Bridge } from '../../bridge';\n\nimport type {\n ApiResponsePayload,\n BaseApiRequestMessage,\n BaseApiResponseMessage,\n BaseUrlParams,\n QueryParam,\n} from '../../types';\n\nexport type CustomobjectsRequestApi = 'customobjects';\n\nexport type CommonApiResponseMessage =\n BaseApiResponseMessage<ApiResponsePayload>;\n\nexport interface CommonApiRequestMessage\n extends BaseApiRequestMessage<BaseUrlParams, unknown> {\n api: CustomobjectsRequestApi;\n}\n\n// types for deleteV1CollectionsCollectionNameObjectsObjectKey\n\nexport type DeleteV1CollectionsCollectionNameObjectsObjectKeyQueryParams =\n BaseUrlParams;\n\nexport type DeleteV1CollectionsCollectionNameObjectsObjectKeyApiResponse =\n ApiResponsePayload;\n\nexport type DeleteV1CollectionsCollectionNameObjectsObjectKeyResponseMessage =\n BaseApiResponseMessage<DeleteV1CollectionsCollectionNameObjectsObjectKeyApiResponse>;\n\nexport interface DeleteV1CollectionsCollectionNameObjectsObjectKeyRequestMessage\n extends BaseApiRequestMessage<DeleteV1CollectionsCollectionNameObjectsObjectKeyQueryParams> {\n api: CustomobjectsRequestApi;\n method: 'deleteV1CollectionsCollectionNameObjectsObjectKey';\n}\n\n// types for getV1Collections\n\nexport interface GetV1CollectionsQueryParams extends BaseUrlParams {\n startKey?: QueryParam;\n endKey?: QueryParam;\n limit?: QueryParam;\n}\n\nexport type GetV1CollectionsApiResponse = ApiResponsePayload;\n\nexport type GetV1CollectionsResponseMessage =\n BaseApiResponseMessage<GetV1CollectionsApiResponse>;\n\nexport interface GetV1CollectionsRequestMessage\n extends BaseApiRequestMessage<GetV1CollectionsQueryParams> {\n api: CustomobjectsRequestApi;\n method: 'getV1Collections';\n}\n\n// types for getV1CollectionsCollectionNameObjects\n\nexport interface GetV1CollectionsCollectionNameObjectsQueryParams\n extends BaseUrlParams {\n startKey?: QueryParam;\n endKey?: QueryParam;\n limit?: QueryParam;\n}\n\nexport type GetV1CollectionsCollectionNameObjectsApiResponse =\n ApiResponsePayload;\n\nexport type GetV1CollectionsCollectionNameObjectsResponseMessage =\n BaseApiResponseMessage<GetV1CollectionsCollectionNameObjectsApiResponse>;\n\nexport interface GetV1CollectionsCollectionNameObjectsRequestMessage\n extends BaseApiRequestMessage<GetV1CollectionsCollectionNameObjectsQueryParams> {\n api: CustomobjectsRequestApi;\n method: 'getV1CollectionsCollectionNameObjects';\n}\n\n// types for getV1CollectionsCollectionNameObjectsObjectKey\n\nexport type GetV1CollectionsCollectionNameObjectsObjectKeyQueryParams =\n BaseUrlParams;\n\nexport type GetV1CollectionsCollectionNameObjectsObjectKeyApiResponse =\n ApiResponsePayload;\n\nexport type GetV1CollectionsCollectionNameObjectsObjectKeyResponseMessage =\n BaseApiResponseMessage<GetV1CollectionsCollectionNameObjectsObjectKeyApiResponse>;\n\nexport interface GetV1CollectionsCollectionNameObjectsObjectKeyRequestMessage\n extends BaseApiRequestMessage<GetV1CollectionsCollectionNameObjectsObjectKeyQueryParams> {\n api: CustomobjectsRequestApi;\n method: 'getV1CollectionsCollectionNameObjectsObjectKey';\n}\n\n// types for getV1CollectionsCollectionNameObjectsObjectKeyMetadata\n\nexport type GetV1CollectionsCollectionNameObjectsObjectKeyMetadataQueryParams =\n BaseUrlParams;\n\nexport type GetV1CollectionsCollectionNameObjectsObjectKeyMetadataApiResponse =\n ApiResponsePayload;\n\nexport type GetV1CollectionsCollectionNameObjectsObjectKeyMetadataResponseMessage =\n BaseApiResponseMessage<GetV1CollectionsCollectionNameObjectsObjectKeyMetadataApiResponse>;\n\nexport interface GetV1CollectionsCollectionNameObjectsObjectKeyMetadataRequestMessage\n extends BaseApiRequestMessage<GetV1CollectionsCollectionNameObjectsObjectKeyMetadataQueryParams> {\n api: CustomobjectsRequestApi;\n method: 'getV1CollectionsCollectionNameObjectsObjectKeyMetadata';\n}\n\n// types for postV1CollectionsCollectionNameObjects\n\nexport type PostV1CollectionsCollectionNameObjectsQueryParams = BaseUrlParams;\n\nexport type PostV1CollectionsCollectionNameObjectsApiResponse =\n ApiResponsePayload;\n\nexport interface PostV1CollectionsCollectionNameObjectsPostData {}\n\nexport type PostV1CollectionsCollectionNameObjectsResponseMessage =\n BaseApiResponseMessage<PostV1CollectionsCollectionNameObjectsApiResponse>;\n\nexport interface PostV1CollectionsCollectionNameObjectsRequestMessage\n extends BaseApiRequestMessage<\n PostV1CollectionsCollectionNameObjectsQueryParams,\n PostV1CollectionsCollectionNameObjectsPostData\n > {\n api: CustomobjectsRequestApi;\n method: 'postV1CollectionsCollectionNameObjects';\n}\n\n// types for putV1CollectionsCollectionNameObjectsObjectKey\n\nexport type PutV1CollectionsCollectionNameObjectsObjectKeyQueryParams =\n BaseUrlParams;\n\nexport type PutV1CollectionsCollectionNameObjectsObjectKeyApiResponse =\n ApiResponsePayload;\n\nexport interface PutV1CollectionsCollectionNameObjectsObjectKeyPostData {}\n\nexport type PutV1CollectionsCollectionNameObjectsObjectKeyResponseMessage =\n BaseApiResponseMessage<PutV1CollectionsCollectionNameObjectsObjectKeyApiResponse>;\n\nexport interface PutV1CollectionsCollectionNameObjectsObjectKeyRequestMessage\n extends BaseApiRequestMessage<\n PutV1CollectionsCollectionNameObjectsObjectKeyQueryParams,\n PutV1CollectionsCollectionNameObjectsObjectKeyPostData\n > {\n api: CustomobjectsRequestApi;\n method: 'putV1CollectionsCollectionNameObjectsObjectKey';\n}\n\n// general types\n\nexport type CustomobjectsApiRequestMessage =\n | DeleteV1CollectionsCollectionNameObjectsObjectKeyRequestMessage\n | GetV1CollectionsRequestMessage\n | GetV1CollectionsCollectionNameObjectsRequestMessage\n | GetV1CollectionsCollectionNameObjectsObjectKeyRequestMessage\n | GetV1CollectionsCollectionNameObjectsObjectKeyMetadataRequestMessage\n | PostV1CollectionsCollectionNameObjectsRequestMessage\n | PutV1CollectionsCollectionNameObjectsObjectKeyRequestMessage;\n\nexport type CustomobjectsApiResponseMessage =\n | DeleteV1CollectionsCollectionNameObjectsObjectKeyResponseMessage\n | GetV1CollectionsResponseMessage\n | GetV1CollectionsCollectionNameObjectsResponseMessage\n | GetV1CollectionsCollectionNameObjectsObjectKeyResponseMessage\n | GetV1CollectionsCollectionNameObjectsObjectKeyMetadataResponseMessage\n | PostV1CollectionsCollectionNameObjectsResponseMessage\n | PutV1CollectionsCollectionNameObjectsObjectKeyResponseMessage;\n\nexport class CustomobjectsApiBridge {\n private bridge;\n\n constructor(bridge: Bridge) {\n this.bridge = bridge;\n }\n\n getBridge() {\n return this.bridge;\n }\n\n async deleteV1CollectionsCollectionNameObjectsObjectKey(\n urlParams: DeleteV1CollectionsCollectionNameObjectsObjectKeyQueryParams = {}\n ): Promise<DeleteV1CollectionsCollectionNameObjectsObjectKeyApiResponse> {\n const message: DeleteV1CollectionsCollectionNameObjectsObjectKeyRequestMessage =\n {\n type: 'api',\n api: 'customobjects',\n method: 'deleteV1CollectionsCollectionNameObjectsObjectKey',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getV1Collections(\n urlParams: GetV1CollectionsQueryParams = {}\n ): Promise<GetV1CollectionsApiResponse> {\n const message: GetV1CollectionsRequestMessage = {\n type: 'api',\n api: 'customobjects',\n method: 'getV1Collections',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getV1CollectionsCollectionNameObjects(\n urlParams: GetV1CollectionsCollectionNameObjectsQueryParams = {}\n ): Promise<GetV1CollectionsCollectionNameObjectsApiResponse> {\n const message: GetV1CollectionsCollectionNameObjectsRequestMessage = {\n type: 'api',\n api: 'customobjects',\n method: 'getV1CollectionsCollectionNameObjects',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getV1CollectionsCollectionNameObjectsObjectKey(\n urlParams: GetV1CollectionsCollectionNameObjectsObjectKeyQueryParams = {}\n ): Promise<GetV1CollectionsCollectionNameObjectsObjectKeyApiResponse> {\n const message: GetV1CollectionsCollectionNameObjectsObjectKeyRequestMessage =\n {\n type: 'api',\n api: 'customobjects',\n method: 'getV1CollectionsCollectionNameObjectsObjectKey',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getV1CollectionsCollectionNameObjectsObjectKeyMetadata(\n urlParams: GetV1CollectionsCollectionNameObjectsObjectKeyMetadataQueryParams = {}\n ): Promise<GetV1CollectionsCollectionNameObjectsObjectKeyMetadataApiResponse> {\n const message: GetV1CollectionsCollectionNameObjectsObjectKeyMetadataRequestMessage =\n {\n type: 'api',\n api: 'customobjects',\n method: 'getV1CollectionsCollectionNameObjectsObjectKeyMetadata',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postV1CollectionsCollectionNameObjects(\n postBody: PostV1CollectionsCollectionNameObjectsPostData,\n urlParams: PostV1CollectionsCollectionNameObjectsQueryParams = {}\n ): Promise<PostV1CollectionsCollectionNameObjectsApiResponse> {\n const message: PostV1CollectionsCollectionNameObjectsRequestMessage = {\n type: 'api',\n api: 'customobjects',\n method: 'postV1CollectionsCollectionNameObjects',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async putV1CollectionsCollectionNameObjectsObjectKey(\n postBody: PutV1CollectionsCollectionNameObjectsObjectKeyPostData,\n urlParams: PutV1CollectionsCollectionNameObjectsObjectKeyQueryParams = {}\n ): Promise<PutV1CollectionsCollectionNameObjectsObjectKeyApiResponse> {\n const message: PutV1CollectionsCollectionNameObjectsObjectKeyRequestMessage =\n {\n type: 'api',\n api: 'customobjects',\n method: 'putV1CollectionsCollectionNameObjectsObjectKey',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n}\n","/**\n *\n * This file is autogenerated.\n *\n * DO NOT EDIT DIRECTLY\n *\n **/\n\nimport type { Bridge } from '../../bridge';\n\nimport type {\n ApiResponsePayload,\n BaseApiRequestMessage,\n BaseApiResponseMessage,\n BaseUrlParams,\n QueryParam,\n} from '../../types';\n\nexport type DetectsRequestApi = 'detects';\n\nexport type CommonApiResponseMessage =\n BaseApiResponseMessage<ApiResponsePayload>;\n\nexport interface CommonApiRequestMessage\n extends BaseApiRequestMessage<BaseUrlParams, unknown> {\n api: DetectsRequestApi;\n}\n\n// types for getEntitiesSuppressedDevicesV1\n\nexport interface GetEntitiesSuppressedDevicesV1QueryParams\n extends BaseUrlParams {\n ids?: QueryParam;\n}\n\nexport type GetEntitiesSuppressedDevicesV1ApiResponse = ApiResponsePayload;\n\nexport type GetEntitiesSuppressedDevicesV1ResponseMessage =\n BaseApiResponseMessage<GetEntitiesSuppressedDevicesV1ApiResponse>;\n\nexport interface GetEntitiesSuppressedDevicesV1RequestMessage\n extends BaseApiRequestMessage<GetEntitiesSuppressedDevicesV1QueryParams> {\n api: DetectsRequestApi;\n method: 'getEntitiesSuppressedDevicesV1';\n}\n\n// types for patchEntitiesDetectsV2\n\nexport type PatchEntitiesDetectsV2QueryParams = BaseUrlParams;\n\nexport type PatchEntitiesDetectsV2ApiResponse = ApiResponsePayload;\n\nexport interface PatchEntitiesDetectsV2PostData {}\n\nexport type PatchEntitiesDetectsV2ResponseMessage =\n BaseApiResponseMessage<PatchEntitiesDetectsV2ApiResponse>;\n\nexport interface PatchEntitiesDetectsV2RequestMessage\n extends BaseApiRequestMessage<\n PatchEntitiesDetectsV2QueryParams,\n PatchEntitiesDetectsV2PostData\n > {\n api: DetectsRequestApi;\n method: 'patchEntitiesDetectsV2';\n}\n\n// types for patchQueriesDetectsV1\n\nexport type PatchQueriesDetectsV1QueryParams = BaseUrlParams;\n\nexport type PatchQueriesDetectsV1ApiResponse = ApiResponsePayload;\n\nexport interface PatchQueriesDetectsV1PostData {}\n\nexport type PatchQueriesDetectsV1ResponseMessage =\n BaseApiResponseMessage<PatchQueriesDetectsV1ApiResponse>;\n\nexport interface PatchQueriesDetectsV1RequestMessage\n extends BaseApiRequestMessage<\n PatchQueriesDetectsV1QueryParams,\n PatchQueriesDetectsV1PostData\n > {\n api: DetectsRequestApi;\n method: 'patchQueriesDetectsV1';\n}\n\n// types for patchQueriesDetectsV2\n\nexport type PatchQueriesDetectsV2QueryParams = BaseUrlParams;\n\nexport type PatchQueriesDetectsV2ApiResponse = ApiResponsePayload;\n\nexport interface PatchQueriesDetectsV2PostData {}\n\nexport type PatchQueriesDetectsV2ResponseMessage =\n BaseApiResponseMessage<PatchQueriesDetectsV2ApiResponse>;\n\nexport interface PatchQueriesDetectsV2RequestMessage\n extends BaseApiRequestMessage<\n PatchQueriesDetectsV2QueryParams,\n PatchQueriesDetectsV2PostData\n > {\n api: DetectsRequestApi;\n method: 'patchQueriesDetectsV2';\n}\n\n// types for postAggregatesDetectsGetV1\n\nexport type PostAggregatesDetectsGetV1QueryParams = BaseUrlParams;\n\nexport type PostAggregatesDetectsGetV1ApiResponse = ApiResponsePayload;\n\nexport interface PostAggregatesDetectsGetV1PostData {}\n\nexport type PostAggregatesDetectsGetV1ResponseMessage =\n BaseApiResponseMessage<PostAggregatesDetectsGetV1ApiResponse>;\n\nexport interface PostAggregatesDetectsGetV1RequestMessage\n extends BaseApiRequestMessage<\n PostAggregatesDetectsGetV1QueryParams,\n PostAggregatesDetectsGetV1PostData\n > {\n api: DetectsRequestApi;\n method: 'postAggregatesDetectsGetV1';\n}\n\n// types for postEntitiesSummariesGetV1\n\nexport type PostEntitiesSummariesGetV1QueryParams = BaseUrlParams;\n\nexport type PostEntitiesSummariesGetV1ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesSummariesGetV1PostData {}\n\nexport type PostEntitiesSummariesGetV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesSummariesGetV1ApiResponse>;\n\nexport interface PostEntitiesSummariesGetV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesSummariesGetV1QueryParams,\n PostEntitiesSummariesGetV1PostData\n > {\n api: DetectsRequestApi;\n method: 'postEntitiesSummariesGetV1';\n}\n\n// types for postEntitiesSuppressedDevicesV1\n\nexport interface PostEntitiesSuppressedDevicesV1QueryParams\n extends BaseUrlParams {\n ids?: QueryParam;\n}\n\nexport type PostEntitiesSuppressedDevicesV1ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesSuppressedDevicesV1PostData {}\n\nexport type PostEntitiesSuppressedDevicesV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesSuppressedDevicesV1ApiResponse>;\n\nexport interface PostEntitiesSuppressedDevicesV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesSuppressedDevicesV1QueryParams,\n PostEntitiesSuppressedDevicesV1PostData\n > {\n api: DetectsRequestApi;\n method: 'postEntitiesSuppressedDevicesV1';\n}\n\n// general types\n\nexport type DetectsApiRequestMessage =\n | GetEntitiesSuppressedDevicesV1RequestMessage\n | PatchEntitiesDetectsV2RequestMessage\n | PatchQueriesDetectsV1RequestMessage\n | PatchQueriesDetectsV2RequestMessage\n | PostAggregatesDetectsGetV1RequestMessage\n | PostEntitiesSummariesGetV1RequestMessage\n | PostEntitiesSuppressedDevicesV1RequestMessage;\n\nexport type DetectsApiResponseMessage =\n | GetEntitiesSuppressedDevicesV1ResponseMessage\n | PatchEntitiesDetectsV2ResponseMessage\n | PatchQueriesDetectsV1ResponseMessage\n | PatchQueriesDetectsV2ResponseMessage\n | PostAggregatesDetectsGetV1ResponseMessage\n | PostEntitiesSummariesGetV1ResponseMessage\n | PostEntitiesSuppressedDevicesV1ResponseMessage;\n\nexport class DetectsApiBridge {\n private bridge;\n\n constructor(bridge: Bridge) {\n this.bridge = bridge;\n }\n\n getBridge() {\n return this.bridge;\n }\n\n async getEntitiesSuppressedDevicesV1(\n urlParams: GetEntitiesSuppressedDevicesV1QueryParams = {}\n ): Promise<GetEntitiesSuppressedDevicesV1ApiResponse> {\n const message: GetEntitiesSuppressedDevicesV1RequestMessage = {\n type: 'api',\n api: 'detects',\n method: 'getEntitiesSuppressedDevicesV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async patchEntitiesDetectsV2(\n postBody: PatchEntitiesDetectsV2PostData,\n urlParams: PatchEntitiesDetectsV2QueryParams = {}\n ): Promise<PatchEntitiesDetectsV2ApiResponse> {\n const message: PatchEntitiesDetectsV2RequestMessage = {\n type: 'api',\n api: 'detects',\n method: 'patchEntitiesDetectsV2',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async patchQueriesDetectsV1(\n postBody: PatchQueriesDetectsV1PostData,\n urlParams: PatchQueriesDetectsV1QueryParams = {}\n ): Promise<PatchQueriesDetectsV1ApiResponse> {\n const message: PatchQueriesDetectsV1RequestMessage = {\n type: 'api',\n api: 'detects',\n method: 'patchQueriesDetectsV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async patchQueriesDetectsV2(\n postBody: PatchQueriesDetectsV2PostData,\n urlParams: PatchQueriesDetectsV2QueryParams = {}\n ): Promise<PatchQueriesDetectsV2ApiResponse> {\n const message: PatchQueriesDetectsV2RequestMessage = {\n type: 'api',\n api: 'detects',\n method: 'patchQueriesDetectsV2',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postAggregatesDetectsGetV1(\n postBody: PostAggregatesDetectsGetV1PostData,\n urlParams: PostAggregatesDetectsGetV1QueryParams = {}\n ): Promise<PostAggregatesDetectsGetV1ApiResponse> {\n const message: PostAggregatesDetectsGetV1RequestMessage = {\n type: 'api',\n api: 'detects',\n method: 'postAggregatesDetectsGetV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesSummariesGetV1(\n postBody: PostEntitiesSummariesGetV1PostData,\n urlParams: PostEntitiesSummariesGetV1QueryParams = {}\n ): Promise<PostEntitiesSummariesGetV1ApiResponse> {\n const message: PostEntitiesSummariesGetV1RequestMessage = {\n type: 'api',\n api: 'detects',\n method: 'postEntitiesSummariesGetV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesSuppressedDevicesV1(\n postBody: PostEntitiesSuppressedDevicesV1PostData,\n urlParams: PostEntitiesSuppressedDevicesV1QueryParams = {}\n ): Promise<PostEntitiesSuppressedDevicesV1ApiResponse> {\n const message: PostEntitiesSuppressedDevicesV1RequestMessage = {\n type: 'api',\n api: 'detects',\n method: 'postEntitiesSuppressedDevicesV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n}\n","/**\n *\n * This file is autogenerated.\n *\n * DO NOT EDIT DIRECTLY\n *\n **/\n\nimport type { Bridge } from '../../bridge';\n\nimport type {\n ApiResponsePayload,\n BaseApiRequestMessage,\n BaseApiResponseMessage,\n BaseUrlParams,\n QueryParam,\n} from '../../types';\n\nexport type DevicesRequestApi = 'devices';\n\nexport type CommonApiResponseMessage =\n BaseApiResponseMessage<ApiResponsePayload>;\n\nexport interface CommonApiRequestMessage\n extends BaseApiRequestMessage<BaseUrlParams, unknown> {\n api: DevicesRequestApi;\n}\n\n// types for deleteEntitiesGroupsV1\n\nexport interface DeleteEntitiesGroupsV1QueryParams extends BaseUrlParams {\n ids: QueryParam;\n}\n\nexport type DeleteEntitiesGroupsV1ApiResponse = ApiResponsePayload;\n\nexport type DeleteEntitiesGroupsV1ResponseMessage =\n BaseApiResponseMessage<DeleteEntitiesGroupsV1ApiResponse>;\n\nexport interface DeleteEntitiesGroupsV1RequestMessage\n extends BaseApiRequestMessage<DeleteEntitiesGroupsV1QueryParams> {\n api: DevicesRequestApi;\n method: 'deleteEntitiesGroupsV1';\n}\n\n// types for getAggregatesBucketsV1\n\nexport interface GetAggregatesBucketsV1QueryParams extends BaseUrlParams {\n facet: QueryParam;\n filter?: string;\n sort?: QueryParam;\n groupId?: QueryParam;\n policyId?: QueryParam;\n policyType?: QueryParam;\n additionalHostsOnly?: QueryParam;\n}\n\nexport type GetAggregatesBucketsV1ApiResponse = ApiResponsePayload;\n\nexport type GetAggregatesBucketsV1ResponseMessage =\n BaseApiResponseMessage<GetAggregatesBucketsV1ApiResponse>;\n\nexport interface GetAggregatesBucketsV1RequestMessage\n extends BaseApiRequestMessage<GetAggregatesBucketsV1QueryParams> {\n api: DevicesRequestApi;\n method: 'getAggregatesBucketsV1';\n}\n\n// types for getAggregatesTagPrefixCountsV1\n\nexport interface GetAggregatesTagPrefixCountsV1QueryParams\n extends BaseUrlParams {\n prefix: QueryParam;\n limit?: QueryParam;\n}\n\nexport type GetAggregatesTagPrefixCountsV1ApiResponse = ApiResponsePayload;\n\nexport type GetAggregatesTagPrefixCountsV1ResponseMessage =\n BaseApiResponseMessage<GetAggregatesTagPrefixCountsV1ApiResponse>;\n\nexport interface GetAggregatesTagPrefixCountsV1RequestMessage\n extends BaseApiRequestMessage<GetAggregatesTagPrefixCountsV1QueryParams> {\n api: DevicesRequestApi;\n method: 'getAggregatesTagPrefixCountsV1';\n}\n\n// types for getEntitiesGroupsV1\n\nexport interface GetEntitiesGroupsV1QueryParams extends BaseUrlParams {\n ids: QueryParam;\n}\n\nexport type GetEntitiesGroupsV1ApiResponse = ApiResponsePayload;\n\nexport type GetEntitiesGroupsV1ResponseMessage =\n BaseApiResponseMessage<GetEntitiesGroupsV1ApiResponse>;\n\nexport interface GetEntitiesGroupsV1RequestMessage\n extends BaseApiRequestMessage<GetEntitiesGroupsV1QueryParams> {\n api: DevicesRequestApi;\n method: 'getEntitiesGroupsV1';\n}\n\n// types for getEntitiesReleasesV1\n\nexport interface GetEntitiesReleasesV1QueryParams extends BaseUrlParams {\n ids: QueryParam;\n}\n\nexport type GetEntitiesReleasesV1ApiResponse = ApiResponsePayload;\n\nexport type GetEntitiesReleasesV1ResponseMessage =\n BaseApiResponseMessage<GetEntitiesReleasesV1ApiResponse>;\n\nexport interface GetEntitiesReleasesV1RequestMessage\n extends BaseApiRequestMessage<GetEntitiesReleasesV1QueryParams> {\n api: DevicesRequestApi;\n method: 'getEntitiesReleasesV1';\n}\n\n// types for getEntitiesRespondV1\n\nexport type GetEntitiesRespondV1QueryParams = BaseUrlParams;\n\nexport type GetEntitiesRespondV1ApiResponse = ApiResponsePayload;\n\nexport type GetEntitiesRespondV1ResponseMessage =\n BaseApiResponseMessage<GetEntitiesRespondV1ApiResponse>;\n\nexport interface GetEntitiesRespondV1RequestMessage\n extends BaseApiRequestMessage<GetEntitiesRespondV1QueryParams> {\n api: DevicesRequestApi;\n method: 'getEntitiesRespondV1';\n}\n\n// types for getQueriesAvailableGroupsV1\n\nexport interface GetQueriesAvailableGroupsV1QueryParams extends BaseUrlParams {\n policyId?: QueryParam;\n policyType?: QueryParam;\n filter?: string;\n limit?: QueryParam;\n offset?: QueryParam;\n sort?: QueryParam;\n}\n\nexport type GetQueriesAvailableGroupsV1ApiResponse = ApiResponsePayload;\n\nexport type GetQueriesAvailableGroupsV1ResponseMessage =\n BaseApiResponseMessage<GetQueriesAvailableGroupsV1ApiResponse>;\n\nexport interface GetQueriesAvailableGroupsV1RequestMessage\n extends BaseApiRequestMessage<GetQueriesAvailableGroupsV1QueryParams> {\n api: DevicesRequestApi;\n method: 'getQueriesAvailableGroupsV1';\n}\n\n// types for getQueriesDevicesHiddenV2\n\nexport interface GetQueriesDevicesHiddenV2QueryParams extends BaseUrlParams {\n filter?: string;\n limit?: QueryParam;\n offset?: QueryParam;\n sort?: QueryParam;\n groupId?: QueryParam;\n policyId?: QueryParam;\n policyType?: QueryParam;\n additionalHostsOnly?: QueryParam;\n}\n\nexport type GetQueriesDevicesHiddenV2ApiResponse = ApiResponsePayload;\n\nexport type GetQueriesDevicesHiddenV2ResponseMessage =\n BaseApiResponseMessage<GetQueriesDevicesHiddenV2ApiResponse>;\n\nexport interface GetQueriesDevicesHiddenV2RequestMessage\n extends BaseApiRequestMessage<GetQueriesDevicesHiddenV2QueryParams> {\n api: DevicesRequestApi;\n method: 'getQueriesDevicesHiddenV2';\n}\n\n// types for getQueriesDevicesV2\n\nexport interface GetQueriesDevicesV2QueryParams extends BaseUrlParams {\n filter?: string;\n limit?: QueryParam;\n offset?: QueryParam;\n sort?: QueryParam;\n groupId?: QueryParam;\n policyId?: QueryParam;\n policyType?: QueryParam;\n additionalHostsOnly?: QueryParam;\n}\n\nexport type GetQueriesDevicesV2ApiResponse = ApiResponsePayload;\n\nexport type GetQueriesDevicesV2ResponseMessage =\n BaseApiResponseMessage<GetQueriesDevicesV2ApiResponse>;\n\nexport interface GetQueriesDevicesV2RequestMessage\n extends BaseApiRequestMessage<GetQueriesDevicesV2QueryParams> {\n api: DevicesRequestApi;\n method: 'getQueriesDevicesV2';\n}\n\n// types for getQueriesGroupsV1\n\nexport interface GetQueriesGroupsV1QueryParams extends BaseUrlParams {\n filter?: string;\n limit?: QueryParam;\n offset?: QueryParam;\n sort?: QueryParam;\n}\n\nexport type GetQueriesGroupsV1ApiResponse = ApiResponsePayload;\n\nexport type GetQueriesGroupsV1ResponseMessage =\n BaseApiResponseMessage<GetQueriesGroupsV1ApiResponse>;\n\nexport interface GetQueriesGroupsV1RequestMessage\n extends BaseApiRequestMessage<GetQueriesGroupsV1QueryParams> {\n api: DevicesRequestApi;\n method: 'getQueriesGroupsV1';\n}\n\n// types for patchEntitiesDevicesTagsV2\n\nexport type PatchEntitiesDevicesTagsV2QueryParams = BaseUrlParams;\n\nexport type PatchEntitiesDevicesTagsV2ApiResponse = ApiResponsePayload;\n\nexport interface PatchEntitiesDevicesTagsV2PostData {}\n\nexport type PatchEntitiesDevicesTagsV2ResponseMessage =\n BaseApiResponseMessage<PatchEntitiesDevicesTagsV2ApiResponse>;\n\nexport interface PatchEntitiesDevicesTagsV2RequestMessage\n extends BaseApiRequestMessage<\n PatchEntitiesDevicesTagsV2QueryParams,\n PatchEntitiesDevicesTagsV2PostData\n > {\n api: DevicesRequestApi;\n method: 'patchEntitiesDevicesTagsV2';\n}\n\n// types for patchEntitiesGroupsV1\n\nexport type PatchEntitiesGroupsV1QueryParams = BaseUrlParams;\n\nexport type PatchEntitiesGroupsV1ApiResponse = ApiResponsePayload;\n\nexport interface PatchEntitiesGroupsV1PostData {}\n\nexport type PatchEntitiesGroupsV1ResponseMessage =\n BaseApiResponseMessage<PatchEntitiesGroupsV1ApiResponse>;\n\nexport interface PatchEntitiesGroupsV1RequestMessage\n extends BaseApiRequestMessage<\n PatchEntitiesGroupsV1QueryParams,\n PatchEntitiesGroupsV1PostData\n > {\n api: DevicesRequestApi;\n method: 'patchEntitiesGroupsV1';\n}\n\n// types for postAggregatesDevicesGetV1\n\nexport interface PostAggregatesDevicesGetV1QueryParams extends BaseUrlParams {\n groupId?: QueryParam;\n}\n\nexport type PostAggregatesDevicesGetV1ApiResponse = ApiResponsePayload;\n\nexport interface PostAggregatesDevicesGetV1PostData {}\n\nexport type PostAggregatesDevicesGetV1ResponseMessage =\n BaseApiResponseMessage<PostAggregatesDevicesGetV1ApiResponse>;\n\nexport interface PostAggregatesDevicesGetV1RequestMessage\n extends BaseApiRequestMessage<\n PostAggregatesDevicesGetV1QueryParams,\n PostAggregatesDevicesGetV1PostData\n > {\n api: DevicesRequestApi;\n method: 'postAggregatesDevicesGetV1';\n}\n\n// types for postCombinedDevicesLoginHistoryV1\n\nexport type PostCombinedDevicesLoginHistoryV1QueryParams = BaseUrlParams;\n\nexport type PostCombinedDevicesLoginHistoryV1ApiResponse = ApiResponsePayload;\n\nexport interface PostCombinedDevicesLoginHistoryV1PostData {}\n\nexport type PostCombinedDevicesLoginHistoryV1ResponseMessage =\n BaseApiResponseMessage<PostCombinedDevicesLoginHistoryV1ApiResponse>;\n\nexport interface PostCombinedDevicesLoginHistoryV1RequestMessage\n extends BaseApiRequestMessage<\n PostCombinedDevicesLoginHistoryV1QueryParams,\n PostCombinedDevicesLoginHistoryV1PostData\n > {\n api: DevicesRequestApi;\n method: 'postCombinedDevicesLoginHistoryV1';\n}\n\n// types for postEntitiesDevicesActionsV4\n\nexport interface PostEntitiesDevicesActionsV4QueryParams extends BaseUrlParams {\n actionName?: QueryParam;\n}\n\nexport type PostEntitiesDevicesActionsV4ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesDevicesActionsV4PostData {}\n\nexport type PostEntitiesDevicesActionsV4ResponseMessage =\n BaseApiResponseMessage<PostEntitiesDevicesActionsV4ApiResponse>;\n\nexport interface PostEntitiesDevicesActionsV4RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesDevicesActionsV4QueryParams,\n PostEntitiesDevicesActionsV4PostData\n > {\n api: DevicesRequestApi;\n method: 'postEntitiesDevicesActionsV4';\n}\n\n// types for postEntitiesDevicesHiddenActionsV4\n\nexport interface PostEntitiesDevicesHiddenActionsV4QueryParams\n extends BaseUrlParams {\n actionName?: QueryParam;\n}\n\nexport type PostEntitiesDevicesHiddenActionsV4ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesDevicesHiddenActionsV4PostData {}\n\nexport type PostEntitiesDevicesHiddenActionsV4ResponseMessage =\n BaseApiResponseMessage<PostEntitiesDevicesHiddenActionsV4ApiResponse>;\n\nexport interface PostEntitiesDevicesHiddenActionsV4RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesDevicesHiddenActionsV4QueryParams,\n PostEntitiesDevicesHiddenActionsV4PostData\n > {\n api: DevicesRequestApi;\n method: 'postEntitiesDevicesHiddenActionsV4';\n}\n\n// types for postEntitiesDevicesReportsV1\n\nexport type PostEntitiesDevicesReportsV1QueryParams = BaseUrlParams;\n\nexport type PostEntitiesDevicesReportsV1ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesDevicesReportsV1PostData {}\n\nexport type PostEntitiesDevicesReportsV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesDevicesReportsV1ApiResponse>;\n\nexport interface PostEntitiesDevicesReportsV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesDevicesReportsV1QueryParams,\n PostEntitiesDevicesReportsV1PostData\n > {\n api: DevicesRequestApi;\n method: 'postEntitiesDevicesReportsV1';\n}\n\n// types for postEntitiesDevicesV2\n\nexport type PostEntitiesDevicesV2QueryParams = BaseUrlParams;\n\nexport type PostEntitiesDevicesV2ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesDevicesV2PostData {}\n\nexport type PostEntitiesDevicesV2ResponseMessage =\n BaseApiResponseMessage<PostEntitiesDevicesV2ApiResponse>;\n\nexport interface PostEntitiesDevicesV2RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesDevicesV2QueryParams,\n PostEntitiesDevicesV2PostData\n > {\n api: DevicesRequestApi;\n method: 'postEntitiesDevicesV2';\n}\n\n// types for postEntitiesGroupActionsV1\n\nexport interface PostEntitiesGroupActionsV1QueryParams extends BaseUrlParams {\n ids: QueryParam;\n actionName: QueryParam;\n disableHostnameCheck?: QueryParam;\n}\n\nexport type PostEntitiesGroupActionsV1ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesGroupActionsV1PostData {}\n\nexport type PostEntitiesGroupActionsV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesGroupActionsV1ApiResponse>;\n\nexport interface PostEntitiesGroupActionsV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesGroupActionsV1QueryParams,\n PostEntitiesGroupActionsV1PostData\n > {\n api: DevicesRequestApi;\n method: 'postEntitiesGroupActionsV1';\n}\n\n// types for postEntitiesGroupsV1\n\nexport type PostEntitiesGroupsV1QueryParams = BaseUrlParams;\n\nexport type PostEntitiesGroupsV1ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesGroupsV1PostData {}\n\nexport type PostEntitiesGroupsV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesGroupsV1ApiResponse>;\n\nexport interface PostEntitiesGroupsV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesGroupsV1QueryParams,\n PostEntitiesGroupsV1PostData\n > {\n api: DevicesRequestApi;\n method: 'postEntitiesGroupsV1';\n}\n\n// types for postEntitiesReleasesV1\n\nexport interface PostEntitiesReleasesV1QueryParams extends BaseUrlParams {\n ids: QueryParam;\n}\n\nexport type PostEntitiesReleasesV1ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesReleasesV1PostData {}\n\nexport type PostEntitiesReleasesV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesReleasesV1ApiResponse>;\n\nexport interface PostEntitiesReleasesV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesReleasesV1QueryParams,\n PostEntitiesReleasesV1PostData\n > {\n api: DevicesRequestApi;\n method: 'postEntitiesReleasesV1';\n}\n\n// general types\n\nexport type DevicesApiRequestMessage =\n | DeleteEntitiesGroupsV1RequestMessage\n | GetAggregatesBucketsV1RequestMessage\n | GetAggregatesTagPrefixCountsV1RequestMessage\n | GetEntitiesGroupsV1RequestMessage\n | GetEntitiesReleasesV1RequestMessage\n | GetEntitiesRespondV1RequestMessage\n | GetQueriesAvailableGroupsV1RequestMessage\n | GetQueriesDevicesHiddenV2RequestMessage\n | GetQueriesDevicesV2RequestMessage\n | GetQueriesGroupsV1RequestMessage\n | PatchEntitiesDevicesTagsV2RequestMessage\n | PatchEntitiesGroupsV1RequestMessage\n | PostAggregatesDevicesGetV1RequestMessage\n | PostCombinedDevicesLoginHistoryV1RequestMessage\n | PostEntitiesDevicesActionsV4RequestMessage\n | PostEntitiesDevicesHiddenActionsV4RequestMessage\n | PostEntitiesDevicesReportsV1RequestMessage\n | PostEntitiesDevicesV2RequestMessage\n | PostEntitiesGroupActionsV1RequestMessage\n | PostEntitiesGroupsV1RequestMessage\n | PostEntitiesReleasesV1RequestMessage;\n\nexport type DevicesApiResponseMessage =\n | DeleteEntitiesGroupsV1ResponseMessage\n | GetAggregatesBucketsV1ResponseMessage\n | GetAggregatesTagPrefixCountsV1ResponseMessage\n | GetEntitiesGroupsV1ResponseMessage\n | GetEntitiesReleasesV1ResponseMessage\n | GetEntitiesRespondV1ResponseMessage\n | GetQueriesAvailableGroupsV1ResponseMessage\n | GetQueriesDevicesHiddenV2ResponseMessage\n | GetQueriesDevicesV2ResponseMessage\n | GetQueriesGroupsV1ResponseMessage\n | PatchEntitiesDevicesTagsV2ResponseMessage\n | PatchEntitiesGroupsV1ResponseMessage\n | PostAggregatesDevicesGetV1ResponseMessage\n | PostCombinedDevicesLoginHistoryV1ResponseMessage\n | PostEntitiesDevicesActionsV4ResponseMessage\n | PostEntitiesDevicesHiddenActionsV4ResponseMessage\n | PostEntitiesDevicesReportsV1ResponseMessage\n | PostEntitiesDevicesV2ResponseMessage\n | PostEntitiesGroupActionsV1ResponseMessage\n | PostEntitiesGroupsV1ResponseMessage\n | PostEntitiesReleasesV1ResponseMessage;\n\nexport class DevicesApiBridge {\n private bridge;\n\n constructor(bridge: Bridge) {\n this.bridge = bridge;\n }\n\n getBridge() {\n return this.bridge;\n }\n\n async deleteEntitiesGroupsV1(\n urlParams: DeleteEntitiesGroupsV1QueryParams\n ): Promise<DeleteEntitiesGroupsV1ApiResponse> {\n const message: DeleteEntitiesGroupsV1RequestMessage = {\n type: 'api',\n api: 'devices',\n method: 'deleteEntitiesGroupsV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getAggregatesBucketsV1(\n urlParams: GetAggregatesBucketsV1QueryParams\n ): Promise<GetAggregatesBucketsV1ApiResponse> {\n const message: GetAggregatesBucketsV1RequestMessage = {\n type: 'api',\n api: 'devices',\n method: 'getAggregatesBucketsV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getAggregatesTagPrefixCountsV1(\n urlParams: GetAggregatesTagPrefixCountsV1QueryParams\n ): Promise<GetAggregatesTagPrefixCountsV1ApiResponse> {\n const message: GetAggregatesTagPrefixCountsV1RequestMessage = {\n type: 'api',\n api: 'devices',\n method: 'getAggregatesTagPrefixCountsV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getEntitiesGroupsV1(\n urlParams: GetEntitiesGroupsV1QueryParams\n ): Promise<GetEntitiesGroupsV1ApiResponse> {\n const message: GetEntitiesGroupsV1RequestMessage = {\n type: 'api',\n api: 'devices',\n method: 'getEntitiesGroupsV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getEntitiesReleasesV1(\n urlParams: GetEntitiesReleasesV1QueryParams\n ): Promise<GetEntitiesReleasesV1ApiResponse> {\n const message: GetEntitiesReleasesV1RequestMessage = {\n type: 'api',\n api: 'devices',\n method: 'getEntitiesReleasesV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getEntitiesRespondV1(\n urlParams: GetEntitiesRespondV1QueryParams = {}\n ): Promise<GetEntitiesRespondV1ApiResponse> {\n const message: GetEntitiesRespondV1RequestMessage = {\n type: 'api',\n api: 'devices',\n method: 'getEntitiesRespondV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getQueriesAvailableGroupsV1(\n urlParams: GetQueriesAvailableGroupsV1QueryParams = {}\n ): Promise<GetQueriesAvailableGroupsV1ApiResponse> {\n const message: GetQueriesAvailableGroupsV1RequestMessage = {\n type: 'api',\n api: 'devices',\n method: 'getQueriesAvailableGroupsV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getQueriesDevicesHiddenV2(\n urlParams: GetQueriesDevicesHiddenV2QueryParams = {}\n ): Promise<GetQueriesDevicesHiddenV2ApiResponse> {\n const message: GetQueriesDevicesHiddenV2RequestMessage = {\n type: 'api',\n api: 'devices',\n method: 'getQueriesDevicesHiddenV2',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getQueriesDevicesV2(\n urlParams: GetQueriesDevicesV2QueryParams = {}\n ): Promise<GetQueriesDevicesV2ApiResponse> {\n const message: GetQueriesDevicesV2RequestMessage = {\n type: 'api',\n api: 'devices',\n method: 'getQueriesDevicesV2',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getQueriesGroupsV1(\n urlParams: GetQueriesGroupsV1QueryParams = {}\n ): Promise<GetQueriesGroupsV1ApiResponse> {\n const message: GetQueriesGroupsV1RequestMessage = {\n type: 'api',\n api: 'devices',\n method: 'getQueriesGroupsV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async patchEntitiesDevicesTagsV2(\n postBody: PatchEntitiesDevicesTagsV2PostData,\n urlParams: PatchEntitiesDevicesTagsV2QueryParams = {}\n ): Promise<PatchEntitiesDevicesTagsV2ApiResponse> {\n const message: PatchEntitiesDevicesTagsV2RequestMessage = {\n type: 'api',\n api: 'devices',\n method: 'patchEntitiesDevicesTagsV2',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async patchEntitiesGroupsV1(\n postBody: PatchEntitiesGroupsV1PostData,\n urlParams: PatchEntitiesGroupsV1QueryParams = {}\n ): Promise<PatchEntitiesGroupsV1ApiResponse> {\n const message: PatchEntitiesGroupsV1RequestMessage = {\n type: 'api',\n api: 'devices',\n method: 'patchEntitiesGroupsV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postAggregatesDevicesGetV1(\n postBody: PostAggregatesDevicesGetV1PostData,\n urlParams: PostAggregatesDevicesGetV1QueryParams = {}\n ): Promise<PostAggregatesDevicesGetV1ApiResponse> {\n const message: PostAggregatesDevicesGetV1RequestMessage = {\n type: 'api',\n api: 'devices',\n method: 'postAggregatesDevicesGetV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postCombinedDevicesLoginHistoryV1(\n postBody: PostCombinedDevicesLoginHistoryV1PostData,\n urlParams: PostCombinedDevicesLoginHistoryV1QueryParams = {}\n ): Promise<PostCombinedDevicesLoginHistoryV1ApiResponse> {\n const message: PostCombinedDevicesLoginHistoryV1RequestMessage = {\n type: 'api',\n api: 'devices',\n method: 'postCombinedDevicesLoginHistoryV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesDevicesActionsV4(\n postBody: PostEntitiesDevicesActionsV4PostData,\n urlParams: PostEntitiesDevicesActionsV4QueryParams = {}\n ): Promise<PostEntitiesDevicesActionsV4ApiResponse> {\n const message: PostEntitiesDevicesActionsV4RequestMessage = {\n type: 'api',\n api: 'devices',\n method: 'postEntitiesDevicesActionsV4',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesDevicesHiddenActionsV4(\n postBody: PostEntitiesDevicesHiddenActionsV4PostData,\n urlParams: PostEntitiesDevicesHiddenActionsV4QueryParams = {}\n ): Promise<PostEntitiesDevicesHiddenActionsV4ApiResponse> {\n const message: PostEntitiesDevicesHiddenActionsV4RequestMessage = {\n type: 'api',\n api: 'devices',\n method: 'postEntitiesDevicesHiddenActionsV4',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesDevicesReportsV1(\n postBody: PostEntitiesDevicesReportsV1PostData,\n urlParams: PostEntitiesDevicesReportsV1QueryParams = {}\n ): Promise<PostEntitiesDevicesReportsV1ApiResponse> {\n const message: PostEntitiesDevicesReportsV1RequestMessage = {\n type: 'api',\n api: 'devices',\n method: 'postEntitiesDevicesReportsV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesDevicesV2(\n postBody: PostEntitiesDevicesV2PostData,\n urlParams: PostEntitiesDevicesV2QueryParams = {}\n ): Promise<PostEntitiesDevicesV2ApiResponse> {\n const message: PostEntitiesDevicesV2RequestMessage = {\n type: 'api',\n api: 'devices',\n method: 'postEntitiesDevicesV2',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesGroupActionsV1(\n postBody: PostEntitiesGroupActionsV1PostData,\n urlParams: PostEntitiesGroupActionsV1QueryParams\n ): Promise<PostEntitiesGroupActionsV1ApiResponse> {\n const message: PostEntitiesGroupActionsV1RequestMessage = {\n type: 'api',\n api: 'devices',\n method: 'postEntitiesGroupActionsV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesGroupsV1(\n postBody: PostEntitiesGroupsV1PostData,\n urlParams: PostEntitiesGroupsV1QueryParams = {}\n ): Promise<PostEntitiesGroupsV1ApiResponse> {\n const message: PostEntitiesGroupsV1RequestMessage = {\n type: 'api',\n api: 'devices',\n method: 'postEntitiesGroupsV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesReleasesV1(\n postBody: PostEntitiesReleasesV1PostData,\n urlParams: PostEntitiesReleasesV1QueryParams\n ): Promise<PostEntitiesReleasesV1ApiResponse> {\n const message: PostEntitiesReleasesV1RequestMessage = {\n type: 'api',\n api: 'devices',\n method: 'postEntitiesReleasesV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n}\n","/**\n *\n * This file is autogenerated.\n *\n * DO NOT EDIT DIRECTLY\n *\n **/\n\nimport type { Bridge } from '../../bridge';\n\nimport type {\n ApiResponsePayload,\n BaseApiRequestMessage,\n BaseApiResponseMessage,\n BaseUrlParams,\n QueryParam,\n} from '../../types';\n\nexport type FaasGatewayRequestApi = 'faasGateway';\n\nexport type CommonApiResponseMessage =\n BaseApiResponseMessage<ApiResponsePayload>;\n\nexport interface CommonApiRequestMessage\n extends BaseApiRequestMessage<BaseUrlParams, unknown> {\n api: FaasGatewayRequestApi;\n}\n\n// types for getEntitiesExecutionV1\n\nexport interface GetEntitiesExecutionV1QueryParams extends BaseUrlParams {\n id: QueryParam;\n}\n\nexport type GetEntitiesExecutionV1ApiResponse = ApiResponsePayload;\n\nexport type GetEntitiesExecutionV1ResponseMessage =\n BaseApiResponseMessage<GetEntitiesExecutionV1ApiResponse>;\n\nexport interface GetEntitiesExecutionV1RequestMessage\n extends BaseApiRequestMessage<GetEntitiesExecutionV1QueryParams> {\n api: FaasGatewayRequestApi;\n method: 'getEntitiesExecutionV1';\n}\n\n// types for postEntitiesExecutionV1\n\nexport type PostEntitiesExecutionV1QueryParams = BaseUrlParams;\n\nexport type PostEntitiesExecutionV1ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesExecutionV1PostData {}\n\nexport type PostEntitiesExecutionV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesExecutionV1ApiResponse>;\n\nexport interface PostEntitiesExecutionV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesExecutionV1QueryParams,\n PostEntitiesExecutionV1PostData\n > {\n api: FaasGatewayRequestApi;\n method: 'postEntitiesExecutionV1';\n}\n\n// general types\n\nexport type FaasGatewayApiRequestMessage =\n | GetEntitiesExecutionV1RequestMessage\n | PostEntitiesExecutionV1RequestMessage;\n\nexport type FaasGatewayApiResponseMessage =\n | GetEntitiesExecutionV1ResponseMessage\n | PostEntitiesExecutionV1ResponseMessage;\n\nexport class FaasGatewayApiBridge {\n private bridge;\n\n constructor(bridge: Bridge) {\n this.bridge = bridge;\n }\n\n getBridge() {\n return this.bridge;\n }\n\n async getEntitiesExecutionV1(\n urlParams: GetEntitiesExecutionV1QueryParams\n ): Promise<GetEntitiesExecutionV1ApiResponse> {\n const message: GetEntitiesExecutionV1RequestMessage = {\n type: 'api',\n api: 'faasGateway',\n method: 'getEntitiesExecutionV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesExecutionV1(\n postBody: PostEntitiesExecutionV1PostData,\n urlParams: PostEntitiesExecutionV1QueryParams = {}\n ): Promise<PostEntitiesExecutionV1ApiResponse> {\n const message: PostEntitiesExecutionV1RequestMessage = {\n type: 'api',\n api: 'faasGateway',\n method: 'postEntitiesExecutionV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n}\n","/**\n *\n * This file is autogenerated.\n *\n * DO NOT EDIT DIRECTLY\n *\n **/\n\nimport type { Bridge } from '../../bridge';\n\nimport type {\n ApiResponsePayload,\n BaseApiRequestMessage,\n BaseApiResponseMessage,\n BaseUrlParams,\n QueryParam,\n} from '../../types';\n\nexport type FwmgrRequestApi = 'fwmgr';\n\nexport type CommonApiResponseMessage =\n BaseApiResponseMessage<ApiResponsePayload>;\n\nexport interface CommonApiRequestMessage\n extends BaseApiRequestMessage<BaseUrlParams, unknown> {\n api: FwmgrRequestApi;\n}\n\n// types for deleteEntitiesNetworkLocationsV1\n\nexport interface DeleteEntitiesNetworkLocationsV1QueryParams\n extends BaseUrlParams {\n ids: QueryParam;\n comment?: QueryParam;\n}\n\nexport type DeleteEntitiesNetworkLocationsV1ApiResponse = ApiResponsePayload;\n\nexport type DeleteEntitiesNetworkLocationsV1ResponseMessage =\n BaseApiResponseMessage<DeleteEntitiesNetworkLocationsV1ApiResponse>;\n\nexport interface DeleteEntitiesNetworkLocationsV1RequestMessage\n extends BaseApiRequestMessage<DeleteEntitiesNetworkLocationsV1QueryParams> {\n api: FwmgrRequestApi;\n method: 'deleteEntitiesNetworkLocationsV1';\n}\n\n// types for deleteEntitiesPoliciesV1\n\nexport interface DeleteEntitiesPoliciesV1QueryParams extends BaseUrlParams {\n ids: QueryParam;\n}\n\nexport type DeleteEntitiesPoliciesV1ApiResponse = ApiResponsePayload;\n\nexport type DeleteEntitiesPoliciesV1ResponseMessage =\n BaseApiResponseMessage<DeleteEntitiesPoliciesV1ApiResponse>;\n\nexport interface DeleteEntitiesPoliciesV1RequestMessage\n extends BaseApiRequestMessage<DeleteEntitiesPoliciesV1QueryParams> {\n api: FwmgrRequestApi;\n method: 'deleteEntitiesPoliciesV1';\n}\n\n// types for deleteEntitiesRuleGroupsV1\n\nexport interface DeleteEntitiesRuleGroupsV1QueryParams extends BaseUrlParams {\n ids: QueryParam;\n comment?: QueryParam;\n}\n\nexport type DeleteEntitiesRuleGroupsV1ApiResponse = ApiResponsePayload;\n\nexport type DeleteEntitiesRuleGroupsV1ResponseMessage =\n BaseApiResponseMessage<DeleteEntitiesRuleGroupsV1ApiResponse>;\n\nexport interface DeleteEntitiesRuleGroupsV1RequestMessage\n extends BaseApiRequestMessage<DeleteEntitiesRuleGroupsV1QueryParams> {\n api: FwmgrRequestApi;\n method: 'deleteEntitiesRuleGroupsV1';\n}\n\n// types for getEntitiesEventsV1\n\nexport interface GetEntitiesEventsV1QueryParams extends BaseUrlParams {\n ids: QueryParam;\n}\n\nexport type GetEntitiesEventsV1ApiResponse = ApiResponsePayload;\n\nexport type GetEntitiesEventsV1ResponseMessage =\n BaseApiResponseMessage<GetEntitiesEventsV1ApiResponse>;\n\nexport interface GetEntitiesEventsV1RequestMessage\n extends BaseApiRequestMessage<GetEntitiesEventsV1QueryParams> {\n api: FwmgrRequestApi;\n method: 'getEntitiesEventsV1';\n}\n\n// types for getEntitiesFirewallFieldsV1\n\nexport interface GetEntitiesFirewallFieldsV1QueryParams extends BaseUrlParams {\n ids: QueryParam;\n}\n\nexport type GetEntitiesFirewallFieldsV1ApiResponse = ApiResponsePayload;\n\nexport type GetEntitiesFirewallFieldsV1ResponseMessage =\n BaseApiResponseMessage<GetEntitiesFirewallFieldsV1ApiResponse>;\n\nexport interface GetEntitiesFirewallFieldsV1RequestMessage\n extends BaseApiRequestMessage<GetEntitiesFirewallFieldsV1QueryParams> {\n api: FwmgrRequestApi;\n method: 'getEntitiesFirewallFieldsV1';\n}\n\n// types for getEntitiesNetworkLocationsDetailsV1\n\nexport interface GetEntitiesNetworkLocationsDetailsV1QueryParams\n extends BaseUrlParams {\n ids: QueryParam;\n}\n\nexport type GetEntitiesNetworkLocationsDetailsV1ApiResponse =\n ApiResponsePayload;\n\nexport type GetEntitiesNetworkLocationsDetailsV1ResponseMessage =\n BaseApiResponseMessage<GetEntitiesNetworkLocationsDetailsV1ApiResponse>;\n\nexport interface GetEntitiesNetworkLocationsDetailsV1RequestMessage\n extends BaseApiRequestMessage<GetEntitiesNetworkLocationsDetailsV1QueryParams> {\n api: FwmgrRequestApi;\n method: 'getEntitiesNetworkLocationsDetailsV1';\n}\n\n// types for getEntitiesNetworkLocationsV1\n\nexport interface GetEntitiesNetworkLocationsV1QueryParams\n extends BaseUrlParams {\n ids: QueryParam;\n}\n\nexport type GetEntitiesNetworkLocationsV1ApiResponse = ApiResponsePayload;\n\nexport type GetEntitiesNetworkLocationsV1ResponseMessage =\n BaseApiResponseMessage<GetEntitiesNetworkLocationsV1ApiResponse>;\n\nexport interface GetEntitiesNetworkLocationsV1RequestMessage\n extends BaseApiRequestMessage<GetEntitiesNetworkLocationsV1QueryParams> {\n api: FwmgrRequestApi;\n method: 'getEntitiesNetworkLocationsV1';\n}\n\n// types for getEntitiesPlatformsV1\n\nexport interface GetEntitiesPlatformsV1QueryParams extends BaseUrlParams {\n ids: QueryParam;\n}\n\nexport type GetEntitiesPlatformsV1ApiResponse = ApiResponsePayload;\n\nexport type GetEntitiesPlatformsV1ResponseMessage =\n BaseApiResponseMessage<GetEntitiesPlatformsV1ApiResponse>;\n\nexport interface GetEntitiesPlatformsV1RequestMessage\n extends BaseApiRequestMessage<GetEntitiesPlatformsV1QueryParams> {\n api: FwmgrRequestApi;\n method: 'getEntitiesPlatformsV1';\n}\n\n// types for getEntitiesPoliciesV1\n\nexport interface GetEntitiesPoliciesV1QueryParams extends BaseUrlParams {\n ids: QueryParam;\n}\n\nexport type GetEntitiesPoliciesV1ApiResponse = ApiResponsePayload;\n\nexport type GetEntitiesPoliciesV1ResponseMessage =\n BaseApiResponseMessage<GetEntitiesPoliciesV1ApiResponse>;\n\nexport interface GetEntitiesPoliciesV1RequestMessage\n extends BaseApiRequestMessage<GetEntitiesPoliciesV1QueryParams> {\n api: FwmgrRequestApi;\n method: 'getEntitiesPoliciesV1';\n}\n\n// types for getEntitiesRuleGroupsV1\n\nexport interface GetEntitiesRuleGroupsV1QueryParams extends BaseUrlParams {\n ids: QueryParam;\n}\n\nexport type GetEntitiesRuleGroupsV1ApiResponse = ApiResponsePayload;\n\nexport type GetEntitiesRuleGroupsV1ResponseMessage =\n BaseApiResponseMessage<GetEntitiesRuleGroupsV1ApiResponse>;\n\nexport interface GetEntitiesRuleGroupsV1RequestMessage\n extends BaseApiRequestMessage<GetEntitiesRuleGroupsV1QueryParams> {\n api: FwmgrRequestApi;\n method: 'getEntitiesRuleGroupsV1';\n}\n\n// types for getEntitiesRulesV1\n\nexport interface GetEntitiesRulesV1QueryParams extends BaseUrlParams {\n ids: QueryParam;\n}\n\nexport type GetEntitiesRulesV1ApiResponse = ApiResponsePayload;\n\nexport type GetEntitiesRulesV1ResponseMessage =\n BaseApiResponseMessage<GetEntitiesRulesV1ApiResponse>;\n\nexport interface GetEntitiesRulesV1RequestMessage\n extends BaseApiRequestMessage<GetEntitiesRulesV1QueryParams> {\n api: FwmgrRequestApi;\n method: 'getEntitiesRulesV1';\n}\n\n// types for getLibraryEntitiesRuleGroupsV1\n\nexport interface GetLibraryEntitiesRuleGroupsV1QueryParams\n extends BaseUrlParams {\n ids: QueryParam;\n}\n\nexport type GetLibraryEntitiesRuleGroupsV1ApiResponse = ApiResponsePayload;\n\nexport type GetLibraryEntitiesRuleGroupsV1ResponseMessage =\n BaseApiResponseMessage<GetLibraryEntitiesRuleGroupsV1ApiResponse>;\n\nexport interface GetLibraryEntitiesRuleGroupsV1RequestMessage\n extends BaseApiRequestMessage<GetLibraryEntitiesRuleGroupsV1QueryParams> {\n api: FwmgrRequestApi;\n method: 'getLibraryEntitiesRuleGroupsV1';\n}\n\n// types for getLibraryQueriesRuleGroupsV1\n\nexport interface GetLibraryQueriesRuleGroupsV1QueryParams\n extends BaseUrlParams {\n sort?: QueryParam;\n filter?: string;\n q?: QueryParam;\n offset?: QueryParam;\n limit?: QueryParam;\n}\n\nexport type GetLibraryQueriesRuleGroupsV1ApiResponse = ApiResponsePayload;\n\nexport type GetLibraryQueriesRuleGroupsV1ResponseMessage =\n BaseApiResponseMessage<GetLibraryQueriesRuleGroupsV1ApiResponse>;\n\nexport interface GetLibraryQueriesRuleGroupsV1RequestMessage\n extends BaseApiRequestMessage<GetLibraryQueriesRuleGroupsV1QueryParams> {\n api: FwmgrRequestApi;\n method: 'getLibraryQueriesRuleGroupsV1';\n}\n\n// types for getQueriesEventsV1\n\nexport interface GetQueriesEventsV1QueryParams extends BaseUrlParams {\n sort?: QueryParam;\n filter?: string;\n q?: QueryParam;\n offset?: QueryParam;\n limit?: QueryParam;\n}\n\nexport type GetQueriesEventsV1ApiResponse = ApiResponsePayload;\n\nexport type GetQueriesEventsV1ResponseMessage =\n BaseApiResponseMessage<GetQueriesEventsV1ApiResponse>;\n\nexport interface GetQueriesEventsV1RequestMessage\n extends BaseApiRequestMessage<GetQueriesEventsV1QueryParams> {\n api: FwmgrRequestApi;\n method: 'getQueriesEventsV1';\n}\n\n// types for getQueriesFirewallFieldsV1\n\nexport interface GetQueriesFirewallFieldsV1QueryParams extends BaseUrlParams {\n platform?: QueryParam;\n offset?: QueryParam;\n limit?: QueryParam;\n}\n\nexport type GetQueriesFirewallFieldsV1ApiResponse = ApiResponsePayload;\n\nexport type GetQueriesFirewallFieldsV1ResponseMessage =\n BaseApiResponseMessage<GetQueriesFirewallFieldsV1ApiResponse>;\n\nexport interface GetQueriesFirewallFieldsV1RequestMessage\n extends BaseApiRequestMessage<GetQueriesFirewallFieldsV1QueryParams> {\n api: FwmgrRequestApi;\n method: 'getQueriesFirewallFieldsV1';\n}\n\n// types for getQueriesNetworkLocationsV1\n\nexport interface GetQueriesNetworkLocationsV1QueryParams extends BaseUrlParams {\n filter?: string;\n limit?: QueryParam;\n offset?: QueryParam;\n q?: QueryParam;\n sort?: QueryParam;\n}\n\nexport type GetQueriesNetworkLocationsV1ApiResponse = ApiResponsePayload;\n\nexport type GetQueriesNetworkLocationsV1ResponseMessage =\n BaseApiResponseMessage<GetQueriesNetworkLocationsV1ApiResponse>;\n\nexport interface GetQueriesNetworkLocationsV1RequestMessage\n extends BaseApiRequestMessage<GetQueriesNetworkLocationsV1QueryParams> {\n api: FwmgrRequestApi;\n method: 'getQueriesNetworkLocationsV1';\n}\n\n// types for getQueriesPlatformsV1\n\nexport interface GetQueriesPlatformsV1QueryParams extends BaseUrlParams {\n offset?: QueryParam;\n limit?: QueryParam;\n}\n\nexport type GetQueriesPlatformsV1ApiResponse = ApiResponsePayload;\n\nexport type GetQueriesPlatformsV1ResponseMessage =\n BaseApiResponseMessage<GetQueriesPlatformsV1ApiResponse>;\n\nexport interface GetQueriesPlatformsV1RequestMessage\n extends BaseApiRequestMessage<GetQueriesPlatformsV1QueryParams> {\n api: FwmgrRequestApi;\n method: 'getQueriesPlatformsV1';\n}\n\n// types for getQueriesPolicyRulesV1\n\nexport interface GetQueriesPolicyRulesV1QueryParams extends BaseUrlParams {\n id?: QueryParam;\n sort?: QueryParam;\n filter?: string;\n q?: QueryParam;\n offset?: QueryParam;\n limit?: QueryParam;\n}\n\nexport type GetQueriesPolicyRulesV1ApiResponse = ApiResponsePayload;\n\nexport type GetQueriesPolicyRulesV1ResponseMessage =\n BaseApiResponseMessage<GetQueriesPolicyRulesV1ApiResponse>;\n\nexport interface GetQueriesPolicyRulesV1RequestMessage\n extends BaseApiRequestMessage<GetQueriesPolicyRulesV1QueryParams> {\n api: FwmgrRequestApi;\n method: 'getQueriesPolicyRulesV1';\n}\n\n// types for getQueriesRuleGroupsV1\n\nexport interface GetQueriesRuleGroupsV1QueryParams extends BaseUrlParams {\n sort?: QueryParam;\n filter?: string;\n q?: QueryParam;\n offset?: QueryParam;\n limit?: QueryParam;\n}\n\nexport type GetQueriesRuleGroupsV1ApiResponse = ApiResponsePayload;\n\nexport type GetQueriesRuleGroupsV1ResponseMessage =\n BaseApiResponseMessage<GetQueriesRuleGroupsV1ApiResponse>;\n\nexport interface GetQueriesRuleGroupsV1RequestMessage\n extends BaseApiRequestMessage<GetQueriesRuleGroupsV1QueryParams> {\n api: FwmgrRequestApi;\n method: 'getQueriesRuleGroupsV1';\n}\n\n// types for getQueriesRulesV1\n\nexport interface GetQueriesRulesV1QueryParams extends BaseUrlParams {\n sort?: QueryParam;\n filter?: string;\n q?: QueryParam;\n offset?: QueryParam;\n limit?: QueryParam;\n}\n\nexport type GetQueriesRulesV1ApiResponse = ApiResponsePayload;\n\nexport type GetQueriesRulesV1ResponseMessage =\n BaseApiResponseMessage<GetQueriesRulesV1ApiResponse>;\n\nexport interface GetQueriesRulesV1RequestMessage\n extends BaseApiRequestMessage<GetQueriesRulesV1QueryParams> {\n api: FwmgrRequestApi;\n method: 'getQueriesRulesV1';\n}\n\n// types for patchEntitiesNetworkLocationsV1\n\nexport interface PatchEntitiesNetworkLocationsV1QueryParams\n extends BaseUrlParams {\n comment?: QueryParam;\n}\n\nexport type PatchEntitiesNetworkLocationsV1ApiResponse = ApiResponsePayload;\n\nexport interface PatchEntitiesNetworkLocationsV1PostData {}\n\nexport type PatchEntitiesNetworkLocationsV1ResponseMessage =\n BaseApiResponseMessage<PatchEntitiesNetworkLocationsV1ApiResponse>;\n\nexport interface PatchEntitiesNetworkLocationsV1RequestMessage\n extends BaseApiRequestMessage<\n PatchEntitiesNetworkLocationsV1QueryParams,\n PatchEntitiesNetworkLocationsV1PostData\n > {\n api: FwmgrRequestApi;\n method: 'patchEntitiesNetworkLocationsV1';\n}\n\n// types for patchEntitiesRuleGroupsV1\n\nexport interface PatchEntitiesRuleGroupsV1QueryParams extends BaseUrlParams {\n comment?: QueryParam;\n}\n\nexport type PatchEntitiesRuleGroupsV1ApiResponse = ApiResponsePayload;\n\nexport interface PatchEntitiesRuleGroupsV1PostData {}\n\nexport type PatchEntitiesRuleGroupsV1ResponseMessage =\n BaseApiResponseMessage<PatchEntitiesRuleGroupsV1ApiResponse>;\n\nexport interface PatchEntitiesRuleGroupsV1RequestMessage\n extends BaseApiRequestMessage<\n PatchEntitiesRuleGroupsV1QueryParams,\n PatchEntitiesRuleGroupsV1PostData\n > {\n api: FwmgrRequestApi;\n method: 'patchEntitiesRuleGroupsV1';\n}\n\n// types for postAggregatesEventsGetV1\n\nexport type PostAggregatesEventsGetV1QueryParams = BaseUrlParams;\n\nexport type PostAggregatesEventsGetV1ApiResponse = ApiResponsePayload;\n\nexport interface PostAggregatesEventsGetV1PostData {}\n\nexport type PostAggregatesEventsGetV1ResponseMessage =\n BaseApiResponseMessage<PostAggregatesEventsGetV1ApiResponse>;\n\nexport interface PostAggregatesEventsGetV1RequestMessage\n extends BaseApiRequestMessage<\n PostAggregatesEventsGetV1QueryParams,\n PostAggregatesEventsGetV1PostData\n > {\n api: FwmgrRequestApi;\n method: 'postAggregatesEventsGetV1';\n}\n\n// types for postAggregatesPolicyRulesGetV1\n\nexport type PostAggregatesPolicyRulesGetV1QueryParams = BaseUrlParams;\n\nexport type PostAggregatesPolicyRulesGetV1ApiResponse = ApiResponsePayload;\n\nexport interface PostAggregatesPolicyRulesGetV1PostData {}\n\nexport type PostAggregatesPolicyRulesGetV1ResponseMessage =\n BaseApiResponseMessage<PostAggregatesPolicyRulesGetV1ApiResponse>;\n\nexport interface PostAggregatesPolicyRulesGetV1RequestMessage\n extends BaseApiRequestMessage<\n PostAggregatesPolicyRulesGetV1QueryParams,\n PostAggregatesPolicyRulesGetV1PostData\n > {\n api: FwmgrRequestApi;\n method: 'postAggregatesPolicyRulesGetV1';\n}\n\n// types for postAggregatesRuleGroupsGetV1\n\nexport type PostAggregatesRuleGroupsGetV1QueryParams = BaseUrlParams;\n\nexport type PostAggregatesRuleGroupsGetV1ApiResponse = ApiResponsePayload;\n\nexport interface PostAggregatesRuleGroupsGetV1PostData {}\n\nexport type PostAggregatesRuleGroupsGetV1ResponseMessage =\n BaseApiResponseMessage<PostAggregatesRuleGroupsGetV1ApiResponse>;\n\nexport interface PostAggregatesRuleGroupsGetV1RequestMessage\n extends BaseApiRequestMessage<\n PostAggregatesRuleGroupsGetV1QueryParams,\n PostAggregatesRuleGroupsGetV1PostData\n > {\n api: FwmgrRequestApi;\n method: 'postAggregatesRuleGroupsGetV1';\n}\n\n// types for postAggregatesRulesGetV1\n\nexport type PostAggregatesRulesGetV1QueryParams = BaseUrlParams;\n\nexport type PostAggregatesRulesGetV1ApiResponse = ApiResponsePayload;\n\nexport interface PostAggregatesRulesGetV1PostData {}\n\nexport type PostAggregatesRulesGetV1ResponseMessage =\n BaseApiResponseMessage<PostAggregatesRulesGetV1ApiResponse>;\n\nexport interface PostAggregatesRulesGetV1RequestMessage\n extends BaseApiRequestMessage<\n PostAggregatesRulesGetV1QueryParams,\n PostAggregatesRulesGetV1PostData\n > {\n api: FwmgrRequestApi;\n method: 'postAggregatesRulesGetV1';\n}\n\n// types for postEntitiesNetworkLocationsMetadataV1\n\nexport type PostEntitiesNetworkLocationsMetadataV1QueryParams = BaseUrlParams;\n\nexport type PostEntitiesNetworkLocationsMetadataV1ApiResponse =\n ApiResponsePayload;\n\nexport interface PostEntitiesNetworkLocationsMetadataV1PostData {}\n\nexport type PostEntitiesNetworkLocationsMetadataV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesNetworkLocationsMetadataV1ApiResponse>;\n\nexport interface PostEntitiesNetworkLocationsMetadataV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesNetworkLocationsMetadataV1QueryParams,\n PostEntitiesNetworkLocationsMetadataV1PostData\n > {\n api: FwmgrRequestApi;\n method: 'postEntitiesNetworkLocationsMetadataV1';\n}\n\n// types for postEntitiesNetworkLocationsPrecedenceV1\n\nexport type PostEntitiesNetworkLocationsPrecedenceV1QueryParams = BaseUrlParams;\n\nexport type PostEntitiesNetworkLocationsPrecedenceV1ApiResponse =\n ApiResponsePayload;\n\nexport interface PostEntitiesNetworkLocationsPrecedenceV1PostData {}\n\nexport type PostEntitiesNetworkLocationsPrecedenceV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesNetworkLocationsPrecedenceV1ApiResponse>;\n\nexport interface PostEntitiesNetworkLocationsPrecedenceV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesNetworkLocationsPrecedenceV1QueryParams,\n PostEntitiesNetworkLocationsPrecedenceV1PostData\n > {\n api: FwmgrRequestApi;\n method: 'postEntitiesNetworkLocationsPrecedenceV1';\n}\n\n// types for postEntitiesNetworkLocationsV1\n\nexport interface PostEntitiesNetworkLocationsV1QueryParams\n extends BaseUrlParams {\n comment?: QueryParam;\n cloneId?: QueryParam;\n addFwRules?: QueryParam;\n}\n\nexport type PostEntitiesNetworkLocationsV1ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesNetworkLocationsV1PostData {}\n\nexport type PostEntitiesNetworkLocationsV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesNetworkLocationsV1ApiResponse>;\n\nexport interface PostEntitiesNetworkLocationsV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesNetworkLocationsV1QueryParams,\n PostEntitiesNetworkLocationsV1PostData\n > {\n api: FwmgrRequestApi;\n method: 'postEntitiesNetworkLocationsV1';\n}\n\n// types for postEntitiesOntologyV1\n\nexport type PostEntitiesOntologyV1QueryParams = BaseUrlParams;\n\nexport type PostEntitiesOntologyV1ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesOntologyV1PostData {}\n\nexport type PostEntitiesOntologyV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesOntologyV1ApiResponse>;\n\nexport interface PostEntitiesOntologyV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesOntologyV1QueryParams,\n PostEntitiesOntologyV1PostData\n > {\n api: FwmgrRequestApi;\n method: 'postEntitiesOntologyV1';\n}\n\n// types for postEntitiesRuleGroupsV1\n\nexport interface PostEntitiesRuleGroupsV1QueryParams extends BaseUrlParams {\n cloneId?: QueryParam;\n library?: QueryParam;\n}\n\nexport type PostEntitiesRuleGroupsV1ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesRuleGroupsV1PostData {}\n\nexport type PostEntitiesRuleGroupsV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesRuleGroupsV1ApiResponse>;\n\nexport interface PostEntitiesRuleGroupsV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesRuleGroupsV1QueryParams,\n PostEntitiesRuleGroupsV1PostData\n > {\n api: FwmgrRequestApi;\n method: 'postEntitiesRuleGroupsV1';\n}\n\n// types for postEntitiesRulesValidateFilepathV1\n\nexport type PostEntitiesRulesValidateFilepathV1QueryParams = BaseUrlParams;\n\nexport type PostEntitiesRulesValidateFilepathV1ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesRulesValidateFilepathV1PostData {}\n\nexport type PostEntitiesRulesValidateFilepathV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesRulesValidateFilepathV1ApiResponse>;\n\nexport interface PostEntitiesRulesValidateFilepathV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesRulesValidateFilepathV1QueryParams,\n PostEntitiesRulesValidateFilepathV1PostData\n > {\n api: FwmgrRequestApi;\n method: 'postEntitiesRulesValidateFilepathV1';\n}\n\n// types for putEntitiesNetworkLocationsV1\n\nexport interface PutEntitiesNetworkLocationsV1QueryParams\n extends BaseUrlParams {\n comment?: QueryParam;\n}\n\nexport type PutEntitiesNetworkLocationsV1ApiResponse = ApiResponsePayload;\n\nexport interface PutEntitiesNetworkLocationsV1PostData {}\n\nexport type PutEntitiesNetworkLocationsV1ResponseMessage =\n BaseApiResponseMessage<PutEntitiesNetworkLocationsV1ApiResponse>;\n\nexport interface PutEntitiesNetworkLocationsV1RequestMessage\n extends BaseApiRequestMessage<\n PutEntitiesNetworkLocationsV1QueryParams,\n PutEntitiesNetworkLocationsV1PostData\n > {\n api: FwmgrRequestApi;\n method: 'putEntitiesNetworkLocationsV1';\n}\n\n// types for putEntitiesPoliciesV2\n\nexport interface PutEntitiesPoliciesV2QueryParams extends BaseUrlParams {\n id?: QueryParam;\n cloneId?: QueryParam;\n}\n\nexport type PutEntitiesPoliciesV2ApiResponse = ApiResponsePayload;\n\nexport interface PutEntitiesPoliciesV2PostData {}\n\nexport type PutEntitiesPoliciesV2ResponseMessage =\n BaseApiResponseMessage<PutEntitiesPoliciesV2ApiResponse>;\n\nexport interface PutEntitiesPoliciesV2RequestMessage\n extends BaseApiRequestMessage<\n PutEntitiesPoliciesV2QueryParams,\n PutEntitiesPoliciesV2PostData\n > {\n api: FwmgrRequestApi;\n method: 'putEntitiesPoliciesV2';\n}\n\n// general types\n\nexport type FwmgrApiRequestMessage =\n | DeleteEntitiesNetworkLocationsV1RequestMessage\n | DeleteEntitiesPoliciesV1RequestMessage\n | DeleteEntitiesRuleGroupsV1RequestMessage\n | GetEntitiesEventsV1RequestMessage\n | GetEntitiesFirewallFieldsV1RequestMessage\n | GetEntitiesNetworkLocationsDetailsV1RequestMessage\n | GetEntitiesNetworkLocationsV1RequestMessage\n | GetEntitiesPlatformsV1RequestMessage\n | GetEntitiesPoliciesV1RequestMessage\n | GetEntitiesRuleGroupsV1RequestMessage\n | GetEntitiesRulesV1RequestMessage\n | GetLibraryEntitiesRuleGroupsV1RequestMessage\n | GetLibraryQueriesRuleGroupsV1RequestMessage\n | GetQueriesEventsV1RequestMessage\n | GetQueriesFirewallFieldsV1RequestMessage\n | GetQueriesNetworkLocationsV1RequestMessage\n | GetQueriesPlatformsV1RequestMessage\n | GetQueriesPolicyRulesV1RequestMessage\n | GetQueriesRuleGroupsV1RequestMessage\n | GetQueriesRulesV1RequestMessage\n | PatchEntitiesNetworkLocationsV1RequestMessage\n | PatchEntitiesRuleGroupsV1RequestMessage\n | PostAggregatesEventsGetV1RequestMessage\n | PostAggregatesPolicyRulesGetV1RequestMessage\n | PostAggregatesRuleGroupsGetV1RequestMessage\n | PostAggregatesRulesGetV1RequestMessage\n | PostEntitiesNetworkLocationsMetadataV1RequestMessage\n | PostEntitiesNetworkLocationsPrecedenceV1RequestMessage\n | PostEntitiesNetworkLocationsV1RequestMessage\n | PostEntitiesOntologyV1RequestMessage\n | PostEntitiesRuleGroupsV1RequestMessage\n | PostEntitiesRulesValidateFilepathV1RequestMessage\n | PutEntitiesNetworkLocationsV1RequestMessage\n | PutEntitiesPoliciesV2RequestMessage;\n\nexport type FwmgrApiResponseMessage =\n | DeleteEntitiesNetworkLocationsV1ResponseMessage\n | DeleteEntitiesPoliciesV1ResponseMessage\n | DeleteEntitiesRuleGroupsV1ResponseMessage\n | GetEntitiesEventsV1ResponseMessage\n | GetEntitiesFirewallFieldsV1ResponseMessage\n | GetEntitiesNetworkLocationsDetailsV1ResponseMessage\n | GetEntitiesNetworkLocationsV1ResponseMessage\n | GetEntitiesPlatformsV1ResponseMessage\n | GetEntitiesPoliciesV1ResponseMessage\n | GetEntitiesRuleGroupsV1ResponseMessage\n | GetEntitiesRulesV1ResponseMessage\n | GetLibraryEntitiesRuleGroupsV1ResponseMessage\n | GetLibraryQueriesRuleGroupsV1ResponseMessage\n | GetQueriesEventsV1ResponseMessage\n | GetQueriesFirewallFieldsV1ResponseMessage\n | GetQueriesNetworkLocationsV1ResponseMessage\n | GetQueriesPlatformsV1ResponseMessage\n | GetQueriesPolicyRulesV1ResponseMessage\n | GetQueriesRuleGroupsV1ResponseMessage\n | GetQueriesRulesV1ResponseMessage\n | PatchEntitiesNetworkLocationsV1ResponseMessage\n | PatchEntitiesRuleGroupsV1ResponseMessage\n | PostAggregatesEventsGetV1ResponseMessage\n | PostAggregatesPolicyRulesGetV1ResponseMessage\n | PostAggregatesRuleGroupsGetV1ResponseMessage\n | PostAggregatesRulesGetV1ResponseMessage\n | PostEntitiesNetworkLocationsMetadataV1ResponseMessage\n | PostEntitiesNetworkLocationsPrecedenceV1ResponseMessage\n | PostEntitiesNetworkLocationsV1ResponseMessage\n | PostEntitiesOntologyV1ResponseMessage\n | PostEntitiesRuleGroupsV1ResponseMessage\n | PostEntitiesRulesValidateFilepathV1ResponseMessage\n | PutEntitiesNetworkLocationsV1ResponseMessage\n | PutEntitiesPoliciesV2ResponseMessage;\n\nexport class FwmgrApiBridge {\n private bridge;\n\n constructor(bridge: Bridge) {\n this.bridge = bridge;\n }\n\n getBridge() {\n return this.bridge;\n }\n\n async deleteEntitiesNetworkLocationsV1(\n urlParams: DeleteEntitiesNetworkLocationsV1QueryParams\n ): Promise<DeleteEntitiesNetworkLocationsV1ApiResponse> {\n const message: DeleteEntitiesNetworkLocationsV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'deleteEntitiesNetworkLocationsV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async deleteEntitiesPoliciesV1(\n urlParams: DeleteEntitiesPoliciesV1QueryParams\n ): Promise<DeleteEntitiesPoliciesV1ApiResponse> {\n const message: DeleteEntitiesPoliciesV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'deleteEntitiesPoliciesV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async deleteEntitiesRuleGroupsV1(\n urlParams: DeleteEntitiesRuleGroupsV1QueryParams\n ): Promise<DeleteEntitiesRuleGroupsV1ApiResponse> {\n const message: DeleteEntitiesRuleGroupsV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'deleteEntitiesRuleGroupsV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getEntitiesEventsV1(\n urlParams: GetEntitiesEventsV1QueryParams\n ): Promise<GetEntitiesEventsV1ApiResponse> {\n const message: GetEntitiesEventsV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'getEntitiesEventsV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getEntitiesFirewallFieldsV1(\n urlParams: GetEntitiesFirewallFieldsV1QueryParams\n ): Promise<GetEntitiesFirewallFieldsV1ApiResponse> {\n const message: GetEntitiesFirewallFieldsV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'getEntitiesFirewallFieldsV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getEntitiesNetworkLocationsDetailsV1(\n urlParams: GetEntitiesNetworkLocationsDetailsV1QueryParams\n ): Promise<GetEntitiesNetworkLocationsDetailsV1ApiResponse> {\n const message: GetEntitiesNetworkLocationsDetailsV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'getEntitiesNetworkLocationsDetailsV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getEntitiesNetworkLocationsV1(\n urlParams: GetEntitiesNetworkLocationsV1QueryParams\n ): Promise<GetEntitiesNetworkLocationsV1ApiResponse> {\n const message: GetEntitiesNetworkLocationsV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'getEntitiesNetworkLocationsV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getEntitiesPlatformsV1(\n urlParams: GetEntitiesPlatformsV1QueryParams\n ): Promise<GetEntitiesPlatformsV1ApiResponse> {\n const message: GetEntitiesPlatformsV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'getEntitiesPlatformsV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getEntitiesPoliciesV1(\n urlParams: GetEntitiesPoliciesV1QueryParams\n ): Promise<GetEntitiesPoliciesV1ApiResponse> {\n const message: GetEntitiesPoliciesV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'getEntitiesPoliciesV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getEntitiesRuleGroupsV1(\n urlParams: GetEntitiesRuleGroupsV1QueryParams\n ): Promise<GetEntitiesRuleGroupsV1ApiResponse> {\n const message: GetEntitiesRuleGroupsV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'getEntitiesRuleGroupsV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getEntitiesRulesV1(\n urlParams: GetEntitiesRulesV1QueryParams\n ): Promise<GetEntitiesRulesV1ApiResponse> {\n const message: GetEntitiesRulesV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'getEntitiesRulesV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getLibraryEntitiesRuleGroupsV1(\n urlParams: GetLibraryEntitiesRuleGroupsV1QueryParams\n ): Promise<GetLibraryEntitiesRuleGroupsV1ApiResponse> {\n const message: GetLibraryEntitiesRuleGroupsV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'getLibraryEntitiesRuleGroupsV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getLibraryQueriesRuleGroupsV1(\n urlParams: GetLibraryQueriesRuleGroupsV1QueryParams = {}\n ): Promise<GetLibraryQueriesRuleGroupsV1ApiResponse> {\n const message: GetLibraryQueriesRuleGroupsV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'getLibraryQueriesRuleGroupsV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getQueriesEventsV1(\n urlParams: GetQueriesEventsV1QueryParams = {}\n ): Promise<GetQueriesEventsV1ApiResponse> {\n const message: GetQueriesEventsV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'getQueriesEventsV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getQueriesFirewallFieldsV1(\n urlParams: GetQueriesFirewallFieldsV1QueryParams = {}\n ): Promise<GetQueriesFirewallFieldsV1ApiResponse> {\n const message: GetQueriesFirewallFieldsV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'getQueriesFirewallFieldsV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getQueriesNetworkLocationsV1(\n urlParams: GetQueriesNetworkLocationsV1QueryParams = {}\n ): Promise<GetQueriesNetworkLocationsV1ApiResponse> {\n const message: GetQueriesNetworkLocationsV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'getQueriesNetworkLocationsV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getQueriesPlatformsV1(\n urlParams: GetQueriesPlatformsV1QueryParams = {}\n ): Promise<GetQueriesPlatformsV1ApiResponse> {\n const message: GetQueriesPlatformsV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'getQueriesPlatformsV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getQueriesPolicyRulesV1(\n urlParams: GetQueriesPolicyRulesV1QueryParams = {}\n ): Promise<GetQueriesPolicyRulesV1ApiResponse> {\n const message: GetQueriesPolicyRulesV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'getQueriesPolicyRulesV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getQueriesRuleGroupsV1(\n urlParams: GetQueriesRuleGroupsV1QueryParams = {}\n ): Promise<GetQueriesRuleGroupsV1ApiResponse> {\n const message: GetQueriesRuleGroupsV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'getQueriesRuleGroupsV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getQueriesRulesV1(\n urlParams: GetQueriesRulesV1QueryParams = {}\n ): Promise<GetQueriesRulesV1ApiResponse> {\n const message: GetQueriesRulesV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'getQueriesRulesV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async patchEntitiesNetworkLocationsV1(\n postBody: PatchEntitiesNetworkLocationsV1PostData,\n urlParams: PatchEntitiesNetworkLocationsV1QueryParams = {}\n ): Promise<PatchEntitiesNetworkLocationsV1ApiResponse> {\n const message: PatchEntitiesNetworkLocationsV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'patchEntitiesNetworkLocationsV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async patchEntitiesRuleGroupsV1(\n postBody: PatchEntitiesRuleGroupsV1PostData,\n urlParams: PatchEntitiesRuleGroupsV1QueryParams = {}\n ): Promise<PatchEntitiesRuleGroupsV1ApiResponse> {\n const message: PatchEntitiesRuleGroupsV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'patchEntitiesRuleGroupsV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postAggregatesEventsGetV1(\n postBody: PostAggregatesEventsGetV1PostData,\n urlParams: PostAggregatesEventsGetV1QueryParams = {}\n ): Promise<PostAggregatesEventsGetV1ApiResponse> {\n const message: PostAggregatesEventsGetV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'postAggregatesEventsGetV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postAggregatesPolicyRulesGetV1(\n postBody: PostAggregatesPolicyRulesGetV1PostData,\n urlParams: PostAggregatesPolicyRulesGetV1QueryParams = {}\n ): Promise<PostAggregatesPolicyRulesGetV1ApiResponse> {\n const message: PostAggregatesPolicyRulesGetV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'postAggregatesPolicyRulesGetV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postAggregatesRuleGroupsGetV1(\n postBody: PostAggregatesRuleGroupsGetV1PostData,\n urlParams: PostAggregatesRuleGroupsGetV1QueryParams = {}\n ): Promise<PostAggregatesRuleGroupsGetV1ApiResponse> {\n const message: PostAggregatesRuleGroupsGetV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'postAggregatesRuleGroupsGetV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postAggregatesRulesGetV1(\n postBody: PostAggregatesRulesGetV1PostData,\n urlParams: PostAggregatesRulesGetV1QueryParams = {}\n ): Promise<PostAggregatesRulesGetV1ApiResponse> {\n const message: PostAggregatesRulesGetV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'postAggregatesRulesGetV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesNetworkLocationsMetadataV1(\n postBody: PostEntitiesNetworkLocationsMetadataV1PostData,\n urlParams: PostEntitiesNetworkLocationsMetadataV1QueryParams = {}\n ): Promise<PostEntitiesNetworkLocationsMetadataV1ApiResponse> {\n const message: PostEntitiesNetworkLocationsMetadataV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'postEntitiesNetworkLocationsMetadataV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesNetworkLocationsPrecedenceV1(\n postBody: PostEntitiesNetworkLocationsPrecedenceV1PostData,\n urlParams: PostEntitiesNetworkLocationsPrecedenceV1QueryParams = {}\n ): Promise<PostEntitiesNetworkLocationsPrecedenceV1ApiResponse> {\n const message: PostEntitiesNetworkLocationsPrecedenceV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'postEntitiesNetworkLocationsPrecedenceV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesNetworkLocationsV1(\n postBody: PostEntitiesNetworkLocationsV1PostData,\n urlParams: PostEntitiesNetworkLocationsV1QueryParams = {}\n ): Promise<PostEntitiesNetworkLocationsV1ApiResponse> {\n const message: PostEntitiesNetworkLocationsV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'postEntitiesNetworkLocationsV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesOntologyV1(\n postBody: PostEntitiesOntologyV1PostData,\n urlParams: PostEntitiesOntologyV1QueryParams = {}\n ): Promise<PostEntitiesOntologyV1ApiResponse> {\n const message: PostEntitiesOntologyV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'postEntitiesOntologyV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesRuleGroupsV1(\n postBody: PostEntitiesRuleGroupsV1PostData,\n urlParams: PostEntitiesRuleGroupsV1QueryParams = {}\n ): Promise<PostEntitiesRuleGroupsV1ApiResponse> {\n const message: PostEntitiesRuleGroupsV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'postEntitiesRuleGroupsV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesRulesValidateFilepathV1(\n postBody: PostEntitiesRulesValidateFilepathV1PostData,\n urlParams: PostEntitiesRulesValidateFilepathV1QueryParams = {}\n ): Promise<PostEntitiesRulesValidateFilepathV1ApiResponse> {\n const message: PostEntitiesRulesValidateFilepathV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'postEntitiesRulesValidateFilepathV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async putEntitiesNetworkLocationsV1(\n postBody: PutEntitiesNetworkLocationsV1PostData,\n urlParams: PutEntitiesNetworkLocationsV1QueryParams = {}\n ): Promise<PutEntitiesNetworkLocationsV1ApiResponse> {\n const message: PutEntitiesNetworkLocationsV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'putEntitiesNetworkLocationsV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async putEntitiesPoliciesV2(\n postBody: PutEntitiesPoliciesV2PostData,\n urlParams: PutEntitiesPoliciesV2QueryParams = {}\n ): Promise<PutEntitiesPoliciesV2ApiResponse> {\n const message: PutEntitiesPoliciesV2RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'putEntitiesPoliciesV2',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n}\n","/**\n *\n * This file is autogenerated.\n *\n * DO NOT EDIT DIRECTLY\n *\n **/\n\nimport type { Bridge } from '../../bridge';\n\nimport type {\n ApiResponsePayload,\n BaseApiRequestMessage,\n BaseApiResponseMessage,\n BaseUrlParams,\n QueryParam,\n} from '../../types';\n\nexport type IncidentsRequestApi = 'incidents';\n\nexport type CommonApiResponseMessage =\n BaseApiResponseMessage<ApiResponsePayload>;\n\nexport interface CommonApiRequestMessage\n extends BaseApiRequestMessage<BaseUrlParams, unknown> {\n api: IncidentsRequestApi;\n}\n\n// types for getCombinedCrowdscoresV1\n\nexport interface GetCombinedCrowdscoresV1QueryParams extends BaseUrlParams {\n filter?: string;\n limit?: QueryParam;\n offset?: QueryParam;\n sort?: QueryParam;\n}\n\nexport type GetCombinedCrowdscoresV1ApiResponse = ApiResponsePayload;\n\nexport type GetCombinedCrowdscoresV1ResponseMessage =\n BaseApiResponseMessage<GetCombinedCrowdscoresV1ApiResponse>;\n\nexport interface GetCombinedCrowdscoresV1RequestMessage\n extends BaseApiRequestMessage<GetCombinedCrowdscoresV1QueryParams> {\n api: IncidentsRequestApi;\n method: 'getCombinedCrowdscoresV1';\n}\n\n// types for getQueriesBehaviorsV1\n\nexport interface GetQueriesBehaviorsV1QueryParams extends BaseUrlParams {\n filter?: string;\n limit?: QueryParam;\n offset?: QueryParam;\n sort?: QueryParam;\n}\n\nexport type GetQueriesBehaviorsV1ApiResponse = ApiResponsePayload;\n\nexport type GetQueriesBehaviorsV1ResponseMessage =\n BaseApiResponseMessage<GetQueriesBehaviorsV1ApiResponse>;\n\nexport interface GetQueriesBehaviorsV1RequestMessage\n extends BaseApiRequestMessage<GetQueriesBehaviorsV1QueryParams> {\n api: IncidentsRequestApi;\n method: 'getQueriesBehaviorsV1';\n}\n\n// types for getQueriesIncidentsV1\n\nexport interface GetQueriesIncidentsV1QueryParams extends BaseUrlParams {\n filter?: string;\n limit?: QueryParam;\n offset?: QueryParam;\n sort?: QueryParam;\n}\n\nexport type GetQueriesIncidentsV1ApiResponse = ApiResponsePayload;\n\nexport type GetQueriesIncidentsV1ResponseMessage =\n BaseApiResponseMessage<GetQueriesIncidentsV1ApiResponse>;\n\nexport interface GetQueriesIncidentsV1RequestMessage\n extends BaseApiRequestMessage<GetQueriesIncidentsV1QueryParams> {\n api: IncidentsRequestApi;\n method: 'getQueriesIncidentsV1';\n}\n\n// types for postAggregatesBehaviorsGetV1\n\nexport type PostAggregatesBehaviorsGetV1QueryParams = BaseUrlParams;\n\nexport type PostAggregatesBehaviorsGetV1ApiResponse = ApiResponsePayload;\n\nexport interface PostAggregatesBehaviorsGetV1PostData {}\n\nexport type PostAggregatesBehaviorsGetV1ResponseMessage =\n BaseApiResponseMessage<PostAggregatesBehaviorsGetV1ApiResponse>;\n\nexport interface PostAggregatesBehaviorsGetV1RequestMessage\n extends BaseApiRequestMessage<\n PostAggregatesBehaviorsGetV1QueryParams,\n PostAggregatesBehaviorsGetV1PostData\n > {\n api: IncidentsRequestApi;\n method: 'postAggregatesBehaviorsGetV1';\n}\n\n// types for postAggregatesIncidentsGetV1\n\nexport type PostAggregatesIncidentsGetV1QueryParams = BaseUrlParams;\n\nexport type PostAggregatesIncidentsGetV1ApiResponse = ApiResponsePayload;\n\nexport interface PostAggregatesIncidentsGetV1PostData {}\n\nexport type PostAggregatesIncidentsGetV1ResponseMessage =\n BaseApiResponseMessage<PostAggregatesIncidentsGetV1ApiResponse>;\n\nexport interface PostAggregatesIncidentsGetV1RequestMessage\n extends BaseApiRequestMessage<\n PostAggregatesIncidentsGetV1QueryParams,\n PostAggregatesIncidentsGetV1PostData\n > {\n api: IncidentsRequestApi;\n method: 'postAggregatesIncidentsGetV1';\n}\n\n// types for postEntitiesBehaviorsGetV1\n\nexport type PostEntitiesBehaviorsGetV1QueryParams = BaseUrlParams;\n\nexport type PostEntitiesBehaviorsGetV1ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesBehaviorsGetV1PostData {}\n\nexport type PostEntitiesBehaviorsGetV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesBehaviorsGetV1ApiResponse>;\n\nexport interface PostEntitiesBehaviorsGetV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesBehaviorsGetV1QueryParams,\n PostEntitiesBehaviorsGetV1PostData\n > {\n api: IncidentsRequestApi;\n method: 'postEntitiesBehaviorsGetV1';\n}\n\n// types for postEntitiesIncidentActionsV1\n\nexport interface PostEntitiesIncidentActionsV1QueryParams\n extends BaseUrlParams {\n note?: QueryParam;\n}\n\nexport type PostEntitiesIncidentActionsV1ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesIncidentActionsV1PostData {}\n\nexport type PostEntitiesIncidentActionsV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesIncidentActionsV1ApiResponse>;\n\nexport interface PostEntitiesIncidentActionsV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesIncidentActionsV1QueryParams,\n PostEntitiesIncidentActionsV1PostData\n > {\n api: IncidentsRequestApi;\n method: 'postEntitiesIncidentActionsV1';\n}\n\n// types for postEntitiesIncidentsGetV1\n\nexport type PostEntitiesIncidentsGetV1QueryParams = BaseUrlParams;\n\nexport type PostEntitiesIncidentsGetV1ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesIncidentsGetV1PostData {}\n\nexport type PostEntitiesIncidentsGetV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesIncidentsGetV1ApiResponse>;\n\nexport interface PostEntitiesIncidentsGetV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesIncidentsGetV1QueryParams,\n PostEntitiesIncidentsGetV1PostData\n > {\n api: IncidentsRequestApi;\n method: 'postEntitiesIncidentsGetV1';\n}\n\n// general types\n\nexport type IncidentsApiRequestMessage =\n | GetCombinedCrowdscoresV1RequestMessage\n | GetQueriesBehaviorsV1RequestMessage\n | GetQueriesIncidentsV1RequestMessage\n | PostAggregatesBehaviorsGetV1RequestMessage\n | PostAggregatesIncidentsGetV1RequestMessage\n | PostEntitiesBehaviorsGetV1RequestMessage\n | PostEntitiesIncidentActionsV1RequestMessage\n | PostEntitiesIncidentsGetV1RequestMessage;\n\nexport type IncidentsApiResponseMessage =\n | GetCombinedCrowdscoresV1ResponseMessage\n | GetQueriesBehaviorsV1ResponseMessage\n | GetQueriesIncidentsV1ResponseMessage\n | PostAggregatesBehaviorsGetV1ResponseMessage\n | PostAggregatesIncidentsGetV1ResponseMessage\n | PostEntitiesBehaviorsGetV1ResponseMessage\n | PostEntitiesIncidentActionsV1ResponseMessage\n | PostEntitiesIncidentsGetV1ResponseMessage;\n\nexport class IncidentsApiBridge {\n private bridge;\n\n constructor(bridge: Bridge) {\n this.bridge = bridge;\n }\n\n getBridge() {\n return this.bridge;\n }\n\n async getCombinedCrowdscoresV1(\n urlParams: GetCombinedCrowdscoresV1QueryParams = {}\n ): Promise<GetCombinedCrowdscoresV1ApiResponse> {\n const message: GetCombinedCrowdscoresV1RequestMessage = {\n type: 'api',\n api: 'incidents',\n method: 'getCombinedCrowdscoresV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getQueriesBehaviorsV1(\n urlParams: GetQueriesBehaviorsV1QueryParams = {}\n ): Promise<GetQueriesBehaviorsV1ApiResponse> {\n const message: GetQueriesBehaviorsV1RequestMessage = {\n type: 'api',\n api: 'incidents',\n method: 'getQueriesBehaviorsV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getQueriesIncidentsV1(\n urlParams: GetQueriesIncidentsV1QueryParams = {}\n ): Promise<GetQueriesIncidentsV1ApiResponse> {\n const message: GetQueriesIncidentsV1RequestMessage = {\n type: 'api',\n api: 'incidents',\n method: 'getQueriesIncidentsV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postAggregatesBehaviorsGetV1(\n postBody: PostAggregatesBehaviorsGetV1PostData,\n urlParams: PostAggregatesBehaviorsGetV1QueryParams = {}\n ): Promise<PostAggregatesBehaviorsGetV1ApiResponse> {\n const message: PostAggregatesBehaviorsGetV1RequestMessage = {\n type: 'api',\n api: 'incidents',\n method: 'postAggregatesBehaviorsGetV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postAggregatesIncidentsGetV1(\n postBody: PostAggregatesIncidentsGetV1PostData,\n urlParams: PostAggregatesIncidentsGetV1QueryParams = {}\n ): Promise<PostAggregatesIncidentsGetV1ApiResponse> {\n const message: PostAggregatesIncidentsGetV1RequestMessage = {\n type: 'api',\n api: 'incidents',\n method: 'postAggregatesIncidentsGetV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesBehaviorsGetV1(\n postBody: PostEntitiesBehaviorsGetV1PostData,\n urlParams: PostEntitiesBehaviorsGetV1QueryParams = {}\n ): Promise<PostEntitiesBehaviorsGetV1ApiResponse> {\n const message: PostEntitiesBehaviorsGetV1RequestMessage = {\n type: 'api',\n api: 'incidents',\n method: 'postEntitiesBehaviorsGetV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesIncidentActionsV1(\n postBody: PostEntitiesIncidentActionsV1PostData,\n urlParams: PostEntitiesIncidentActionsV1QueryParams = {}\n ): Promise<PostEntitiesIncidentActionsV1ApiResponse> {\n const message: PostEntitiesIncidentActionsV1RequestMessage = {\n type: 'api',\n api: 'incidents',\n method: 'postEntitiesIncidentActionsV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesIncidentsGetV1(\n postBody: PostEntitiesIncidentsGetV1PostData,\n urlParams: PostEntitiesIncidentsGetV1QueryParams = {}\n ): Promise<PostEntitiesIncidentsGetV1ApiResponse> {\n const message: PostEntitiesIncidentsGetV1RequestMessage = {\n type: 'api',\n api: 'incidents',\n method: 'postEntitiesIncidentsGetV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n}\n","/**\n *\n * This file is autogenerated.\n *\n * DO NOT EDIT DIRECTLY\n *\n **/\n\nimport type { Bridge } from '../../bridge';\n\nimport type {\n ApiResponsePayload,\n BaseApiRequestMessage,\n BaseApiResponseMessage,\n BaseUrlParams,\n QueryParam,\n} from '../../types';\n\nexport type LoggingapiRequestApi = 'loggingapi';\n\nexport type CommonApiResponseMessage =\n BaseApiResponseMessage<ApiResponsePayload>;\n\nexport interface CommonApiRequestMessage\n extends BaseApiRequestMessage<BaseUrlParams, unknown> {\n api: LoggingapiRequestApi;\n}\n\n// types for getEntitiesSavedSearchesExecuteV1\n\nexport interface GetEntitiesSavedSearchesExecuteV1QueryParams\n extends BaseUrlParams {\n version?: QueryParam;\n jobId: QueryParam;\n detailed?: QueryParam;\n offset?: QueryParam;\n}\n\nexport type GetEntitiesSavedSearchesExecuteV1ApiResponse = ApiResponsePayload;\n\nexport type GetEntitiesSavedSearchesExecuteV1ResponseMessage =\n BaseApiResponseMessage<GetEntitiesSavedSearchesExecuteV1ApiResponse>;\n\nexport interface GetEntitiesSavedSearchesExecuteV1RequestMessage\n extends BaseApiRequestMessage<GetEntitiesSavedSearchesExecuteV1QueryParams> {\n api: LoggingapiRequestApi;\n method: 'getEntitiesSavedSearchesExecuteV1';\n}\n\n// types for postEntitiesSavedSearchesDynamicExecuteV1\n\nexport type PostEntitiesSavedSearchesDynamicExecuteV1QueryParams =\n BaseUrlParams;\n\nexport type PostEntitiesSavedSearchesDynamicExecuteV1ApiResponse =\n ApiResponsePayload;\n\nexport interface PostEntitiesSavedSearchesDynamicExecuteV1PostData {}\n\nexport type PostEntitiesSavedSearchesDynamicExecuteV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesSavedSearchesDynamicExecuteV1ApiResponse>;\n\nexport interface PostEntitiesSavedSearchesDynamicExecuteV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesSavedSearchesDynamicExecuteV1QueryParams,\n PostEntitiesSavedSearchesDynamicExecuteV1PostData\n > {\n api: LoggingapiRequestApi;\n method: 'postEntitiesSavedSearchesDynamicExecuteV1';\n}\n\n// types for postEntitiesSavedSearchesExecuteV1\n\nexport interface PostEntitiesSavedSearchesExecuteV1QueryParams\n extends BaseUrlParams {\n includeTestData?: QueryParam;\n mode?: QueryParam;\n version?: QueryParam;\n metadata?: QueryParam;\n detailed?: QueryParam;\n}\n\nexport type PostEntitiesSavedSearchesExecuteV1ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesSavedSearchesExecuteV1PostData {}\n\nexport type PostEntitiesSavedSearchesExecuteV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesSavedSearchesExecuteV1ApiResponse>;\n\nexport interface PostEntitiesSavedSearchesExecuteV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesSavedSearchesExecuteV1QueryParams,\n PostEntitiesSavedSearchesExecuteV1PostData\n > {\n api: LoggingapiRequestApi;\n method: 'postEntitiesSavedSearchesExecuteV1';\n}\n\n// types for postEntitiesSavedSearchesIngestV1\n\nexport type PostEntitiesSavedSearchesIngestV1QueryParams = BaseUrlParams;\n\nexport type PostEntitiesSavedSearchesIngestV1ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesSavedSearchesIngestV1PostData {}\n\nexport type PostEntitiesSavedSearchesIngestV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesSavedSearchesIngestV1ApiResponse>;\n\nexport interface PostEntitiesSavedSearchesIngestV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesSavedSearchesIngestV1QueryParams,\n PostEntitiesSavedSearchesIngestV1PostData\n > {\n api: LoggingapiRequestApi;\n method: 'postEntitiesSavedSearchesIngestV1';\n}\n\n// general types\n\nexport type LoggingapiApiRequestMessage =\n | GetEntitiesSavedSearchesExecuteV1RequestMessage\n | PostEntitiesSavedSearchesExecuteV1RequestMessage;\n\nexport type LoggingapiApiResponseMessage =\n | GetEntitiesSavedSearchesExecuteV1ResponseMessage\n | PostEntitiesSavedSearchesExecuteV1ResponseMessage;\n\nexport class LoggingapiApiBridge {\n private bridge;\n\n constructor(bridge: Bridge) {\n this.bridge = bridge;\n }\n\n getBridge() {\n return this.bridge;\n }\n\n async getEntitiesSavedSearchesExecuteV1(\n urlParams: GetEntitiesSavedSearchesExecuteV1QueryParams\n ): Promise<GetEntitiesSavedSearchesExecuteV1ApiResponse> {\n const message: GetEntitiesSavedSearchesExecuteV1RequestMessage = {\n type: 'api',\n api: 'loggingapi',\n method: 'getEntitiesSavedSearchesExecuteV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesSavedSearchesExecuteV1(\n postBody: PostEntitiesSavedSearchesExecuteV1PostData,\n urlParams: PostEntitiesSavedSearchesExecuteV1QueryParams = {}\n ): Promise<PostEntitiesSavedSearchesExecuteV1ApiResponse> {\n const message: PostEntitiesSavedSearchesExecuteV1RequestMessage = {\n type: 'api',\n api: 'loggingapi',\n method: 'postEntitiesSavedSearchesExecuteV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n}\n","/**\n *\n * This file is autogenerated.\n *\n * DO NOT EDIT DIRECTLY\n *\n **/\n\nimport type { Bridge } from '../../bridge';\n\nimport type {\n ApiResponsePayload,\n BaseApiRequestMessage,\n BaseApiResponseMessage,\n BaseUrlParams,\n QueryParam,\n} from '../../types';\n\nexport type MitreRequestApi = 'mitre';\n\nexport type CommonApiResponseMessage =\n BaseApiResponseMessage<ApiResponsePayload>;\n\nexport interface CommonApiRequestMessage\n extends BaseApiRequestMessage<BaseUrlParams, unknown> {\n api: MitreRequestApi;\n}\n\n// types for getEntitiesMatrixV1\n\nexport interface GetEntitiesMatrixV1QueryParams extends BaseUrlParams {\n version?: QueryParam;\n}\n\nexport type GetEntitiesMatrixV1ApiResponse = ApiResponsePayload;\n\nexport type GetEntitiesMatrixV1ResponseMessage =\n BaseApiResponseMessage<GetEntitiesMatrixV1ApiResponse>;\n\nexport interface GetEntitiesMatrixV1RequestMessage\n extends BaseApiRequestMessage<GetEntitiesMatrixV1QueryParams> {\n api: MitreRequestApi;\n method: 'getEntitiesMatrixV1';\n}\n\n// general types\n\nexport type MitreApiRequestMessage = GetEntitiesMatrixV1RequestMessage;\n\nexport type MitreApiResponseMessage = GetEntitiesMatrixV1ResponseMessage;\n\nexport class MitreApiBridge {\n private bridge;\n\n constructor(bridge: Bridge) {\n this.bridge = bridge;\n }\n\n getBridge() {\n return this.bridge;\n }\n\n async getEntitiesMatrixV1(\n urlParams: GetEntitiesMatrixV1QueryParams = {}\n ): Promise<GetEntitiesMatrixV1ApiResponse> {\n const message: GetEntitiesMatrixV1RequestMessage = {\n type: 'api',\n api: 'mitre',\n method: 'getEntitiesMatrixV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n}\n","/**\n *\n * This file is autogenerated.\n *\n * DO NOT EDIT DIRECTLY\n *\n **/\n\nimport type { Bridge } from '../../bridge';\n\nimport type {\n ApiResponsePayload,\n BaseApiRequestMessage,\n BaseApiResponseMessage,\n BaseUrlParams,\n QueryParam,\n} from '../../types';\n\nexport type PluginsRequestApi = 'plugins';\n\nexport type CommonApiResponseMessage =\n BaseApiResponseMessage<ApiResponsePayload>;\n\nexport interface CommonApiRequestMessage\n extends BaseApiRequestMessage<BaseUrlParams, unknown> {\n api: PluginsRequestApi;\n}\n\n// types for getEntitiesConfigsV1\n\nexport interface GetEntitiesConfigsV1QueryParams extends BaseUrlParams {\n ids?: QueryParam;\n appId?: QueryParam;\n}\n\nexport type GetEntitiesConfigsV1ApiResponse = ApiResponsePayload;\n\nexport type GetEntitiesConfigsV1ResponseMessage =\n BaseApiResponseMessage<GetEntitiesConfigsV1ApiResponse>;\n\nexport interface GetEntitiesConfigsV1RequestMessage\n extends BaseApiRequestMessage<GetEntitiesConfigsV1QueryParams> {\n api: PluginsRequestApi;\n method: 'getEntitiesConfigsV1';\n}\n\n// types for postEntitiesExecuteDraftV1\n\nexport type PostEntitiesExecuteDraftV1QueryParams = BaseUrlParams;\n\nexport type PostEntitiesExecuteDraftV1ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesExecuteDraftV1PostData {}\n\nexport type PostEntitiesExecuteDraftV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesExecuteDraftV1ApiResponse>;\n\nexport interface PostEntitiesExecuteDraftV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesExecuteDraftV1QueryParams,\n PostEntitiesExecuteDraftV1PostData\n > {\n api: PluginsRequestApi;\n method: 'postEntitiesExecuteDraftV1';\n}\n\n// types for postEntitiesExecuteV1\n\nexport type PostEntitiesExecuteV1QueryParams = BaseUrlParams;\n\nexport type PostEntitiesExecuteV1ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesExecuteV1PostData {}\n\nexport type PostEntitiesExecuteV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesExecuteV1ApiResponse>;\n\nexport interface PostEntitiesExecuteV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesExecuteV1QueryParams,\n PostEntitiesExecuteV1PostData\n > {\n api: PluginsRequestApi;\n method: 'postEntitiesExecuteV1';\n}\n\n// general types\n\nexport type PluginsApiRequestMessage =\n | GetEntitiesConfigsV1RequestMessage\n | PostEntitiesExecuteDraftV1RequestMessage\n | PostEntitiesExecuteV1RequestMessage;\n\nexport type PluginsApiResponseMessage =\n | GetEntitiesConfigsV1ResponseMessage\n | PostEntitiesExecuteDraftV1ResponseMessage\n | PostEntitiesExecuteV1ResponseMessage;\n\nexport class PluginsApiBridge {\n private bridge;\n\n constructor(bridge: Bridge) {\n this.bridge = bridge;\n }\n\n getBridge() {\n return this.bridge;\n }\n\n async getEntitiesConfigsV1(\n urlParams: GetEntitiesConfigsV1QueryParams = {}\n ): Promise<GetEntitiesConfigsV1ApiResponse> {\n const message: GetEntitiesConfigsV1RequestMessage = {\n type: 'api',\n api: 'plugins',\n method: 'getEntitiesConfigsV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesExecuteDraftV1(\n postBody: PostEntitiesExecuteDraftV1PostData,\n urlParams: PostEntitiesExecuteDraftV1QueryParams = {}\n ): Promise<PostEntitiesExecuteDraftV1ApiResponse> {\n const message: PostEntitiesExecuteDraftV1RequestMessage = {\n type: 'api',\n api: 'plugins',\n method: 'postEntitiesExecuteDraftV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesExecuteV1(\n postBody: PostEntitiesExecuteV1PostData,\n urlParams: PostEntitiesExecuteV1QueryParams = {}\n ): Promise<PostEntitiesExecuteV1ApiResponse> {\n const message: PostEntitiesExecuteV1RequestMessage = {\n type: 'api',\n api: 'plugins',\n method: 'postEntitiesExecuteV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n}\n","/**\n *\n * This file is autogenerated.\n *\n * DO NOT EDIT DIRECTLY\n *\n **/\n\nimport type { Bridge } from '../../bridge';\n\nimport type {\n ApiResponsePayload,\n BaseApiRequestMessage,\n BaseApiResponseMessage,\n BaseUrlParams,\n QueryParam,\n} from '../../types';\n\nexport type RemoteResponseRequestApi = 'remoteResponse';\n\nexport type CommonApiResponseMessage =\n BaseApiResponseMessage<ApiResponsePayload>;\n\nexport interface CommonApiRequestMessage\n extends BaseApiRequestMessage<BaseUrlParams, unknown> {\n api: RemoteResponseRequestApi;\n}\n\n// types for getQueriesPutFilesV1\n\nexport interface GetQueriesPutFilesV1QueryParams extends BaseUrlParams {\n filter?: string;\n limit?: QueryParam;\n offset?: QueryParam;\n sort?: QueryParam;\n}\n\nexport type GetQueriesPutFilesV1ApiResponse = ApiResponsePayload;\n\nexport type GetQueriesPutFilesV1ResponseMessage =\n BaseApiResponseMessage<GetQueriesPutFilesV1ApiResponse>;\n\nexport interface GetQueriesPutFilesV1RequestMessage\n extends BaseApiRequestMessage<GetQueriesPutFilesV1QueryParams> {\n api: RemoteResponseRequestApi;\n method: 'getQueriesPutFilesV1';\n}\n\n// types for getQueriesScriptsV1\n\nexport interface GetQueriesScriptsV1QueryParams extends BaseUrlParams {\n filter?: string;\n limit?: QueryParam;\n offset?: QueryParam;\n sort?: QueryParam;\n}\n\nexport type GetQueriesScriptsV1ApiResponse = ApiResponsePayload;\n\nexport type GetQueriesScriptsV1ResponseMessage =\n BaseApiResponseMessage<GetQueriesScriptsV1ApiResponse>;\n\nexport interface GetQueriesScriptsV1RequestMessage\n extends BaseApiRequestMessage<GetQueriesScriptsV1QueryParams> {\n api: RemoteResponseRequestApi;\n method: 'getQueriesScriptsV1';\n}\n\n// types for postEntitiesPutFilesGetV1\n\nexport type PostEntitiesPutFilesGetV1QueryParams = BaseUrlParams;\n\nexport type PostEntitiesPutFilesGetV1ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesPutFilesGetV1PostData {}\n\nexport type PostEntitiesPutFilesGetV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesPutFilesGetV1ApiResponse>;\n\nexport interface PostEntitiesPutFilesGetV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesPutFilesGetV1QueryParams,\n PostEntitiesPutFilesGetV1PostData\n > {\n api: RemoteResponseRequestApi;\n method: 'postEntitiesPutFilesGetV1';\n}\n\n// types for postEntitiesPutFilesV1\n\nexport type PostEntitiesPutFilesV1QueryParams = BaseUrlParams;\n\nexport type PostEntitiesPutFilesV1ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesPutFilesV1PostData {}\n\nexport type PostEntitiesPutFilesV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesPutFilesV1ApiResponse>;\n\nexport interface PostEntitiesPutFilesV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesPutFilesV1QueryParams,\n PostEntitiesPutFilesV1PostData\n > {\n api: RemoteResponseRequestApi;\n method: 'postEntitiesPutFilesV1';\n}\n\n// types for postEntitiesScriptsGetV2\n\nexport type PostEntitiesScriptsGetV2QueryParams = BaseUrlParams;\n\nexport type PostEntitiesScriptsGetV2ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesScriptsGetV2PostData {}\n\nexport type PostEntitiesScriptsGetV2ResponseMessage =\n BaseApiResponseMessage<PostEntitiesScriptsGetV2ApiResponse>;\n\nexport interface PostEntitiesScriptsGetV2RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesScriptsGetV2QueryParams,\n PostEntitiesScriptsGetV2PostData\n > {\n api: RemoteResponseRequestApi;\n method: 'postEntitiesScriptsGetV2';\n}\n\n// general types\n\nexport type RemoteResponseApiRequestMessage =\n | GetQueriesScriptsV1RequestMessage\n | PostEntitiesScriptsGetV2RequestMessage;\n\nexport type RemoteResponseApiResponseMessage =\n | GetQueriesScriptsV1ResponseMessage\n | PostEntitiesScriptsGetV2ResponseMessage;\n\nexport class RemoteResponseApiBridge {\n private bridge;\n\n constructor(bridge: Bridge) {\n this.bridge = bridge;\n }\n\n getBridge() {\n return this.bridge;\n }\n\n async getScriptIds(\n urlParams: GetQueriesScriptsV1QueryParams = {}\n ): Promise<GetQueriesScriptsV1ApiResponse> {\n const message: GetQueriesScriptsV1RequestMessage = {\n type: 'api',\n api: 'remoteResponse',\n method: 'getQueriesScriptsV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getScriptEntities(\n postBody: PostEntitiesScriptsGetV2PostData,\n urlParams: PostEntitiesScriptsGetV2QueryParams = {}\n ): Promise<PostEntitiesScriptsGetV2ApiResponse> {\n const message: PostEntitiesScriptsGetV2RequestMessage = {\n type: 'api',\n api: 'remoteResponse',\n method: 'postEntitiesScriptsGetV2',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n}\n","/**\n *\n * This file is autogenerated.\n *\n * DO NOT EDIT DIRECTLY\n *\n **/\n\nimport type { Bridge } from '../../bridge';\n\nimport type {\n ApiResponsePayload,\n BaseApiRequestMessage,\n BaseApiResponseMessage,\n BaseUrlParams,\n QueryParam,\n} from '../../types';\n\nexport type WorkflowsRequestApi = 'workflows';\n\nexport type CommonApiResponseMessage =\n BaseApiResponseMessage<ApiResponsePayload>;\n\nexport interface CommonApiRequestMessage\n extends BaseApiRequestMessage<BaseUrlParams, unknown> {\n api: WorkflowsRequestApi;\n}\n\n// types for getEntitiesExecutionResultsV1\n\nexport interface GetEntitiesExecutionResultsV1QueryParams\n extends BaseUrlParams {\n ids: QueryParam;\n}\n\nexport type GetEntitiesExecutionResultsV1ApiResponse = ApiResponsePayload;\n\nexport type GetEntitiesExecutionResultsV1ResponseMessage =\n BaseApiResponseMessage<GetEntitiesExecutionResultsV1ApiResponse>;\n\nexport interface GetEntitiesExecutionResultsV1RequestMessage\n extends BaseApiRequestMessage<GetEntitiesExecutionResultsV1QueryParams> {\n api: WorkflowsRequestApi;\n method: 'getEntitiesExecutionResultsV1';\n}\n\n// types for postEntitiesExecuteV1\n\nexport interface PostEntitiesExecuteV1QueryParams extends BaseUrlParams {\n definitionId?: QueryParam;\n name?: QueryParam;\n key?: QueryParam;\n depth?: QueryParam;\n}\n\nexport type PostEntitiesExecuteV1ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesExecuteV1PostData {}\n\nexport type PostEntitiesExecuteV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesExecuteV1ApiResponse>;\n\nexport interface PostEntitiesExecuteV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesExecuteV1QueryParams,\n PostEntitiesExecuteV1PostData\n > {\n api: WorkflowsRequestApi;\n method: 'postEntitiesExecuteV1';\n}\n\n// types for postEntitiesExecutionActionsV1\n\nexport interface PostEntitiesExecutionActionsV1QueryParams\n extends BaseUrlParams {\n actionName: QueryParam;\n}\n\nexport type PostEntitiesExecutionActionsV1ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesExecutionActionsV1PostData {}\n\nexport type PostEntitiesExecutionActionsV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesExecutionActionsV1ApiResponse>;\n\nexport interface PostEntitiesExecutionActionsV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesExecutionActionsV1QueryParams,\n PostEntitiesExecutionActionsV1PostData\n > {\n api: WorkflowsRequestApi;\n method: 'postEntitiesExecutionActionsV1';\n}\n\n// general types\n\nexport type WorkflowsApiRequestMessage =\n | GetEntitiesExecutionResultsV1RequestMessage\n | PostEntitiesExecuteV1RequestMessage\n | PostEntitiesExecutionActionsV1RequestMessage;\n\nexport type WorkflowsApiResponseMessage =\n | GetEntitiesExecutionResultsV1ResponseMessage\n | PostEntitiesExecuteV1ResponseMessage\n | PostEntitiesExecutionActionsV1ResponseMessage;\n\nexport class WorkflowsApiBridge {\n private bridge;\n\n constructor(bridge: Bridge) {\n this.bridge = bridge;\n }\n\n getBridge() {\n return this.bridge;\n }\n\n async getEntitiesExecutionResultsV1(\n urlParams: GetEntitiesExecutionResultsV1QueryParams\n ): Promise<GetEntitiesExecutionResultsV1ApiResponse> {\n const message: GetEntitiesExecutionResultsV1RequestMessage = {\n type: 'api',\n api: 'workflows',\n method: 'getEntitiesExecutionResultsV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesExecuteV1(\n postBody: PostEntitiesExecuteV1PostData,\n urlParams: PostEntitiesExecuteV1QueryParams = {}\n ): Promise<PostEntitiesExecuteV1ApiResponse> {\n const message: PostEntitiesExecuteV1RequestMessage = {\n type: 'api',\n api: 'workflows',\n method: 'postEntitiesExecuteV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesExecutionActionsV1(\n postBody: PostEntitiesExecutionActionsV1PostData,\n urlParams: PostEntitiesExecutionActionsV1QueryParams\n ): Promise<PostEntitiesExecutionActionsV1ApiResponse> {\n const message: PostEntitiesExecutionActionsV1RequestMessage = {\n type: 'api',\n api: 'workflows',\n method: 'postEntitiesExecutionActionsV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n}\n","/**\n *\n * This file is autogenerated from the available APIs for App Platform.\n *\n * DO NOT EDIT DIRECTLY\n *\n * If you need to change the contents of this file please edit the above configuration file and\n * then run:\n *\n * ```\n * yarn cs-gen platform-apis\n * ```\n *\n **/\n\nimport { Memoize } from 'typescript-memoize';\n\nimport { ActorsApiBridge } from './actors';\nimport { AlertsApiBridge } from './alerts';\nimport { CustomobjectsApiBridge } from './customobjects';\nimport { DetectsApiBridge } from './detects';\nimport { DevicesApiBridge } from './devices';\nimport { FaasGatewayApiBridge } from './faas-gateway';\nimport { FwmgrApiBridge } from './fwmgr';\nimport { IncidentsApiBridge } from './incidents';\nimport { LoggingapiApiBridge } from './loggingapi';\nimport { MitreApiBridge } from './mitre';\nimport { PluginsApiBridge } from './plugins';\nimport { RemoteResponseApiBridge } from './remote-response';\nimport { WorkflowsApiBridge } from './workflows';\n\nimport { assertConnection } from '../utils';\nimport type { Bridge } from '../bridge';\n\nexport default abstract class FalconPublicApis {\n isConnected = false;\n abstract bridge: Bridge<any>;\n\n @Memoize()\n get actors(): ActorsApiBridge {\n assertConnection(this);\n\n return new ActorsApiBridge(this.bridge);\n }\n\n @Memoize()\n get alerts(): AlertsApiBridge {\n assertConnection(this);\n\n return new AlertsApiBridge(this.bridge);\n }\n\n @Memoize()\n get detects(): DetectsApiBridge {\n assertConnection(this);\n\n return new DetectsApiBridge(this.bridge);\n }\n\n @Memoize()\n get devices(): DevicesApiBridge {\n assertConnection(this);\n\n return new DevicesApiBridge(this.bridge);\n }\n\n @Memoize()\n get fwmgr(): FwmgrApiBridge {\n assertConnection(this);\n\n return new FwmgrApiBridge(this.bridge);\n }\n\n @Memoize()\n get incidents(): IncidentsApiBridge {\n assertConnection(this);\n\n return new IncidentsApiBridge(this.bridge);\n }\n\n @Memoize()\n get mitre(): MitreApiBridge {\n assertConnection(this);\n\n return new MitreApiBridge(this.bridge);\n }\n\n @Memoize()\n get plugins(): PluginsApiBridge {\n assertConnection(this);\n\n return new PluginsApiBridge(this.bridge);\n }\n\n @Memoize()\n get remoteResponse(): RemoteResponseApiBridge {\n assertConnection(this);\n\n return new RemoteResponseApiBridge(this.bridge);\n }\n\n @Memoize()\n get workflows(): WorkflowsApiBridge {\n assertConnection(this);\n\n return new WorkflowsApiBridge(this.bridge);\n }\n\n @Memoize()\n get customobjects(): CustomobjectsApiBridge {\n assertConnection(this);\n\n return new CustomobjectsApiBridge(this.bridge);\n }\n\n @Memoize()\n get faasGateway(): FaasGatewayApiBridge {\n assertConnection(this);\n\n return new FaasGatewayApiBridge(this.bridge);\n }\n\n @Memoize()\n get loggingapi(): LoggingapiApiBridge {\n assertConnection(this);\n\n return new LoggingapiApiBridge(this.bridge);\n }\n}\n","import type FalconApi from '../api';\nimport type { LocalData } from '../types';\n\ninterface ApiIntegrationDefinition {\n definitionId: string;\n operationId: string;\n}\n\ninterface ExecuteParameters {\n request?: {\n params?: {\n path?: Record<any, unknown>;\n query?: Record<any, unknown>;\n header?: Record<any, unknown>;\n };\n json?: Record<any, unknown> | Record<any, unknown>[];\n };\n}\n\nexport class ApiIntegration<DATA extends LocalData = LocalData> {\n constructor(\n private readonly falcon: FalconApi<DATA>,\n private readonly definition: ApiIntegrationDefinition,\n ) {}\n\n public async execute({ request }: ExecuteParameters = {}) {\n return this.falcon.plugins.postEntitiesExecuteV1({\n resources: [\n {\n definition_id: this.definition.definitionId,\n operation_id: this.definition.operationId,\n request,\n },\n ],\n });\n }\n}\n","import type FalconApi from \"../api\";\nimport type { LocalData } from \"../types\";\n\ninterface FunctionDefinition {\n id: string;\n version: number;\n}\n\ninterface ExecuteParameters {\n path: string;\n method: \"GET\" | \"POST\" | \"PATCH\" | \"PUT\" | \"DELETE\";\n body?: Record<string, unknown>;\n queryParams?: Record<string, unknown>;\n headers?: Record<string, unknown>;\n}\n\ninterface PostParameters {\n path: string;\n body?: Record<string, unknown>;\n queryParams?: Record<string, unknown>;\n headers?: Record<string, unknown>;\n}\n\ntype PatchParameters = PostParameters;\n\ntype PutParameters = PostParameters;\n\ntype DeleteParameters = PostParameters;\n\ninterface GetParameters {\n path: string;\n queryParams?: Record<string, unknown>;\n headers?: Record<string, unknown>;\n}\n\nexport class CloudFunction<DATA extends LocalData = LocalData> {\n static GET = \"GET\" as const;\n static POST = \"POST\" as const;\n static PATCH = \"PATCH\" as const;\n static PUT = \"PUT\" as const;\n static DELETE = \"DELETE\" as const;\n\n pollTimeout = 500;\n intervalId?: number;\n\n constructor(\n private readonly falcon: FalconApi<DATA>,\n private readonly definition: FunctionDefinition\n ) {}\n\n private async execute({\n path,\n method,\n queryParams,\n body,\n headers,\n }: ExecuteParameters) {\n const result = await this.falcon.faasGateway.postEntitiesExecutionV1({\n function_id: this.definition.id,\n function_version: this.definition.version,\n payload: {\n path,\n method,\n body,\n headers,\n query_params: queryParams,\n },\n });\n\n return new Promise((resolve, reject) => {\n const execution = result?.resources?.[0] as any;\n\n if (!execution?.execution_id) {\n reject(result?.errors);\n } else {\n this.pollForResult({\n resolve,\n reject,\n executionId: execution?.execution_id,\n });\n }\n });\n }\n\n private async getExecutionResult(\n executionId: string\n ): Promise<Record<string, unknown> | undefined> {\n const resultResponse = await this.falcon.faasGateway.getEntitiesExecutionV1(\n {\n id: executionId,\n }\n );\n\n const executionResult = resultResponse?.resources?.[0] as any;\n\n return executionResult?.payload;\n }\n\n private pollForResult({\n resolve,\n reject,\n executionId,\n }: {\n resolve: (value: unknown) => void;\n reject: (value?: unknown) => void;\n executionId: string;\n }) {\n let exceptionRetries = 2;\n\n this.intervalId = window.setInterval(async () => {\n try {\n const payload = await this.getExecutionResult(executionId);\n\n if (payload) {\n window.clearInterval(this.intervalId);\n resolve(payload);\n }\n } catch (e) {\n if (exceptionRetries <= 0) {\n window.clearInterval(this.intervalId);\n reject(e);\n }\n\n exceptionRetries--;\n }\n }, this.pollTimeout);\n }\n\n public path(pathEntry: string) {\n const urlPath = new URL(pathEntry, \"http://localhost\");\n\n const path = urlPath.pathname;\n const searchParams = [...urlPath.searchParams.entries()].map(\n ([key, value]) => ({\n [key]: [value],\n })\n );\n\n return {\n path,\n queryParams: searchParams,\n\n get: async (queryParams: GetParameters[\"queryParams\"] = {}) => {\n return this.get({\n path,\n queryParams: queryParams ?? searchParams ?? {},\n });\n },\n\n post: async (\n body: PostParameters[\"body\"],\n queryParams: PostParameters[\"queryParams\"] = {},\n headers: PostParameters[\"headers\"] = {}\n ) => {\n return this.post({\n path,\n queryParams: queryParams ?? searchParams ?? {},\n body,\n headers,\n });\n },\n\n patch: async (\n body: PatchParameters[\"body\"],\n queryParams: PatchParameters[\"queryParams\"] = {},\n headers: PatchParameters[\"headers\"] = {}\n ) => {\n return this.patch({\n path,\n queryParams: queryParams ?? searchParams ?? {},\n body,\n headers,\n });\n },\n\n put: async (\n body: PutParameters[\"body\"],\n queryParams: PutParameters[\"queryParams\"] = {},\n headers: PutParameters[\"headers\"] = {}\n ) => {\n return this.put({\n path,\n queryParams: queryParams ?? searchParams ?? {},\n body,\n headers,\n });\n },\n\n delete: async (\n body: DeleteParameters[\"body\"],\n queryParams: DeleteParameters[\"queryParams\"] = {},\n headers: DeleteParameters[\"headers\"] = {}\n ) => {\n return this.delete({\n path,\n queryParams: queryParams ?? searchParams ?? {},\n body,\n headers,\n });\n },\n };\n }\n\n public async get({ path, queryParams, headers }: GetParameters) {\n return this.execute({\n path,\n method: CloudFunction.GET,\n queryParams,\n headers,\n });\n }\n\n public async post({ path, queryParams, body, headers }: PostParameters) {\n return this.execute({\n path,\n method: CloudFunction.POST,\n body,\n queryParams,\n headers,\n });\n }\n\n public async patch({ path, queryParams, body, headers }: PatchParameters) {\n return this.execute({\n path,\n method: CloudFunction.PATCH,\n body,\n queryParams,\n headers,\n });\n }\n\n public async put({ path, queryParams, body, headers }: PutParameters) {\n return this.execute({\n path,\n method: CloudFunction.PUT,\n body,\n queryParams,\n headers,\n });\n }\n\n public async delete({ path, queryParams, body, headers }: DeleteParameters) {\n return this.execute({\n path,\n method: CloudFunction.DELETE,\n body,\n queryParams,\n headers,\n });\n }\n\n public destroy() {\n if (this.intervalId) {\n window.clearInterval(this.intervalId);\n this.intervalId = undefined;\n }\n }\n}\n","import type FalconApi from '../api';\nimport type { CollectionRequestMessage, LocalData } from '../types';\n\ninterface CollectionDefinition {\n collection: string;\n}\n\ninterface CollectionSearchDefinition {\n startKey: string;\n endKey: string;\n limit: string;\n}\n\nexport class Collection<DATA extends LocalData = LocalData> {\n constructor(\n private readonly falcon: FalconApi<DATA>,\n private readonly definition: CollectionDefinition,\n ) {}\n\n public async write(key: string, data: Record<string, unknown>) {\n return this.falcon.bridge.postMessage<CollectionRequestMessage>({\n type: 'collection',\n payload: {\n type: 'write',\n key,\n collection: this.definition.collection,\n data,\n },\n });\n }\n\n public async read(key: string) {\n return this.falcon.bridge.postMessage<CollectionRequestMessage>({\n type: 'collection',\n payload: {\n type: 'read',\n key,\n collection: this.definition.collection,\n },\n });\n }\n\n public async delete(key: string) {\n return this.falcon.bridge.postMessage<CollectionRequestMessage>({\n type: 'collection',\n payload: {\n type: 'delete',\n key,\n collection: this.definition.collection,\n },\n });\n }\n\n public async search({ startKey, endKey, limit }: CollectionSearchDefinition) {\n return this.falcon.bridge.postMessage<CollectionRequestMessage>({\n type: 'collection',\n payload: {\n type: 'search',\n startKey,\n endKey,\n limit,\n collection: this.definition.collection,\n },\n });\n }\n}\n","import type FalconApi from '../api';\nimport type { LocalData, LogscaleRequestMessage } from '../types';\n\ninterface WriteProperties {\n tag: LogscaleRequestMessage['payload']['tag'];\n tagSource: LogscaleRequestMessage['payload']['tagSource'];\n testData: LogscaleRequestMessage['payload']['testData'];\n}\n\nexport class Logscale<DATA extends LocalData = LocalData> {\n constructor(private readonly falcon: FalconApi<DATA>) {}\n\n public async write(data: LogscaleRequestMessage['payload']['data'], properties: WriteProperties) {\n return this.falcon.bridge.postMessage<LogscaleRequestMessage>({\n type: 'loggingapi',\n payload: {\n type: 'ingest',\n data,\n tag: properties?.tag,\n tagSource: properties?.tagSource,\n testData: properties?.testData,\n },\n });\n }\n\n public async query(data: LogscaleRequestMessage['payload']['data']) {\n return this.falcon.bridge.postMessage<LogscaleRequestMessage>({\n type: 'loggingapi',\n payload: {\n type: 'dynamic-execute',\n data,\n },\n });\n }\n}\n","import type FalconApi from '../api';\nimport type { LocalData } from '../types';\nimport type { NavigateToRequestMessage } from '../types';\n\nconst ALLOWED_TARGETS = ['_self', '_blank'] as const;\n\nexport class Navigation<DATA extends LocalData = LocalData> {\n constructor(private readonly falcon: FalconApi<DATA>) {}\n\n public async navigateTo({\n path,\n type,\n target,\n metaKey,\n ctrlKey,\n shiftKey,\n }: {\n path: string;\n target?: NavigateToRequestMessage['payload']['target'];\n type?: NavigateToRequestMessage['payload']['type'];\n metaKey?: boolean;\n ctrlKey?: boolean;\n shiftKey?: boolean;\n }) {\n await this.falcon.bridge.postMessage<NavigateToRequestMessage>({\n type: 'navigateTo',\n payload: {\n path,\n type: type ?? 'falcon',\n target: target ?? '_self',\n metaKey: metaKey ?? false,\n ctrlKey: ctrlKey ?? false,\n shiftKey: shiftKey ?? false,\n },\n });\n }\n\n public async onClick(\n event: MouseEvent | KeyboardEvent,\n defaultTarget: (typeof ALLOWED_TARGETS)[number] = '_self',\n defaultType: NavigateToRequestMessage['payload']['type'] = 'falcon'\n ) {\n if (!(event instanceof Event)) {\n throw Error('\"event\" property should be subclass of Event');\n }\n\n if (!('preventDefault' in event)) {\n return;\n }\n\n event.preventDefault();\n\n if (!(event.target instanceof HTMLAnchorElement)) {\n throw Error(`event target is not an anchor element, ${event.target}`);\n }\n\n const path = event.target.getAttribute('href');\n defaultTarget =\n (event.target.getAttribute('target') as '_self' | '_blank') ??\n defaultTarget;\n const type = (event.target.dataset?.type ??\n defaultType) as NavigateToRequestMessage['payload']['type'];\n\n if (\n defaultTarget === null ||\n !ALLOWED_TARGETS.includes(\n defaultTarget as (typeof ALLOWED_TARGETS)[number]\n )\n ) {\n throw new Error('Target should be _self or _blank');\n }\n\n const target = defaultTarget as (typeof ALLOWED_TARGETS)[number];\n\n if (path === undefined || path === null) {\n throw new Error(\n 'Navigation path is missing. Make sure you have added navigation.onClick on the `a` tag and `href` is present.'\n );\n }\n\n const { metaKey, ctrlKey, shiftKey } = event;\n\n await this.navigateTo({ path, type, target, metaKey, ctrlKey, shiftKey });\n }\n}\n","import type { Bridge } from '../bridge';\nimport type { LocalData } from '../types';\n\nexport class ResizeTracker<DATA extends LocalData = LocalData> {\n private observer: ResizeObserver;\n\n constructor(private bridge: Bridge<DATA>) {\n this.observer = new ResizeObserver((entries) => this.handleResizeEvent(entries));\n this.observer.observe(document.body);\n }\n\n private handleResizeEvent(entries: ResizeObserverEntry[]) {\n const { height } = entries[0].contentRect;\n\n this.bridge.sendUnidirectionalMessage({\n type: 'resize',\n payload: {\n height,\n },\n });\n }\n\n destroy() {\n this.observer.disconnect();\n }\n}\n","import type { Bridge } from '../bridge';\nimport type { ExtensionIdentifier, LocalData, OpenModalOptions } from '../types';\n\nexport class UI<DATA extends LocalData = LocalData> {\n constructor(private bridge: Bridge<DATA>) {}\n\n public async openModal<PAYLOAD = unknown>(\n extension: ExtensionIdentifier,\n title: string,\n options: OpenModalOptions = {},\n ): Promise<PAYLOAD> {\n const result = await this.bridge.postMessage({\n type: 'openModal',\n payload: {\n extension,\n title,\n options,\n },\n });\n\n if (result instanceof Error) {\n throw result;\n }\n\n return result;\n }\n\n public closeModal<PAYLOAD = unknown>(payload?: PAYLOAD) {\n this.bridge.sendUnidirectionalMessage({\n type: 'closeModal',\n payload,\n });\n }\n}\n","import Emittery from 'emittery';\nimport FalconPublicApis from './apis/public-api';\nimport { ApiIntegration } from './abstraction/api-integration';\nimport { Bridge } from './bridge';\nimport { CloudFunction } from './abstraction/cloud-function';\nimport { Collection } from './abstraction/collection';\nimport { Logscale } from './abstraction/logscale';\nimport { Memoize } from 'typescript-memoize';\nimport { Navigation } from './lib/navigation';\nimport { ResizeTracker } from './lib/resize-tracker';\nimport { UI } from './lib/ui';\nimport { assertConnection } from './utils';\nimport type {\n BroadcastMessage,\n DataUpdateMessage,\n FileUploadType,\n LocalData,\n PayloadForFileUploadType,\n ResponseForFileUploadType,\n Theme,\n} from './types';\n\n// This maps event names to the event shape, used by emittery. Extends this when adding new subscribable events\ninterface EventMap<DATA extends LocalData> {\n data: DATA;\n broadcast: unknown;\n}\n\nexport default class FalconApi<DATA extends LocalData = LocalData> extends FalconPublicApis {\n public events = new Emittery<EventMap<DATA>>();\n public data?: DATA;\n public bridge: Bridge<DATA> = new Bridge<DATA>({\n onDataUpdate: (data) => this.handleDataUpdate(data),\n onBroadcast: (msg) => this.handleBroadcastMessage(msg),\n onLivereload: () => this.handleLivereloadMessage(),\n });\n\n public ui = new UI(this.bridge);\n\n private resizeTracker?: ResizeTracker<DATA>;\n private cloudFunctions: CloudFunction<DATA>[] = [];\n private apiIntegrations: ApiIntegration<DATA>[] = [];\n private collections: Collection<DATA>[] = [];\n\n public async connect(): Promise<void> {\n const { origin, data } = await this.bridge.postMessage({ type: 'connect' });\n\n this.bridge.setOrigin(origin);\n this.data = data;\n\n this.updateTheme(data?.theme);\n this.resizeTracker = new ResizeTracker(this.bridge);\n\n this.isConnected = true;\n }\n\n public sendBroadcast(payload: unknown) {\n this.bridge.sendUnidirectionalMessage({ type: 'broadcast', payload });\n }\n\n public async uploadFile<TYPE extends FileUploadType>(\n fileUploadType: TYPE,\n initialData?: PayloadForFileUploadType<TYPE>,\n ): Promise<ResponseForFileUploadType<TYPE> | undefined> {\n return this.bridge.postMessage({\n type: 'fileUpload',\n fileUploadType,\n payload: initialData,\n });\n }\n\n private handleDataUpdate(dataMessage: DataUpdateMessage<DATA>): void {\n this.data = dataMessage.payload;\n this.updateTheme(this.data.theme);\n\n this.events.emit('data', this.data);\n }\n\n private handleBroadcastMessage(message: BroadcastMessage): void {\n this.events.emit('broadcast', message.payload);\n }\n\n private handleLivereloadMessage(): void {\n document.location.reload();\n }\n\n private updateTheme(activeTheme?: Theme) {\n if (!activeTheme) {\n return;\n }\n\n const inactiveTheme = activeTheme === 'theme-dark' ? 'theme-light' : 'theme-dark';\n\n document.documentElement.classList.add(activeTheme);\n document.documentElement.classList.remove(inactiveTheme);\n }\n\n cloudFunction({ id, version }: { id: string; version: number }) {\n assertConnection(this);\n\n const cf = new CloudFunction(this, { id, version });\n\n this.cloudFunctions.push(cf);\n\n return cf;\n }\n\n apiIntegration({ definitionId, operationId }: { operationId: string; definitionId: string }) {\n assertConnection(this);\n\n const cf = new ApiIntegration(this, { operationId, definitionId });\n\n this.apiIntegrations.push(cf);\n\n return cf;\n }\n\n collection({ collection }: { collection: string }) {\n assertConnection(this);\n\n const co = new Collection(this, { collection });\n\n this.collections.push(co);\n\n return co;\n }\n\n @Memoize()\n get navigation() {\n assertConnection(this);\n\n return new Navigation(this);\n }\n\n @Memoize()\n get logscale() {\n assertConnection(this);\n\n return new Logscale(this);\n }\n\n destroy() {\n this.cloudFunctions.forEach((cf) => cf.destroy());\n\n this.resizeTracker?.destroy();\n this.bridge.destroy();\n }\n}\n"],"names":["uuidv4"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../node_modules/uuid/dist/esm-browser/rng.js","../node_modules/uuid/dist/esm-browser/stringify.js","../node_modules/uuid/dist/esm-browser/native.js","../node_modules/uuid/dist/esm-browser/v4.js","../src/apis/version.ts","../src/utils.ts","../src/bridge.ts","../node_modules/tslib/tslib.es6.js","../node_modules/emittery/maps.js","../node_modules/emittery/index.js","../node_modules/typescript-memoize/dist/es2015/memoize-decorator.js","../src/apis/actors/index.ts","../src/apis/alerts/index.ts","../src/apis/customobjects/index.ts","../src/apis/detects/index.ts","../src/apis/devices/index.ts","../src/apis/faas-gateway/index.ts","../src/apis/fwmgr/index.ts","../src/apis/incidents/index.ts","../src/apis/loggingapi/index.ts","../src/apis/mitre/index.ts","../src/apis/plugins/index.ts","../src/apis/remote-response/index.ts","../src/apis/workflows/index.ts","../src/apis/public-api.ts","../src/abstraction/api-integration.ts","../src/abstraction/cloud-function.ts","../src/abstraction/collection.ts","../src/abstraction/logscale.ts","../src/lib/navigation.ts","../src/lib/resize-tracker.ts","../src/lib/ui.ts","../src/api.ts"],"sourcesContent":["// Unique ID creation requires a high quality random # generator. In the browser we therefore\n// require the crypto API and do not support built-in fallback to lower quality random number\n// generators (like Math.random()).\nlet getRandomValues;\nconst rnds8 = new Uint8Array(16);\nexport default function rng() {\n // lazy load so that environments that need to polyfill have a chance to do so\n if (!getRandomValues) {\n // getRandomValues needs to be invoked in a context where \"this\" is a Crypto implementation.\n getRandomValues = typeof crypto !== 'undefined' && crypto.getRandomValues && crypto.getRandomValues.bind(crypto);\n\n if (!getRandomValues) {\n throw new Error('crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported');\n }\n }\n\n return getRandomValues(rnds8);\n}","import validate from './validate.js';\n/**\n * Convert array of 16 byte values to UUID string format of the form:\n * XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\n */\n\nconst byteToHex = [];\n\nfor (let i = 0; i < 256; ++i) {\n byteToHex.push((i + 0x100).toString(16).slice(1));\n}\n\nexport function unsafeStringify(arr, offset = 0) {\n // Note: Be careful editing this code! It's been tuned for performance\n // and works in ways you may not expect. See https://github.com/uuidjs/uuid/pull/434\n return (byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + '-' + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + '-' + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + '-' + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + '-' + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]]).toLowerCase();\n}\n\nfunction stringify(arr, offset = 0) {\n const uuid = unsafeStringify(arr, offset); // Consistency check for valid UUID. If this throws, it's likely due to one\n // of the following:\n // - One or more input array values don't map to a hex octet (leading to\n // \"undefined\" in the uuid)\n // - Invalid input values for the RFC `version` or `variant` fields\n\n if (!validate(uuid)) {\n throw TypeError('Stringified UUID is invalid');\n }\n\n return uuid;\n}\n\nexport default stringify;","const randomUUID = typeof crypto !== 'undefined' && crypto.randomUUID && crypto.randomUUID.bind(crypto);\nexport default {\n randomUUID\n};","import native from './native.js';\nimport rng from './rng.js';\nimport { unsafeStringify } from './stringify.js';\n\nfunction v4(options, buf, offset) {\n if (native.randomUUID && !buf && !options) {\n return native.randomUUID();\n }\n\n options = options || {};\n const rnds = options.random || (options.rng || rng)(); // Per 4.4, set bits for version and `clock_seq_hi_and_reserved`\n\n rnds[6] = rnds[6] & 0x0f | 0x40;\n rnds[8] = rnds[8] & 0x3f | 0x80; // Copy bytes to buffer, if provided\n\n if (buf) {\n offset = offset || 0;\n\n for (let i = 0; i < 16; ++i) {\n buf[offset + i] = rnds[i];\n }\n\n return buf;\n }\n\n return unsafeStringify(rnds);\n}\n\nexport default v4;","export const VERSION = 'current';\n","import type FalconPublicApis from './apis/public-api';\nimport type { LocalData, MessageEnvelope, ResponseMessage } from './types';\n\nexport function assertConnection(falcon: FalconPublicApis) {\n if (!falcon.isConnected) {\n throw new Error(\n 'You cannot call this API before having established a connection to the host!',\n );\n }\n}\n\nexport function isValidResponse<DATA extends LocalData>(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n event: MessageEvent<MessageEnvelope<ResponseMessage<DATA>> | any>,\n): event is MessageEvent<MessageEnvelope<ResponseMessage<DATA>>> {\n return !!event?.data?.meta?.messageId;\n}\n","import { v4 as uuidv4 } from 'uuid';\n\nimport { VERSION } from './apis/version';\nimport { isValidResponse } from './utils';\n\nimport type {\n BroadcastMessage,\n DataUpdateMessage,\n LivereloadMessage,\n LocalData,\n MessageEnvelope,\n PayloadOf,\n RequestMessage,\n ResponseFor,\n ResponseMessage,\n UnidirectionalRequestMessage,\n} from './types';\n\nconst CONNECTION_TIMEOUT = 5_000;\nconst API_TIMEOUT = 30_000;\nconst NAVIGATION_TIMEOUT = 5_000;\n\nfunction timeoutForMessage(message: RequestMessage): number | null {\n const timeout =\n message.type === 'connect'\n ? CONNECTION_TIMEOUT\n : message.type === 'api'\n ? API_TIMEOUT\n : message.type === 'navigateTo'\n ? NAVIGATION_TIMEOUT\n : // Requests not explicitly covered above will not have a timeout. This includes 'fileUpload', which is a user interaction that can take any amount of time.\n null;\n\n // In tests we have mocked responses which do not require long timeouts\n return timeout !== null && process.env.VITEST ? 40 : timeout;\n}\n\ninterface BridgeOptions<DATA extends LocalData> {\n onDataUpdate?: (event: DataUpdateMessage<DATA>) => void;\n onBroadcast?: (event: BroadcastMessage) => void;\n onLivereload?: (event: LivereloadMessage) => void;\n}\n\nexport class Bridge<DATA extends LocalData = LocalData> {\n private onDataUpdate: BridgeOptions<DATA>['onDataUpdate'];\n private onBroadcast: BridgeOptions<DATA>['onBroadcast'];\n private onLivereload: BridgeOptions<DATA>['onLivereload'];\n private pendingMessages = new Map<\n string,\n (result: PayloadOf<ResponseMessage>) => void\n >();\n\n private targetOrigin = '*';\n\n constructor({\n onDataUpdate,\n onBroadcast,\n onLivereload,\n }: BridgeOptions<DATA> = {}) {\n this.onDataUpdate = onDataUpdate;\n this.onBroadcast = onBroadcast;\n this.onLivereload = onLivereload;\n\n window.addEventListener('message', this.handleMessage);\n }\n\n public destroy() {\n window.removeEventListener('message', this.handleMessage);\n }\n\n public setOrigin(origin: string) {\n this.targetOrigin = origin;\n }\n\n sendUnidirectionalMessage(message: UnidirectionalRequestMessage) {\n const messageId = uuidv4();\n const eventData: MessageEnvelope<UnidirectionalRequestMessage> = {\n message,\n meta: {\n messageId,\n version: VERSION,\n },\n };\n\n window.parent.postMessage(eventData, this.targetOrigin);\n }\n\n async postMessage<REQ extends RequestMessage>(message: REQ) {\n return new Promise((resolve, reject) => {\n const messageId = uuidv4();\n\n let timeoutTimer: ReturnType<typeof setTimeout> | undefined;\n const timeoutValue = timeoutForMessage(message);\n\n if (timeoutValue !== null) {\n timeoutTimer = setTimeout(() => {\n reject(\n new Error(\n `Waiting for response from foundry host for \"${message.type}\" message (ID: ${messageId}) timed out after ${timeoutValue}ms`,\n ),\n );\n }, timeoutValue);\n }\n\n this.pendingMessages.set(messageId, (result) => {\n if (timeoutTimer) {\n clearTimeout(timeoutTimer);\n }\n\n resolve(result);\n });\n\n const eventData: MessageEnvelope<REQ> = {\n message,\n meta: {\n messageId,\n version: VERSION,\n },\n };\n\n window.parent.postMessage(eventData, this.targetOrigin);\n }) satisfies Promise<PayloadOf<ResponseFor<REQ, DATA>>>;\n }\n\n private handleMessage = (\n event: MessageEvent<MessageEnvelope<ResponseMessage<DATA>> | unknown>,\n ) => {\n if (!isValidResponse<DATA>(event)) {\n return;\n }\n\n const { message } = event.data;\n\n if (message.type === 'data') {\n this.onDataUpdate?.(message);\n\n // data update events are unidirectional and originated from the host, so there cannot be a callback waiting for this message\n return;\n }\n\n if (message.type === 'broadcast') {\n this.onBroadcast?.(message);\n\n // data update events are unidirectional and are proxied via the host, so there cannot be a callback waiting for this message\n return;\n }\n\n if (message.type === 'livereload') {\n this.onLivereload?.(message);\n\n // livereload events are unidirectional and are proxied via the host, so there cannot be a callback waiting for this message\n return;\n }\n\n const { messageId } = event.data.meta;\n const callback = this.pendingMessages.get(messageId);\n\n if (!callback) {\n throw new Error(`Received unexpected message`);\n }\n\n this.pendingMessages.delete(messageId);\n\n callback(message.payload);\n };\n}\n","/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.push(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.push(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n","export const anyMap = new WeakMap();\nexport const eventsMap = new WeakMap();\nexport const producersMap = new WeakMap();\n","import {anyMap, producersMap, eventsMap} from './maps.js';\n\nconst anyProducer = Symbol('anyProducer');\nconst resolvedPromise = Promise.resolve();\n\n// Define symbols for \"meta\" events.\nconst listenerAdded = Symbol('listenerAdded');\nconst listenerRemoved = Symbol('listenerRemoved');\n\nlet canEmitMetaEvents = false;\nlet isGlobalDebugEnabled = false;\n\nfunction assertEventName(eventName) {\n\tif (typeof eventName !== 'string' && typeof eventName !== 'symbol' && typeof eventName !== 'number') {\n\t\tthrow new TypeError('`eventName` must be a string, symbol, or number');\n\t}\n}\n\nfunction assertListener(listener) {\n\tif (typeof listener !== 'function') {\n\t\tthrow new TypeError('listener must be a function');\n\t}\n}\n\nfunction getListeners(instance, eventName) {\n\tconst events = eventsMap.get(instance);\n\tif (!events.has(eventName)) {\n\t\treturn;\n\t}\n\n\treturn events.get(eventName);\n}\n\nfunction getEventProducers(instance, eventName) {\n\tconst key = typeof eventName === 'string' || typeof eventName === 'symbol' || typeof eventName === 'number' ? eventName : anyProducer;\n\tconst producers = producersMap.get(instance);\n\tif (!producers.has(key)) {\n\t\treturn;\n\t}\n\n\treturn producers.get(key);\n}\n\nfunction enqueueProducers(instance, eventName, eventData) {\n\tconst producers = producersMap.get(instance);\n\tif (producers.has(eventName)) {\n\t\tfor (const producer of producers.get(eventName)) {\n\t\t\tproducer.enqueue(eventData);\n\t\t}\n\t}\n\n\tif (producers.has(anyProducer)) {\n\t\tconst item = Promise.all([eventName, eventData]);\n\t\tfor (const producer of producers.get(anyProducer)) {\n\t\t\tproducer.enqueue(item);\n\t\t}\n\t}\n}\n\nfunction iterator(instance, eventNames) {\n\teventNames = Array.isArray(eventNames) ? eventNames : [eventNames];\n\n\tlet isFinished = false;\n\tlet flush = () => {};\n\tlet queue = [];\n\n\tconst producer = {\n\t\tenqueue(item) {\n\t\t\tqueue.push(item);\n\t\t\tflush();\n\t\t},\n\t\tfinish() {\n\t\t\tisFinished = true;\n\t\t\tflush();\n\t\t},\n\t};\n\n\tfor (const eventName of eventNames) {\n\t\tlet set = getEventProducers(instance, eventName);\n\t\tif (!set) {\n\t\t\tset = new Set();\n\t\t\tconst producers = producersMap.get(instance);\n\t\t\tproducers.set(eventName, set);\n\t\t}\n\n\t\tset.add(producer);\n\t}\n\n\treturn {\n\t\tasync next() {\n\t\t\tif (!queue) {\n\t\t\t\treturn {done: true};\n\t\t\t}\n\n\t\t\tif (queue.length === 0) {\n\t\t\t\tif (isFinished) {\n\t\t\t\t\tqueue = undefined;\n\t\t\t\t\treturn this.next();\n\t\t\t\t}\n\n\t\t\t\tawait new Promise(resolve => {\n\t\t\t\t\tflush = resolve;\n\t\t\t\t});\n\n\t\t\t\treturn this.next();\n\t\t\t}\n\n\t\t\treturn {\n\t\t\t\tdone: false,\n\t\t\t\tvalue: await queue.shift(),\n\t\t\t};\n\t\t},\n\n\t\tasync return(value) {\n\t\t\tqueue = undefined;\n\n\t\t\tfor (const eventName of eventNames) {\n\t\t\t\tconst set = getEventProducers(instance, eventName);\n\t\t\t\tif (set) {\n\t\t\t\t\tset.delete(producer);\n\t\t\t\t\tif (set.size === 0) {\n\t\t\t\t\t\tconst producers = producersMap.get(instance);\n\t\t\t\t\t\tproducers.delete(eventName);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tflush();\n\n\t\t\treturn arguments.length > 0\n\t\t\t\t? {done: true, value: await value}\n\t\t\t\t: {done: true};\n\t\t},\n\n\t\t[Symbol.asyncIterator]() {\n\t\t\treturn this;\n\t\t},\n\t};\n}\n\nfunction defaultMethodNamesOrAssert(methodNames) {\n\tif (methodNames === undefined) {\n\t\treturn allEmitteryMethods;\n\t}\n\n\tif (!Array.isArray(methodNames)) {\n\t\tthrow new TypeError('`methodNames` must be an array of strings');\n\t}\n\n\tfor (const methodName of methodNames) {\n\t\tif (!allEmitteryMethods.includes(methodName)) {\n\t\t\tif (typeof methodName !== 'string') {\n\t\t\t\tthrow new TypeError('`methodNames` element must be a string');\n\t\t\t}\n\n\t\t\tthrow new Error(`${methodName} is not Emittery method`);\n\t\t}\n\t}\n\n\treturn methodNames;\n}\n\nconst isMetaEvent = eventName => eventName === listenerAdded || eventName === listenerRemoved;\n\nfunction emitMetaEvent(emitter, eventName, eventData) {\n\tif (isMetaEvent(eventName)) {\n\t\ttry {\n\t\t\tcanEmitMetaEvents = true;\n\t\t\temitter.emit(eventName, eventData);\n\t\t} finally {\n\t\t\tcanEmitMetaEvents = false;\n\t\t}\n\t}\n}\n\nexport default class Emittery {\n\tstatic mixin(emitteryPropertyName, methodNames) {\n\t\tmethodNames = defaultMethodNamesOrAssert(methodNames);\n\t\treturn target => {\n\t\t\tif (typeof target !== 'function') {\n\t\t\t\tthrow new TypeError('`target` must be function');\n\t\t\t}\n\n\t\t\tfor (const methodName of methodNames) {\n\t\t\t\tif (target.prototype[methodName] !== undefined) {\n\t\t\t\t\tthrow new Error(`The property \\`${methodName}\\` already exists on \\`target\\``);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tfunction getEmitteryProperty() {\n\t\t\t\tObject.defineProperty(this, emitteryPropertyName, {\n\t\t\t\t\tenumerable: false,\n\t\t\t\t\tvalue: new Emittery(),\n\t\t\t\t});\n\t\t\t\treturn this[emitteryPropertyName];\n\t\t\t}\n\n\t\t\tObject.defineProperty(target.prototype, emitteryPropertyName, {\n\t\t\t\tenumerable: false,\n\t\t\t\tget: getEmitteryProperty,\n\t\t\t});\n\n\t\t\tconst emitteryMethodCaller = methodName => function (...args) {\n\t\t\t\treturn this[emitteryPropertyName][methodName](...args);\n\t\t\t};\n\n\t\t\tfor (const methodName of methodNames) {\n\t\t\t\tObject.defineProperty(target.prototype, methodName, {\n\t\t\t\t\tenumerable: false,\n\t\t\t\t\tvalue: emitteryMethodCaller(methodName),\n\t\t\t\t});\n\t\t\t}\n\n\t\t\treturn target;\n\t\t};\n\t}\n\n\tstatic get isDebugEnabled() {\n\t\t// In a browser environment, `globalThis.process` can potentially reference a DOM Element with a `#process` ID,\n\t\t// so instead of just type checking `globalThis.process`, we need to make sure that `globalThis.process.env` exists.\n\t\t// eslint-disable-next-line n/prefer-global/process\n\t\tif (typeof globalThis.process?.env !== 'object') {\n\t\t\treturn isGlobalDebugEnabled;\n\t\t}\n\n\t\t// eslint-disable-next-line n/prefer-global/process\n\t\tconst {env} = globalThis.process ?? {env: {}};\n\t\treturn env.DEBUG === 'emittery' || env.DEBUG === '*' || isGlobalDebugEnabled;\n\t}\n\n\tstatic set isDebugEnabled(newValue) {\n\t\tisGlobalDebugEnabled = newValue;\n\t}\n\n\tconstructor(options = {}) {\n\t\tanyMap.set(this, new Set());\n\t\teventsMap.set(this, new Map());\n\t\tproducersMap.set(this, new Map());\n\n\t\tproducersMap.get(this).set(anyProducer, new Set());\n\n\t\tthis.debug = options.debug ?? {};\n\n\t\tif (this.debug.enabled === undefined) {\n\t\t\tthis.debug.enabled = false;\n\t\t}\n\n\t\tif (!this.debug.logger) {\n\t\t\tthis.debug.logger = (type, debugName, eventName, eventData) => {\n\t\t\t\ttry {\n\t\t\t\t\t// TODO: Use https://github.com/sindresorhus/safe-stringify when the package is more mature. Just copy-paste the code.\n\t\t\t\t\teventData = JSON.stringify(eventData);\n\t\t\t\t} catch {\n\t\t\t\t\teventData = `Object with the following keys failed to stringify: ${Object.keys(eventData).join(',')}`;\n\t\t\t\t}\n\n\t\t\t\tif (typeof eventName === 'symbol' || typeof eventName === 'number') {\n\t\t\t\t\teventName = eventName.toString();\n\t\t\t\t}\n\n\t\t\t\tconst currentTime = new Date();\n\t\t\t\tconst logTime = `${currentTime.getHours()}:${currentTime.getMinutes()}:${currentTime.getSeconds()}.${currentTime.getMilliseconds()}`;\n\t\t\t\tconsole.log(`[${logTime}][emittery:${type}][${debugName}] Event Name: ${eventName}\\n\\tdata: ${eventData}`);\n\t\t\t};\n\t\t}\n\t}\n\n\tlogIfDebugEnabled(type, eventName, eventData) {\n\t\tif (Emittery.isDebugEnabled || this.debug.enabled) {\n\t\t\tthis.debug.logger(type, this.debug.name, eventName, eventData);\n\t\t}\n\t}\n\n\ton(eventNames, listener) {\n\t\tassertListener(listener);\n\n\t\teventNames = Array.isArray(eventNames) ? eventNames : [eventNames];\n\t\tfor (const eventName of eventNames) {\n\t\t\tassertEventName(eventName);\n\t\t\tlet set = getListeners(this, eventName);\n\t\t\tif (!set) {\n\t\t\t\tset = new Set();\n\t\t\t\tconst events = eventsMap.get(this);\n\t\t\t\tevents.set(eventName, set);\n\t\t\t}\n\n\t\t\tset.add(listener);\n\n\t\t\tthis.logIfDebugEnabled('subscribe', eventName, undefined);\n\n\t\t\tif (!isMetaEvent(eventName)) {\n\t\t\t\temitMetaEvent(this, listenerAdded, {eventName, listener});\n\t\t\t}\n\t\t}\n\n\t\treturn this.off.bind(this, eventNames, listener);\n\t}\n\n\toff(eventNames, listener) {\n\t\tassertListener(listener);\n\n\t\teventNames = Array.isArray(eventNames) ? eventNames : [eventNames];\n\t\tfor (const eventName of eventNames) {\n\t\t\tassertEventName(eventName);\n\t\t\tconst set = getListeners(this, eventName);\n\t\t\tif (set) {\n\t\t\t\tset.delete(listener);\n\t\t\t\tif (set.size === 0) {\n\t\t\t\t\tconst events = eventsMap.get(this);\n\t\t\t\t\tevents.delete(eventName);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tthis.logIfDebugEnabled('unsubscribe', eventName, undefined);\n\n\t\t\tif (!isMetaEvent(eventName)) {\n\t\t\t\temitMetaEvent(this, listenerRemoved, {eventName, listener});\n\t\t\t}\n\t\t}\n\t}\n\n\tonce(eventNames) {\n\t\tlet off_;\n\n\t\tconst promise = new Promise(resolve => {\n\t\t\toff_ = this.on(eventNames, data => {\n\t\t\t\toff_();\n\t\t\t\tresolve(data);\n\t\t\t});\n\t\t});\n\n\t\tpromise.off = off_;\n\t\treturn promise;\n\t}\n\n\tevents(eventNames) {\n\t\teventNames = Array.isArray(eventNames) ? eventNames : [eventNames];\n\t\tfor (const eventName of eventNames) {\n\t\t\tassertEventName(eventName);\n\t\t}\n\n\t\treturn iterator(this, eventNames);\n\t}\n\n\tasync emit(eventName, eventData) {\n\t\tassertEventName(eventName);\n\n\t\tif (isMetaEvent(eventName) && !canEmitMetaEvents) {\n\t\t\tthrow new TypeError('`eventName` cannot be meta event `listenerAdded` or `listenerRemoved`');\n\t\t}\n\n\t\tthis.logIfDebugEnabled('emit', eventName, eventData);\n\n\t\tenqueueProducers(this, eventName, eventData);\n\n\t\tconst listeners = getListeners(this, eventName) ?? new Set();\n\t\tconst anyListeners = anyMap.get(this);\n\t\tconst staticListeners = [...listeners];\n\t\tconst staticAnyListeners = isMetaEvent(eventName) ? [] : [...anyListeners];\n\n\t\tawait resolvedPromise;\n\t\tawait Promise.all([\n\t\t\t...staticListeners.map(async listener => {\n\t\t\t\tif (listeners.has(listener)) {\n\t\t\t\t\treturn listener(eventData);\n\t\t\t\t}\n\t\t\t}),\n\t\t\t...staticAnyListeners.map(async listener => {\n\t\t\t\tif (anyListeners.has(listener)) {\n\t\t\t\t\treturn listener(eventName, eventData);\n\t\t\t\t}\n\t\t\t}),\n\t\t]);\n\t}\n\n\tasync emitSerial(eventName, eventData) {\n\t\tassertEventName(eventName);\n\n\t\tif (isMetaEvent(eventName) && !canEmitMetaEvents) {\n\t\t\tthrow new TypeError('`eventName` cannot be meta event `listenerAdded` or `listenerRemoved`');\n\t\t}\n\n\t\tthis.logIfDebugEnabled('emitSerial', eventName, eventData);\n\n\t\tconst listeners = getListeners(this, eventName) ?? new Set();\n\t\tconst anyListeners = anyMap.get(this);\n\t\tconst staticListeners = [...listeners];\n\t\tconst staticAnyListeners = [...anyListeners];\n\n\t\tawait resolvedPromise;\n\t\t/* eslint-disable no-await-in-loop */\n\t\tfor (const listener of staticListeners) {\n\t\t\tif (listeners.has(listener)) {\n\t\t\t\tawait listener(eventData);\n\t\t\t}\n\t\t}\n\n\t\tfor (const listener of staticAnyListeners) {\n\t\t\tif (anyListeners.has(listener)) {\n\t\t\t\tawait listener(eventName, eventData);\n\t\t\t}\n\t\t}\n\t\t/* eslint-enable no-await-in-loop */\n\t}\n\n\tonAny(listener) {\n\t\tassertListener(listener);\n\n\t\tthis.logIfDebugEnabled('subscribeAny', undefined, undefined);\n\n\t\tanyMap.get(this).add(listener);\n\t\temitMetaEvent(this, listenerAdded, {listener});\n\t\treturn this.offAny.bind(this, listener);\n\t}\n\n\tanyEvent() {\n\t\treturn iterator(this);\n\t}\n\n\toffAny(listener) {\n\t\tassertListener(listener);\n\n\t\tthis.logIfDebugEnabled('unsubscribeAny', undefined, undefined);\n\n\t\temitMetaEvent(this, listenerRemoved, {listener});\n\t\tanyMap.get(this).delete(listener);\n\t}\n\n\tclearListeners(eventNames) {\n\t\teventNames = Array.isArray(eventNames) ? eventNames : [eventNames];\n\n\t\tfor (const eventName of eventNames) {\n\t\t\tthis.logIfDebugEnabled('clear', eventName, undefined);\n\n\t\t\tif (typeof eventName === 'string' || typeof eventName === 'symbol' || typeof eventName === 'number') {\n\t\t\t\tconst set = getListeners(this, eventName);\n\t\t\t\tif (set) {\n\t\t\t\t\tset.clear();\n\t\t\t\t}\n\n\t\t\t\tconst producers = getEventProducers(this, eventName);\n\t\t\t\tif (producers) {\n\t\t\t\t\tfor (const producer of producers) {\n\t\t\t\t\t\tproducer.finish();\n\t\t\t\t\t}\n\n\t\t\t\t\tproducers.clear();\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tanyMap.get(this).clear();\n\n\t\t\t\tfor (const [eventName, listeners] of eventsMap.get(this).entries()) {\n\t\t\t\t\tlisteners.clear();\n\t\t\t\t\teventsMap.get(this).delete(eventName);\n\t\t\t\t}\n\n\t\t\t\tfor (const [eventName, producers] of producersMap.get(this).entries()) {\n\t\t\t\t\tfor (const producer of producers) {\n\t\t\t\t\t\tproducer.finish();\n\t\t\t\t\t}\n\n\t\t\t\t\tproducers.clear();\n\t\t\t\t\tproducersMap.get(this).delete(eventName);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tlistenerCount(eventNames) {\n\t\teventNames = Array.isArray(eventNames) ? eventNames : [eventNames];\n\t\tlet count = 0;\n\n\t\tfor (const eventName of eventNames) {\n\t\t\tif (typeof eventName === 'string') {\n\t\t\t\tcount += anyMap.get(this).size\n\t\t\t\t\t+ (getListeners(this, eventName)?.size ?? 0)\n\t\t\t\t\t+ (getEventProducers(this, eventName)?.size ?? 0)\n\t\t\t\t\t+ (getEventProducers(this)?.size ?? 0);\n\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tif (typeof eventName !== 'undefined') {\n\t\t\t\tassertEventName(eventName);\n\t\t\t}\n\n\t\t\tcount += anyMap.get(this).size;\n\n\t\t\tfor (const value of eventsMap.get(this).values()) {\n\t\t\t\tcount += value.size;\n\t\t\t}\n\n\t\t\tfor (const value of producersMap.get(this).values()) {\n\t\t\t\tcount += value.size;\n\t\t\t}\n\t\t}\n\n\t\treturn count;\n\t}\n\n\tbindMethods(target, methodNames) {\n\t\tif (typeof target !== 'object' || target === null) {\n\t\t\tthrow new TypeError('`target` must be an object');\n\t\t}\n\n\t\tmethodNames = defaultMethodNamesOrAssert(methodNames);\n\n\t\tfor (const methodName of methodNames) {\n\t\t\tif (target[methodName] !== undefined) {\n\t\t\t\tthrow new Error(`The property \\`${methodName}\\` already exists on \\`target\\``);\n\t\t\t}\n\n\t\t\tObject.defineProperty(target, methodName, {\n\t\t\t\tenumerable: false,\n\t\t\t\tvalue: this[methodName].bind(this),\n\t\t\t});\n\t\t}\n\t}\n}\n\nconst allEmitteryMethods = Object.getOwnPropertyNames(Emittery.prototype).filter(v => v !== 'constructor');\n\nObject.defineProperty(Emittery, 'listenerAdded', {\n\tvalue: listenerAdded,\n\twritable: false,\n\tenumerable: true,\n\tconfigurable: false,\n});\nObject.defineProperty(Emittery, 'listenerRemoved', {\n\tvalue: listenerRemoved,\n\twritable: false,\n\tenumerable: true,\n\tconfigurable: false,\n});\n","export function Memoize(args) {\n let hashFunction;\n let duration;\n let tags;\n if (typeof args === 'object') {\n hashFunction = args.hashFunction;\n duration = args.expiring;\n tags = args.tags;\n }\n else {\n hashFunction = args;\n }\n return (target, propertyKey, descriptor) => {\n if (descriptor.value != null) {\n descriptor.value = getNewFunction(descriptor.value, hashFunction, duration, tags);\n }\n else if (descriptor.get != null) {\n descriptor.get = getNewFunction(descriptor.get, hashFunction, duration, tags);\n }\n else {\n throw 'Only put a Memoize() decorator on a method or get accessor.';\n }\n };\n}\nexport function MemoizeExpiring(expiring, hashFunction) {\n return Memoize({\n expiring,\n hashFunction\n });\n}\nconst clearCacheTagsMap = new Map();\nexport function clear(tags) {\n const cleared = new Set();\n for (const tag of tags) {\n const maps = clearCacheTagsMap.get(tag);\n if (maps) {\n for (const mp of maps) {\n if (!cleared.has(mp)) {\n mp.clear();\n cleared.add(mp);\n }\n }\n }\n }\n return cleared.size;\n}\nfunction getNewFunction(originalMethod, hashFunction, duration = 0, tags) {\n const propMapName = Symbol(`__memoized_map__`);\n return function (...args) {\n let returnedValue;\n if (!this.hasOwnProperty(propMapName)) {\n Object.defineProperty(this, propMapName, {\n configurable: false,\n enumerable: false,\n writable: false,\n value: new Map()\n });\n }\n let myMap = this[propMapName];\n if (Array.isArray(tags)) {\n for (const tag of tags) {\n if (clearCacheTagsMap.has(tag)) {\n clearCacheTagsMap.get(tag).push(myMap);\n }\n else {\n clearCacheTagsMap.set(tag, [myMap]);\n }\n }\n }\n if (hashFunction || args.length > 0 || duration > 0) {\n let hashKey;\n if (hashFunction === true) {\n hashKey = args.map(a => a.toString()).join('!');\n }\n else if (hashFunction) {\n hashKey = hashFunction.apply(this, args);\n }\n else {\n hashKey = args[0];\n }\n const timestampKey = `${hashKey}__timestamp`;\n let isExpired = false;\n if (duration > 0) {\n if (!myMap.has(timestampKey)) {\n isExpired = true;\n }\n else {\n let timestamp = myMap.get(timestampKey);\n isExpired = (Date.now() - timestamp) > duration;\n }\n }\n if (myMap.has(hashKey) && !isExpired) {\n returnedValue = myMap.get(hashKey);\n }\n else {\n returnedValue = originalMethod.apply(this, args);\n myMap.set(hashKey, returnedValue);\n if (duration > 0) {\n myMap.set(timestampKey, Date.now());\n }\n }\n }\n else {\n const hashKey = this;\n if (myMap.has(hashKey)) {\n returnedValue = myMap.get(hashKey);\n }\n else {\n returnedValue = originalMethod.apply(this, args);\n myMap.set(hashKey, returnedValue);\n }\n }\n return returnedValue;\n };\n}\n//# sourceMappingURL=memoize-decorator.js.map","/**\n *\n * This file is autogenerated.\n *\n * DO NOT EDIT DIRECTLY\n *\n **/\n\nimport type { Bridge } from '../../bridge';\n\nimport type {\n ApiResponsePayload,\n BaseApiRequestMessage,\n BaseApiResponseMessage,\n BaseUrlParams,\n QueryParam,\n} from '../../types';\n\nexport type ActorsRequestApi = 'actors';\n\nexport type CommonApiResponseMessage =\n BaseApiResponseMessage<ApiResponsePayload>;\n\nexport interface CommonApiRequestMessage\n extends BaseApiRequestMessage<BaseUrlParams, unknown> {\n api: ActorsRequestApi;\n}\n\n// types for getEntitiesActorsGetV2\n\nexport interface GetEntitiesActorsGetV2QueryParams extends BaseUrlParams {\n ids?: QueryParam;\n}\n\nexport type GetEntitiesActorsGetV2ApiResponse = ApiResponsePayload;\n\nexport type GetEntitiesActorsGetV2ResponseMessage =\n BaseApiResponseMessage<GetEntitiesActorsGetV2ApiResponse>;\n\nexport interface GetEntitiesActorsGetV2RequestMessage\n extends BaseApiRequestMessage<GetEntitiesActorsGetV2QueryParams> {\n api: ActorsRequestApi;\n method: 'getEntitiesActorsGetV2';\n}\n\n// types for getQueriesActorsV2\n\nexport interface GetQueriesActorsV2QueryParams extends BaseUrlParams {\n filter?: string;\n limit?: QueryParam;\n offset?: QueryParam;\n q?: QueryParam;\n sort?: QueryParam;\n}\n\nexport type GetQueriesActorsV2ApiResponse = ApiResponsePayload;\n\nexport type GetQueriesActorsV2ResponseMessage =\n BaseApiResponseMessage<GetQueriesActorsV2ApiResponse>;\n\nexport interface GetQueriesActorsV2RequestMessage\n extends BaseApiRequestMessage<GetQueriesActorsV2QueryParams> {\n api: ActorsRequestApi;\n method: 'getQueriesActorsV2';\n}\n\n// types for postAggregatesActorsGetV2\n\nexport type PostAggregatesActorsGetV2QueryParams = BaseUrlParams;\n\nexport type PostAggregatesActorsGetV2ApiResponse = ApiResponsePayload;\n\nexport interface PostAggregatesActorsGetV2PostData {}\n\nexport type PostAggregatesActorsGetV2ResponseMessage =\n BaseApiResponseMessage<PostAggregatesActorsGetV2ApiResponse>;\n\nexport interface PostAggregatesActorsGetV2RequestMessage\n extends BaseApiRequestMessage<\n PostAggregatesActorsGetV2QueryParams,\n PostAggregatesActorsGetV2PostData\n > {\n api: ActorsRequestApi;\n method: 'postAggregatesActorsGetV2';\n}\n\n// types for postEntitiesActorsGetV2\n\nexport interface PostEntitiesActorsGetV2QueryParams extends BaseUrlParams {\n ids?: QueryParam;\n}\n\nexport type PostEntitiesActorsGetV2ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesActorsGetV2PostData {}\n\nexport type PostEntitiesActorsGetV2ResponseMessage =\n BaseApiResponseMessage<PostEntitiesActorsGetV2ApiResponse>;\n\nexport interface PostEntitiesActorsGetV2RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesActorsGetV2QueryParams,\n PostEntitiesActorsGetV2PostData\n > {\n api: ActorsRequestApi;\n method: 'postEntitiesActorsGetV2';\n}\n\n// types for postEntitiesMitreV1\n\nexport type PostEntitiesMitreV1QueryParams = BaseUrlParams;\n\nexport type PostEntitiesMitreV1ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesMitreV1PostData {}\n\nexport type PostEntitiesMitreV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesMitreV1ApiResponse>;\n\nexport interface PostEntitiesMitreV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesMitreV1QueryParams,\n PostEntitiesMitreV1PostData\n > {\n api: ActorsRequestApi;\n method: 'postEntitiesMitreV1';\n}\n\n// general types\n\nexport type ActorsApiRequestMessage =\n | GetEntitiesActorsGetV2RequestMessage\n | GetQueriesActorsV2RequestMessage\n | PostAggregatesActorsGetV2RequestMessage\n | PostEntitiesActorsGetV2RequestMessage\n | PostEntitiesMitreV1RequestMessage;\n\nexport type ActorsApiResponseMessage =\n | GetEntitiesActorsGetV2ResponseMessage\n | GetQueriesActorsV2ResponseMessage\n | PostAggregatesActorsGetV2ResponseMessage\n | PostEntitiesActorsGetV2ResponseMessage\n | PostEntitiesMitreV1ResponseMessage;\n\nexport class ActorsApiBridge {\n private bridge;\n\n constructor(bridge: Bridge) {\n this.bridge = bridge;\n }\n\n getBridge() {\n return this.bridge;\n }\n\n async getEntitiesActorsGetV2(\n urlParams: GetEntitiesActorsGetV2QueryParams = {},\n ): Promise<GetEntitiesActorsGetV2ApiResponse> {\n const message: GetEntitiesActorsGetV2RequestMessage = {\n type: 'api',\n api: 'actors',\n method: 'getEntitiesActorsGetV2',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getQueriesActorsV2(\n urlParams: GetQueriesActorsV2QueryParams = {},\n ): Promise<GetQueriesActorsV2ApiResponse> {\n const message: GetQueriesActorsV2RequestMessage = {\n type: 'api',\n api: 'actors',\n method: 'getQueriesActorsV2',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postAggregatesActorsGetV2(\n postBody: PostAggregatesActorsGetV2PostData,\n urlParams: PostAggregatesActorsGetV2QueryParams = {},\n ): Promise<PostAggregatesActorsGetV2ApiResponse> {\n const message: PostAggregatesActorsGetV2RequestMessage = {\n type: 'api',\n api: 'actors',\n method: 'postAggregatesActorsGetV2',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesActorsGetV2(\n postBody: PostEntitiesActorsGetV2PostData,\n urlParams: PostEntitiesActorsGetV2QueryParams = {},\n ): Promise<PostEntitiesActorsGetV2ApiResponse> {\n const message: PostEntitiesActorsGetV2RequestMessage = {\n type: 'api',\n api: 'actors',\n method: 'postEntitiesActorsGetV2',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesMitreV1(\n postBody: PostEntitiesMitreV1PostData,\n urlParams: PostEntitiesMitreV1QueryParams = {},\n ): Promise<PostEntitiesMitreV1ApiResponse> {\n const message: PostEntitiesMitreV1RequestMessage = {\n type: 'api',\n api: 'actors',\n method: 'postEntitiesMitreV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n}\n","/**\n *\n * This file is autogenerated.\n *\n * DO NOT EDIT DIRECTLY\n *\n **/\n\nimport type { Bridge } from '../../bridge';\n\nimport type {\n ApiResponsePayload,\n BaseApiRequestMessage,\n BaseApiResponseMessage,\n BaseUrlParams,\n QueryParam,\n} from '../../types';\n\nexport type AlertsRequestApi = 'alerts';\n\nexport type CommonApiResponseMessage =\n BaseApiResponseMessage<ApiResponsePayload>;\n\nexport interface CommonApiRequestMessage\n extends BaseApiRequestMessage<BaseUrlParams, unknown> {\n api: AlertsRequestApi;\n}\n\n// types for deleteEntitiesSuppressedDevicesV1\n\nexport interface DeleteEntitiesSuppressedDevicesV1QueryParams\n extends BaseUrlParams {\n ids?: QueryParam;\n}\n\nexport type DeleteEntitiesSuppressedDevicesV1ApiResponse = ApiResponsePayload;\n\nexport type DeleteEntitiesSuppressedDevicesV1ResponseMessage =\n BaseApiResponseMessage<DeleteEntitiesSuppressedDevicesV1ApiResponse>;\n\nexport interface DeleteEntitiesSuppressedDevicesV1RequestMessage\n extends BaseApiRequestMessage<DeleteEntitiesSuppressedDevicesV1QueryParams> {\n api: AlertsRequestApi;\n method: 'deleteEntitiesSuppressedDevicesV1';\n}\n\n// types for getQueriesAlertsV1\n\nexport interface GetQueriesAlertsV1QueryParams extends BaseUrlParams {\n filter?: string;\n limit?: QueryParam;\n offset?: QueryParam;\n q?: QueryParam;\n sort?: QueryParam;\n}\n\nexport type GetQueriesAlertsV1ApiResponse = ApiResponsePayload;\n\nexport type GetQueriesAlertsV1ResponseMessage =\n BaseApiResponseMessage<GetQueriesAlertsV1ApiResponse>;\n\nexport interface GetQueriesAlertsV1RequestMessage\n extends BaseApiRequestMessage<GetQueriesAlertsV1QueryParams> {\n api: AlertsRequestApi;\n method: 'getQueriesAlertsV1';\n}\n\n// types for patchCombinedAlertsV2\n\nexport type PatchCombinedAlertsV2QueryParams = BaseUrlParams;\n\nexport type PatchCombinedAlertsV2ApiResponse = ApiResponsePayload;\n\nexport interface PatchCombinedAlertsV2PostData {}\n\nexport type PatchCombinedAlertsV2ResponseMessage =\n BaseApiResponseMessage<PatchCombinedAlertsV2ApiResponse>;\n\nexport interface PatchCombinedAlertsV2RequestMessage\n extends BaseApiRequestMessage<\n PatchCombinedAlertsV2QueryParams,\n PatchCombinedAlertsV2PostData\n > {\n api: AlertsRequestApi;\n method: 'patchCombinedAlertsV2';\n}\n\n// types for patchEntitiesAlertsV2\n\nexport type PatchEntitiesAlertsV2QueryParams = BaseUrlParams;\n\nexport type PatchEntitiesAlertsV2ApiResponse = ApiResponsePayload;\n\nexport interface PatchEntitiesAlertsV2PostData {}\n\nexport type PatchEntitiesAlertsV2ResponseMessage =\n BaseApiResponseMessage<PatchEntitiesAlertsV2ApiResponse>;\n\nexport interface PatchEntitiesAlertsV2RequestMessage\n extends BaseApiRequestMessage<\n PatchEntitiesAlertsV2QueryParams,\n PatchEntitiesAlertsV2PostData\n > {\n api: AlertsRequestApi;\n method: 'patchEntitiesAlertsV2';\n}\n\n// types for patchEntitiesSuppressedDevicesV1\n\nexport interface PatchEntitiesSuppressedDevicesV1QueryParams\n extends BaseUrlParams {\n ids?: QueryParam;\n}\n\nexport type PatchEntitiesSuppressedDevicesV1ApiResponse = ApiResponsePayload;\n\nexport interface PatchEntitiesSuppressedDevicesV1PostData {}\n\nexport type PatchEntitiesSuppressedDevicesV1ResponseMessage =\n BaseApiResponseMessage<PatchEntitiesSuppressedDevicesV1ApiResponse>;\n\nexport interface PatchEntitiesSuppressedDevicesV1RequestMessage\n extends BaseApiRequestMessage<\n PatchEntitiesSuppressedDevicesV1QueryParams,\n PatchEntitiesSuppressedDevicesV1PostData\n > {\n api: AlertsRequestApi;\n method: 'patchEntitiesSuppressedDevicesV1';\n}\n\n// types for postAggregatesAlertsV1\n\nexport interface PostAggregatesAlertsV1QueryParams extends BaseUrlParams {\n dateRanges?: QueryParam;\n field?: QueryParam;\n filter?: string;\n from?: QueryParam;\n include?: QueryParam;\n interval?: QueryParam;\n minDocCount?: QueryParam;\n missing?: QueryParam;\n name?: QueryParam;\n q?: QueryParam;\n ranges?: QueryParam;\n size?: QueryParam;\n sort?: QueryParam;\n subAggregates?: QueryParam;\n timeZone?: QueryParam;\n type?: QueryParam;\n}\n\nexport type PostAggregatesAlertsV1ApiResponse = ApiResponsePayload;\n\nexport interface PostAggregatesAlertsV1PostData {}\n\nexport type PostAggregatesAlertsV1ResponseMessage =\n BaseApiResponseMessage<PostAggregatesAlertsV1ApiResponse>;\n\nexport interface PostAggregatesAlertsV1RequestMessage\n extends BaseApiRequestMessage<\n PostAggregatesAlertsV1QueryParams,\n PostAggregatesAlertsV1PostData\n > {\n api: AlertsRequestApi;\n method: 'postAggregatesAlertsV1';\n}\n\n// types for postEntitiesAlertsV1\n\nexport interface PostEntitiesAlertsV1QueryParams extends BaseUrlParams {\n ids?: QueryParam;\n}\n\nexport type PostEntitiesAlertsV1ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesAlertsV1PostData {}\n\nexport type PostEntitiesAlertsV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesAlertsV1ApiResponse>;\n\nexport interface PostEntitiesAlertsV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesAlertsV1QueryParams,\n PostEntitiesAlertsV1PostData\n > {\n api: AlertsRequestApi;\n method: 'postEntitiesAlertsV1';\n}\n\n// types for postEntitiesSuppressedDevicesV1\n\nexport type PostEntitiesSuppressedDevicesV1QueryParams = BaseUrlParams;\n\nexport type PostEntitiesSuppressedDevicesV1ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesSuppressedDevicesV1PostData {}\n\nexport type PostEntitiesSuppressedDevicesV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesSuppressedDevicesV1ApiResponse>;\n\nexport interface PostEntitiesSuppressedDevicesV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesSuppressedDevicesV1QueryParams,\n PostEntitiesSuppressedDevicesV1PostData\n > {\n api: AlertsRequestApi;\n method: 'postEntitiesSuppressedDevicesV1';\n}\n\n// general types\n\nexport type AlertsApiRequestMessage =\n | DeleteEntitiesSuppressedDevicesV1RequestMessage\n | GetQueriesAlertsV1RequestMessage\n | PatchCombinedAlertsV2RequestMessage\n | PatchEntitiesAlertsV2RequestMessage\n | PatchEntitiesSuppressedDevicesV1RequestMessage\n | PostAggregatesAlertsV1RequestMessage\n | PostEntitiesAlertsV1RequestMessage\n | PostEntitiesSuppressedDevicesV1RequestMessage;\n\nexport type AlertsApiResponseMessage =\n | DeleteEntitiesSuppressedDevicesV1ResponseMessage\n | GetQueriesAlertsV1ResponseMessage\n | PatchCombinedAlertsV2ResponseMessage\n | PatchEntitiesAlertsV2ResponseMessage\n | PatchEntitiesSuppressedDevicesV1ResponseMessage\n | PostAggregatesAlertsV1ResponseMessage\n | PostEntitiesAlertsV1ResponseMessage\n | PostEntitiesSuppressedDevicesV1ResponseMessage;\n\nexport class AlertsApiBridge {\n private bridge;\n\n constructor(bridge: Bridge) {\n this.bridge = bridge;\n }\n\n getBridge() {\n return this.bridge;\n }\n\n async deleteEntitiesSuppressedDevicesV1(\n urlParams: DeleteEntitiesSuppressedDevicesV1QueryParams = {},\n ): Promise<DeleteEntitiesSuppressedDevicesV1ApiResponse> {\n const message: DeleteEntitiesSuppressedDevicesV1RequestMessage = {\n type: 'api',\n api: 'alerts',\n method: 'deleteEntitiesSuppressedDevicesV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getQueriesAlertsV1(\n urlParams: GetQueriesAlertsV1QueryParams = {},\n ): Promise<GetQueriesAlertsV1ApiResponse> {\n const message: GetQueriesAlertsV1RequestMessage = {\n type: 'api',\n api: 'alerts',\n method: 'getQueriesAlertsV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async patchCombinedAlertsV2(\n postBody: PatchCombinedAlertsV2PostData,\n urlParams: PatchCombinedAlertsV2QueryParams = {},\n ): Promise<PatchCombinedAlertsV2ApiResponse> {\n const message: PatchCombinedAlertsV2RequestMessage = {\n type: 'api',\n api: 'alerts',\n method: 'patchCombinedAlertsV2',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async patchEntitiesAlertsV2(\n postBody: PatchEntitiesAlertsV2PostData,\n urlParams: PatchEntitiesAlertsV2QueryParams = {},\n ): Promise<PatchEntitiesAlertsV2ApiResponse> {\n const message: PatchEntitiesAlertsV2RequestMessage = {\n type: 'api',\n api: 'alerts',\n method: 'patchEntitiesAlertsV2',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async patchEntitiesSuppressedDevicesV1(\n postBody: PatchEntitiesSuppressedDevicesV1PostData,\n urlParams: PatchEntitiesSuppressedDevicesV1QueryParams = {},\n ): Promise<PatchEntitiesSuppressedDevicesV1ApiResponse> {\n const message: PatchEntitiesSuppressedDevicesV1RequestMessage = {\n type: 'api',\n api: 'alerts',\n method: 'patchEntitiesSuppressedDevicesV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postAggregatesAlertsV1(\n postBody: PostAggregatesAlertsV1PostData,\n urlParams: PostAggregatesAlertsV1QueryParams = {},\n ): Promise<PostAggregatesAlertsV1ApiResponse> {\n const message: PostAggregatesAlertsV1RequestMessage = {\n type: 'api',\n api: 'alerts',\n method: 'postAggregatesAlertsV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesAlertsV1(\n postBody: PostEntitiesAlertsV1PostData,\n urlParams: PostEntitiesAlertsV1QueryParams = {},\n ): Promise<PostEntitiesAlertsV1ApiResponse> {\n const message: PostEntitiesAlertsV1RequestMessage = {\n type: 'api',\n api: 'alerts',\n method: 'postEntitiesAlertsV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesSuppressedDevicesV1(\n postBody: PostEntitiesSuppressedDevicesV1PostData,\n urlParams: PostEntitiesSuppressedDevicesV1QueryParams = {},\n ): Promise<PostEntitiesSuppressedDevicesV1ApiResponse> {\n const message: PostEntitiesSuppressedDevicesV1RequestMessage = {\n type: 'api',\n api: 'alerts',\n method: 'postEntitiesSuppressedDevicesV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n}\n","/**\n *\n * This file is autogenerated.\n *\n * DO NOT EDIT DIRECTLY\n *\n **/\n\nimport type { Bridge } from '../../bridge';\n\nimport type {\n ApiResponsePayload,\n BaseApiRequestMessage,\n BaseApiResponseMessage,\n BaseUrlParams,\n QueryParam,\n} from '../../types';\n\nexport type CustomobjectsRequestApi = 'customobjects';\n\nexport type CommonApiResponseMessage =\n BaseApiResponseMessage<ApiResponsePayload>;\n\nexport interface CommonApiRequestMessage\n extends BaseApiRequestMessage<BaseUrlParams, unknown> {\n api: CustomobjectsRequestApi;\n}\n\n// types for deleteV1CollectionsCollectionNameObjectsObjectKey\n\nexport type DeleteV1CollectionsCollectionNameObjectsObjectKeyQueryParams =\n BaseUrlParams;\n\nexport type DeleteV1CollectionsCollectionNameObjectsObjectKeyApiResponse =\n ApiResponsePayload;\n\nexport type DeleteV1CollectionsCollectionNameObjectsObjectKeyResponseMessage =\n BaseApiResponseMessage<DeleteV1CollectionsCollectionNameObjectsObjectKeyApiResponse>;\n\nexport interface DeleteV1CollectionsCollectionNameObjectsObjectKeyRequestMessage\n extends BaseApiRequestMessage<DeleteV1CollectionsCollectionNameObjectsObjectKeyQueryParams> {\n api: CustomobjectsRequestApi;\n method: 'deleteV1CollectionsCollectionNameObjectsObjectKey';\n}\n\n// types for getV1Collections\n\nexport interface GetV1CollectionsQueryParams extends BaseUrlParams {\n startKey?: QueryParam;\n endKey?: QueryParam;\n limit?: QueryParam;\n}\n\nexport type GetV1CollectionsApiResponse = ApiResponsePayload;\n\nexport type GetV1CollectionsResponseMessage =\n BaseApiResponseMessage<GetV1CollectionsApiResponse>;\n\nexport interface GetV1CollectionsRequestMessage\n extends BaseApiRequestMessage<GetV1CollectionsQueryParams> {\n api: CustomobjectsRequestApi;\n method: 'getV1Collections';\n}\n\n// types for getV1CollectionsCollectionNameObjects\n\nexport interface GetV1CollectionsCollectionNameObjectsQueryParams\n extends BaseUrlParams {\n startKey?: QueryParam;\n endKey?: QueryParam;\n limit?: QueryParam;\n}\n\nexport type GetV1CollectionsCollectionNameObjectsApiResponse =\n ApiResponsePayload;\n\nexport type GetV1CollectionsCollectionNameObjectsResponseMessage =\n BaseApiResponseMessage<GetV1CollectionsCollectionNameObjectsApiResponse>;\n\nexport interface GetV1CollectionsCollectionNameObjectsRequestMessage\n extends BaseApiRequestMessage<GetV1CollectionsCollectionNameObjectsQueryParams> {\n api: CustomobjectsRequestApi;\n method: 'getV1CollectionsCollectionNameObjects';\n}\n\n// types for getV1CollectionsCollectionNameObjectsObjectKey\n\nexport type GetV1CollectionsCollectionNameObjectsObjectKeyQueryParams =\n BaseUrlParams;\n\nexport type GetV1CollectionsCollectionNameObjectsObjectKeyApiResponse =\n ApiResponsePayload;\n\nexport type GetV1CollectionsCollectionNameObjectsObjectKeyResponseMessage =\n BaseApiResponseMessage<GetV1CollectionsCollectionNameObjectsObjectKeyApiResponse>;\n\nexport interface GetV1CollectionsCollectionNameObjectsObjectKeyRequestMessage\n extends BaseApiRequestMessage<GetV1CollectionsCollectionNameObjectsObjectKeyQueryParams> {\n api: CustomobjectsRequestApi;\n method: 'getV1CollectionsCollectionNameObjectsObjectKey';\n}\n\n// types for getV1CollectionsCollectionNameObjectsObjectKeyMetadata\n\nexport type GetV1CollectionsCollectionNameObjectsObjectKeyMetadataQueryParams =\n BaseUrlParams;\n\nexport type GetV1CollectionsCollectionNameObjectsObjectKeyMetadataApiResponse =\n ApiResponsePayload;\n\nexport type GetV1CollectionsCollectionNameObjectsObjectKeyMetadataResponseMessage =\n BaseApiResponseMessage<GetV1CollectionsCollectionNameObjectsObjectKeyMetadataApiResponse>;\n\nexport interface GetV1CollectionsCollectionNameObjectsObjectKeyMetadataRequestMessage\n extends BaseApiRequestMessage<GetV1CollectionsCollectionNameObjectsObjectKeyMetadataQueryParams> {\n api: CustomobjectsRequestApi;\n method: 'getV1CollectionsCollectionNameObjectsObjectKeyMetadata';\n}\n\n// types for postV1CollectionsCollectionNameObjects\n\nexport type PostV1CollectionsCollectionNameObjectsQueryParams = BaseUrlParams;\n\nexport type PostV1CollectionsCollectionNameObjectsApiResponse =\n ApiResponsePayload;\n\nexport interface PostV1CollectionsCollectionNameObjectsPostData {}\n\nexport type PostV1CollectionsCollectionNameObjectsResponseMessage =\n BaseApiResponseMessage<PostV1CollectionsCollectionNameObjectsApiResponse>;\n\nexport interface PostV1CollectionsCollectionNameObjectsRequestMessage\n extends BaseApiRequestMessage<\n PostV1CollectionsCollectionNameObjectsQueryParams,\n PostV1CollectionsCollectionNameObjectsPostData\n > {\n api: CustomobjectsRequestApi;\n method: 'postV1CollectionsCollectionNameObjects';\n}\n\n// types for putV1CollectionsCollectionNameObjectsObjectKey\n\nexport type PutV1CollectionsCollectionNameObjectsObjectKeyQueryParams =\n BaseUrlParams;\n\nexport type PutV1CollectionsCollectionNameObjectsObjectKeyApiResponse =\n ApiResponsePayload;\n\nexport interface PutV1CollectionsCollectionNameObjectsObjectKeyPostData {}\n\nexport type PutV1CollectionsCollectionNameObjectsObjectKeyResponseMessage =\n BaseApiResponseMessage<PutV1CollectionsCollectionNameObjectsObjectKeyApiResponse>;\n\nexport interface PutV1CollectionsCollectionNameObjectsObjectKeyRequestMessage\n extends BaseApiRequestMessage<\n PutV1CollectionsCollectionNameObjectsObjectKeyQueryParams,\n PutV1CollectionsCollectionNameObjectsObjectKeyPostData\n > {\n api: CustomobjectsRequestApi;\n method: 'putV1CollectionsCollectionNameObjectsObjectKey';\n}\n\n// general types\n\nexport type CustomobjectsApiRequestMessage =\n | DeleteV1CollectionsCollectionNameObjectsObjectKeyRequestMessage\n | GetV1CollectionsRequestMessage\n | GetV1CollectionsCollectionNameObjectsRequestMessage\n | GetV1CollectionsCollectionNameObjectsObjectKeyRequestMessage\n | GetV1CollectionsCollectionNameObjectsObjectKeyMetadataRequestMessage\n | PostV1CollectionsCollectionNameObjectsRequestMessage\n | PutV1CollectionsCollectionNameObjectsObjectKeyRequestMessage;\n\nexport type CustomobjectsApiResponseMessage =\n | DeleteV1CollectionsCollectionNameObjectsObjectKeyResponseMessage\n | GetV1CollectionsResponseMessage\n | GetV1CollectionsCollectionNameObjectsResponseMessage\n | GetV1CollectionsCollectionNameObjectsObjectKeyResponseMessage\n | GetV1CollectionsCollectionNameObjectsObjectKeyMetadataResponseMessage\n | PostV1CollectionsCollectionNameObjectsResponseMessage\n | PutV1CollectionsCollectionNameObjectsObjectKeyResponseMessage;\n\nexport class CustomobjectsApiBridge {\n private bridge;\n\n constructor(bridge: Bridge) {\n this.bridge = bridge;\n }\n\n getBridge() {\n return this.bridge;\n }\n\n async deleteV1CollectionsCollectionNameObjectsObjectKey(\n urlParams: DeleteV1CollectionsCollectionNameObjectsObjectKeyQueryParams = {},\n ): Promise<DeleteV1CollectionsCollectionNameObjectsObjectKeyApiResponse> {\n const message: DeleteV1CollectionsCollectionNameObjectsObjectKeyRequestMessage =\n {\n type: 'api',\n api: 'customobjects',\n method: 'deleteV1CollectionsCollectionNameObjectsObjectKey',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getV1Collections(\n urlParams: GetV1CollectionsQueryParams = {},\n ): Promise<GetV1CollectionsApiResponse> {\n const message: GetV1CollectionsRequestMessage = {\n type: 'api',\n api: 'customobjects',\n method: 'getV1Collections',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getV1CollectionsCollectionNameObjects(\n urlParams: GetV1CollectionsCollectionNameObjectsQueryParams = {},\n ): Promise<GetV1CollectionsCollectionNameObjectsApiResponse> {\n const message: GetV1CollectionsCollectionNameObjectsRequestMessage = {\n type: 'api',\n api: 'customobjects',\n method: 'getV1CollectionsCollectionNameObjects',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getV1CollectionsCollectionNameObjectsObjectKey(\n urlParams: GetV1CollectionsCollectionNameObjectsObjectKeyQueryParams = {},\n ): Promise<GetV1CollectionsCollectionNameObjectsObjectKeyApiResponse> {\n const message: GetV1CollectionsCollectionNameObjectsObjectKeyRequestMessage =\n {\n type: 'api',\n api: 'customobjects',\n method: 'getV1CollectionsCollectionNameObjectsObjectKey',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getV1CollectionsCollectionNameObjectsObjectKeyMetadata(\n urlParams: GetV1CollectionsCollectionNameObjectsObjectKeyMetadataQueryParams = {},\n ): Promise<GetV1CollectionsCollectionNameObjectsObjectKeyMetadataApiResponse> {\n const message: GetV1CollectionsCollectionNameObjectsObjectKeyMetadataRequestMessage =\n {\n type: 'api',\n api: 'customobjects',\n method: 'getV1CollectionsCollectionNameObjectsObjectKeyMetadata',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postV1CollectionsCollectionNameObjects(\n postBody: PostV1CollectionsCollectionNameObjectsPostData,\n urlParams: PostV1CollectionsCollectionNameObjectsQueryParams = {},\n ): Promise<PostV1CollectionsCollectionNameObjectsApiResponse> {\n const message: PostV1CollectionsCollectionNameObjectsRequestMessage = {\n type: 'api',\n api: 'customobjects',\n method: 'postV1CollectionsCollectionNameObjects',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async putV1CollectionsCollectionNameObjectsObjectKey(\n postBody: PutV1CollectionsCollectionNameObjectsObjectKeyPostData,\n urlParams: PutV1CollectionsCollectionNameObjectsObjectKeyQueryParams = {},\n ): Promise<PutV1CollectionsCollectionNameObjectsObjectKeyApiResponse> {\n const message: PutV1CollectionsCollectionNameObjectsObjectKeyRequestMessage =\n {\n type: 'api',\n api: 'customobjects',\n method: 'putV1CollectionsCollectionNameObjectsObjectKey',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n}\n","/**\n *\n * This file is autogenerated.\n *\n * DO NOT EDIT DIRECTLY\n *\n **/\n\nimport type { Bridge } from '../../bridge';\n\nimport type {\n ApiResponsePayload,\n BaseApiRequestMessage,\n BaseApiResponseMessage,\n BaseUrlParams,\n QueryParam,\n} from '../../types';\n\nexport type DetectsRequestApi = 'detects';\n\nexport type CommonApiResponseMessage =\n BaseApiResponseMessage<ApiResponsePayload>;\n\nexport interface CommonApiRequestMessage\n extends BaseApiRequestMessage<BaseUrlParams, unknown> {\n api: DetectsRequestApi;\n}\n\n// types for getEntitiesSuppressedDevicesV1\n\nexport interface GetEntitiesSuppressedDevicesV1QueryParams\n extends BaseUrlParams {\n ids?: QueryParam;\n}\n\nexport type GetEntitiesSuppressedDevicesV1ApiResponse = ApiResponsePayload;\n\nexport type GetEntitiesSuppressedDevicesV1ResponseMessage =\n BaseApiResponseMessage<GetEntitiesSuppressedDevicesV1ApiResponse>;\n\nexport interface GetEntitiesSuppressedDevicesV1RequestMessage\n extends BaseApiRequestMessage<GetEntitiesSuppressedDevicesV1QueryParams> {\n api: DetectsRequestApi;\n method: 'getEntitiesSuppressedDevicesV1';\n}\n\n// types for patchEntitiesDetectsV2\n\nexport type PatchEntitiesDetectsV2QueryParams = BaseUrlParams;\n\nexport type PatchEntitiesDetectsV2ApiResponse = ApiResponsePayload;\n\nexport interface PatchEntitiesDetectsV2PostData {}\n\nexport type PatchEntitiesDetectsV2ResponseMessage =\n BaseApiResponseMessage<PatchEntitiesDetectsV2ApiResponse>;\n\nexport interface PatchEntitiesDetectsV2RequestMessage\n extends BaseApiRequestMessage<\n PatchEntitiesDetectsV2QueryParams,\n PatchEntitiesDetectsV2PostData\n > {\n api: DetectsRequestApi;\n method: 'patchEntitiesDetectsV2';\n}\n\n// types for patchQueriesDetectsV1\n\nexport type PatchQueriesDetectsV1QueryParams = BaseUrlParams;\n\nexport type PatchQueriesDetectsV1ApiResponse = ApiResponsePayload;\n\nexport interface PatchQueriesDetectsV1PostData {}\n\nexport type PatchQueriesDetectsV1ResponseMessage =\n BaseApiResponseMessage<PatchQueriesDetectsV1ApiResponse>;\n\nexport interface PatchQueriesDetectsV1RequestMessage\n extends BaseApiRequestMessage<\n PatchQueriesDetectsV1QueryParams,\n PatchQueriesDetectsV1PostData\n > {\n api: DetectsRequestApi;\n method: 'patchQueriesDetectsV1';\n}\n\n// types for patchQueriesDetectsV2\n\nexport type PatchQueriesDetectsV2QueryParams = BaseUrlParams;\n\nexport type PatchQueriesDetectsV2ApiResponse = ApiResponsePayload;\n\nexport interface PatchQueriesDetectsV2PostData {}\n\nexport type PatchQueriesDetectsV2ResponseMessage =\n BaseApiResponseMessage<PatchQueriesDetectsV2ApiResponse>;\n\nexport interface PatchQueriesDetectsV2RequestMessage\n extends BaseApiRequestMessage<\n PatchQueriesDetectsV2QueryParams,\n PatchQueriesDetectsV2PostData\n > {\n api: DetectsRequestApi;\n method: 'patchQueriesDetectsV2';\n}\n\n// types for postAggregatesDetectsGetV1\n\nexport type PostAggregatesDetectsGetV1QueryParams = BaseUrlParams;\n\nexport type PostAggregatesDetectsGetV1ApiResponse = ApiResponsePayload;\n\nexport interface PostAggregatesDetectsGetV1PostData {}\n\nexport type PostAggregatesDetectsGetV1ResponseMessage =\n BaseApiResponseMessage<PostAggregatesDetectsGetV1ApiResponse>;\n\nexport interface PostAggregatesDetectsGetV1RequestMessage\n extends BaseApiRequestMessage<\n PostAggregatesDetectsGetV1QueryParams,\n PostAggregatesDetectsGetV1PostData\n > {\n api: DetectsRequestApi;\n method: 'postAggregatesDetectsGetV1';\n}\n\n// types for postEntitiesSummariesGetV1\n\nexport type PostEntitiesSummariesGetV1QueryParams = BaseUrlParams;\n\nexport type PostEntitiesSummariesGetV1ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesSummariesGetV1PostData {}\n\nexport type PostEntitiesSummariesGetV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesSummariesGetV1ApiResponse>;\n\nexport interface PostEntitiesSummariesGetV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesSummariesGetV1QueryParams,\n PostEntitiesSummariesGetV1PostData\n > {\n api: DetectsRequestApi;\n method: 'postEntitiesSummariesGetV1';\n}\n\n// types for postEntitiesSuppressedDevicesV1\n\nexport interface PostEntitiesSuppressedDevicesV1QueryParams\n extends BaseUrlParams {\n ids?: QueryParam;\n}\n\nexport type PostEntitiesSuppressedDevicesV1ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesSuppressedDevicesV1PostData {}\n\nexport type PostEntitiesSuppressedDevicesV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesSuppressedDevicesV1ApiResponse>;\n\nexport interface PostEntitiesSuppressedDevicesV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesSuppressedDevicesV1QueryParams,\n PostEntitiesSuppressedDevicesV1PostData\n > {\n api: DetectsRequestApi;\n method: 'postEntitiesSuppressedDevicesV1';\n}\n\n// general types\n\nexport type DetectsApiRequestMessage =\n | GetEntitiesSuppressedDevicesV1RequestMessage\n | PatchEntitiesDetectsV2RequestMessage\n | PatchQueriesDetectsV1RequestMessage\n | PatchQueriesDetectsV2RequestMessage\n | PostAggregatesDetectsGetV1RequestMessage\n | PostEntitiesSummariesGetV1RequestMessage\n | PostEntitiesSuppressedDevicesV1RequestMessage;\n\nexport type DetectsApiResponseMessage =\n | GetEntitiesSuppressedDevicesV1ResponseMessage\n | PatchEntitiesDetectsV2ResponseMessage\n | PatchQueriesDetectsV1ResponseMessage\n | PatchQueriesDetectsV2ResponseMessage\n | PostAggregatesDetectsGetV1ResponseMessage\n | PostEntitiesSummariesGetV1ResponseMessage\n | PostEntitiesSuppressedDevicesV1ResponseMessage;\n\nexport class DetectsApiBridge {\n private bridge;\n\n constructor(bridge: Bridge) {\n this.bridge = bridge;\n }\n\n getBridge() {\n return this.bridge;\n }\n\n async getEntitiesSuppressedDevicesV1(\n urlParams: GetEntitiesSuppressedDevicesV1QueryParams = {},\n ): Promise<GetEntitiesSuppressedDevicesV1ApiResponse> {\n const message: GetEntitiesSuppressedDevicesV1RequestMessage = {\n type: 'api',\n api: 'detects',\n method: 'getEntitiesSuppressedDevicesV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async patchEntitiesDetectsV2(\n postBody: PatchEntitiesDetectsV2PostData,\n urlParams: PatchEntitiesDetectsV2QueryParams = {},\n ): Promise<PatchEntitiesDetectsV2ApiResponse> {\n const message: PatchEntitiesDetectsV2RequestMessage = {\n type: 'api',\n api: 'detects',\n method: 'patchEntitiesDetectsV2',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async patchQueriesDetectsV1(\n postBody: PatchQueriesDetectsV1PostData,\n urlParams: PatchQueriesDetectsV1QueryParams = {},\n ): Promise<PatchQueriesDetectsV1ApiResponse> {\n const message: PatchQueriesDetectsV1RequestMessage = {\n type: 'api',\n api: 'detects',\n method: 'patchQueriesDetectsV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async patchQueriesDetectsV2(\n postBody: PatchQueriesDetectsV2PostData,\n urlParams: PatchQueriesDetectsV2QueryParams = {},\n ): Promise<PatchQueriesDetectsV2ApiResponse> {\n const message: PatchQueriesDetectsV2RequestMessage = {\n type: 'api',\n api: 'detects',\n method: 'patchQueriesDetectsV2',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postAggregatesDetectsGetV1(\n postBody: PostAggregatesDetectsGetV1PostData,\n urlParams: PostAggregatesDetectsGetV1QueryParams = {},\n ): Promise<PostAggregatesDetectsGetV1ApiResponse> {\n const message: PostAggregatesDetectsGetV1RequestMessage = {\n type: 'api',\n api: 'detects',\n method: 'postAggregatesDetectsGetV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesSummariesGetV1(\n postBody: PostEntitiesSummariesGetV1PostData,\n urlParams: PostEntitiesSummariesGetV1QueryParams = {},\n ): Promise<PostEntitiesSummariesGetV1ApiResponse> {\n const message: PostEntitiesSummariesGetV1RequestMessage = {\n type: 'api',\n api: 'detects',\n method: 'postEntitiesSummariesGetV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesSuppressedDevicesV1(\n postBody: PostEntitiesSuppressedDevicesV1PostData,\n urlParams: PostEntitiesSuppressedDevicesV1QueryParams = {},\n ): Promise<PostEntitiesSuppressedDevicesV1ApiResponse> {\n const message: PostEntitiesSuppressedDevicesV1RequestMessage = {\n type: 'api',\n api: 'detects',\n method: 'postEntitiesSuppressedDevicesV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n}\n","/**\n *\n * This file is autogenerated.\n *\n * DO NOT EDIT DIRECTLY\n *\n **/\n\nimport type { Bridge } from '../../bridge';\n\nimport type {\n ApiResponsePayload,\n BaseApiRequestMessage,\n BaseApiResponseMessage,\n BaseUrlParams,\n QueryParam,\n} from '../../types';\n\nexport type DevicesRequestApi = 'devices';\n\nexport type CommonApiResponseMessage =\n BaseApiResponseMessage<ApiResponsePayload>;\n\nexport interface CommonApiRequestMessage\n extends BaseApiRequestMessage<BaseUrlParams, unknown> {\n api: DevicesRequestApi;\n}\n\n// types for deleteEntitiesGroupsV1\n\nexport interface DeleteEntitiesGroupsV1QueryParams extends BaseUrlParams {\n ids: QueryParam;\n}\n\nexport type DeleteEntitiesGroupsV1ApiResponse = ApiResponsePayload;\n\nexport type DeleteEntitiesGroupsV1ResponseMessage =\n BaseApiResponseMessage<DeleteEntitiesGroupsV1ApiResponse>;\n\nexport interface DeleteEntitiesGroupsV1RequestMessage\n extends BaseApiRequestMessage<DeleteEntitiesGroupsV1QueryParams> {\n api: DevicesRequestApi;\n method: 'deleteEntitiesGroupsV1';\n}\n\n// types for getAggregatesBucketsV1\n\nexport interface GetAggregatesBucketsV1QueryParams extends BaseUrlParams {\n facet: QueryParam;\n filter?: string;\n sort?: QueryParam;\n groupId?: QueryParam;\n policyId?: QueryParam;\n policyType?: QueryParam;\n additionalHostsOnly?: QueryParam;\n}\n\nexport type GetAggregatesBucketsV1ApiResponse = ApiResponsePayload;\n\nexport type GetAggregatesBucketsV1ResponseMessage =\n BaseApiResponseMessage<GetAggregatesBucketsV1ApiResponse>;\n\nexport interface GetAggregatesBucketsV1RequestMessage\n extends BaseApiRequestMessage<GetAggregatesBucketsV1QueryParams> {\n api: DevicesRequestApi;\n method: 'getAggregatesBucketsV1';\n}\n\n// types for getAggregatesTagPrefixCountsV1\n\nexport interface GetAggregatesTagPrefixCountsV1QueryParams\n extends BaseUrlParams {\n prefix: QueryParam;\n limit?: QueryParam;\n}\n\nexport type GetAggregatesTagPrefixCountsV1ApiResponse = ApiResponsePayload;\n\nexport type GetAggregatesTagPrefixCountsV1ResponseMessage =\n BaseApiResponseMessage<GetAggregatesTagPrefixCountsV1ApiResponse>;\n\nexport interface GetAggregatesTagPrefixCountsV1RequestMessage\n extends BaseApiRequestMessage<GetAggregatesTagPrefixCountsV1QueryParams> {\n api: DevicesRequestApi;\n method: 'getAggregatesTagPrefixCountsV1';\n}\n\n// types for getEntitiesGroupsV1\n\nexport interface GetEntitiesGroupsV1QueryParams extends BaseUrlParams {\n ids: QueryParam;\n}\n\nexport type GetEntitiesGroupsV1ApiResponse = ApiResponsePayload;\n\nexport type GetEntitiesGroupsV1ResponseMessage =\n BaseApiResponseMessage<GetEntitiesGroupsV1ApiResponse>;\n\nexport interface GetEntitiesGroupsV1RequestMessage\n extends BaseApiRequestMessage<GetEntitiesGroupsV1QueryParams> {\n api: DevicesRequestApi;\n method: 'getEntitiesGroupsV1';\n}\n\n// types for getEntitiesReleasesV1\n\nexport interface GetEntitiesReleasesV1QueryParams extends BaseUrlParams {\n ids: QueryParam;\n}\n\nexport type GetEntitiesReleasesV1ApiResponse = ApiResponsePayload;\n\nexport type GetEntitiesReleasesV1ResponseMessage =\n BaseApiResponseMessage<GetEntitiesReleasesV1ApiResponse>;\n\nexport interface GetEntitiesReleasesV1RequestMessage\n extends BaseApiRequestMessage<GetEntitiesReleasesV1QueryParams> {\n api: DevicesRequestApi;\n method: 'getEntitiesReleasesV1';\n}\n\n// types for getEntitiesRespondV1\n\nexport type GetEntitiesRespondV1QueryParams = BaseUrlParams;\n\nexport type GetEntitiesRespondV1ApiResponse = ApiResponsePayload;\n\nexport type GetEntitiesRespondV1ResponseMessage =\n BaseApiResponseMessage<GetEntitiesRespondV1ApiResponse>;\n\nexport interface GetEntitiesRespondV1RequestMessage\n extends BaseApiRequestMessage<GetEntitiesRespondV1QueryParams> {\n api: DevicesRequestApi;\n method: 'getEntitiesRespondV1';\n}\n\n// types for getQueriesAvailableGroupsV1\n\nexport interface GetQueriesAvailableGroupsV1QueryParams extends BaseUrlParams {\n policyId?: QueryParam;\n policyType?: QueryParam;\n filter?: string;\n limit?: QueryParam;\n offset?: QueryParam;\n sort?: QueryParam;\n}\n\nexport type GetQueriesAvailableGroupsV1ApiResponse = ApiResponsePayload;\n\nexport type GetQueriesAvailableGroupsV1ResponseMessage =\n BaseApiResponseMessage<GetQueriesAvailableGroupsV1ApiResponse>;\n\nexport interface GetQueriesAvailableGroupsV1RequestMessage\n extends BaseApiRequestMessage<GetQueriesAvailableGroupsV1QueryParams> {\n api: DevicesRequestApi;\n method: 'getQueriesAvailableGroupsV1';\n}\n\n// types for getQueriesDevicesHiddenV2\n\nexport interface GetQueriesDevicesHiddenV2QueryParams extends BaseUrlParams {\n filter?: string;\n limit?: QueryParam;\n offset?: QueryParam;\n sort?: QueryParam;\n groupId?: QueryParam;\n policyId?: QueryParam;\n policyType?: QueryParam;\n additionalHostsOnly?: QueryParam;\n}\n\nexport type GetQueriesDevicesHiddenV2ApiResponse = ApiResponsePayload;\n\nexport type GetQueriesDevicesHiddenV2ResponseMessage =\n BaseApiResponseMessage<GetQueriesDevicesHiddenV2ApiResponse>;\n\nexport interface GetQueriesDevicesHiddenV2RequestMessage\n extends BaseApiRequestMessage<GetQueriesDevicesHiddenV2QueryParams> {\n api: DevicesRequestApi;\n method: 'getQueriesDevicesHiddenV2';\n}\n\n// types for getQueriesDevicesV2\n\nexport interface GetQueriesDevicesV2QueryParams extends BaseUrlParams {\n filter?: string;\n limit?: QueryParam;\n offset?: QueryParam;\n sort?: QueryParam;\n groupId?: QueryParam;\n policyId?: QueryParam;\n policyType?: QueryParam;\n additionalHostsOnly?: QueryParam;\n}\n\nexport type GetQueriesDevicesV2ApiResponse = ApiResponsePayload;\n\nexport type GetQueriesDevicesV2ResponseMessage =\n BaseApiResponseMessage<GetQueriesDevicesV2ApiResponse>;\n\nexport interface GetQueriesDevicesV2RequestMessage\n extends BaseApiRequestMessage<GetQueriesDevicesV2QueryParams> {\n api: DevicesRequestApi;\n method: 'getQueriesDevicesV2';\n}\n\n// types for getQueriesGroupsV1\n\nexport interface GetQueriesGroupsV1QueryParams extends BaseUrlParams {\n filter?: string;\n limit?: QueryParam;\n offset?: QueryParam;\n sort?: QueryParam;\n}\n\nexport type GetQueriesGroupsV1ApiResponse = ApiResponsePayload;\n\nexport type GetQueriesGroupsV1ResponseMessage =\n BaseApiResponseMessage<GetQueriesGroupsV1ApiResponse>;\n\nexport interface GetQueriesGroupsV1RequestMessage\n extends BaseApiRequestMessage<GetQueriesGroupsV1QueryParams> {\n api: DevicesRequestApi;\n method: 'getQueriesGroupsV1';\n}\n\n// types for patchEntitiesDevicesTagsV2\n\nexport type PatchEntitiesDevicesTagsV2QueryParams = BaseUrlParams;\n\nexport type PatchEntitiesDevicesTagsV2ApiResponse = ApiResponsePayload;\n\nexport interface PatchEntitiesDevicesTagsV2PostData {}\n\nexport type PatchEntitiesDevicesTagsV2ResponseMessage =\n BaseApiResponseMessage<PatchEntitiesDevicesTagsV2ApiResponse>;\n\nexport interface PatchEntitiesDevicesTagsV2RequestMessage\n extends BaseApiRequestMessage<\n PatchEntitiesDevicesTagsV2QueryParams,\n PatchEntitiesDevicesTagsV2PostData\n > {\n api: DevicesRequestApi;\n method: 'patchEntitiesDevicesTagsV2';\n}\n\n// types for patchEntitiesGroupsV1\n\nexport type PatchEntitiesGroupsV1QueryParams = BaseUrlParams;\n\nexport type PatchEntitiesGroupsV1ApiResponse = ApiResponsePayload;\n\nexport interface PatchEntitiesGroupsV1PostData {}\n\nexport type PatchEntitiesGroupsV1ResponseMessage =\n BaseApiResponseMessage<PatchEntitiesGroupsV1ApiResponse>;\n\nexport interface PatchEntitiesGroupsV1RequestMessage\n extends BaseApiRequestMessage<\n PatchEntitiesGroupsV1QueryParams,\n PatchEntitiesGroupsV1PostData\n > {\n api: DevicesRequestApi;\n method: 'patchEntitiesGroupsV1';\n}\n\n// types for postAggregatesDevicesGetV1\n\nexport interface PostAggregatesDevicesGetV1QueryParams extends BaseUrlParams {\n groupId?: QueryParam;\n}\n\nexport type PostAggregatesDevicesGetV1ApiResponse = ApiResponsePayload;\n\nexport interface PostAggregatesDevicesGetV1PostData {}\n\nexport type PostAggregatesDevicesGetV1ResponseMessage =\n BaseApiResponseMessage<PostAggregatesDevicesGetV1ApiResponse>;\n\nexport interface PostAggregatesDevicesGetV1RequestMessage\n extends BaseApiRequestMessage<\n PostAggregatesDevicesGetV1QueryParams,\n PostAggregatesDevicesGetV1PostData\n > {\n api: DevicesRequestApi;\n method: 'postAggregatesDevicesGetV1';\n}\n\n// types for postCombinedDevicesLoginHistoryV1\n\nexport type PostCombinedDevicesLoginHistoryV1QueryParams = BaseUrlParams;\n\nexport type PostCombinedDevicesLoginHistoryV1ApiResponse = ApiResponsePayload;\n\nexport interface PostCombinedDevicesLoginHistoryV1PostData {}\n\nexport type PostCombinedDevicesLoginHistoryV1ResponseMessage =\n BaseApiResponseMessage<PostCombinedDevicesLoginHistoryV1ApiResponse>;\n\nexport interface PostCombinedDevicesLoginHistoryV1RequestMessage\n extends BaseApiRequestMessage<\n PostCombinedDevicesLoginHistoryV1QueryParams,\n PostCombinedDevicesLoginHistoryV1PostData\n > {\n api: DevicesRequestApi;\n method: 'postCombinedDevicesLoginHistoryV1';\n}\n\n// types for postEntitiesDevicesActionsV4\n\nexport interface PostEntitiesDevicesActionsV4QueryParams extends BaseUrlParams {\n actionName?: QueryParam;\n}\n\nexport type PostEntitiesDevicesActionsV4ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesDevicesActionsV4PostData {}\n\nexport type PostEntitiesDevicesActionsV4ResponseMessage =\n BaseApiResponseMessage<PostEntitiesDevicesActionsV4ApiResponse>;\n\nexport interface PostEntitiesDevicesActionsV4RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesDevicesActionsV4QueryParams,\n PostEntitiesDevicesActionsV4PostData\n > {\n api: DevicesRequestApi;\n method: 'postEntitiesDevicesActionsV4';\n}\n\n// types for postEntitiesDevicesHiddenActionsV4\n\nexport interface PostEntitiesDevicesHiddenActionsV4QueryParams\n extends BaseUrlParams {\n actionName?: QueryParam;\n}\n\nexport type PostEntitiesDevicesHiddenActionsV4ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesDevicesHiddenActionsV4PostData {}\n\nexport type PostEntitiesDevicesHiddenActionsV4ResponseMessage =\n BaseApiResponseMessage<PostEntitiesDevicesHiddenActionsV4ApiResponse>;\n\nexport interface PostEntitiesDevicesHiddenActionsV4RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesDevicesHiddenActionsV4QueryParams,\n PostEntitiesDevicesHiddenActionsV4PostData\n > {\n api: DevicesRequestApi;\n method: 'postEntitiesDevicesHiddenActionsV4';\n}\n\n// types for postEntitiesDevicesReportsV1\n\nexport type PostEntitiesDevicesReportsV1QueryParams = BaseUrlParams;\n\nexport type PostEntitiesDevicesReportsV1ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesDevicesReportsV1PostData {}\n\nexport type PostEntitiesDevicesReportsV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesDevicesReportsV1ApiResponse>;\n\nexport interface PostEntitiesDevicesReportsV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesDevicesReportsV1QueryParams,\n PostEntitiesDevicesReportsV1PostData\n > {\n api: DevicesRequestApi;\n method: 'postEntitiesDevicesReportsV1';\n}\n\n// types for postEntitiesDevicesV2\n\nexport type PostEntitiesDevicesV2QueryParams = BaseUrlParams;\n\nexport type PostEntitiesDevicesV2ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesDevicesV2PostData {}\n\nexport type PostEntitiesDevicesV2ResponseMessage =\n BaseApiResponseMessage<PostEntitiesDevicesV2ApiResponse>;\n\nexport interface PostEntitiesDevicesV2RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesDevicesV2QueryParams,\n PostEntitiesDevicesV2PostData\n > {\n api: DevicesRequestApi;\n method: 'postEntitiesDevicesV2';\n}\n\n// types for postEntitiesGroupActionsV1\n\nexport interface PostEntitiesGroupActionsV1QueryParams extends BaseUrlParams {\n ids: QueryParam;\n actionName: QueryParam;\n disableHostnameCheck?: QueryParam;\n}\n\nexport type PostEntitiesGroupActionsV1ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesGroupActionsV1PostData {}\n\nexport type PostEntitiesGroupActionsV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesGroupActionsV1ApiResponse>;\n\nexport interface PostEntitiesGroupActionsV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesGroupActionsV1QueryParams,\n PostEntitiesGroupActionsV1PostData\n > {\n api: DevicesRequestApi;\n method: 'postEntitiesGroupActionsV1';\n}\n\n// types for postEntitiesGroupsV1\n\nexport type PostEntitiesGroupsV1QueryParams = BaseUrlParams;\n\nexport type PostEntitiesGroupsV1ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesGroupsV1PostData {}\n\nexport type PostEntitiesGroupsV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesGroupsV1ApiResponse>;\n\nexport interface PostEntitiesGroupsV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesGroupsV1QueryParams,\n PostEntitiesGroupsV1PostData\n > {\n api: DevicesRequestApi;\n method: 'postEntitiesGroupsV1';\n}\n\n// types for postEntitiesReleasesV1\n\nexport interface PostEntitiesReleasesV1QueryParams extends BaseUrlParams {\n ids: QueryParam;\n}\n\nexport type PostEntitiesReleasesV1ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesReleasesV1PostData {}\n\nexport type PostEntitiesReleasesV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesReleasesV1ApiResponse>;\n\nexport interface PostEntitiesReleasesV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesReleasesV1QueryParams,\n PostEntitiesReleasesV1PostData\n > {\n api: DevicesRequestApi;\n method: 'postEntitiesReleasesV1';\n}\n\n// general types\n\nexport type DevicesApiRequestMessage =\n | DeleteEntitiesGroupsV1RequestMessage\n | GetAggregatesBucketsV1RequestMessage\n | GetAggregatesTagPrefixCountsV1RequestMessage\n | GetEntitiesGroupsV1RequestMessage\n | GetEntitiesReleasesV1RequestMessage\n | GetEntitiesRespondV1RequestMessage\n | GetQueriesAvailableGroupsV1RequestMessage\n | GetQueriesDevicesHiddenV2RequestMessage\n | GetQueriesDevicesV2RequestMessage\n | GetQueriesGroupsV1RequestMessage\n | PatchEntitiesDevicesTagsV2RequestMessage\n | PatchEntitiesGroupsV1RequestMessage\n | PostAggregatesDevicesGetV1RequestMessage\n | PostCombinedDevicesLoginHistoryV1RequestMessage\n | PostEntitiesDevicesActionsV4RequestMessage\n | PostEntitiesDevicesHiddenActionsV4RequestMessage\n | PostEntitiesDevicesReportsV1RequestMessage\n | PostEntitiesDevicesV2RequestMessage\n | PostEntitiesGroupActionsV1RequestMessage\n | PostEntitiesGroupsV1RequestMessage\n | PostEntitiesReleasesV1RequestMessage;\n\nexport type DevicesApiResponseMessage =\n | DeleteEntitiesGroupsV1ResponseMessage\n | GetAggregatesBucketsV1ResponseMessage\n | GetAggregatesTagPrefixCountsV1ResponseMessage\n | GetEntitiesGroupsV1ResponseMessage\n | GetEntitiesReleasesV1ResponseMessage\n | GetEntitiesRespondV1ResponseMessage\n | GetQueriesAvailableGroupsV1ResponseMessage\n | GetQueriesDevicesHiddenV2ResponseMessage\n | GetQueriesDevicesV2ResponseMessage\n | GetQueriesGroupsV1ResponseMessage\n | PatchEntitiesDevicesTagsV2ResponseMessage\n | PatchEntitiesGroupsV1ResponseMessage\n | PostAggregatesDevicesGetV1ResponseMessage\n | PostCombinedDevicesLoginHistoryV1ResponseMessage\n | PostEntitiesDevicesActionsV4ResponseMessage\n | PostEntitiesDevicesHiddenActionsV4ResponseMessage\n | PostEntitiesDevicesReportsV1ResponseMessage\n | PostEntitiesDevicesV2ResponseMessage\n | PostEntitiesGroupActionsV1ResponseMessage\n | PostEntitiesGroupsV1ResponseMessage\n | PostEntitiesReleasesV1ResponseMessage;\n\nexport class DevicesApiBridge {\n private bridge;\n\n constructor(bridge: Bridge) {\n this.bridge = bridge;\n }\n\n getBridge() {\n return this.bridge;\n }\n\n async deleteEntitiesGroupsV1(\n urlParams: DeleteEntitiesGroupsV1QueryParams,\n ): Promise<DeleteEntitiesGroupsV1ApiResponse> {\n const message: DeleteEntitiesGroupsV1RequestMessage = {\n type: 'api',\n api: 'devices',\n method: 'deleteEntitiesGroupsV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getAggregatesBucketsV1(\n urlParams: GetAggregatesBucketsV1QueryParams,\n ): Promise<GetAggregatesBucketsV1ApiResponse> {\n const message: GetAggregatesBucketsV1RequestMessage = {\n type: 'api',\n api: 'devices',\n method: 'getAggregatesBucketsV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getAggregatesTagPrefixCountsV1(\n urlParams: GetAggregatesTagPrefixCountsV1QueryParams,\n ): Promise<GetAggregatesTagPrefixCountsV1ApiResponse> {\n const message: GetAggregatesTagPrefixCountsV1RequestMessage = {\n type: 'api',\n api: 'devices',\n method: 'getAggregatesTagPrefixCountsV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getEntitiesGroupsV1(\n urlParams: GetEntitiesGroupsV1QueryParams,\n ): Promise<GetEntitiesGroupsV1ApiResponse> {\n const message: GetEntitiesGroupsV1RequestMessage = {\n type: 'api',\n api: 'devices',\n method: 'getEntitiesGroupsV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getEntitiesReleasesV1(\n urlParams: GetEntitiesReleasesV1QueryParams,\n ): Promise<GetEntitiesReleasesV1ApiResponse> {\n const message: GetEntitiesReleasesV1RequestMessage = {\n type: 'api',\n api: 'devices',\n method: 'getEntitiesReleasesV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getEntitiesRespondV1(\n urlParams: GetEntitiesRespondV1QueryParams = {},\n ): Promise<GetEntitiesRespondV1ApiResponse> {\n const message: GetEntitiesRespondV1RequestMessage = {\n type: 'api',\n api: 'devices',\n method: 'getEntitiesRespondV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getQueriesAvailableGroupsV1(\n urlParams: GetQueriesAvailableGroupsV1QueryParams = {},\n ): Promise<GetQueriesAvailableGroupsV1ApiResponse> {\n const message: GetQueriesAvailableGroupsV1RequestMessage = {\n type: 'api',\n api: 'devices',\n method: 'getQueriesAvailableGroupsV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getQueriesDevicesHiddenV2(\n urlParams: GetQueriesDevicesHiddenV2QueryParams = {},\n ): Promise<GetQueriesDevicesHiddenV2ApiResponse> {\n const message: GetQueriesDevicesHiddenV2RequestMessage = {\n type: 'api',\n api: 'devices',\n method: 'getQueriesDevicesHiddenV2',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getQueriesDevicesV2(\n urlParams: GetQueriesDevicesV2QueryParams = {},\n ): Promise<GetQueriesDevicesV2ApiResponse> {\n const message: GetQueriesDevicesV2RequestMessage = {\n type: 'api',\n api: 'devices',\n method: 'getQueriesDevicesV2',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getQueriesGroupsV1(\n urlParams: GetQueriesGroupsV1QueryParams = {},\n ): Promise<GetQueriesGroupsV1ApiResponse> {\n const message: GetQueriesGroupsV1RequestMessage = {\n type: 'api',\n api: 'devices',\n method: 'getQueriesGroupsV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async patchEntitiesDevicesTagsV2(\n postBody: PatchEntitiesDevicesTagsV2PostData,\n urlParams: PatchEntitiesDevicesTagsV2QueryParams = {},\n ): Promise<PatchEntitiesDevicesTagsV2ApiResponse> {\n const message: PatchEntitiesDevicesTagsV2RequestMessage = {\n type: 'api',\n api: 'devices',\n method: 'patchEntitiesDevicesTagsV2',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async patchEntitiesGroupsV1(\n postBody: PatchEntitiesGroupsV1PostData,\n urlParams: PatchEntitiesGroupsV1QueryParams = {},\n ): Promise<PatchEntitiesGroupsV1ApiResponse> {\n const message: PatchEntitiesGroupsV1RequestMessage = {\n type: 'api',\n api: 'devices',\n method: 'patchEntitiesGroupsV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postAggregatesDevicesGetV1(\n postBody: PostAggregatesDevicesGetV1PostData,\n urlParams: PostAggregatesDevicesGetV1QueryParams = {},\n ): Promise<PostAggregatesDevicesGetV1ApiResponse> {\n const message: PostAggregatesDevicesGetV1RequestMessage = {\n type: 'api',\n api: 'devices',\n method: 'postAggregatesDevicesGetV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postCombinedDevicesLoginHistoryV1(\n postBody: PostCombinedDevicesLoginHistoryV1PostData,\n urlParams: PostCombinedDevicesLoginHistoryV1QueryParams = {},\n ): Promise<PostCombinedDevicesLoginHistoryV1ApiResponse> {\n const message: PostCombinedDevicesLoginHistoryV1RequestMessage = {\n type: 'api',\n api: 'devices',\n method: 'postCombinedDevicesLoginHistoryV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesDevicesActionsV4(\n postBody: PostEntitiesDevicesActionsV4PostData,\n urlParams: PostEntitiesDevicesActionsV4QueryParams = {},\n ): Promise<PostEntitiesDevicesActionsV4ApiResponse> {\n const message: PostEntitiesDevicesActionsV4RequestMessage = {\n type: 'api',\n api: 'devices',\n method: 'postEntitiesDevicesActionsV4',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesDevicesHiddenActionsV4(\n postBody: PostEntitiesDevicesHiddenActionsV4PostData,\n urlParams: PostEntitiesDevicesHiddenActionsV4QueryParams = {},\n ): Promise<PostEntitiesDevicesHiddenActionsV4ApiResponse> {\n const message: PostEntitiesDevicesHiddenActionsV4RequestMessage = {\n type: 'api',\n api: 'devices',\n method: 'postEntitiesDevicesHiddenActionsV4',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesDevicesReportsV1(\n postBody: PostEntitiesDevicesReportsV1PostData,\n urlParams: PostEntitiesDevicesReportsV1QueryParams = {},\n ): Promise<PostEntitiesDevicesReportsV1ApiResponse> {\n const message: PostEntitiesDevicesReportsV1RequestMessage = {\n type: 'api',\n api: 'devices',\n method: 'postEntitiesDevicesReportsV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesDevicesV2(\n postBody: PostEntitiesDevicesV2PostData,\n urlParams: PostEntitiesDevicesV2QueryParams = {},\n ): Promise<PostEntitiesDevicesV2ApiResponse> {\n const message: PostEntitiesDevicesV2RequestMessage = {\n type: 'api',\n api: 'devices',\n method: 'postEntitiesDevicesV2',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesGroupActionsV1(\n postBody: PostEntitiesGroupActionsV1PostData,\n urlParams: PostEntitiesGroupActionsV1QueryParams,\n ): Promise<PostEntitiesGroupActionsV1ApiResponse> {\n const message: PostEntitiesGroupActionsV1RequestMessage = {\n type: 'api',\n api: 'devices',\n method: 'postEntitiesGroupActionsV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesGroupsV1(\n postBody: PostEntitiesGroupsV1PostData,\n urlParams: PostEntitiesGroupsV1QueryParams = {},\n ): Promise<PostEntitiesGroupsV1ApiResponse> {\n const message: PostEntitiesGroupsV1RequestMessage = {\n type: 'api',\n api: 'devices',\n method: 'postEntitiesGroupsV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesReleasesV1(\n postBody: PostEntitiesReleasesV1PostData,\n urlParams: PostEntitiesReleasesV1QueryParams,\n ): Promise<PostEntitiesReleasesV1ApiResponse> {\n const message: PostEntitiesReleasesV1RequestMessage = {\n type: 'api',\n api: 'devices',\n method: 'postEntitiesReleasesV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n}\n","/**\n *\n * This file is autogenerated.\n *\n * DO NOT EDIT DIRECTLY\n *\n **/\n\nimport type { Bridge } from '../../bridge';\n\nimport type {\n ApiResponsePayload,\n BaseApiRequestMessage,\n BaseApiResponseMessage,\n BaseUrlParams,\n QueryParam,\n} from '../../types';\n\nexport type FaasGatewayRequestApi = 'faasGateway';\n\nexport type CommonApiResponseMessage =\n BaseApiResponseMessage<ApiResponsePayload>;\n\nexport interface CommonApiRequestMessage\n extends BaseApiRequestMessage<BaseUrlParams, unknown> {\n api: FaasGatewayRequestApi;\n}\n\n// types for getEntitiesExecutionV1\n\nexport interface GetEntitiesExecutionV1QueryParams extends BaseUrlParams {\n id: QueryParam;\n}\n\nexport type GetEntitiesExecutionV1ApiResponse = ApiResponsePayload;\n\nexport type GetEntitiesExecutionV1ResponseMessage =\n BaseApiResponseMessage<GetEntitiesExecutionV1ApiResponse>;\n\nexport interface GetEntitiesExecutionV1RequestMessage\n extends BaseApiRequestMessage<GetEntitiesExecutionV1QueryParams> {\n api: FaasGatewayRequestApi;\n method: 'getEntitiesExecutionV1';\n}\n\n// types for postEntitiesExecutionV1\n\nexport type PostEntitiesExecutionV1QueryParams = BaseUrlParams;\n\nexport type PostEntitiesExecutionV1ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesExecutionV1PostData {}\n\nexport type PostEntitiesExecutionV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesExecutionV1ApiResponse>;\n\nexport interface PostEntitiesExecutionV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesExecutionV1QueryParams,\n PostEntitiesExecutionV1PostData\n > {\n api: FaasGatewayRequestApi;\n method: 'postEntitiesExecutionV1';\n}\n\n// general types\n\nexport type FaasGatewayApiRequestMessage =\n | GetEntitiesExecutionV1RequestMessage\n | PostEntitiesExecutionV1RequestMessage;\n\nexport type FaasGatewayApiResponseMessage =\n | GetEntitiesExecutionV1ResponseMessage\n | PostEntitiesExecutionV1ResponseMessage;\n\nexport class FaasGatewayApiBridge {\n private bridge;\n\n constructor(bridge: Bridge) {\n this.bridge = bridge;\n }\n\n getBridge() {\n return this.bridge;\n }\n\n async getEntitiesExecutionV1(\n urlParams: GetEntitiesExecutionV1QueryParams,\n ): Promise<GetEntitiesExecutionV1ApiResponse> {\n const message: GetEntitiesExecutionV1RequestMessage = {\n type: 'api',\n api: 'faasGateway',\n method: 'getEntitiesExecutionV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesExecutionV1(\n postBody: PostEntitiesExecutionV1PostData,\n urlParams: PostEntitiesExecutionV1QueryParams = {},\n ): Promise<PostEntitiesExecutionV1ApiResponse> {\n const message: PostEntitiesExecutionV1RequestMessage = {\n type: 'api',\n api: 'faasGateway',\n method: 'postEntitiesExecutionV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n}\n","/**\n *\n * This file is autogenerated.\n *\n * DO NOT EDIT DIRECTLY\n *\n **/\n\nimport type { Bridge } from '../../bridge';\n\nimport type {\n ApiResponsePayload,\n BaseApiRequestMessage,\n BaseApiResponseMessage,\n BaseUrlParams,\n QueryParam,\n} from '../../types';\n\nexport type FwmgrRequestApi = 'fwmgr';\n\nexport type CommonApiResponseMessage =\n BaseApiResponseMessage<ApiResponsePayload>;\n\nexport interface CommonApiRequestMessage\n extends BaseApiRequestMessage<BaseUrlParams, unknown> {\n api: FwmgrRequestApi;\n}\n\n// types for deleteEntitiesNetworkLocationsV1\n\nexport interface DeleteEntitiesNetworkLocationsV1QueryParams\n extends BaseUrlParams {\n ids: QueryParam;\n comment?: QueryParam;\n}\n\nexport type DeleteEntitiesNetworkLocationsV1ApiResponse = ApiResponsePayload;\n\nexport type DeleteEntitiesNetworkLocationsV1ResponseMessage =\n BaseApiResponseMessage<DeleteEntitiesNetworkLocationsV1ApiResponse>;\n\nexport interface DeleteEntitiesNetworkLocationsV1RequestMessage\n extends BaseApiRequestMessage<DeleteEntitiesNetworkLocationsV1QueryParams> {\n api: FwmgrRequestApi;\n method: 'deleteEntitiesNetworkLocationsV1';\n}\n\n// types for deleteEntitiesPoliciesV1\n\nexport interface DeleteEntitiesPoliciesV1QueryParams extends BaseUrlParams {\n ids: QueryParam;\n}\n\nexport type DeleteEntitiesPoliciesV1ApiResponse = ApiResponsePayload;\n\nexport type DeleteEntitiesPoliciesV1ResponseMessage =\n BaseApiResponseMessage<DeleteEntitiesPoliciesV1ApiResponse>;\n\nexport interface DeleteEntitiesPoliciesV1RequestMessage\n extends BaseApiRequestMessage<DeleteEntitiesPoliciesV1QueryParams> {\n api: FwmgrRequestApi;\n method: 'deleteEntitiesPoliciesV1';\n}\n\n// types for deleteEntitiesRuleGroupsV1\n\nexport interface DeleteEntitiesRuleGroupsV1QueryParams extends BaseUrlParams {\n ids: QueryParam;\n comment?: QueryParam;\n}\n\nexport type DeleteEntitiesRuleGroupsV1ApiResponse = ApiResponsePayload;\n\nexport type DeleteEntitiesRuleGroupsV1ResponseMessage =\n BaseApiResponseMessage<DeleteEntitiesRuleGroupsV1ApiResponse>;\n\nexport interface DeleteEntitiesRuleGroupsV1RequestMessage\n extends BaseApiRequestMessage<DeleteEntitiesRuleGroupsV1QueryParams> {\n api: FwmgrRequestApi;\n method: 'deleteEntitiesRuleGroupsV1';\n}\n\n// types for getEntitiesEventsV1\n\nexport interface GetEntitiesEventsV1QueryParams extends BaseUrlParams {\n ids: QueryParam;\n}\n\nexport type GetEntitiesEventsV1ApiResponse = ApiResponsePayload;\n\nexport type GetEntitiesEventsV1ResponseMessage =\n BaseApiResponseMessage<GetEntitiesEventsV1ApiResponse>;\n\nexport interface GetEntitiesEventsV1RequestMessage\n extends BaseApiRequestMessage<GetEntitiesEventsV1QueryParams> {\n api: FwmgrRequestApi;\n method: 'getEntitiesEventsV1';\n}\n\n// types for getEntitiesFirewallFieldsV1\n\nexport interface GetEntitiesFirewallFieldsV1QueryParams extends BaseUrlParams {\n ids: QueryParam;\n}\n\nexport type GetEntitiesFirewallFieldsV1ApiResponse = ApiResponsePayload;\n\nexport type GetEntitiesFirewallFieldsV1ResponseMessage =\n BaseApiResponseMessage<GetEntitiesFirewallFieldsV1ApiResponse>;\n\nexport interface GetEntitiesFirewallFieldsV1RequestMessage\n extends BaseApiRequestMessage<GetEntitiesFirewallFieldsV1QueryParams> {\n api: FwmgrRequestApi;\n method: 'getEntitiesFirewallFieldsV1';\n}\n\n// types for getEntitiesNetworkLocationsDetailsV1\n\nexport interface GetEntitiesNetworkLocationsDetailsV1QueryParams\n extends BaseUrlParams {\n ids: QueryParam;\n}\n\nexport type GetEntitiesNetworkLocationsDetailsV1ApiResponse =\n ApiResponsePayload;\n\nexport type GetEntitiesNetworkLocationsDetailsV1ResponseMessage =\n BaseApiResponseMessage<GetEntitiesNetworkLocationsDetailsV1ApiResponse>;\n\nexport interface GetEntitiesNetworkLocationsDetailsV1RequestMessage\n extends BaseApiRequestMessage<GetEntitiesNetworkLocationsDetailsV1QueryParams> {\n api: FwmgrRequestApi;\n method: 'getEntitiesNetworkLocationsDetailsV1';\n}\n\n// types for getEntitiesNetworkLocationsV1\n\nexport interface GetEntitiesNetworkLocationsV1QueryParams\n extends BaseUrlParams {\n ids: QueryParam;\n}\n\nexport type GetEntitiesNetworkLocationsV1ApiResponse = ApiResponsePayload;\n\nexport type GetEntitiesNetworkLocationsV1ResponseMessage =\n BaseApiResponseMessage<GetEntitiesNetworkLocationsV1ApiResponse>;\n\nexport interface GetEntitiesNetworkLocationsV1RequestMessage\n extends BaseApiRequestMessage<GetEntitiesNetworkLocationsV1QueryParams> {\n api: FwmgrRequestApi;\n method: 'getEntitiesNetworkLocationsV1';\n}\n\n// types for getEntitiesPlatformsV1\n\nexport interface GetEntitiesPlatformsV1QueryParams extends BaseUrlParams {\n ids: QueryParam;\n}\n\nexport type GetEntitiesPlatformsV1ApiResponse = ApiResponsePayload;\n\nexport type GetEntitiesPlatformsV1ResponseMessage =\n BaseApiResponseMessage<GetEntitiesPlatformsV1ApiResponse>;\n\nexport interface GetEntitiesPlatformsV1RequestMessage\n extends BaseApiRequestMessage<GetEntitiesPlatformsV1QueryParams> {\n api: FwmgrRequestApi;\n method: 'getEntitiesPlatformsV1';\n}\n\n// types for getEntitiesPoliciesV1\n\nexport interface GetEntitiesPoliciesV1QueryParams extends BaseUrlParams {\n ids: QueryParam;\n}\n\nexport type GetEntitiesPoliciesV1ApiResponse = ApiResponsePayload;\n\nexport type GetEntitiesPoliciesV1ResponseMessage =\n BaseApiResponseMessage<GetEntitiesPoliciesV1ApiResponse>;\n\nexport interface GetEntitiesPoliciesV1RequestMessage\n extends BaseApiRequestMessage<GetEntitiesPoliciesV1QueryParams> {\n api: FwmgrRequestApi;\n method: 'getEntitiesPoliciesV1';\n}\n\n// types for getEntitiesRuleGroupsV1\n\nexport interface GetEntitiesRuleGroupsV1QueryParams extends BaseUrlParams {\n ids: QueryParam;\n}\n\nexport type GetEntitiesRuleGroupsV1ApiResponse = ApiResponsePayload;\n\nexport type GetEntitiesRuleGroupsV1ResponseMessage =\n BaseApiResponseMessage<GetEntitiesRuleGroupsV1ApiResponse>;\n\nexport interface GetEntitiesRuleGroupsV1RequestMessage\n extends BaseApiRequestMessage<GetEntitiesRuleGroupsV1QueryParams> {\n api: FwmgrRequestApi;\n method: 'getEntitiesRuleGroupsV1';\n}\n\n// types for getEntitiesRulesV1\n\nexport interface GetEntitiesRulesV1QueryParams extends BaseUrlParams {\n ids: QueryParam;\n}\n\nexport type GetEntitiesRulesV1ApiResponse = ApiResponsePayload;\n\nexport type GetEntitiesRulesV1ResponseMessage =\n BaseApiResponseMessage<GetEntitiesRulesV1ApiResponse>;\n\nexport interface GetEntitiesRulesV1RequestMessage\n extends BaseApiRequestMessage<GetEntitiesRulesV1QueryParams> {\n api: FwmgrRequestApi;\n method: 'getEntitiesRulesV1';\n}\n\n// types for getLibraryEntitiesRuleGroupsV1\n\nexport interface GetLibraryEntitiesRuleGroupsV1QueryParams\n extends BaseUrlParams {\n ids: QueryParam;\n}\n\nexport type GetLibraryEntitiesRuleGroupsV1ApiResponse = ApiResponsePayload;\n\nexport type GetLibraryEntitiesRuleGroupsV1ResponseMessage =\n BaseApiResponseMessage<GetLibraryEntitiesRuleGroupsV1ApiResponse>;\n\nexport interface GetLibraryEntitiesRuleGroupsV1RequestMessage\n extends BaseApiRequestMessage<GetLibraryEntitiesRuleGroupsV1QueryParams> {\n api: FwmgrRequestApi;\n method: 'getLibraryEntitiesRuleGroupsV1';\n}\n\n// types for getLibraryQueriesRuleGroupsV1\n\nexport interface GetLibraryQueriesRuleGroupsV1QueryParams\n extends BaseUrlParams {\n sort?: QueryParam;\n filter?: string;\n q?: QueryParam;\n offset?: QueryParam;\n limit?: QueryParam;\n}\n\nexport type GetLibraryQueriesRuleGroupsV1ApiResponse = ApiResponsePayload;\n\nexport type GetLibraryQueriesRuleGroupsV1ResponseMessage =\n BaseApiResponseMessage<GetLibraryQueriesRuleGroupsV1ApiResponse>;\n\nexport interface GetLibraryQueriesRuleGroupsV1RequestMessage\n extends BaseApiRequestMessage<GetLibraryQueriesRuleGroupsV1QueryParams> {\n api: FwmgrRequestApi;\n method: 'getLibraryQueriesRuleGroupsV1';\n}\n\n// types for getQueriesEventsV1\n\nexport interface GetQueriesEventsV1QueryParams extends BaseUrlParams {\n sort?: QueryParam;\n filter?: string;\n q?: QueryParam;\n offset?: QueryParam;\n limit?: QueryParam;\n}\n\nexport type GetQueriesEventsV1ApiResponse = ApiResponsePayload;\n\nexport type GetQueriesEventsV1ResponseMessage =\n BaseApiResponseMessage<GetQueriesEventsV1ApiResponse>;\n\nexport interface GetQueriesEventsV1RequestMessage\n extends BaseApiRequestMessage<GetQueriesEventsV1QueryParams> {\n api: FwmgrRequestApi;\n method: 'getQueriesEventsV1';\n}\n\n// types for getQueriesFirewallFieldsV1\n\nexport interface GetQueriesFirewallFieldsV1QueryParams extends BaseUrlParams {\n platform?: QueryParam;\n offset?: QueryParam;\n limit?: QueryParam;\n}\n\nexport type GetQueriesFirewallFieldsV1ApiResponse = ApiResponsePayload;\n\nexport type GetQueriesFirewallFieldsV1ResponseMessage =\n BaseApiResponseMessage<GetQueriesFirewallFieldsV1ApiResponse>;\n\nexport interface GetQueriesFirewallFieldsV1RequestMessage\n extends BaseApiRequestMessage<GetQueriesFirewallFieldsV1QueryParams> {\n api: FwmgrRequestApi;\n method: 'getQueriesFirewallFieldsV1';\n}\n\n// types for getQueriesNetworkLocationsV1\n\nexport interface GetQueriesNetworkLocationsV1QueryParams extends BaseUrlParams {\n filter?: string;\n limit?: QueryParam;\n offset?: QueryParam;\n q?: QueryParam;\n sort?: QueryParam;\n}\n\nexport type GetQueriesNetworkLocationsV1ApiResponse = ApiResponsePayload;\n\nexport type GetQueriesNetworkLocationsV1ResponseMessage =\n BaseApiResponseMessage<GetQueriesNetworkLocationsV1ApiResponse>;\n\nexport interface GetQueriesNetworkLocationsV1RequestMessage\n extends BaseApiRequestMessage<GetQueriesNetworkLocationsV1QueryParams> {\n api: FwmgrRequestApi;\n method: 'getQueriesNetworkLocationsV1';\n}\n\n// types for getQueriesPlatformsV1\n\nexport interface GetQueriesPlatformsV1QueryParams extends BaseUrlParams {\n offset?: QueryParam;\n limit?: QueryParam;\n}\n\nexport type GetQueriesPlatformsV1ApiResponse = ApiResponsePayload;\n\nexport type GetQueriesPlatformsV1ResponseMessage =\n BaseApiResponseMessage<GetQueriesPlatformsV1ApiResponse>;\n\nexport interface GetQueriesPlatformsV1RequestMessage\n extends BaseApiRequestMessage<GetQueriesPlatformsV1QueryParams> {\n api: FwmgrRequestApi;\n method: 'getQueriesPlatformsV1';\n}\n\n// types for getQueriesPolicyRulesV1\n\nexport interface GetQueriesPolicyRulesV1QueryParams extends BaseUrlParams {\n id?: QueryParam;\n sort?: QueryParam;\n filter?: string;\n q?: QueryParam;\n offset?: QueryParam;\n limit?: QueryParam;\n}\n\nexport type GetQueriesPolicyRulesV1ApiResponse = ApiResponsePayload;\n\nexport type GetQueriesPolicyRulesV1ResponseMessage =\n BaseApiResponseMessage<GetQueriesPolicyRulesV1ApiResponse>;\n\nexport interface GetQueriesPolicyRulesV1RequestMessage\n extends BaseApiRequestMessage<GetQueriesPolicyRulesV1QueryParams> {\n api: FwmgrRequestApi;\n method: 'getQueriesPolicyRulesV1';\n}\n\n// types for getQueriesRuleGroupsV1\n\nexport interface GetQueriesRuleGroupsV1QueryParams extends BaseUrlParams {\n sort?: QueryParam;\n filter?: string;\n q?: QueryParam;\n offset?: QueryParam;\n limit?: QueryParam;\n}\n\nexport type GetQueriesRuleGroupsV1ApiResponse = ApiResponsePayload;\n\nexport type GetQueriesRuleGroupsV1ResponseMessage =\n BaseApiResponseMessage<GetQueriesRuleGroupsV1ApiResponse>;\n\nexport interface GetQueriesRuleGroupsV1RequestMessage\n extends BaseApiRequestMessage<GetQueriesRuleGroupsV1QueryParams> {\n api: FwmgrRequestApi;\n method: 'getQueriesRuleGroupsV1';\n}\n\n// types for getQueriesRulesV1\n\nexport interface GetQueriesRulesV1QueryParams extends BaseUrlParams {\n sort?: QueryParam;\n filter?: string;\n q?: QueryParam;\n offset?: QueryParam;\n limit?: QueryParam;\n}\n\nexport type GetQueriesRulesV1ApiResponse = ApiResponsePayload;\n\nexport type GetQueriesRulesV1ResponseMessage =\n BaseApiResponseMessage<GetQueriesRulesV1ApiResponse>;\n\nexport interface GetQueriesRulesV1RequestMessage\n extends BaseApiRequestMessage<GetQueriesRulesV1QueryParams> {\n api: FwmgrRequestApi;\n method: 'getQueriesRulesV1';\n}\n\n// types for patchEntitiesNetworkLocationsV1\n\nexport interface PatchEntitiesNetworkLocationsV1QueryParams\n extends BaseUrlParams {\n comment?: QueryParam;\n}\n\nexport type PatchEntitiesNetworkLocationsV1ApiResponse = ApiResponsePayload;\n\nexport interface PatchEntitiesNetworkLocationsV1PostData {}\n\nexport type PatchEntitiesNetworkLocationsV1ResponseMessage =\n BaseApiResponseMessage<PatchEntitiesNetworkLocationsV1ApiResponse>;\n\nexport interface PatchEntitiesNetworkLocationsV1RequestMessage\n extends BaseApiRequestMessage<\n PatchEntitiesNetworkLocationsV1QueryParams,\n PatchEntitiesNetworkLocationsV1PostData\n > {\n api: FwmgrRequestApi;\n method: 'patchEntitiesNetworkLocationsV1';\n}\n\n// types for patchEntitiesRuleGroupsV1\n\nexport interface PatchEntitiesRuleGroupsV1QueryParams extends BaseUrlParams {\n comment?: QueryParam;\n}\n\nexport type PatchEntitiesRuleGroupsV1ApiResponse = ApiResponsePayload;\n\nexport interface PatchEntitiesRuleGroupsV1PostData {}\n\nexport type PatchEntitiesRuleGroupsV1ResponseMessage =\n BaseApiResponseMessage<PatchEntitiesRuleGroupsV1ApiResponse>;\n\nexport interface PatchEntitiesRuleGroupsV1RequestMessage\n extends BaseApiRequestMessage<\n PatchEntitiesRuleGroupsV1QueryParams,\n PatchEntitiesRuleGroupsV1PostData\n > {\n api: FwmgrRequestApi;\n method: 'patchEntitiesRuleGroupsV1';\n}\n\n// types for postAggregatesEventsGetV1\n\nexport type PostAggregatesEventsGetV1QueryParams = BaseUrlParams;\n\nexport type PostAggregatesEventsGetV1ApiResponse = ApiResponsePayload;\n\nexport interface PostAggregatesEventsGetV1PostData {}\n\nexport type PostAggregatesEventsGetV1ResponseMessage =\n BaseApiResponseMessage<PostAggregatesEventsGetV1ApiResponse>;\n\nexport interface PostAggregatesEventsGetV1RequestMessage\n extends BaseApiRequestMessage<\n PostAggregatesEventsGetV1QueryParams,\n PostAggregatesEventsGetV1PostData\n > {\n api: FwmgrRequestApi;\n method: 'postAggregatesEventsGetV1';\n}\n\n// types for postAggregatesPolicyRulesGetV1\n\nexport type PostAggregatesPolicyRulesGetV1QueryParams = BaseUrlParams;\n\nexport type PostAggregatesPolicyRulesGetV1ApiResponse = ApiResponsePayload;\n\nexport interface PostAggregatesPolicyRulesGetV1PostData {}\n\nexport type PostAggregatesPolicyRulesGetV1ResponseMessage =\n BaseApiResponseMessage<PostAggregatesPolicyRulesGetV1ApiResponse>;\n\nexport interface PostAggregatesPolicyRulesGetV1RequestMessage\n extends BaseApiRequestMessage<\n PostAggregatesPolicyRulesGetV1QueryParams,\n PostAggregatesPolicyRulesGetV1PostData\n > {\n api: FwmgrRequestApi;\n method: 'postAggregatesPolicyRulesGetV1';\n}\n\n// types for postAggregatesRuleGroupsGetV1\n\nexport type PostAggregatesRuleGroupsGetV1QueryParams = BaseUrlParams;\n\nexport type PostAggregatesRuleGroupsGetV1ApiResponse = ApiResponsePayload;\n\nexport interface PostAggregatesRuleGroupsGetV1PostData {}\n\nexport type PostAggregatesRuleGroupsGetV1ResponseMessage =\n BaseApiResponseMessage<PostAggregatesRuleGroupsGetV1ApiResponse>;\n\nexport interface PostAggregatesRuleGroupsGetV1RequestMessage\n extends BaseApiRequestMessage<\n PostAggregatesRuleGroupsGetV1QueryParams,\n PostAggregatesRuleGroupsGetV1PostData\n > {\n api: FwmgrRequestApi;\n method: 'postAggregatesRuleGroupsGetV1';\n}\n\n// types for postAggregatesRulesGetV1\n\nexport type PostAggregatesRulesGetV1QueryParams = BaseUrlParams;\n\nexport type PostAggregatesRulesGetV1ApiResponse = ApiResponsePayload;\n\nexport interface PostAggregatesRulesGetV1PostData {}\n\nexport type PostAggregatesRulesGetV1ResponseMessage =\n BaseApiResponseMessage<PostAggregatesRulesGetV1ApiResponse>;\n\nexport interface PostAggregatesRulesGetV1RequestMessage\n extends BaseApiRequestMessage<\n PostAggregatesRulesGetV1QueryParams,\n PostAggregatesRulesGetV1PostData\n > {\n api: FwmgrRequestApi;\n method: 'postAggregatesRulesGetV1';\n}\n\n// types for postEntitiesNetworkLocationsMetadataV1\n\nexport type PostEntitiesNetworkLocationsMetadataV1QueryParams = BaseUrlParams;\n\nexport type PostEntitiesNetworkLocationsMetadataV1ApiResponse =\n ApiResponsePayload;\n\nexport interface PostEntitiesNetworkLocationsMetadataV1PostData {}\n\nexport type PostEntitiesNetworkLocationsMetadataV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesNetworkLocationsMetadataV1ApiResponse>;\n\nexport interface PostEntitiesNetworkLocationsMetadataV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesNetworkLocationsMetadataV1QueryParams,\n PostEntitiesNetworkLocationsMetadataV1PostData\n > {\n api: FwmgrRequestApi;\n method: 'postEntitiesNetworkLocationsMetadataV1';\n}\n\n// types for postEntitiesNetworkLocationsPrecedenceV1\n\nexport type PostEntitiesNetworkLocationsPrecedenceV1QueryParams = BaseUrlParams;\n\nexport type PostEntitiesNetworkLocationsPrecedenceV1ApiResponse =\n ApiResponsePayload;\n\nexport interface PostEntitiesNetworkLocationsPrecedenceV1PostData {}\n\nexport type PostEntitiesNetworkLocationsPrecedenceV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesNetworkLocationsPrecedenceV1ApiResponse>;\n\nexport interface PostEntitiesNetworkLocationsPrecedenceV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesNetworkLocationsPrecedenceV1QueryParams,\n PostEntitiesNetworkLocationsPrecedenceV1PostData\n > {\n api: FwmgrRequestApi;\n method: 'postEntitiesNetworkLocationsPrecedenceV1';\n}\n\n// types for postEntitiesNetworkLocationsV1\n\nexport interface PostEntitiesNetworkLocationsV1QueryParams\n extends BaseUrlParams {\n comment?: QueryParam;\n cloneId?: QueryParam;\n addFwRules?: QueryParam;\n}\n\nexport type PostEntitiesNetworkLocationsV1ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesNetworkLocationsV1PostData {}\n\nexport type PostEntitiesNetworkLocationsV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesNetworkLocationsV1ApiResponse>;\n\nexport interface PostEntitiesNetworkLocationsV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesNetworkLocationsV1QueryParams,\n PostEntitiesNetworkLocationsV1PostData\n > {\n api: FwmgrRequestApi;\n method: 'postEntitiesNetworkLocationsV1';\n}\n\n// types for postEntitiesOntologyV1\n\nexport type PostEntitiesOntologyV1QueryParams = BaseUrlParams;\n\nexport type PostEntitiesOntologyV1ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesOntologyV1PostData {}\n\nexport type PostEntitiesOntologyV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesOntologyV1ApiResponse>;\n\nexport interface PostEntitiesOntologyV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesOntologyV1QueryParams,\n PostEntitiesOntologyV1PostData\n > {\n api: FwmgrRequestApi;\n method: 'postEntitiesOntologyV1';\n}\n\n// types for postEntitiesRuleGroupsV1\n\nexport interface PostEntitiesRuleGroupsV1QueryParams extends BaseUrlParams {\n cloneId?: QueryParam;\n library?: QueryParam;\n}\n\nexport type PostEntitiesRuleGroupsV1ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesRuleGroupsV1PostData {}\n\nexport type PostEntitiesRuleGroupsV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesRuleGroupsV1ApiResponse>;\n\nexport interface PostEntitiesRuleGroupsV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesRuleGroupsV1QueryParams,\n PostEntitiesRuleGroupsV1PostData\n > {\n api: FwmgrRequestApi;\n method: 'postEntitiesRuleGroupsV1';\n}\n\n// types for postEntitiesRulesValidateFilepathV1\n\nexport type PostEntitiesRulesValidateFilepathV1QueryParams = BaseUrlParams;\n\nexport type PostEntitiesRulesValidateFilepathV1ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesRulesValidateFilepathV1PostData {}\n\nexport type PostEntitiesRulesValidateFilepathV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesRulesValidateFilepathV1ApiResponse>;\n\nexport interface PostEntitiesRulesValidateFilepathV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesRulesValidateFilepathV1QueryParams,\n PostEntitiesRulesValidateFilepathV1PostData\n > {\n api: FwmgrRequestApi;\n method: 'postEntitiesRulesValidateFilepathV1';\n}\n\n// types for putEntitiesNetworkLocationsV1\n\nexport interface PutEntitiesNetworkLocationsV1QueryParams\n extends BaseUrlParams {\n comment?: QueryParam;\n}\n\nexport type PutEntitiesNetworkLocationsV1ApiResponse = ApiResponsePayload;\n\nexport interface PutEntitiesNetworkLocationsV1PostData {}\n\nexport type PutEntitiesNetworkLocationsV1ResponseMessage =\n BaseApiResponseMessage<PutEntitiesNetworkLocationsV1ApiResponse>;\n\nexport interface PutEntitiesNetworkLocationsV1RequestMessage\n extends BaseApiRequestMessage<\n PutEntitiesNetworkLocationsV1QueryParams,\n PutEntitiesNetworkLocationsV1PostData\n > {\n api: FwmgrRequestApi;\n method: 'putEntitiesNetworkLocationsV1';\n}\n\n// types for putEntitiesPoliciesV2\n\nexport interface PutEntitiesPoliciesV2QueryParams extends BaseUrlParams {\n id?: QueryParam;\n cloneId?: QueryParam;\n}\n\nexport type PutEntitiesPoliciesV2ApiResponse = ApiResponsePayload;\n\nexport interface PutEntitiesPoliciesV2PostData {}\n\nexport type PutEntitiesPoliciesV2ResponseMessage =\n BaseApiResponseMessage<PutEntitiesPoliciesV2ApiResponse>;\n\nexport interface PutEntitiesPoliciesV2RequestMessage\n extends BaseApiRequestMessage<\n PutEntitiesPoliciesV2QueryParams,\n PutEntitiesPoliciesV2PostData\n > {\n api: FwmgrRequestApi;\n method: 'putEntitiesPoliciesV2';\n}\n\n// general types\n\nexport type FwmgrApiRequestMessage =\n | DeleteEntitiesNetworkLocationsV1RequestMessage\n | DeleteEntitiesPoliciesV1RequestMessage\n | DeleteEntitiesRuleGroupsV1RequestMessage\n | GetEntitiesEventsV1RequestMessage\n | GetEntitiesFirewallFieldsV1RequestMessage\n | GetEntitiesNetworkLocationsDetailsV1RequestMessage\n | GetEntitiesNetworkLocationsV1RequestMessage\n | GetEntitiesPlatformsV1RequestMessage\n | GetEntitiesPoliciesV1RequestMessage\n | GetEntitiesRuleGroupsV1RequestMessage\n | GetEntitiesRulesV1RequestMessage\n | GetLibraryEntitiesRuleGroupsV1RequestMessage\n | GetLibraryQueriesRuleGroupsV1RequestMessage\n | GetQueriesEventsV1RequestMessage\n | GetQueriesFirewallFieldsV1RequestMessage\n | GetQueriesNetworkLocationsV1RequestMessage\n | GetQueriesPlatformsV1RequestMessage\n | GetQueriesPolicyRulesV1RequestMessage\n | GetQueriesRuleGroupsV1RequestMessage\n | GetQueriesRulesV1RequestMessage\n | PatchEntitiesNetworkLocationsV1RequestMessage\n | PatchEntitiesRuleGroupsV1RequestMessage\n | PostAggregatesEventsGetV1RequestMessage\n | PostAggregatesPolicyRulesGetV1RequestMessage\n | PostAggregatesRuleGroupsGetV1RequestMessage\n | PostAggregatesRulesGetV1RequestMessage\n | PostEntitiesNetworkLocationsMetadataV1RequestMessage\n | PostEntitiesNetworkLocationsPrecedenceV1RequestMessage\n | PostEntitiesNetworkLocationsV1RequestMessage\n | PostEntitiesOntologyV1RequestMessage\n | PostEntitiesRuleGroupsV1RequestMessage\n | PostEntitiesRulesValidateFilepathV1RequestMessage\n | PutEntitiesNetworkLocationsV1RequestMessage\n | PutEntitiesPoliciesV2RequestMessage;\n\nexport type FwmgrApiResponseMessage =\n | DeleteEntitiesNetworkLocationsV1ResponseMessage\n | DeleteEntitiesPoliciesV1ResponseMessage\n | DeleteEntitiesRuleGroupsV1ResponseMessage\n | GetEntitiesEventsV1ResponseMessage\n | GetEntitiesFirewallFieldsV1ResponseMessage\n | GetEntitiesNetworkLocationsDetailsV1ResponseMessage\n | GetEntitiesNetworkLocationsV1ResponseMessage\n | GetEntitiesPlatformsV1ResponseMessage\n | GetEntitiesPoliciesV1ResponseMessage\n | GetEntitiesRuleGroupsV1ResponseMessage\n | GetEntitiesRulesV1ResponseMessage\n | GetLibraryEntitiesRuleGroupsV1ResponseMessage\n | GetLibraryQueriesRuleGroupsV1ResponseMessage\n | GetQueriesEventsV1ResponseMessage\n | GetQueriesFirewallFieldsV1ResponseMessage\n | GetQueriesNetworkLocationsV1ResponseMessage\n | GetQueriesPlatformsV1ResponseMessage\n | GetQueriesPolicyRulesV1ResponseMessage\n | GetQueriesRuleGroupsV1ResponseMessage\n | GetQueriesRulesV1ResponseMessage\n | PatchEntitiesNetworkLocationsV1ResponseMessage\n | PatchEntitiesRuleGroupsV1ResponseMessage\n | PostAggregatesEventsGetV1ResponseMessage\n | PostAggregatesPolicyRulesGetV1ResponseMessage\n | PostAggregatesRuleGroupsGetV1ResponseMessage\n | PostAggregatesRulesGetV1ResponseMessage\n | PostEntitiesNetworkLocationsMetadataV1ResponseMessage\n | PostEntitiesNetworkLocationsPrecedenceV1ResponseMessage\n | PostEntitiesNetworkLocationsV1ResponseMessage\n | PostEntitiesOntologyV1ResponseMessage\n | PostEntitiesRuleGroupsV1ResponseMessage\n | PostEntitiesRulesValidateFilepathV1ResponseMessage\n | PutEntitiesNetworkLocationsV1ResponseMessage\n | PutEntitiesPoliciesV2ResponseMessage;\n\nexport class FwmgrApiBridge {\n private bridge;\n\n constructor(bridge: Bridge) {\n this.bridge = bridge;\n }\n\n getBridge() {\n return this.bridge;\n }\n\n async deleteEntitiesNetworkLocationsV1(\n urlParams: DeleteEntitiesNetworkLocationsV1QueryParams,\n ): Promise<DeleteEntitiesNetworkLocationsV1ApiResponse> {\n const message: DeleteEntitiesNetworkLocationsV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'deleteEntitiesNetworkLocationsV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async deleteEntitiesPoliciesV1(\n urlParams: DeleteEntitiesPoliciesV1QueryParams,\n ): Promise<DeleteEntitiesPoliciesV1ApiResponse> {\n const message: DeleteEntitiesPoliciesV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'deleteEntitiesPoliciesV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async deleteEntitiesRuleGroupsV1(\n urlParams: DeleteEntitiesRuleGroupsV1QueryParams,\n ): Promise<DeleteEntitiesRuleGroupsV1ApiResponse> {\n const message: DeleteEntitiesRuleGroupsV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'deleteEntitiesRuleGroupsV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getEntitiesEventsV1(\n urlParams: GetEntitiesEventsV1QueryParams,\n ): Promise<GetEntitiesEventsV1ApiResponse> {\n const message: GetEntitiesEventsV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'getEntitiesEventsV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getEntitiesFirewallFieldsV1(\n urlParams: GetEntitiesFirewallFieldsV1QueryParams,\n ): Promise<GetEntitiesFirewallFieldsV1ApiResponse> {\n const message: GetEntitiesFirewallFieldsV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'getEntitiesFirewallFieldsV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getEntitiesNetworkLocationsDetailsV1(\n urlParams: GetEntitiesNetworkLocationsDetailsV1QueryParams,\n ): Promise<GetEntitiesNetworkLocationsDetailsV1ApiResponse> {\n const message: GetEntitiesNetworkLocationsDetailsV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'getEntitiesNetworkLocationsDetailsV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getEntitiesNetworkLocationsV1(\n urlParams: GetEntitiesNetworkLocationsV1QueryParams,\n ): Promise<GetEntitiesNetworkLocationsV1ApiResponse> {\n const message: GetEntitiesNetworkLocationsV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'getEntitiesNetworkLocationsV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getEntitiesPlatformsV1(\n urlParams: GetEntitiesPlatformsV1QueryParams,\n ): Promise<GetEntitiesPlatformsV1ApiResponse> {\n const message: GetEntitiesPlatformsV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'getEntitiesPlatformsV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getEntitiesPoliciesV1(\n urlParams: GetEntitiesPoliciesV1QueryParams,\n ): Promise<GetEntitiesPoliciesV1ApiResponse> {\n const message: GetEntitiesPoliciesV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'getEntitiesPoliciesV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getEntitiesRuleGroupsV1(\n urlParams: GetEntitiesRuleGroupsV1QueryParams,\n ): Promise<GetEntitiesRuleGroupsV1ApiResponse> {\n const message: GetEntitiesRuleGroupsV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'getEntitiesRuleGroupsV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getEntitiesRulesV1(\n urlParams: GetEntitiesRulesV1QueryParams,\n ): Promise<GetEntitiesRulesV1ApiResponse> {\n const message: GetEntitiesRulesV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'getEntitiesRulesV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getLibraryEntitiesRuleGroupsV1(\n urlParams: GetLibraryEntitiesRuleGroupsV1QueryParams,\n ): Promise<GetLibraryEntitiesRuleGroupsV1ApiResponse> {\n const message: GetLibraryEntitiesRuleGroupsV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'getLibraryEntitiesRuleGroupsV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getLibraryQueriesRuleGroupsV1(\n urlParams: GetLibraryQueriesRuleGroupsV1QueryParams = {},\n ): Promise<GetLibraryQueriesRuleGroupsV1ApiResponse> {\n const message: GetLibraryQueriesRuleGroupsV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'getLibraryQueriesRuleGroupsV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getQueriesEventsV1(\n urlParams: GetQueriesEventsV1QueryParams = {},\n ): Promise<GetQueriesEventsV1ApiResponse> {\n const message: GetQueriesEventsV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'getQueriesEventsV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getQueriesFirewallFieldsV1(\n urlParams: GetQueriesFirewallFieldsV1QueryParams = {},\n ): Promise<GetQueriesFirewallFieldsV1ApiResponse> {\n const message: GetQueriesFirewallFieldsV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'getQueriesFirewallFieldsV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getQueriesNetworkLocationsV1(\n urlParams: GetQueriesNetworkLocationsV1QueryParams = {},\n ): Promise<GetQueriesNetworkLocationsV1ApiResponse> {\n const message: GetQueriesNetworkLocationsV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'getQueriesNetworkLocationsV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getQueriesPlatformsV1(\n urlParams: GetQueriesPlatformsV1QueryParams = {},\n ): Promise<GetQueriesPlatformsV1ApiResponse> {\n const message: GetQueriesPlatformsV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'getQueriesPlatformsV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getQueriesPolicyRulesV1(\n urlParams: GetQueriesPolicyRulesV1QueryParams = {},\n ): Promise<GetQueriesPolicyRulesV1ApiResponse> {\n const message: GetQueriesPolicyRulesV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'getQueriesPolicyRulesV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getQueriesRuleGroupsV1(\n urlParams: GetQueriesRuleGroupsV1QueryParams = {},\n ): Promise<GetQueriesRuleGroupsV1ApiResponse> {\n const message: GetQueriesRuleGroupsV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'getQueriesRuleGroupsV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getQueriesRulesV1(\n urlParams: GetQueriesRulesV1QueryParams = {},\n ): Promise<GetQueriesRulesV1ApiResponse> {\n const message: GetQueriesRulesV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'getQueriesRulesV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async patchEntitiesNetworkLocationsV1(\n postBody: PatchEntitiesNetworkLocationsV1PostData,\n urlParams: PatchEntitiesNetworkLocationsV1QueryParams = {},\n ): Promise<PatchEntitiesNetworkLocationsV1ApiResponse> {\n const message: PatchEntitiesNetworkLocationsV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'patchEntitiesNetworkLocationsV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async patchEntitiesRuleGroupsV1(\n postBody: PatchEntitiesRuleGroupsV1PostData,\n urlParams: PatchEntitiesRuleGroupsV1QueryParams = {},\n ): Promise<PatchEntitiesRuleGroupsV1ApiResponse> {\n const message: PatchEntitiesRuleGroupsV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'patchEntitiesRuleGroupsV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postAggregatesEventsGetV1(\n postBody: PostAggregatesEventsGetV1PostData,\n urlParams: PostAggregatesEventsGetV1QueryParams = {},\n ): Promise<PostAggregatesEventsGetV1ApiResponse> {\n const message: PostAggregatesEventsGetV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'postAggregatesEventsGetV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postAggregatesPolicyRulesGetV1(\n postBody: PostAggregatesPolicyRulesGetV1PostData,\n urlParams: PostAggregatesPolicyRulesGetV1QueryParams = {},\n ): Promise<PostAggregatesPolicyRulesGetV1ApiResponse> {\n const message: PostAggregatesPolicyRulesGetV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'postAggregatesPolicyRulesGetV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postAggregatesRuleGroupsGetV1(\n postBody: PostAggregatesRuleGroupsGetV1PostData,\n urlParams: PostAggregatesRuleGroupsGetV1QueryParams = {},\n ): Promise<PostAggregatesRuleGroupsGetV1ApiResponse> {\n const message: PostAggregatesRuleGroupsGetV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'postAggregatesRuleGroupsGetV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postAggregatesRulesGetV1(\n postBody: PostAggregatesRulesGetV1PostData,\n urlParams: PostAggregatesRulesGetV1QueryParams = {},\n ): Promise<PostAggregatesRulesGetV1ApiResponse> {\n const message: PostAggregatesRulesGetV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'postAggregatesRulesGetV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesNetworkLocationsMetadataV1(\n postBody: PostEntitiesNetworkLocationsMetadataV1PostData,\n urlParams: PostEntitiesNetworkLocationsMetadataV1QueryParams = {},\n ): Promise<PostEntitiesNetworkLocationsMetadataV1ApiResponse> {\n const message: PostEntitiesNetworkLocationsMetadataV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'postEntitiesNetworkLocationsMetadataV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesNetworkLocationsPrecedenceV1(\n postBody: PostEntitiesNetworkLocationsPrecedenceV1PostData,\n urlParams: PostEntitiesNetworkLocationsPrecedenceV1QueryParams = {},\n ): Promise<PostEntitiesNetworkLocationsPrecedenceV1ApiResponse> {\n const message: PostEntitiesNetworkLocationsPrecedenceV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'postEntitiesNetworkLocationsPrecedenceV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesNetworkLocationsV1(\n postBody: PostEntitiesNetworkLocationsV1PostData,\n urlParams: PostEntitiesNetworkLocationsV1QueryParams = {},\n ): Promise<PostEntitiesNetworkLocationsV1ApiResponse> {\n const message: PostEntitiesNetworkLocationsV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'postEntitiesNetworkLocationsV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesOntologyV1(\n postBody: PostEntitiesOntologyV1PostData,\n urlParams: PostEntitiesOntologyV1QueryParams = {},\n ): Promise<PostEntitiesOntologyV1ApiResponse> {\n const message: PostEntitiesOntologyV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'postEntitiesOntologyV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesRuleGroupsV1(\n postBody: PostEntitiesRuleGroupsV1PostData,\n urlParams: PostEntitiesRuleGroupsV1QueryParams = {},\n ): Promise<PostEntitiesRuleGroupsV1ApiResponse> {\n const message: PostEntitiesRuleGroupsV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'postEntitiesRuleGroupsV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesRulesValidateFilepathV1(\n postBody: PostEntitiesRulesValidateFilepathV1PostData,\n urlParams: PostEntitiesRulesValidateFilepathV1QueryParams = {},\n ): Promise<PostEntitiesRulesValidateFilepathV1ApiResponse> {\n const message: PostEntitiesRulesValidateFilepathV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'postEntitiesRulesValidateFilepathV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async putEntitiesNetworkLocationsV1(\n postBody: PutEntitiesNetworkLocationsV1PostData,\n urlParams: PutEntitiesNetworkLocationsV1QueryParams = {},\n ): Promise<PutEntitiesNetworkLocationsV1ApiResponse> {\n const message: PutEntitiesNetworkLocationsV1RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'putEntitiesNetworkLocationsV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async putEntitiesPoliciesV2(\n postBody: PutEntitiesPoliciesV2PostData,\n urlParams: PutEntitiesPoliciesV2QueryParams = {},\n ): Promise<PutEntitiesPoliciesV2ApiResponse> {\n const message: PutEntitiesPoliciesV2RequestMessage = {\n type: 'api',\n api: 'fwmgr',\n method: 'putEntitiesPoliciesV2',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n}\n","/**\n *\n * This file is autogenerated.\n *\n * DO NOT EDIT DIRECTLY\n *\n **/\n\nimport type { Bridge } from '../../bridge';\n\nimport type {\n ApiResponsePayload,\n BaseApiRequestMessage,\n BaseApiResponseMessage,\n BaseUrlParams,\n QueryParam,\n} from '../../types';\n\nexport type IncidentsRequestApi = 'incidents';\n\nexport type CommonApiResponseMessage =\n BaseApiResponseMessage<ApiResponsePayload>;\n\nexport interface CommonApiRequestMessage\n extends BaseApiRequestMessage<BaseUrlParams, unknown> {\n api: IncidentsRequestApi;\n}\n\n// types for getCombinedCrowdscoresV1\n\nexport interface GetCombinedCrowdscoresV1QueryParams extends BaseUrlParams {\n filter?: string;\n limit?: QueryParam;\n offset?: QueryParam;\n sort?: QueryParam;\n}\n\nexport type GetCombinedCrowdscoresV1ApiResponse = ApiResponsePayload;\n\nexport type GetCombinedCrowdscoresV1ResponseMessage =\n BaseApiResponseMessage<GetCombinedCrowdscoresV1ApiResponse>;\n\nexport interface GetCombinedCrowdscoresV1RequestMessage\n extends BaseApiRequestMessage<GetCombinedCrowdscoresV1QueryParams> {\n api: IncidentsRequestApi;\n method: 'getCombinedCrowdscoresV1';\n}\n\n// types for getQueriesBehaviorsV1\n\nexport interface GetQueriesBehaviorsV1QueryParams extends BaseUrlParams {\n filter?: string;\n limit?: QueryParam;\n offset?: QueryParam;\n sort?: QueryParam;\n}\n\nexport type GetQueriesBehaviorsV1ApiResponse = ApiResponsePayload;\n\nexport type GetQueriesBehaviorsV1ResponseMessage =\n BaseApiResponseMessage<GetQueriesBehaviorsV1ApiResponse>;\n\nexport interface GetQueriesBehaviorsV1RequestMessage\n extends BaseApiRequestMessage<GetQueriesBehaviorsV1QueryParams> {\n api: IncidentsRequestApi;\n method: 'getQueriesBehaviorsV1';\n}\n\n// types for getQueriesIncidentsV1\n\nexport interface GetQueriesIncidentsV1QueryParams extends BaseUrlParams {\n filter?: string;\n limit?: QueryParam;\n offset?: QueryParam;\n sort?: QueryParam;\n}\n\nexport type GetQueriesIncidentsV1ApiResponse = ApiResponsePayload;\n\nexport type GetQueriesIncidentsV1ResponseMessage =\n BaseApiResponseMessage<GetQueriesIncidentsV1ApiResponse>;\n\nexport interface GetQueriesIncidentsV1RequestMessage\n extends BaseApiRequestMessage<GetQueriesIncidentsV1QueryParams> {\n api: IncidentsRequestApi;\n method: 'getQueriesIncidentsV1';\n}\n\n// types for postAggregatesBehaviorsGetV1\n\nexport type PostAggregatesBehaviorsGetV1QueryParams = BaseUrlParams;\n\nexport type PostAggregatesBehaviorsGetV1ApiResponse = ApiResponsePayload;\n\nexport interface PostAggregatesBehaviorsGetV1PostData {}\n\nexport type PostAggregatesBehaviorsGetV1ResponseMessage =\n BaseApiResponseMessage<PostAggregatesBehaviorsGetV1ApiResponse>;\n\nexport interface PostAggregatesBehaviorsGetV1RequestMessage\n extends BaseApiRequestMessage<\n PostAggregatesBehaviorsGetV1QueryParams,\n PostAggregatesBehaviorsGetV1PostData\n > {\n api: IncidentsRequestApi;\n method: 'postAggregatesBehaviorsGetV1';\n}\n\n// types for postAggregatesIncidentsGetV1\n\nexport type PostAggregatesIncidentsGetV1QueryParams = BaseUrlParams;\n\nexport type PostAggregatesIncidentsGetV1ApiResponse = ApiResponsePayload;\n\nexport interface PostAggregatesIncidentsGetV1PostData {}\n\nexport type PostAggregatesIncidentsGetV1ResponseMessage =\n BaseApiResponseMessage<PostAggregatesIncidentsGetV1ApiResponse>;\n\nexport interface PostAggregatesIncidentsGetV1RequestMessage\n extends BaseApiRequestMessage<\n PostAggregatesIncidentsGetV1QueryParams,\n PostAggregatesIncidentsGetV1PostData\n > {\n api: IncidentsRequestApi;\n method: 'postAggregatesIncidentsGetV1';\n}\n\n// types for postEntitiesBehaviorsGetV1\n\nexport type PostEntitiesBehaviorsGetV1QueryParams = BaseUrlParams;\n\nexport type PostEntitiesBehaviorsGetV1ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesBehaviorsGetV1PostData {}\n\nexport type PostEntitiesBehaviorsGetV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesBehaviorsGetV1ApiResponse>;\n\nexport interface PostEntitiesBehaviorsGetV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesBehaviorsGetV1QueryParams,\n PostEntitiesBehaviorsGetV1PostData\n > {\n api: IncidentsRequestApi;\n method: 'postEntitiesBehaviorsGetV1';\n}\n\n// types for postEntitiesIncidentActionsV1\n\nexport interface PostEntitiesIncidentActionsV1QueryParams\n extends BaseUrlParams {\n note?: QueryParam;\n}\n\nexport type PostEntitiesIncidentActionsV1ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesIncidentActionsV1PostData {}\n\nexport type PostEntitiesIncidentActionsV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesIncidentActionsV1ApiResponse>;\n\nexport interface PostEntitiesIncidentActionsV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesIncidentActionsV1QueryParams,\n PostEntitiesIncidentActionsV1PostData\n > {\n api: IncidentsRequestApi;\n method: 'postEntitiesIncidentActionsV1';\n}\n\n// types for postEntitiesIncidentsGetV1\n\nexport type PostEntitiesIncidentsGetV1QueryParams = BaseUrlParams;\n\nexport type PostEntitiesIncidentsGetV1ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesIncidentsGetV1PostData {}\n\nexport type PostEntitiesIncidentsGetV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesIncidentsGetV1ApiResponse>;\n\nexport interface PostEntitiesIncidentsGetV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesIncidentsGetV1QueryParams,\n PostEntitiesIncidentsGetV1PostData\n > {\n api: IncidentsRequestApi;\n method: 'postEntitiesIncidentsGetV1';\n}\n\n// general types\n\nexport type IncidentsApiRequestMessage =\n | GetCombinedCrowdscoresV1RequestMessage\n | GetQueriesBehaviorsV1RequestMessage\n | GetQueriesIncidentsV1RequestMessage\n | PostAggregatesBehaviorsGetV1RequestMessage\n | PostAggregatesIncidentsGetV1RequestMessage\n | PostEntitiesBehaviorsGetV1RequestMessage\n | PostEntitiesIncidentActionsV1RequestMessage\n | PostEntitiesIncidentsGetV1RequestMessage;\n\nexport type IncidentsApiResponseMessage =\n | GetCombinedCrowdscoresV1ResponseMessage\n | GetQueriesBehaviorsV1ResponseMessage\n | GetQueriesIncidentsV1ResponseMessage\n | PostAggregatesBehaviorsGetV1ResponseMessage\n | PostAggregatesIncidentsGetV1ResponseMessage\n | PostEntitiesBehaviorsGetV1ResponseMessage\n | PostEntitiesIncidentActionsV1ResponseMessage\n | PostEntitiesIncidentsGetV1ResponseMessage;\n\nexport class IncidentsApiBridge {\n private bridge;\n\n constructor(bridge: Bridge) {\n this.bridge = bridge;\n }\n\n getBridge() {\n return this.bridge;\n }\n\n async getCombinedCrowdscoresV1(\n urlParams: GetCombinedCrowdscoresV1QueryParams = {},\n ): Promise<GetCombinedCrowdscoresV1ApiResponse> {\n const message: GetCombinedCrowdscoresV1RequestMessage = {\n type: 'api',\n api: 'incidents',\n method: 'getCombinedCrowdscoresV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getQueriesBehaviorsV1(\n urlParams: GetQueriesBehaviorsV1QueryParams = {},\n ): Promise<GetQueriesBehaviorsV1ApiResponse> {\n const message: GetQueriesBehaviorsV1RequestMessage = {\n type: 'api',\n api: 'incidents',\n method: 'getQueriesBehaviorsV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getQueriesIncidentsV1(\n urlParams: GetQueriesIncidentsV1QueryParams = {},\n ): Promise<GetQueriesIncidentsV1ApiResponse> {\n const message: GetQueriesIncidentsV1RequestMessage = {\n type: 'api',\n api: 'incidents',\n method: 'getQueriesIncidentsV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postAggregatesBehaviorsGetV1(\n postBody: PostAggregatesBehaviorsGetV1PostData,\n urlParams: PostAggregatesBehaviorsGetV1QueryParams = {},\n ): Promise<PostAggregatesBehaviorsGetV1ApiResponse> {\n const message: PostAggregatesBehaviorsGetV1RequestMessage = {\n type: 'api',\n api: 'incidents',\n method: 'postAggregatesBehaviorsGetV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postAggregatesIncidentsGetV1(\n postBody: PostAggregatesIncidentsGetV1PostData,\n urlParams: PostAggregatesIncidentsGetV1QueryParams = {},\n ): Promise<PostAggregatesIncidentsGetV1ApiResponse> {\n const message: PostAggregatesIncidentsGetV1RequestMessage = {\n type: 'api',\n api: 'incidents',\n method: 'postAggregatesIncidentsGetV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesBehaviorsGetV1(\n postBody: PostEntitiesBehaviorsGetV1PostData,\n urlParams: PostEntitiesBehaviorsGetV1QueryParams = {},\n ): Promise<PostEntitiesBehaviorsGetV1ApiResponse> {\n const message: PostEntitiesBehaviorsGetV1RequestMessage = {\n type: 'api',\n api: 'incidents',\n method: 'postEntitiesBehaviorsGetV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesIncidentActionsV1(\n postBody: PostEntitiesIncidentActionsV1PostData,\n urlParams: PostEntitiesIncidentActionsV1QueryParams = {},\n ): Promise<PostEntitiesIncidentActionsV1ApiResponse> {\n const message: PostEntitiesIncidentActionsV1RequestMessage = {\n type: 'api',\n api: 'incidents',\n method: 'postEntitiesIncidentActionsV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesIncidentsGetV1(\n postBody: PostEntitiesIncidentsGetV1PostData,\n urlParams: PostEntitiesIncidentsGetV1QueryParams = {},\n ): Promise<PostEntitiesIncidentsGetV1ApiResponse> {\n const message: PostEntitiesIncidentsGetV1RequestMessage = {\n type: 'api',\n api: 'incidents',\n method: 'postEntitiesIncidentsGetV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n}\n","/**\n *\n * This file is autogenerated.\n *\n * DO NOT EDIT DIRECTLY\n *\n **/\n\nimport type { Bridge } from '../../bridge';\n\nimport type {\n ApiResponsePayload,\n BaseApiRequestMessage,\n BaseApiResponseMessage,\n BaseUrlParams,\n QueryParam,\n} from '../../types';\n\nexport type LoggingapiRequestApi = 'loggingapi';\n\nexport type CommonApiResponseMessage =\n BaseApiResponseMessage<ApiResponsePayload>;\n\nexport interface CommonApiRequestMessage\n extends BaseApiRequestMessage<BaseUrlParams, unknown> {\n api: LoggingapiRequestApi;\n}\n\n// types for getEntitiesSavedSearchesExecuteV1\n\nexport interface GetEntitiesSavedSearchesExecuteV1QueryParams\n extends BaseUrlParams {\n version?: QueryParam;\n jobId: QueryParam;\n detailed?: QueryParam;\n offset?: QueryParam;\n}\n\nexport type GetEntitiesSavedSearchesExecuteV1ApiResponse = ApiResponsePayload;\n\nexport type GetEntitiesSavedSearchesExecuteV1ResponseMessage =\n BaseApiResponseMessage<GetEntitiesSavedSearchesExecuteV1ApiResponse>;\n\nexport interface GetEntitiesSavedSearchesExecuteV1RequestMessage\n extends BaseApiRequestMessage<GetEntitiesSavedSearchesExecuteV1QueryParams> {\n api: LoggingapiRequestApi;\n method: 'getEntitiesSavedSearchesExecuteV1';\n}\n\n// types for postEntitiesSavedSearchesDynamicExecuteV1\n\nexport type PostEntitiesSavedSearchesDynamicExecuteV1QueryParams =\n BaseUrlParams;\n\nexport type PostEntitiesSavedSearchesDynamicExecuteV1ApiResponse =\n ApiResponsePayload;\n\nexport interface PostEntitiesSavedSearchesDynamicExecuteV1PostData {}\n\nexport type PostEntitiesSavedSearchesDynamicExecuteV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesSavedSearchesDynamicExecuteV1ApiResponse>;\n\nexport interface PostEntitiesSavedSearchesDynamicExecuteV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesSavedSearchesDynamicExecuteV1QueryParams,\n PostEntitiesSavedSearchesDynamicExecuteV1PostData\n > {\n api: LoggingapiRequestApi;\n method: 'postEntitiesSavedSearchesDynamicExecuteV1';\n}\n\n// types for postEntitiesSavedSearchesExecuteV1\n\nexport interface PostEntitiesSavedSearchesExecuteV1QueryParams\n extends BaseUrlParams {\n includeTestData?: QueryParam;\n mode?: QueryParam;\n version?: QueryParam;\n metadata?: QueryParam;\n detailed?: QueryParam;\n}\n\nexport type PostEntitiesSavedSearchesExecuteV1ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesSavedSearchesExecuteV1PostData {}\n\nexport type PostEntitiesSavedSearchesExecuteV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesSavedSearchesExecuteV1ApiResponse>;\n\nexport interface PostEntitiesSavedSearchesExecuteV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesSavedSearchesExecuteV1QueryParams,\n PostEntitiesSavedSearchesExecuteV1PostData\n > {\n api: LoggingapiRequestApi;\n method: 'postEntitiesSavedSearchesExecuteV1';\n}\n\n// types for postEntitiesSavedSearchesIngestV1\n\nexport type PostEntitiesSavedSearchesIngestV1QueryParams = BaseUrlParams;\n\nexport type PostEntitiesSavedSearchesIngestV1ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesSavedSearchesIngestV1PostData {}\n\nexport type PostEntitiesSavedSearchesIngestV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesSavedSearchesIngestV1ApiResponse>;\n\nexport interface PostEntitiesSavedSearchesIngestV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesSavedSearchesIngestV1QueryParams,\n PostEntitiesSavedSearchesIngestV1PostData\n > {\n api: LoggingapiRequestApi;\n method: 'postEntitiesSavedSearchesIngestV1';\n}\n\n// general types\n\nexport type LoggingapiApiRequestMessage =\n | GetEntitiesSavedSearchesExecuteV1RequestMessage\n | PostEntitiesSavedSearchesExecuteV1RequestMessage;\n\nexport type LoggingapiApiResponseMessage =\n | GetEntitiesSavedSearchesExecuteV1ResponseMessage\n | PostEntitiesSavedSearchesExecuteV1ResponseMessage;\n\nexport class LoggingapiApiBridge {\n private bridge;\n\n constructor(bridge: Bridge) {\n this.bridge = bridge;\n }\n\n getBridge() {\n return this.bridge;\n }\n\n async getEntitiesSavedSearchesExecuteV1(\n urlParams: GetEntitiesSavedSearchesExecuteV1QueryParams,\n ): Promise<GetEntitiesSavedSearchesExecuteV1ApiResponse> {\n const message: GetEntitiesSavedSearchesExecuteV1RequestMessage = {\n type: 'api',\n api: 'loggingapi',\n method: 'getEntitiesSavedSearchesExecuteV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesSavedSearchesExecuteV1(\n postBody: PostEntitiesSavedSearchesExecuteV1PostData,\n urlParams: PostEntitiesSavedSearchesExecuteV1QueryParams = {},\n ): Promise<PostEntitiesSavedSearchesExecuteV1ApiResponse> {\n const message: PostEntitiesSavedSearchesExecuteV1RequestMessage = {\n type: 'api',\n api: 'loggingapi',\n method: 'postEntitiesSavedSearchesExecuteV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n}\n","/**\n *\n * This file is autogenerated.\n *\n * DO NOT EDIT DIRECTLY\n *\n **/\n\nimport type { Bridge } from '../../bridge';\n\nimport type {\n ApiResponsePayload,\n BaseApiRequestMessage,\n BaseApiResponseMessage,\n BaseUrlParams,\n QueryParam,\n} from '../../types';\n\nexport type MitreRequestApi = 'mitre';\n\nexport type CommonApiResponseMessage =\n BaseApiResponseMessage<ApiResponsePayload>;\n\nexport interface CommonApiRequestMessage\n extends BaseApiRequestMessage<BaseUrlParams, unknown> {\n api: MitreRequestApi;\n}\n\n// types for getEntitiesMatrixV1\n\nexport interface GetEntitiesMatrixV1QueryParams extends BaseUrlParams {\n version?: QueryParam;\n}\n\nexport type GetEntitiesMatrixV1ApiResponse = ApiResponsePayload;\n\nexport type GetEntitiesMatrixV1ResponseMessage =\n BaseApiResponseMessage<GetEntitiesMatrixV1ApiResponse>;\n\nexport interface GetEntitiesMatrixV1RequestMessage\n extends BaseApiRequestMessage<GetEntitiesMatrixV1QueryParams> {\n api: MitreRequestApi;\n method: 'getEntitiesMatrixV1';\n}\n\n// general types\n\nexport type MitreApiRequestMessage = GetEntitiesMatrixV1RequestMessage;\n\nexport type MitreApiResponseMessage = GetEntitiesMatrixV1ResponseMessage;\n\nexport class MitreApiBridge {\n private bridge;\n\n constructor(bridge: Bridge) {\n this.bridge = bridge;\n }\n\n getBridge() {\n return this.bridge;\n }\n\n async getEntitiesMatrixV1(\n urlParams: GetEntitiesMatrixV1QueryParams = {},\n ): Promise<GetEntitiesMatrixV1ApiResponse> {\n const message: GetEntitiesMatrixV1RequestMessage = {\n type: 'api',\n api: 'mitre',\n method: 'getEntitiesMatrixV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n}\n","/**\n *\n * This file is autogenerated.\n *\n * DO NOT EDIT DIRECTLY\n *\n **/\n\nimport type { Bridge } from '../../bridge';\n\nimport type {\n ApiResponsePayload,\n BaseApiRequestMessage,\n BaseApiResponseMessage,\n BaseUrlParams,\n QueryParam,\n} from '../../types';\n\nexport type PluginsRequestApi = 'plugins';\n\nexport type CommonApiResponseMessage =\n BaseApiResponseMessage<ApiResponsePayload>;\n\nexport interface CommonApiRequestMessage\n extends BaseApiRequestMessage<BaseUrlParams, unknown> {\n api: PluginsRequestApi;\n}\n\n// types for getEntitiesConfigsV1\n\nexport interface GetEntitiesConfigsV1QueryParams extends BaseUrlParams {\n ids?: QueryParam;\n appId?: QueryParam;\n}\n\nexport type GetEntitiesConfigsV1ApiResponse = ApiResponsePayload;\n\nexport type GetEntitiesConfigsV1ResponseMessage =\n BaseApiResponseMessage<GetEntitiesConfigsV1ApiResponse>;\n\nexport interface GetEntitiesConfigsV1RequestMessage\n extends BaseApiRequestMessage<GetEntitiesConfigsV1QueryParams> {\n api: PluginsRequestApi;\n method: 'getEntitiesConfigsV1';\n}\n\n// types for postEntitiesExecuteDraftV1\n\nexport type PostEntitiesExecuteDraftV1QueryParams = BaseUrlParams;\n\nexport type PostEntitiesExecuteDraftV1ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesExecuteDraftV1PostData {}\n\nexport type PostEntitiesExecuteDraftV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesExecuteDraftV1ApiResponse>;\n\nexport interface PostEntitiesExecuteDraftV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesExecuteDraftV1QueryParams,\n PostEntitiesExecuteDraftV1PostData\n > {\n api: PluginsRequestApi;\n method: 'postEntitiesExecuteDraftV1';\n}\n\n// types for postEntitiesExecuteV1\n\nexport type PostEntitiesExecuteV1QueryParams = BaseUrlParams;\n\nexport type PostEntitiesExecuteV1ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesExecuteV1PostData {}\n\nexport type PostEntitiesExecuteV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesExecuteV1ApiResponse>;\n\nexport interface PostEntitiesExecuteV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesExecuteV1QueryParams,\n PostEntitiesExecuteV1PostData\n > {\n api: PluginsRequestApi;\n method: 'postEntitiesExecuteV1';\n}\n\n// general types\n\nexport type PluginsApiRequestMessage =\n | GetEntitiesConfigsV1RequestMessage\n | PostEntitiesExecuteDraftV1RequestMessage\n | PostEntitiesExecuteV1RequestMessage;\n\nexport type PluginsApiResponseMessage =\n | GetEntitiesConfigsV1ResponseMessage\n | PostEntitiesExecuteDraftV1ResponseMessage\n | PostEntitiesExecuteV1ResponseMessage;\n\nexport class PluginsApiBridge {\n private bridge;\n\n constructor(bridge: Bridge) {\n this.bridge = bridge;\n }\n\n getBridge() {\n return this.bridge;\n }\n\n async getEntitiesConfigsV1(\n urlParams: GetEntitiesConfigsV1QueryParams = {},\n ): Promise<GetEntitiesConfigsV1ApiResponse> {\n const message: GetEntitiesConfigsV1RequestMessage = {\n type: 'api',\n api: 'plugins',\n method: 'getEntitiesConfigsV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesExecuteDraftV1(\n postBody: PostEntitiesExecuteDraftV1PostData,\n urlParams: PostEntitiesExecuteDraftV1QueryParams = {},\n ): Promise<PostEntitiesExecuteDraftV1ApiResponse> {\n const message: PostEntitiesExecuteDraftV1RequestMessage = {\n type: 'api',\n api: 'plugins',\n method: 'postEntitiesExecuteDraftV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesExecuteV1(\n postBody: PostEntitiesExecuteV1PostData,\n urlParams: PostEntitiesExecuteV1QueryParams = {},\n ): Promise<PostEntitiesExecuteV1ApiResponse> {\n const message: PostEntitiesExecuteV1RequestMessage = {\n type: 'api',\n api: 'plugins',\n method: 'postEntitiesExecuteV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n}\n","/**\n *\n * This file is autogenerated.\n *\n * DO NOT EDIT DIRECTLY\n *\n **/\n\nimport type { Bridge } from '../../bridge';\n\nimport type {\n ApiResponsePayload,\n BaseApiRequestMessage,\n BaseApiResponseMessage,\n BaseUrlParams,\n QueryParam,\n} from '../../types';\n\nexport type RemoteResponseRequestApi = 'remoteResponse';\n\nexport type CommonApiResponseMessage =\n BaseApiResponseMessage<ApiResponsePayload>;\n\nexport interface CommonApiRequestMessage\n extends BaseApiRequestMessage<BaseUrlParams, unknown> {\n api: RemoteResponseRequestApi;\n}\n\n// types for getEntitiesAppCommandV1\n\nexport interface GetEntitiesAppCommandV1QueryParams extends BaseUrlParams {\n cloudRequestId: QueryParam;\n sequenceId: QueryParam;\n}\n\nexport type GetEntitiesAppCommandV1ApiResponse = ApiResponsePayload;\n\nexport type GetEntitiesAppCommandV1ResponseMessage =\n BaseApiResponseMessage<GetEntitiesAppCommandV1ApiResponse>;\n\nexport interface GetEntitiesAppCommandV1RequestMessage\n extends BaseApiRequestMessage<GetEntitiesAppCommandV1QueryParams> {\n api: RemoteResponseRequestApi;\n method: 'getEntitiesAppCommandV1';\n}\n\n// types for getEntitiesPutFilesV2\n\nexport interface GetEntitiesPutFilesV2QueryParams extends BaseUrlParams {\n ids: QueryParam;\n}\n\nexport type GetEntitiesPutFilesV2ApiResponse = ApiResponsePayload;\n\nexport type GetEntitiesPutFilesV2ResponseMessage =\n BaseApiResponseMessage<GetEntitiesPutFilesV2ApiResponse>;\n\nexport interface GetEntitiesPutFilesV2RequestMessage\n extends BaseApiRequestMessage<GetEntitiesPutFilesV2QueryParams> {\n api: RemoteResponseRequestApi;\n method: 'getEntitiesPutFilesV2';\n}\n\n// types for getQueriesPutFilesV1\n\nexport interface GetQueriesPutFilesV1QueryParams extends BaseUrlParams {\n filter?: string;\n limit?: QueryParam;\n offset?: QueryParam;\n sort?: QueryParam;\n}\n\nexport type GetQueriesPutFilesV1ApiResponse = ApiResponsePayload;\n\nexport type GetQueriesPutFilesV1ResponseMessage =\n BaseApiResponseMessage<GetQueriesPutFilesV1ApiResponse>;\n\nexport interface GetQueriesPutFilesV1RequestMessage\n extends BaseApiRequestMessage<GetQueriesPutFilesV1QueryParams> {\n api: RemoteResponseRequestApi;\n method: 'getQueriesPutFilesV1';\n}\n\n// types for getQueriesScriptsV1\n\nexport interface GetQueriesScriptsV1QueryParams extends BaseUrlParams {\n filter?: string;\n limit?: QueryParam;\n offset?: QueryParam;\n sort?: QueryParam;\n}\n\nexport type GetQueriesScriptsV1ApiResponse = ApiResponsePayload;\n\nexport type GetQueriesScriptsV1ResponseMessage =\n BaseApiResponseMessage<GetQueriesScriptsV1ApiResponse>;\n\nexport interface GetQueriesScriptsV1RequestMessage\n extends BaseApiRequestMessage<GetQueriesScriptsV1QueryParams> {\n api: RemoteResponseRequestApi;\n method: 'getQueriesScriptsV1';\n}\n\n// types for postEntitiesAppCommandV1\n\nexport interface PostEntitiesAppCommandV1QueryParams extends BaseUrlParams {\n appScriptVersion?: QueryParam;\n}\n\nexport type PostEntitiesAppCommandV1ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesAppCommandV1PostData {}\n\nexport type PostEntitiesAppCommandV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesAppCommandV1ApiResponse>;\n\nexport interface PostEntitiesAppCommandV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesAppCommandV1QueryParams,\n PostEntitiesAppCommandV1PostData\n > {\n api: RemoteResponseRequestApi;\n method: 'postEntitiesAppCommandV1';\n}\n\n// types for postEntitiesAppRefreshSessionsV1\n\nexport type PostEntitiesAppRefreshSessionsV1QueryParams = BaseUrlParams;\n\nexport type PostEntitiesAppRefreshSessionsV1ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesAppRefreshSessionsV1PostData {}\n\nexport type PostEntitiesAppRefreshSessionsV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesAppRefreshSessionsV1ApiResponse>;\n\nexport interface PostEntitiesAppRefreshSessionsV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesAppRefreshSessionsV1QueryParams,\n PostEntitiesAppRefreshSessionsV1PostData\n > {\n api: RemoteResponseRequestApi;\n method: 'postEntitiesAppRefreshSessionsV1';\n}\n\n// types for postEntitiesAppSessionsV1\n\nexport interface PostEntitiesAppSessionsV1QueryParams extends BaseUrlParams {\n timeout?: QueryParam;\n timeoutDuration?: QueryParam;\n}\n\nexport type PostEntitiesAppSessionsV1ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesAppSessionsV1PostData {}\n\nexport type PostEntitiesAppSessionsV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesAppSessionsV1ApiResponse>;\n\nexport interface PostEntitiesAppSessionsV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesAppSessionsV1QueryParams,\n PostEntitiesAppSessionsV1PostData\n > {\n api: RemoteResponseRequestApi;\n method: 'postEntitiesAppSessionsV1';\n}\n\n// types for postEntitiesPutFilesV2\n\nexport type PostEntitiesPutFilesV2QueryParams = BaseUrlParams;\n\nexport type PostEntitiesPutFilesV2ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesPutFilesV2PostData {}\n\nexport type PostEntitiesPutFilesV2ResponseMessage =\n BaseApiResponseMessage<PostEntitiesPutFilesV2ApiResponse>;\n\nexport interface PostEntitiesPutFilesV2RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesPutFilesV2QueryParams,\n PostEntitiesPutFilesV2PostData\n > {\n api: RemoteResponseRequestApi;\n method: 'postEntitiesPutFilesV2';\n}\n\n// types for postEntitiesScriptsGetV2\n\nexport type PostEntitiesScriptsGetV2QueryParams = BaseUrlParams;\n\nexport type PostEntitiesScriptsGetV2ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesScriptsGetV2PostData {}\n\nexport type PostEntitiesScriptsGetV2ResponseMessage =\n BaseApiResponseMessage<PostEntitiesScriptsGetV2ApiResponse>;\n\nexport interface PostEntitiesScriptsGetV2RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesScriptsGetV2QueryParams,\n PostEntitiesScriptsGetV2PostData\n > {\n api: RemoteResponseRequestApi;\n method: 'postEntitiesScriptsGetV2';\n}\n\n// general types\n\nexport type RemoteResponseApiRequestMessage =\n | GetEntitiesAppCommandV1RequestMessage\n | GetQueriesScriptsV1RequestMessage\n | PostEntitiesAppCommandV1RequestMessage\n | PostEntitiesAppRefreshSessionsV1RequestMessage\n | PostEntitiesAppSessionsV1RequestMessage\n | PostEntitiesScriptsGetV2RequestMessage;\n\nexport type RemoteResponseApiResponseMessage =\n | GetEntitiesAppCommandV1ResponseMessage\n | GetQueriesScriptsV1ResponseMessage\n | PostEntitiesAppCommandV1ResponseMessage\n | PostEntitiesAppRefreshSessionsV1ResponseMessage\n | PostEntitiesAppSessionsV1ResponseMessage\n | PostEntitiesScriptsGetV2ResponseMessage;\n\nexport class RemoteResponseApiBridge {\n private bridge;\n\n constructor(bridge: Bridge) {\n this.bridge = bridge;\n }\n\n getBridge() {\n return this.bridge;\n }\n\n async getEntitiesAppCommandV1(\n urlParams: GetEntitiesAppCommandV1QueryParams,\n ): Promise<GetEntitiesAppCommandV1ApiResponse> {\n const message: GetEntitiesAppCommandV1RequestMessage = {\n type: 'api',\n api: 'remoteResponse',\n method: 'getEntitiesAppCommandV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getScriptIds(\n urlParams: GetQueriesScriptsV1QueryParams = {},\n ): Promise<GetQueriesScriptsV1ApiResponse> {\n const message: GetQueriesScriptsV1RequestMessage = {\n type: 'api',\n api: 'remoteResponse',\n method: 'getQueriesScriptsV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesAppCommandV1(\n postBody: PostEntitiesAppCommandV1PostData,\n urlParams: PostEntitiesAppCommandV1QueryParams = {},\n ): Promise<PostEntitiesAppCommandV1ApiResponse> {\n const message: PostEntitiesAppCommandV1RequestMessage = {\n type: 'api',\n api: 'remoteResponse',\n method: 'postEntitiesAppCommandV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesAppRefreshSessionsV1(\n postBody: PostEntitiesAppRefreshSessionsV1PostData,\n urlParams: PostEntitiesAppRefreshSessionsV1QueryParams = {},\n ): Promise<PostEntitiesAppRefreshSessionsV1ApiResponse> {\n const message: PostEntitiesAppRefreshSessionsV1RequestMessage = {\n type: 'api',\n api: 'remoteResponse',\n method: 'postEntitiesAppRefreshSessionsV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesAppSessionsV1(\n postBody: PostEntitiesAppSessionsV1PostData,\n urlParams: PostEntitiesAppSessionsV1QueryParams = {},\n ): Promise<PostEntitiesAppSessionsV1ApiResponse> {\n const message: PostEntitiesAppSessionsV1RequestMessage = {\n type: 'api',\n api: 'remoteResponse',\n method: 'postEntitiesAppSessionsV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async getScriptEntities(\n postBody: PostEntitiesScriptsGetV2PostData,\n urlParams: PostEntitiesScriptsGetV2QueryParams = {},\n ): Promise<PostEntitiesScriptsGetV2ApiResponse> {\n const message: PostEntitiesScriptsGetV2RequestMessage = {\n type: 'api',\n api: 'remoteResponse',\n method: 'postEntitiesScriptsGetV2',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n}\n","/**\n *\n * This file is autogenerated.\n *\n * DO NOT EDIT DIRECTLY\n *\n **/\n\nimport type { Bridge } from '../../bridge';\n\nimport type {\n ApiResponsePayload,\n BaseApiRequestMessage,\n BaseApiResponseMessage,\n BaseUrlParams,\n QueryParam,\n} from '../../types';\n\nexport type WorkflowsRequestApi = 'workflows';\n\nexport type CommonApiResponseMessage =\n BaseApiResponseMessage<ApiResponsePayload>;\n\nexport interface CommonApiRequestMessage\n extends BaseApiRequestMessage<BaseUrlParams, unknown> {\n api: WorkflowsRequestApi;\n}\n\n// types for getEntitiesExecutionResultsV1\n\nexport interface GetEntitiesExecutionResultsV1QueryParams\n extends BaseUrlParams {\n ids: QueryParam;\n}\n\nexport type GetEntitiesExecutionResultsV1ApiResponse = ApiResponsePayload;\n\nexport type GetEntitiesExecutionResultsV1ResponseMessage =\n BaseApiResponseMessage<GetEntitiesExecutionResultsV1ApiResponse>;\n\nexport interface GetEntitiesExecutionResultsV1RequestMessage\n extends BaseApiRequestMessage<GetEntitiesExecutionResultsV1QueryParams> {\n api: WorkflowsRequestApi;\n method: 'getEntitiesExecutionResultsV1';\n}\n\n// types for postEntitiesExecuteV1\n\nexport interface PostEntitiesExecuteV1QueryParams extends BaseUrlParams {\n definitionId?: QueryParam;\n name?: QueryParam;\n key?: QueryParam;\n depth?: QueryParam;\n}\n\nexport type PostEntitiesExecuteV1ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesExecuteV1PostData {}\n\nexport type PostEntitiesExecuteV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesExecuteV1ApiResponse>;\n\nexport interface PostEntitiesExecuteV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesExecuteV1QueryParams,\n PostEntitiesExecuteV1PostData\n > {\n api: WorkflowsRequestApi;\n method: 'postEntitiesExecuteV1';\n}\n\n// types for postEntitiesExecutionActionsV1\n\nexport interface PostEntitiesExecutionActionsV1QueryParams\n extends BaseUrlParams {\n actionName: QueryParam;\n}\n\nexport type PostEntitiesExecutionActionsV1ApiResponse = ApiResponsePayload;\n\nexport interface PostEntitiesExecutionActionsV1PostData {}\n\nexport type PostEntitiesExecutionActionsV1ResponseMessage =\n BaseApiResponseMessage<PostEntitiesExecutionActionsV1ApiResponse>;\n\nexport interface PostEntitiesExecutionActionsV1RequestMessage\n extends BaseApiRequestMessage<\n PostEntitiesExecutionActionsV1QueryParams,\n PostEntitiesExecutionActionsV1PostData\n > {\n api: WorkflowsRequestApi;\n method: 'postEntitiesExecutionActionsV1';\n}\n\n// general types\n\nexport type WorkflowsApiRequestMessage =\n | GetEntitiesExecutionResultsV1RequestMessage\n | PostEntitiesExecuteV1RequestMessage\n | PostEntitiesExecutionActionsV1RequestMessage;\n\nexport type WorkflowsApiResponseMessage =\n | GetEntitiesExecutionResultsV1ResponseMessage\n | PostEntitiesExecuteV1ResponseMessage\n | PostEntitiesExecutionActionsV1ResponseMessage;\n\nexport class WorkflowsApiBridge {\n private bridge;\n\n constructor(bridge: Bridge) {\n this.bridge = bridge;\n }\n\n getBridge() {\n return this.bridge;\n }\n\n async getEntitiesExecutionResultsV1(\n urlParams: GetEntitiesExecutionResultsV1QueryParams,\n ): Promise<GetEntitiesExecutionResultsV1ApiResponse> {\n const message: GetEntitiesExecutionResultsV1RequestMessage = {\n type: 'api',\n api: 'workflows',\n method: 'getEntitiesExecutionResultsV1',\n payload: {\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesExecuteV1(\n postBody: PostEntitiesExecuteV1PostData,\n urlParams: PostEntitiesExecuteV1QueryParams = {},\n ): Promise<PostEntitiesExecuteV1ApiResponse> {\n const message: PostEntitiesExecuteV1RequestMessage = {\n type: 'api',\n api: 'workflows',\n method: 'postEntitiesExecuteV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n\n async postEntitiesExecutionActionsV1(\n postBody: PostEntitiesExecutionActionsV1PostData,\n urlParams: PostEntitiesExecutionActionsV1QueryParams,\n ): Promise<PostEntitiesExecutionActionsV1ApiResponse> {\n const message: PostEntitiesExecutionActionsV1RequestMessage = {\n type: 'api',\n api: 'workflows',\n method: 'postEntitiesExecutionActionsV1',\n payload: {\n body: postBody,\n params: urlParams,\n },\n };\n\n return this.bridge.postMessage(message);\n }\n}\n","/**\n *\n * This file is autogenerated.\n *\n * DO NOT EDIT DIRECTLY\n *\n **/\n\nimport { Memoize } from 'typescript-memoize';\n\nimport { ActorsApiBridge } from './actors';\nimport { AlertsApiBridge } from './alerts';\nimport { CustomobjectsApiBridge } from './customobjects';\nimport { DetectsApiBridge } from './detects';\nimport { DevicesApiBridge } from './devices';\nimport { FaasGatewayApiBridge } from './faas-gateway';\nimport { FwmgrApiBridge } from './fwmgr';\nimport { IncidentsApiBridge } from './incidents';\nimport { LoggingapiApiBridge } from './loggingapi';\nimport { MitreApiBridge } from './mitre';\nimport { PluginsApiBridge } from './plugins';\nimport { RemoteResponseApiBridge } from './remote-response';\nimport { WorkflowsApiBridge } from './workflows';\n\nimport { assertConnection } from '../utils';\nimport type { Bridge } from '../bridge';\n\nexport default abstract class FalconPublicApis {\n isConnected = false;\n abstract bridge: Bridge<any>;\n\n @Memoize()\n get actors(): ActorsApiBridge {\n assertConnection(this);\n\n return new ActorsApiBridge(this.bridge);\n }\n\n @Memoize()\n get alerts(): AlertsApiBridge {\n assertConnection(this);\n\n return new AlertsApiBridge(this.bridge);\n }\n\n @Memoize()\n get detects(): DetectsApiBridge {\n assertConnection(this);\n\n return new DetectsApiBridge(this.bridge);\n }\n\n @Memoize()\n get devices(): DevicesApiBridge {\n assertConnection(this);\n\n return new DevicesApiBridge(this.bridge);\n }\n\n @Memoize()\n get fwmgr(): FwmgrApiBridge {\n assertConnection(this);\n\n return new FwmgrApiBridge(this.bridge);\n }\n\n @Memoize()\n get incidents(): IncidentsApiBridge {\n assertConnection(this);\n\n return new IncidentsApiBridge(this.bridge);\n }\n\n @Memoize()\n get mitre(): MitreApiBridge {\n assertConnection(this);\n\n return new MitreApiBridge(this.bridge);\n }\n\n @Memoize()\n get plugins(): PluginsApiBridge {\n assertConnection(this);\n\n return new PluginsApiBridge(this.bridge);\n }\n\n @Memoize()\n get remoteResponse(): RemoteResponseApiBridge {\n assertConnection(this);\n\n return new RemoteResponseApiBridge(this.bridge);\n }\n\n @Memoize()\n get workflows(): WorkflowsApiBridge {\n assertConnection(this);\n\n return new WorkflowsApiBridge(this.bridge);\n }\n\n @Memoize()\n get customobjects(): CustomobjectsApiBridge {\n assertConnection(this);\n\n return new CustomobjectsApiBridge(this.bridge);\n }\n\n @Memoize()\n get faasGateway(): FaasGatewayApiBridge {\n assertConnection(this);\n\n return new FaasGatewayApiBridge(this.bridge);\n }\n\n @Memoize()\n get loggingapi(): LoggingapiApiBridge {\n assertConnection(this);\n\n return new LoggingapiApiBridge(this.bridge);\n }\n}\n","import type FalconApi from '../api';\nimport type { LocalData } from '../types';\n\ninterface ApiIntegrationDefinition {\n definitionId: string;\n operationId: string;\n}\n\ninterface ExecuteParameters {\n request?: {\n params?: {\n path?: Record<any, unknown>;\n query?: Record<any, unknown>;\n header?: Record<any, unknown>;\n };\n json?: Record<any, unknown> | Record<any, unknown>[];\n };\n}\n\nexport class ApiIntegration<DATA extends LocalData = LocalData> {\n constructor(\n private readonly falcon: FalconApi<DATA>,\n private readonly definition: ApiIntegrationDefinition,\n ) {}\n\n public async execute({ request }: ExecuteParameters = {}) {\n return this.falcon.plugins.postEntitiesExecuteV1({\n resources: [\n {\n definition_id: this.definition.definitionId,\n operation_id: this.definition.operationId,\n request,\n },\n ],\n });\n }\n}\n","import type FalconApi from '../api';\nimport type { LocalData } from '../types';\n\ninterface FunctionDefinition {\n id: string;\n version: number;\n}\n\ninterface ExecuteParameters {\n path: string;\n method: 'GET' | 'POST' | 'PATCH' | 'PUT' | 'DELETE';\n body?: Record<string, unknown>;\n queryParams?: Record<string, unknown>;\n headers?: Record<string, unknown>;\n}\n\ninterface PostParameters {\n path: string;\n body?: Record<string, unknown>;\n queryParams?: Record<string, unknown>;\n headers?: Record<string, unknown>;\n}\n\ntype PatchParameters = PostParameters;\n\ntype PutParameters = PostParameters;\n\ntype DeleteParameters = PostParameters;\n\ninterface GetParameters {\n path: string;\n queryParams?: Record<string, unknown>;\n headers?: Record<string, unknown>;\n}\n\nexport class CloudFunction<DATA extends LocalData = LocalData> {\n static GET = 'GET' as const;\n static POST = 'POST' as const;\n static PATCH = 'PATCH' as const;\n static PUT = 'PUT' as const;\n static DELETE = 'DELETE' as const;\n\n pollTimeout = 500;\n intervalId?: number;\n\n constructor(\n private readonly falcon: FalconApi<DATA>,\n private readonly definition: FunctionDefinition,\n ) {}\n\n private async execute({\n path,\n method,\n queryParams,\n body,\n headers,\n }: ExecuteParameters) {\n const result = await this.falcon.faasGateway.postEntitiesExecutionV1({\n function_id: this.definition.id,\n function_version: this.definition.version,\n payload: {\n path,\n method,\n body,\n headers,\n query_params: queryParams,\n },\n });\n\n return new Promise((resolve, reject) => {\n const execution = result?.resources?.[0] as any;\n\n if (!execution?.execution_id) {\n reject(result?.errors);\n } else {\n this.pollForResult({\n resolve,\n reject,\n executionId: execution?.execution_id,\n });\n }\n });\n }\n\n private async getExecutionResult(\n executionId: string,\n ): Promise<Record<string, unknown> | undefined> {\n const resultResponse = await this.falcon.faasGateway.getEntitiesExecutionV1(\n {\n id: executionId,\n },\n );\n\n const executionResult = resultResponse?.resources?.[0] as any;\n\n return executionResult?.payload;\n }\n\n private pollForResult({\n resolve,\n reject,\n executionId,\n }: {\n resolve: (value: unknown) => void;\n reject: (value?: unknown) => void;\n executionId: string;\n }) {\n let exceptionRetries = 2;\n\n this.intervalId = window.setInterval(async () => {\n try {\n const payload = await this.getExecutionResult(executionId);\n\n if (payload) {\n window.clearInterval(this.intervalId);\n resolve(payload);\n }\n } catch (e) {\n if (exceptionRetries <= 0) {\n window.clearInterval(this.intervalId);\n reject(e);\n }\n\n exceptionRetries--;\n }\n }, this.pollTimeout);\n }\n\n public path(pathEntry: string) {\n const urlPath = new URL(pathEntry, 'http://localhost');\n\n const path = urlPath.pathname;\n const searchParams = [...urlPath.searchParams.entries()].map(\n ([key, value]) => ({\n [key]: [value],\n }),\n );\n\n return {\n path,\n queryParams: searchParams,\n\n get: async (queryParams: GetParameters['queryParams'] = {}) => {\n return this.get({\n path,\n queryParams: queryParams ?? searchParams ?? {},\n });\n },\n\n post: async (\n body: PostParameters['body'],\n queryParams: PostParameters['queryParams'] = {},\n headers: PostParameters['headers'] = {},\n ) => {\n return this.post({\n path,\n queryParams: queryParams ?? searchParams ?? {},\n body,\n headers,\n });\n },\n\n patch: async (\n body: PatchParameters['body'],\n queryParams: PatchParameters['queryParams'] = {},\n headers: PatchParameters['headers'] = {},\n ) => {\n return this.patch({\n path,\n queryParams: queryParams ?? searchParams ?? {},\n body,\n headers,\n });\n },\n\n put: async (\n body: PutParameters['body'],\n queryParams: PutParameters['queryParams'] = {},\n headers: PutParameters['headers'] = {},\n ) => {\n return this.put({\n path,\n queryParams: queryParams ?? searchParams ?? {},\n body,\n headers,\n });\n },\n\n delete: async (\n body: DeleteParameters['body'],\n queryParams: DeleteParameters['queryParams'] = {},\n headers: DeleteParameters['headers'] = {},\n ) => {\n return this.delete({\n path,\n queryParams: queryParams ?? searchParams ?? {},\n body,\n headers,\n });\n },\n };\n }\n\n public async get({ path, queryParams, headers }: GetParameters) {\n return this.execute({\n path,\n method: CloudFunction.GET,\n queryParams,\n headers,\n });\n }\n\n public async post({ path, queryParams, body, headers }: PostParameters) {\n return this.execute({\n path,\n method: CloudFunction.POST,\n body,\n queryParams,\n headers,\n });\n }\n\n public async patch({ path, queryParams, body, headers }: PatchParameters) {\n return this.execute({\n path,\n method: CloudFunction.PATCH,\n body,\n queryParams,\n headers,\n });\n }\n\n public async put({ path, queryParams, body, headers }: PutParameters) {\n return this.execute({\n path,\n method: CloudFunction.PUT,\n body,\n queryParams,\n headers,\n });\n }\n\n public async delete({ path, queryParams, body, headers }: DeleteParameters) {\n return this.execute({\n path,\n method: CloudFunction.DELETE,\n body,\n queryParams,\n headers,\n });\n }\n\n public destroy() {\n if (this.intervalId) {\n window.clearInterval(this.intervalId);\n this.intervalId = undefined;\n }\n }\n}\n","import type FalconApi from '../api';\nimport type { CollectionRequestMessage, LocalData } from '../types';\n\ninterface CollectionDefinition {\n collection: string;\n}\n\ninterface CollectionSearchDefinition {\n startKey: string;\n endKey: string;\n limit: string;\n}\n\nexport class Collection<DATA extends LocalData = LocalData> {\n constructor(\n private readonly falcon: FalconApi<DATA>,\n private readonly definition: CollectionDefinition,\n ) {}\n\n public async write(key: string, data: Record<string, unknown>) {\n return this.falcon.bridge.postMessage<CollectionRequestMessage>({\n type: 'collection',\n payload: {\n type: 'write',\n key,\n collection: this.definition.collection,\n data,\n },\n });\n }\n\n public async read(key: string) {\n return this.falcon.bridge.postMessage<CollectionRequestMessage>({\n type: 'collection',\n payload: {\n type: 'read',\n key,\n collection: this.definition.collection,\n },\n });\n }\n\n public async delete(key: string) {\n return this.falcon.bridge.postMessage<CollectionRequestMessage>({\n type: 'collection',\n payload: {\n type: 'delete',\n key,\n collection: this.definition.collection,\n },\n });\n }\n\n public async search({ startKey, endKey, limit }: CollectionSearchDefinition) {\n return this.falcon.bridge.postMessage<CollectionRequestMessage>({\n type: 'collection',\n payload: {\n type: 'search',\n startKey,\n endKey,\n limit,\n collection: this.definition.collection,\n },\n });\n }\n}\n","import type FalconApi from '../api';\nimport type { LocalData, LogscaleRequestMessage } from '../types';\n\ninterface WriteProperties {\n tag: LogscaleRequestMessage['payload']['tag'];\n tagSource: LogscaleRequestMessage['payload']['tagSource'];\n testData: LogscaleRequestMessage['payload']['testData'];\n}\n\nexport class Logscale<DATA extends LocalData = LocalData> {\n constructor(private readonly falcon: FalconApi<DATA>) {}\n\n public async write(\n data: LogscaleRequestMessage['payload']['data'],\n properties: WriteProperties,\n ) {\n return this.falcon.bridge.postMessage<LogscaleRequestMessage>({\n type: 'loggingapi',\n payload: {\n type: 'ingest',\n data,\n tag: properties?.tag,\n tagSource: properties?.tagSource,\n testData: properties?.testData,\n },\n });\n }\n\n public async query(data: LogscaleRequestMessage['payload']['data']) {\n return this.falcon.bridge.postMessage<LogscaleRequestMessage>({\n type: 'loggingapi',\n payload: {\n type: 'dynamic-execute',\n data,\n },\n });\n }\n}\n","import type FalconApi from '../api';\nimport type { LocalData } from '../types';\nimport type { NavigateToRequestMessage } from '../types';\n\nconst ALLOWED_TARGETS = ['_self', '_blank'] as const;\n\nexport class Navigation<DATA extends LocalData = LocalData> {\n constructor(private readonly falcon: FalconApi<DATA>) {}\n\n public async navigateTo({\n path,\n type,\n target,\n metaKey,\n ctrlKey,\n shiftKey,\n }: {\n path: string;\n target?: NavigateToRequestMessage['payload']['target'];\n type?: NavigateToRequestMessage['payload']['type'];\n metaKey?: boolean;\n ctrlKey?: boolean;\n shiftKey?: boolean;\n }) {\n await this.falcon.bridge.postMessage<NavigateToRequestMessage>({\n type: 'navigateTo',\n payload: {\n path,\n type: type ?? 'falcon',\n target: target ?? '_self',\n metaKey: metaKey ?? false,\n ctrlKey: ctrlKey ?? false,\n shiftKey: shiftKey ?? false,\n },\n });\n }\n\n public async onClick(\n event: MouseEvent | KeyboardEvent,\n defaultTarget: (typeof ALLOWED_TARGETS)[number] = '_self',\n defaultType: NavigateToRequestMessage['payload']['type'] = 'falcon',\n ) {\n if (!(event instanceof Event)) {\n throw Error('\"event\" property should be subclass of Event');\n }\n\n if (!('preventDefault' in event)) {\n return;\n }\n\n event.preventDefault();\n\n if (!(event.target instanceof HTMLAnchorElement)) {\n throw Error(`event target is not an anchor element, ${event.target}`);\n }\n\n const path = event.target.getAttribute('href');\n defaultTarget =\n (event.target.getAttribute('target') as '_self' | '_blank') ??\n defaultTarget;\n const type = (event.target.dataset?.type ??\n defaultType) as NavigateToRequestMessage['payload']['type'];\n\n if (\n defaultTarget === null ||\n !ALLOWED_TARGETS.includes(\n defaultTarget as (typeof ALLOWED_TARGETS)[number],\n )\n ) {\n throw new Error('Target should be _self or _blank');\n }\n\n const target = defaultTarget as (typeof ALLOWED_TARGETS)[number];\n\n if (path === undefined || path === null) {\n throw new Error(\n 'Navigation path is missing. Make sure you have added navigation.onClick on the `a` tag and `href` is present.',\n );\n }\n\n const { metaKey, ctrlKey, shiftKey } = event;\n\n await this.navigateTo({ path, type, target, metaKey, ctrlKey, shiftKey });\n }\n}\n","import type { Bridge } from '../bridge';\nimport type { LocalData } from '../types';\n\nexport class ResizeTracker<DATA extends LocalData = LocalData> {\n private observer: ResizeObserver;\n\n constructor(private bridge: Bridge<DATA>) {\n this.observer = new ResizeObserver((entries) =>\n this.handleResizeEvent(entries),\n );\n this.observer.observe(document.body);\n }\n\n private handleResizeEvent(entries: ResizeObserverEntry[]) {\n const { height } = entries[0].contentRect;\n\n this.bridge.sendUnidirectionalMessage({\n type: 'resize',\n payload: {\n height,\n },\n });\n }\n\n destroy() {\n this.observer.disconnect();\n }\n}\n","import type { Bridge } from '../bridge';\nimport type {\n ExtensionIdentifier,\n LocalData,\n OpenModalOptions,\n} from '../types';\n\nexport class UI<DATA extends LocalData = LocalData> {\n constructor(private bridge: Bridge<DATA>) {}\n\n public async openModal<PAYLOAD = unknown>(\n extension: ExtensionIdentifier,\n title: string,\n options: OpenModalOptions = {},\n ): Promise<PAYLOAD> {\n const result = await this.bridge.postMessage({\n type: 'openModal',\n payload: {\n extension,\n title,\n options,\n },\n });\n\n if (result instanceof Error) {\n throw result;\n }\n\n return result as PAYLOAD;\n }\n\n public closeModal<PAYLOAD = unknown>(payload?: PAYLOAD) {\n this.bridge.sendUnidirectionalMessage({\n type: 'closeModal',\n payload,\n });\n }\n}\n","import Emittery from 'emittery';\nimport FalconPublicApis from './apis/public-api';\nimport { ApiIntegration } from './abstraction/api-integration';\nimport { Bridge } from './bridge';\nimport { CloudFunction } from './abstraction/cloud-function';\nimport { Collection } from './abstraction/collection';\nimport { Logscale } from './abstraction/logscale';\nimport { Memoize } from 'typescript-memoize';\nimport { Navigation } from './lib/navigation';\nimport { ResizeTracker } from './lib/resize-tracker';\nimport { UI } from './lib/ui';\nimport { assertConnection } from './utils';\nimport type {\n BroadcastMessage,\n DataUpdateMessage,\n FileUploadType,\n LocalData,\n PayloadForFileUploadType,\n ResponseForFileUploadType,\n Theme,\n} from './types';\n\n// This maps event names to the event shape, used by emittery. Extends this when adding new subscribable events\ninterface EventMap<DATA extends LocalData> {\n data: DATA;\n broadcast: unknown;\n}\n\nexport default class FalconApi<\n DATA extends LocalData = LocalData,\n> extends FalconPublicApis {\n public events = new Emittery<EventMap<DATA>>();\n public data?: DATA;\n public bridge: Bridge<DATA> = new Bridge<DATA>({\n onDataUpdate: (data) => this.handleDataUpdate(data),\n onBroadcast: (msg) => this.handleBroadcastMessage(msg),\n onLivereload: () => this.handleLivereloadMessage(),\n });\n\n public ui = new UI(this.bridge);\n\n private resizeTracker?: ResizeTracker<DATA>;\n private cloudFunctions: CloudFunction<DATA>[] = [];\n private apiIntegrations: ApiIntegration<DATA>[] = [];\n private collections: Collection<DATA>[] = [];\n\n public async connect(): Promise<void> {\n const { origin, data } = await this.bridge.postMessage({ type: 'connect' });\n\n this.bridge.setOrigin(origin);\n this.data = data;\n\n this.updateTheme(data?.theme);\n this.resizeTracker = new ResizeTracker(this.bridge);\n\n this.isConnected = true;\n }\n\n public sendBroadcast(payload: unknown) {\n this.bridge.sendUnidirectionalMessage({ type: 'broadcast', payload });\n }\n\n public async uploadFile<TYPE extends FileUploadType>(\n fileUploadType: TYPE,\n initialData?: PayloadForFileUploadType<TYPE>,\n ): Promise<ResponseForFileUploadType<TYPE> | undefined> {\n return this.bridge.postMessage({\n type: 'fileUpload',\n fileUploadType,\n payload: initialData,\n });\n }\n\n private handleDataUpdate(dataMessage: DataUpdateMessage<DATA>): void {\n this.data = dataMessage.payload;\n this.updateTheme(this.data.theme);\n\n this.events.emit('data', this.data);\n }\n\n private handleBroadcastMessage(message: BroadcastMessage): void {\n this.events.emit('broadcast', message.payload);\n }\n\n private handleLivereloadMessage(): void {\n document.location.reload();\n }\n\n private updateTheme(activeTheme?: Theme) {\n if (!activeTheme) {\n return;\n }\n\n const inactiveTheme =\n activeTheme === 'theme-dark' ? 'theme-light' : 'theme-dark';\n\n document.documentElement.classList.add(activeTheme);\n document.documentElement.classList.remove(inactiveTheme);\n }\n\n cloudFunction({ id, version }: { id: string; version: number }) {\n assertConnection(this);\n\n const cf = new CloudFunction(this, { id, version });\n\n this.cloudFunctions.push(cf);\n\n return cf;\n }\n\n apiIntegration({\n definitionId,\n operationId,\n }: {\n operationId: string;\n definitionId: string;\n }) {\n assertConnection(this);\n\n const cf = new ApiIntegration(this, { operationId, definitionId });\n\n this.apiIntegrations.push(cf);\n\n return cf;\n }\n\n collection({ collection }: { collection: string }) {\n assertConnection(this);\n\n const co = new Collection(this, { collection });\n\n this.collections.push(co);\n\n return co;\n }\n\n @Memoize()\n get navigation() {\n assertConnection(this);\n\n return new Navigation(this);\n }\n\n @Memoize()\n get logscale() {\n assertConnection(this);\n\n return new Logscale(this);\n }\n\n destroy() {\n this.cloudFunctions.forEach((cf) => cf.destroy());\n\n this.resizeTracker?.destroy();\n this.bridge.destroy();\n }\n}\n"],"names":["uuidv4"],"mappings":"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"}