@shuffleio/shuffle-mcps 0.0.17 → 0.0.20

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.d.ts CHANGED
@@ -1,25 +1,20 @@
1
1
  import React$1, { ReactNode } from 'react';
2
- import * as react_jsx_runtime from 'react/jsx-runtime';
3
2
  import { SxProps, Theme } from '@mui/material';
3
+ import * as react_jsx_runtime from 'react/jsx-runtime';
4
4
 
5
5
  /**
6
6
  * ShuffleMcpThemeProvider
7
7
  *
8
- * Mirror of Shuffle-Core's theme provider, scoped for the Shuffle-MCPs lib.
9
- * Two jobs:
10
- *
11
- * 1. Pin MUI defaults (`size="small"`) so individual call sites never need to
12
- * thread sizing through.
13
- *
14
- * 2. Bridge the host app's light/dark scheme into MUI:
15
- * - `mode="auto"` (default) — track the `.dark` class on `<html>` and flip
16
- * MUI `palette.mode` accordingly. Tokens (`hsl(var(--…))`) flip with the
17
- * same class so nothing else needs to know about the theme.
18
- * - `mode="light" | "dark"` — pin the wrapped subtree to that scheme. We
19
- * render a `<div className="dark">` (or remove it) so Tailwind dark
20
- * variants and CSS-variable overrides scope to this subtree only —
21
- * useful when embedding MCPs inside a host that doesn't manage `.dark`
22
- * on `<html>`.
8
+ * - Pins MUI defaults (`size="small"`) so call sites never thread sizing.
9
+ * - Bridges the host app's light/dark scheme into MUI (`palette.mode`) and
10
+ * into our HSL token system (the scoped `.dark` class).
11
+ * - Exposes a React Context (`ShuffleMcpThemeContext`) so internal raw
12
+ * components — and views that compose other library components without
13
+ * going through the public wrapped exports — see the resolved mode.
14
+ * - Stamps the scope className onto MUI portaled paper (Drawer, Dialog,
15
+ * Menu, Popover, Tooltip), so portals rendered into <body> still resolve
16
+ * our `hsl(var(--…))` tokens against the pinned theme instead of the
17
+ * host's `<html>`.
23
18
  *
24
19
  * Wrap your MCP usage at any level:
25
20
  *
@@ -30,11 +25,12 @@ import { SxProps, Theme } from '@mui/material';
30
25
 
31
26
  type ShuffleMcpColorMode = "light" | "dark" | "auto";
32
27
  interface ShuffleMcpThemeProviderProps {
33
- children: React$1.ReactNode;
28
+ children?: React$1.ReactNode;
34
29
  /**
35
30
  * Color mode for the wrapped subtree.
36
31
  * - `"auto"` (default) — follow the host page's `.dark` class on `<html>`.
37
- * - `"light"` / `"dark"` — pin the subtree to that scheme via a wrapping div.
32
+ * - `"light"` / `"dark"` — pin the subtree (and any portals rendered from
33
+ * within it) to that scheme.
38
34
  */
39
35
  mode?: ShuffleMcpColorMode;
40
36
  }
@@ -244,115 +240,6 @@ interface ShuffleMCPHandle {
244
240
  search: (query: string) => void;
245
241
  clear: () => void;
246
242
  }
