import { $Fetch } from 'ofetch'; import { ContentExecution, ExecutionListParams, ExecutionListResponse } from './executions.type'; export interface IExecutionsServiceOptions { /** The CMS `$Fetch` instance (one of `sdk.apis`). */ api: $Fetch; /** Lazy flag — when true, the service returns fake data. */ mock: () => boolean; } export interface IExecutionsService { list(params?: ExecutionListParams): Promise; detail(uuid: string): Promise; } /** * Executions service (read-only). Backs both the FEAT-003 detection feed * (fetched on view mount; no polling) and the FEAT-005 action-history table. * * Endpoint contract (`eaera_cms/core/executions/routes.py` + * `core/rules/routes.py`): * GET /api/v1/executions → ExecutionListResponse * GET /api/v1/rules/content/{contentId}/executions → FLAT array (when `contentId` is set) * GET /api/v1/executions/{uuid} → single execution * POST /api/v1/executions/{uuid}/cancel → single execution (not used by current features) * * The executions feed is **read-only**: status is the `ExecutionStatus` enum. * Operator remediation (move group / set leverage) is performed through the * **content action router** (`content.invokeAction`), not here; "dismiss" is an * optional ephemeral client-side hide. */ export declare function createExecutionsService(opts: IExecutionsServiceOptions): IExecutionsService; //# sourceMappingURL=index.d.ts.map