import type { TaskDeliveryStatus, TaskNotifyPolicy, TaskRecord, TaskRuntime, TaskScopeKind, TaskStatus } from "./task-registry.types.js";
export declare function createRunningTaskRun(params: {
    runtime: TaskRuntime;
    sourceId?: string;
    ownerKey?: string;
    scopeKind?: TaskScopeKind;
    channel?: string;
    requesterOrigin?: unknown;
    requesterSessionKey?: string;
    childSessionKey?: string;
    sessionKey?: string;
    agentId?: string;
    runId: string;
    rootTaskId?: string;
    parentTaskId?: string;
    correlationId?: string;
    definitionId?: string;
    definitionKind?: TaskRecord["definitionKind"];
    workflowRunId?: string;
    workflowNodeId?: string;
    label?: string;
    task: string;
    deliveryStatus?: TaskDeliveryStatus;
    notifyPolicy?: TaskNotifyPolicy;
    startedAt?: number;
    lastEventAt?: number;
    taskKind?: string;
    model?: string;
    provider?: string;
    loadedSkills?: string[];
    loadedTools?: string[];
    memoryScope?: string;
    delivery?: TaskRecord["delivery"];
    metadata?: Record<string, unknown>;
}): TaskRecord;
export declare function recordTaskRunAccountingByRunId(params: {
    runId: string;
    model?: string;
    provider?: string;
    usage?: {
        input?: number;
        output?: number;
        cacheRead?: number;
        cacheWrite?: number;
        total?: number;
    };
    loadedSkills?: string[];
    loadedTools?: string[];
    memoryScope?: string;
    toolCount?: number;
    deliveryStatus?: TaskDeliveryStatus;
    delivery?: TaskRecord["delivery"];
    metadata?: Record<string, unknown>;
}): TaskRecord | undefined;
export declare function recordTaskRunProgressByRunId(params: {
    runId: string;
    runtime?: TaskRuntime;
    sessionKey?: string;
    agentId?: string;
    sourceId?: string;
    channel?: string;
    deliveryStatus?: TaskDeliveryStatus;
    delivery?: TaskRecord["delivery"];
    lastEventAt?: number;
    eventSummary?: string;
    metadata?: Record<string, unknown>;
}): TaskRecord | undefined;
export declare function completeTaskRunByRunId(params: {
    runId: string;
    summary?: string;
    deliveryStatus?: TaskDeliveryStatus;
    delivery?: TaskRecord["delivery"];
}): TaskRecord | undefined;
export declare function failTaskRunByRunId(params: {
    runId: string;
    status?: Exclude<TaskStatus, "queued" | "running">;
    summary?: string;
    error?: string;
    deliveryStatus?: TaskDeliveryStatus;
    delivery?: TaskRecord["delivery"];
}): TaskRecord | undefined;
export declare function setDetachedTaskDeliveryStatusByRunId(params: {
    runId: string;
    deliveryStatus: TaskDeliveryStatus;
    delivery?: TaskRecord["delivery"];
}): TaskRecord | undefined;