247
- declare const ShuffleMCP: React$1.ForwardRefExoticComponent<ShuffleMCPProps & React$1.RefAttributes<ShuffleMCPHandle>>;
248
-
249
- /**
250
- * Singul standard actions catalog, keyed by lowercase category fragment.
251
- * Mirrors the canonical action names exposed by https://singul.io —
252
- * each name becomes the `{action}` segment in `POST /api/{action}`.
253
- * Fields shown here are starter parameters; the full schema lives on
254
- * the Singul side and is editable in the curl preview below.
255
- */
256
- interface AppDetailDrawerProps extends ShuffleHostProps {
257
- open: boolean;
258
- onClose: () => void;
259
- /** App name to load */
260
- appName: string | null;
261
- /** Pre-resolved Algolia objectID — bypasses Algolia lookup when provided (e.g. when the
262
- * caller already had the hit, like AppSearchDrawer / "Add Ingestion Source"). */
263
- appId?: string | null;
264
- /** Anchor side */
265
- anchor?: 'left' | 'right';
266
- /** Width in px */
267
- width?: number;
268
- /** Called when drawer closes so parent can refresh data */
269
- onRefresh?: () => void;
270
- /** When set, replaces the Activate button with "+ Add" and calls this on click */
271
- onAddToCanvas?: (appInfo: {
272
- name: string;
273
- icon: string;
274
- algoliaId: string | null;
275
- }) => void;
276
- /** Whether the current user is authenticated. Defaults to true. */
277
- isAuthenticated?: boolean;
278
- /** Host app's currently active org id. If different from the library's tracked org,
279
- * an `Org-Id` header is injected into the Singul curl preview. */
280
- activeOrgId?: string | null;
281
- }
282
- declare function AppDetailDrawer({ open, onClose, appName, appId, anchor, width, onRefresh, onAddToCanvas, isAuthenticated, activeOrgId, }: AppDetailDrawerProps): react_jsx_runtime.JSX.Element;
283
-
284
- interface ConnectionPathApp {
285
- name: string;
286
- icon: string;
287
- hasValidAuth?: boolean;
288
- isActiveOnly?: boolean;
289
- }
290
- interface AppSearchDrawerProps extends ShuffleHostProps {
291
- open: boolean;
292
- onClose: () => void;
293
- initialQuery?: string;
294
- title?: string;
295
- subtitle?: string;
296
- anchor?: 'left' | 'right';
297
- width?: number;
298
- /** Show the Shuffle Pipelines banner above search results */
299
- showPipelinesBanner?: boolean;
300
- /** If provided, selecting an app calls this instead of opening AppDetailDrawer */
301
- onQuickSelect?: (app: {
302
- name: string;
303
- icon: string;
304
- categories: string[];
305
- id: string | null;
306
- }) => void;
307
- /** If provided, called before default behavior. Return true to prevent opening detail drawer. */
308
- onSelectOverride?: (app: {
309
- name: string;
310
- icon: string;
311
- categories: string[];
312
- }) => boolean;
313
- /** Called when the detail drawer closes, with the app name that was being configured */
314
- onDetailClose?: (appName: string) => void;
315
- /** When set, replaces Activate with "+ Add" in the detail drawer */
316
- onAddToCanvas?: (appInfo: {
317
- name: string;
318
- icon: string;
319
- algoliaId: string | null;
320
- }) => void;
321
- /** When set, apps matching this category are sorted to the top in user's apps */
322
- priorityCategory?: string;
323
- /** Apps currently in the connection path diagram — shown first in the drawer */
324
- connectionPathApps?: ConnectionPathApp[];
325
- /** Apps to pin at the top of the ShuffleMCP search results (deduped by name). */
326
- pinnedApps?: Array<{
327
- name: string;
328
- image_url: string;
329
- categories?: string[];
330
- objectID?: string;
331
- }>;
332
- /** Highlight (pulsing ring) the matching app card after `highlightDelayMs` */
333
- highlightAppName?: string;
334
- /** Delay before the highlight kicks in (default 5000ms) */
335
- highlightDelayMs?: number;
336
- /** Enable multi-select: clicking apps toggles them in/out of the selection,
337
- * drawer stays open, and the picker shows checkboxes + a primary-bordered
338
- * highlight on already-chosen rows. */
339
- multiSelect?: boolean;
340
- /** Currently chosen apps (used to highlight rows in multi-select mode).
341
- * Match is by objectID first, then by normalized name. */
342
- selectedApps?: Array<{
343
- name: string;
344
- id?: string | null;
345
- icon?: string;
346
- }>;
347
- /** Fires whenever the selection changes in multi-select mode. */
348
- onSelectionChange?: (apps: Array<{
349
- name: string;
350
- id: string | null;
351
- icon: string;
352
- categories: string[];
353
- }>) => void;
354
- }
355
- declare function AppSearchDrawer({ open, onClose, initialQuery, title, subtitle, anchor, width, showPipelinesBanner, onQuickSelect, onSelectOverride, onDetailClose, onAddToCanvas, priorityCategory, connectionPathApps, pinnedApps, highlightAppName, highlightDelayMs, multiSelect, selectedApps, onSelectionChange, }: AppSearchDrawerProps): react_jsx_runtime.JSX.Element;
356
243
 
