@mastra/core
Version:
Mastra is a framework for building AI-powered applications and agents with a modern TypeScript stack.
39 lines • 1.76 kB
TypeScript
import type { BackgroundTask, TaskFilter, TaskListResult, UpdateBackgroundTask } from '../../../background-tasks/types.js';
import { StorageDomain } from '../base.js';
/**
* Abstract storage domain for background tasks.
* Handles persistence of task state — creation, status updates, querying, and cleanup.
*/
export declare abstract class BackgroundTasksStorage extends StorageDomain {
constructor();
dangerouslyClearAll(): Promise<void>;
/** Insert a new task record. */
abstract createTask(task: BackgroundTask): Promise<void>;
/**
* Partial update of a task record.
* Only the provided fields are updated; others are left unchanged.
*/
abstract updateTask(taskId: string, update: UpdateBackgroundTask): Promise<void>;
/** Get a single task by ID. Returns null if not found. */
abstract getTask(taskId: string): Promise<BackgroundTask | null>;
/**
* Query tasks with filters, ordering, and pagination.
* Returns tasks matching all provided filter criteria.
*/
abstract listTasks(filter: TaskFilter): Promise<TaskListResult>;
/**
* Delete a particular task by ID.
* Used for cleanup of old completed/failed records.
*/
abstract deleteTask(taskId: string): Promise<void>;
/**
* Delete tasks matching the filter criteria.
* Used for cleanup of old completed/failed records.
*/
abstract deleteTasks(filter: TaskFilter): Promise<void>;
/** Count tasks currently in 'running' status across all agents. */
abstract getRunningCount(): Promise<number>;
/** Count tasks currently in 'running' status for a specific agent. */
abstract getRunningCountByAgent(agentId: string): Promise<number>;
}
//# sourceMappingURL=base.d.ts.map