import { p as Primitive } from "./CredentialSet-lUr_8nN3.mjs"; import { p as JsonObject } from "./schemas-DXcT2SRm.mjs"; import { i as AnyAgent, o as WorkflowSafeAgentReference } from "./Agent-Jt9qsJG7.mjs"; import { M as Duration, w as TriggerManifest, y as AnyTrigger } from "./index-BqY2HTnE.mjs"; import { m as SHA256Hash } from "./Operation-BKM2cNZp.mjs"; //#region src/task/types.d.ts interface TaskLifecycle { readonly maxExecutions?: number; readonly expiresAt?: Date; readonly expiresAfter?: Duration; } interface TaskConfig { readonly id: string; readonly name: string; readonly description?: string; readonly agent: AnyAgent; readonly prompt: string; readonly triggers: readonly AnyTrigger[]; readonly lifecycle?: TaskLifecycle; readonly tags?: readonly string[]; } interface TaskManifest extends Record { readonly manifestVersion: 1; readonly type: 'task'; readonly id: string; readonly name: string; readonly description?: string; readonly agentRef: WorkflowSafeAgentReference; readonly prompt: string; readonly triggers: readonly TriggerManifest[]; readonly lifecycle?: { readonly maxExecutions?: number; readonly expiresAt?: string; readonly expiresAfter?: string; }; readonly tags?: readonly string[]; readonly buildInfo: { readonly hash?: SHA256Hash; readonly size?: number; readonly metadata?: JsonObject; }; } interface TriggerContext { readonly payload: unknown; readonly id: string; readonly type: 'cron' | 'polling' | 'webhook'; } type AnyTask = Task; //#endregion //#region src/task/Task.d.ts declare class Task extends Primitive { #private; readonly kind: "task"; readonly id: string; readonly name: string; readonly description?: string; readonly agent: AnyAgent; readonly prompt: string; readonly triggers: readonly AnyTrigger[]; readonly lifecycle?: TaskLifecycle; readonly tags?: readonly string[]; constructor(config: TaskConfig); toManifest(): TaskManifest; } //#endregion export { TriggerContext as a, TaskManifest as i, AnyTask as n, TaskConfig as r, Task as t };