357
244
  interface AiAgentPromptsEditorProps {
358
245
  /** Ordered list of prompts. */
@@ -381,9 +268,6 @@ interface AiAgentPromptsEditorProps {
381
268
  placeholder: string;
382
269
  }) => React$1.ReactNode;
383
270
  }
384
- declare const AiAgentPromptsEditor: React$1.FC<AiAgentPromptsEditorProps>;
385
-
386
- declare function ShufflePipelinesBanner(): react_jsx_runtime.JSX.Element;
387
271
 
388
272
  interface AppTitleHeaderProps extends ShuffleHostProps {
389
273
  /** Display name of the app (will be capitalized via CSS). */
@@ -407,7 +291,6 @@ interface AppTitleHeaderProps extends ShuffleHostProps {
407
291
  /** When provided, replaces the Activate button with "+ Add". */
408
292
  onAdd?: () => void;
409
293
  }
410
- declare function AppTitleHeader({ name, image, hasValidAuth, hasAnyAuth, isAuthenticated, categories, isActivated, activateLoading, onActivateToggle, onAdd, }: AppTitleHeaderProps): react_jsx_runtime.JSX.Element;
411
294
 
412
295
  interface AppAuthSectionProps extends ShuffleHostProps {
413
296
  /** Display name (used in copy when no auth exists). */
@@ -432,7 +315,6 @@ interface AppAuthSectionProps extends ShuffleHostProps {
432
315
  onSaveAuth: (appId: string, credentials: Record<string, string>) => Promise<boolean>;
433
316
  onRefreshAuth: () => void;
434
317
  }
435
- declare function AppAuthSection({ displayName, algoliaApp, resolvedAlgoliaId, authState, expanded, onToggle, authCount, isAuthenticated, matchingEntries, onAuthChange, onTestConnection, onSaveAuth, onRefreshAuth, }: AppAuthSectionProps): react_jsx_runtime.JSX.Element;
436
318
 
437
319
  interface TryMcpSectionProps extends ShuffleHostProps {
438
320
  appName: string;
@@ -443,20 +325,6 @@ interface TryMcpSectionProps extends ShuffleHostProps {
443
325
  /** App categories — used to pick suggested actions. */
444
326
  categories?: string[];
445
327
  }
446
- declare function TryMcpSection({ appName, appIcon, appId, categories }: TryMcpSectionProps): react_jsx_runtime.JSX.Element;
447
-
448
- interface SingulActionsPreviewProps extends ShuffleHostProps {
449
- appName: string;
450
- appIcon?: string;
451
- appId?: string | null;
452
- categories?: string[];
453
- activeOrgId?: string | null;
454
- /** Optional click handler invoked when the user presses the
455
- * "Authenticate {App}" button surfaced after an
456
- * `action: "app_authentication"` response. */
457
- onAuthenticate?: (appName: string) => void;
458
- }
459
- declare const SingulActionsPreview: ({ appName, appIcon, categories, activeOrgId, onAuthenticate, }: SingulActionsPreviewProps) => react_jsx_runtime.JSX.Element;
460
328
 
461
329
  /**
462
330
  * AgentUI — Standalone "start + debug agents" surface.
@@ -529,6 +397,17 @@ interface AgentUIProps {
529
397
  appPickerTitle?: string;
530
398
  /** Subtitle on the AppSearchDrawer. */
531
399
  appPickerSubtitle?: string;
400
+ /**
401
+ * Handler for the "Choose LLM" chip. When provided, takes full ownership
402
+ * of the click. When omitted, AgentUI dispatches a window
403
+ * `agent-drawer-open` CustomEvent — that's what the bundled
404
+ * `AgentRunDrawer` listens for. On hosts that don't mount the drawer,
405
+ * provide this prop to wire your own LLM picker (or set it to a no-op
406
+ * to hide the chip's intent entirely).
407
+ */
408
+ onChooseLLM?: () => void;
409
+ /** Hide the "Choose LLM" chip entirely. */
410
+ hideChooseLLM?: boolean;
532
411
  /** Tooltip on the submit button. Default: "⌘+Enter to send". */
533
412
  submitTooltip?: string;
534
413
  /** Custom icon for the submit button. */
@@ -633,7 +512,6 @@ interface AgentUIProps {
633
512
  /** Style overrides for the inner content card (the column under the run-switcher). */
634
513
  contentSx?: SxProps<Theme>;
635
514
  }
636
- declare const AgentUI: React$1.FC<AgentUIProps>;
637
515
 
638
516
  type AgentRunDrawerTab = 'run' | 'permissions' | 'localLLM';
639
517
  interface AgentRunDrawerProps extends ShuffleHostProps {
@@ -672,7 +550,6 @@ interface AgentRunDrawerProps extends ShuffleHostProps {
672
550
  /** Style overrides for the body container that wraps the active tab content. */
673
551
  bodySx?: SxProps<Theme>;
674
552
  }
675
- declare const AgentRunDrawer: ({ open, onClose, initialTab, permissionsSlot, localLLMSlot, localLLMTabBadge, permissionsDisabled, permissionsDisabledTooltip, agentUIProps, width, title, subtitle, className, paperSx, headerSx, tabsSx, bodySx, globalUrl, }: AgentRunDrawerProps) => react_jsx_runtime.JSX.Element;
676
553
 
677
554
  /** Check if running on a known Shuffle Cloud domain */
678
555
  declare const isCloudDomain: () => boolean;
@@ -842,7 +719,6 @@ interface AgentActivityListProps extends ShuffleHostProps {
842
719
  /** Style overrides for each individual run row. */
843
720
  rowSx?: SxProps<Theme>;
844
721
  }
845
- declare const AgentActivityList: ({ apiKey, apiBaseUrl, orgId, onRunClick, onEditWorkflow, showSearchBar, showStatusChips, limit, emptyTitle, emptySubtitle, className, sx, toolbarSx, rowSx, }: AgentActivityListProps) => react_jsx_runtime.JSX.Element;
846
722
 
847
723
  interface AgentExecutionDrawerProps extends ShuffleHostProps {
848
724
  open: boolean;
@@ -872,7 +748,6 @@ interface AgentExecutionDrawerProps extends ShuffleHostProps {
872
748
  /** Handler for scheduling the loaded agent prompt from the execution view. */
873
749
  onSchedule?: AgentUIProps['onSchedule'];
874
750
  }
875
- declare const AgentExecutionDrawer: ({ open, onClose, run, width, apiKey, apiBaseUrl, orgId, className, paperSx, headerSx, bodySx, topBanner, onSchedule, }: AgentExecutionDrawerProps) => react_jsx_runtime.JSX.Element;
876
751
 
877
752
  interface AgentsViewProps extends ShuffleHostProps {
878
753
  /**
@@ -883,8 +758,26 @@ interface AgentsViewProps extends ShuffleHostProps {
883
758
  onSchedule: NonNullable<AgentUIProps['onSchedule']>;
884
759
  /** Override max content width of the inner stack. Defaults to 820. */
885
760
  maxWidth?: number;
761
+ /**
762
+ * Optional handler for the "Choose LLM" chip. Forwarded to the embedded
763
+ * AgentUI. When omitted, AgentsView mounts its own internal
764
+ * `AgentRunDrawer` and opens it on the Local LLM tab — so the chip
765
+ * always does *something*, even on hosts that haven't wired a picker.
766
+ * Pass this prop to override with your own LLM picker, or set
767
+ * `hideChooseLLM` to remove the chip entirely.
768
+ */
769
+ onChooseLLM?: () => void;
770
+ /** Hide the "Choose LLM" chip in the embedded AgentUI. */
771
+ hideChooseLLM?: boolean;
772
+ /**
773
+ * Content rendered inside the built-in AgentRunDrawer's Local LLM tab
774
+ * when no `onChooseLLM` is provided. Use to plug in your own local LLM
775
+ * config form. When omitted, a minimal built-in placeholder is shown.
776
+ */
777
+ localLLMSlot?: React.ReactNode;
778
+ /** Content for the built-in AgentRunDrawer's Permissions tab. Optional. */
779
+ permissionsSlot?: React.ReactNode;
886
780
  }
887
- declare const AgentsView: ({ onSchedule, maxWidth, globalUrl, isLoaded, isLoggedIn, userdata, serverside }: AgentsViewProps) => react_jsx_runtime.JSX.Element;
888
781
 
889
782
  /**
890
783
  * Shared diagnosis utilities for an agent execution result.
@@ -937,21 +830,6 @@ type OutputDiagnosis = {
937
830
  };
938
831
  declare const diagnoseOutputWarning: (run: DiagnosableRun) => OutputDiagnosis | null;
939
832
 
940
- interface Props extends ShuffleHostProps {
941
- run: DiagnosableRun | null | undefined;
942
- /** Outer padding wrapper. Defaults to `{ px: 2.5, pb: 0.5 }`. */
943
- sx?: Record<string, unknown>;
944
- /** When provided, the banner becomes clickable and asks the host to jump
945
- * to the underlying decision (e.g. switch to the detailed timeline,
946
- * expand that row, scroll to it). */
947
- onJumpToEvidence?: (decisionIndex: number) => void;
948
- /** Stable id used to persist dismissals per-execution. Falls back to
949
- * `run.execution_id` if present. When neither is available, dismiss
950
- * still works for the current mount but is not persisted. */
951
- executionId?: string;
952
- }
953
- declare const AgentRunDiagnosisBanner: ({ run, sx, onJumpToEvidence, executionId }: Props) => react_jsx_runtime.JSX.Element;
954
-
955
833
  /**
956
834
  * useAppLookup — Resolve an app's display name, image, categories,
957
835
  * canonical Algolia objectID and matching auth entries from just
@@ -1450,4 +1328,44 @@ interface UsageBarProps {
1450
1328
  }
1451
1329
  declare const UsageBar: React$1.FC<UsageBarProps>;
1452
1330
 
1453
- export { API_CONFIG, AgentActivityList, type AgentActivityListProps, type AgentActivityParams, type AgentActivityResponse, type AgentDecision, AgentExecutionDrawer, type AgentExecutionDrawerProps, AgentIcon, type AgentRun, AgentRunDiagnosisBanner, AgentRunDrawer, type AgentRunDrawerProps, type AgentRunDrawerTab, type AgentRunResult, AgentUI, type AgentUIApp, type AgentUIProps, AgentsView, type AgentsViewProps, AiAgentPromptsEditor, type AiAgentPromptsEditorProps, type AlgoliaSearchApp, type ApiAuthEntry, AppAuthCard, type AppAuthCardProps, AppAuthConfig, AppAuthSection, type AppAuthSectionProps, type AppAuthState, type AppAuthentication, AppDetailDrawer, AppDetailProvider, type AppLookupResult, AppSearchDrawer, type AppSelectedEvent, AppTitleHeader, type AppTitleHeaderProps, type AuthStatus, CASES_PATTERNS, COMMUNICATION_PATTERNS_NAMES, type CategoryAutomation, type CategoryConfig, type CustomStyles, DATASTORE_CATEGORIES, type DatastoreDiagnostics, type DatastoreItem, type DatastoreResponse, type DiagnosableRun, type DiagnosisEvidence, EDR_PATTERNS, EMAIL_APP_PATTERNS, FORWARD_TICKETS_WORKFLOW_NAME, type FetchAppsOptions, INGEST_TICKETS_WORKFLOW_NAME, type IngestionCategory, IntegrationStatus, type OutputDiagnosis, type ResolvedApp, SIEM_PATTERNS, type ShuffleHostProps, ShuffleMCP, type ShuffleMCPHandle, type ShuffleMCPProps, type ShuffleMcpColorMode, ShuffleMcpThemeProvider, type ShuffleMcpThemeProviderProps, ShufflePipelinesBanner, SingulActionsPreview, THREAT_INTEL_PATTERNS, TryMcpSection, type TryMcpSectionProps, UsageBar, type UsageBarProps, VULN_SCANNER_PATTERNS, type ValidatedIngestionApp, ShuffleMCP as default, deleteDatastoreItem, deleteDatastoreItems, diagnoseOutputWarning, extractValidatedIngestionApps, extractWorkflowAppNames, fetchApps, fetchAppsViaApiConfig, findForwardTicketsWorkflow, findIngestTicketsWorkflow, getApiUrl, getAuthHeader, getDatastoreByCategory, getDatastoreItem, getDatastoreItemPublic, getFailureInfo, getHostBaseUrl, getIngestionCategory, hasOutputWarning, installFetchBreaker, invalidateAppsCache, invalidateResolvedApps, isCloud, isCloudDomain, isEmailApp, isIngestionApp, isOnprem, isThreatIntelApp, isVulnScannerApp, isWorkflowScheduleStopped, normalizeAppName, parseRunResult, refreshAllIntegrationStatus, registerProtectedOrigin, resetRegionUrl, resolveApp, resolveApps, searchAgentActivity, seedResolvedApp, setDatastoreItem, setDatastoreItems, setHostBaseUrl, setRegionUrl, setRuntimeOrgId, setToastImpl, shuffleFetch, toast, useAppAuth, useAppDetail, useAppDetailOptional, useAppLookup, useSyncHostBaseUrl };
1331
+ /**
1332
+ * Local Singul Library — fully self-contained.
1333
+ * No host-app `@/` imports remain inside this folder (assets aside).
1334
+ */
1335
+
1336
+ /**
1337
+ * Every exported component accepts an optional `theme` prop:
1338
+ * - `"light"` / `"dark"` — pin the subtree to that scheme
1339
+ * - `"system"` (default) — follow the host page's `.dark` class on `<html>`
1340
+ *
1341
+ * `colorMode` is preserved as a legacy alias (`"auto"` == `"system"`).
1342
+ */
1343
+ type ShuffleTheme = 'light' | 'dark' | 'system';
1344
+
1345
+ declare const ShuffleMCP: React$1.ForwardRefExoticComponent<any>;
1346
+
1347
+ declare const AppDetailDrawer: React$1.ComponentType<any>;
1348
+ declare const AppSearchDrawer: React$1.ComponentType<any>;
1349
+ declare const AiAgentPromptsEditor: React$1.ComponentType<any>;
1350
+
1351
+ declare const ShufflePipelinesBanner: React$1.ComponentType<any>;
1352
+ declare const AppTitleHeader: React$1.ComponentType<any>;
1353
+
1354
+ declare const AppAuthSection: React$1.ComponentType<any>;
1355
+
1356
+ declare const TryMcpSection: React$1.ComponentType<any>;
1357
+
1358
+ declare const SingulActionsPreview: React$1.ComponentType<any>;
1359
+ declare const AgentUI: React$1.ComponentType<any>;
1360
+
1361
+ declare const AgentRunDrawer: React$1.ComponentType<any>;
1362
+
1363
+ declare const AgentActivityList: React$1.ComponentType<any>;
1364
+
1365
+ declare const AgentExecutionDrawer: React$1.ComponentType<any>;
1366
+
1367
+ declare const AgentsView: React$1.ComponentType<any>;
1368
+
1369
+ declare const AgentRunDiagnosisBanner: React$1.ComponentType<any>;
1370
+
1371
+ export { API_CONFIG, AgentActivityList, type AgentActivityListProps, type AgentActivityParams, type AgentActivityResponse, type AgentDecision, AgentExecutionDrawer, type AgentExecutionDrawerProps, AgentIcon, type AgentRun, AgentRunDiagnosisBanner, AgentRunDrawer, type AgentRunDrawerProps, type AgentRunDrawerTab, type AgentRunResult, AgentUI, type AgentUIApp, type AgentUIProps, AgentsView, type AgentsViewProps, AiAgentPromptsEditor, type AiAgentPromptsEditorProps, type AlgoliaSearchApp, type ApiAuthEntry, AppAuthCard, type AppAuthCardProps, AppAuthConfig, AppAuthSection, type AppAuthSectionProps, type AppAuthState, type AppAuthentication, AppDetailDrawer, AppDetailProvider, type AppLookupResult, AppSearchDrawer, type AppSelectedEvent, AppTitleHeader, type AppTitleHeaderProps, type AuthStatus, CASES_PATTERNS, COMMUNICATION_PATTERNS_NAMES, type CategoryAutomation, type CategoryConfig, type CustomStyles, DATASTORE_CATEGORIES, type DatastoreDiagnostics, type DatastoreItem, type DatastoreResponse, type DiagnosableRun, type DiagnosisEvidence, EDR_PATTERNS, EMAIL_APP_PATTERNS, FORWARD_TICKETS_WORKFLOW_NAME, type FetchAppsOptions, INGEST_TICKETS_WORKFLOW_NAME, type IngestionCategory, IntegrationStatus, type OutputDiagnosis, type ResolvedApp, SIEM_PATTERNS, type ShuffleHostProps, ShuffleMCP, type ShuffleMCPHandle, type ShuffleMCPProps, type ShuffleMcpColorMode, ShuffleMcpThemeProvider, type ShuffleMcpThemeProviderProps, ShufflePipelinesBanner, type ShuffleTheme, SingulActionsPreview, THREAT_INTEL_PATTERNS, TryMcpSection, type TryMcpSectionProps, UsageBar, type UsageBarProps, VULN_SCANNER_PATTERNS, type ValidatedIngestionApp, ShuffleMCP as default, deleteDatastoreItem, deleteDatastoreItems, diagnoseOutputWarning, extractValidatedIngestionApps, extractWorkflowAppNames, fetchApps, fetchAppsViaApiConfig, findForwardTicketsWorkflow, findIngestTicketsWorkflow, getApiUrl, getAuthHeader, getDatastoreByCategory, getDatastoreItem, getDatastoreItemPublic, getFailureInfo, getHostBaseUrl, getIngestionCategory, hasOutputWarning, installFetchBreaker, invalidateAppsCache, invalidateResolvedApps, isCloud, isCloudDomain, isEmailApp, isIngestionApp, isOnprem, isThreatIntelApp, isVulnScannerApp, isWorkflowScheduleStopped, normalizeAppName, parseRunResult, refreshAllIntegrationStatus, registerProtectedOrigin, resetRegionUrl, resolveApp, resolveApps, searchAgentActivity, seedResolvedApp, setDatastoreItem, setDatastoreItems, setHostBaseUrl, setRegionUrl, setRuntimeOrgId, setToastImpl, shuffleFetch, toast, useAppAuth, useAppDetail, useAppDetailOptional, useAppLookup, useSyncHostBaseUrl };