import { z } from "zod"; import type { AlfTaskGetTasksInput as ProtoGetAlfTasksInput, AlfTaskGetTasksOutput as ProtoGetAlfTasksResponse, AlfTaskMemoryDefinition as ProtoMemoryDefinition, AlfTaskPredefinedTask as ProtoPredefinedTask, AlfTaskWorkflowNode as ProtoWorkflowNode } from "../gen/channel/app/sdk/v1/extension.js"; import type { Context } from "../types/context.js"; import type { ExtensionDefinition } from "../types/extension.js"; type ProtoBacked = T & Proto; /** * Memory definition for ALF task */ export declare const MemoryDefinitionSchema: z.ZodObject<{ name: z.ZodString; type: z.ZodEnum<["string", "number", "boolean", "object", "array"]>; description: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "string" | "number" | "boolean" | "object" | "array"; name: string; description?: string | undefined; }, { type: "string" | "number" | "boolean" | "object" | "array"; name: string; description?: string | undefined; }>; export type MemoryDefinition = ProtoBacked, ProtoMemoryDefinition>; /** * Workflow node for ALF task */ export declare const WorkflowNodeSchema: z.ZodObject<{ id: z.ZodString; type: z.ZodString; config: z.ZodOptional>; next: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: string; id: string; config?: Record | undefined; next?: string | undefined; }, { type: string; id: string; config?: Record | undefined; next?: string | undefined; }>; export type WorkflowNode = ProtoBacked, ProtoWorkflowNode>; /** * Predefined task schema */ export declare const PredefinedTaskSchema: z.ZodObject<{ /** * Task version (developer-specified, e.g., "v1.0.0", "v1.1.0") * Used for change detection */ version: z.ZodString; /** * Task name */ name: z.ZodString; /** * Trigger condition */ trigger: z.ZodString; /** * Memory schema definitions */ memorySchema: z.ZodArray; description: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "string" | "number" | "boolean" | "object" | "array"; name: string; description?: string | undefined; }, { type: "string" | "number" | "boolean" | "object" | "array"; name: string; description?: string | undefined; }>, "many">; /** * Workflow nodes */ nodes: z.ZodArray>; next: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: string; id: string; config?: Record | undefined; next?: string | undefined; }, { type: string; id: string; config?: Record | undefined; next?: string | undefined; }>, "many">; /** * Start node ID */ startNodeId: z.ZodString; }, "strip", z.ZodTypeAny, { name: string; version: string; trigger: string; memorySchema: { type: "string" | "number" | "boolean" | "object" | "array"; name: string; description?: string | undefined; }[]; nodes: { type: string; id: string; config?: Record | undefined; next?: string | undefined; }[]; startNodeId: string; }, { name: string; version: string; trigger: string; memorySchema: { type: "string" | "number" | "boolean" | "object" | "array"; name: string; description?: string | undefined; }[]; nodes: { type: string; id: string; config?: Record | undefined; next?: string | undefined; }[]; startNodeId: string; }>; export type PredefinedTask = ProtoBacked, ProtoPredefinedTask>; /** * GetAlfTasks input schema */ export declare const GetAlfTasksInputSchema: z.ZodObject<{ version: z.ZodOptional; }, "strip", z.ZodTypeAny, { version?: string | undefined; }, { version?: string | undefined; }>; export type GetAlfTasksInput = ProtoBacked, ProtoGetAlfTasksInput>; /** * GetAlfTasks response schema */ export declare const GetAlfTasksResponseSchema: z.ZodObject<{ predefinedTasks: z.ZodArray; description: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "string" | "number" | "boolean" | "object" | "array"; name: string; description?: string | undefined; }, { type: "string" | "number" | "boolean" | "object" | "array"; name: string; description?: string | undefined; }>, "many">; /** * Workflow nodes */ nodes: z.ZodArray>; next: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: string; id: string; config?: Record | undefined; next?: string | undefined; }, { type: string; id: string; config?: Record | undefined; next?: string | undefined; }>, "many">; /** * Start node ID */ startNodeId: z.ZodString; }, "strip", z.ZodTypeAny, { name: string; version: string; trigger: string; memorySchema: { type: "string" | "number" | "boolean" | "object" | "array"; name: string; description?: string | undefined; }[]; nodes: { type: string; id: string; config?: Record | undefined; next?: string | undefined; }[]; startNodeId: string; }, { name: string; version: string; trigger: string; memorySchema: { type: "string" | "number" | "boolean" | "object" | "array"; name: string; description?: string | undefined; }[]; nodes: { type: string; id: string; config?: Record | undefined; next?: string | undefined; }[]; startNodeId: string; }>, "many">; }, "strip", z.ZodTypeAny, { predefinedTasks: { name: string; version: string; trigger: string; memorySchema: { type: "string" | "number" | "boolean" | "object" | "array"; name: string; description?: string | undefined; }[]; nodes: { type: string; id: string; config?: Record | undefined; next?: string | undefined; }[]; startNodeId: string; }[]; }, { predefinedTasks: { name: string; version: string; trigger: string; memorySchema: { type: "string" | "number" | "boolean" | "object" | "array"; name: string; description?: string | undefined; }[]; nodes: { type: string; id: string; config?: Record | undefined; next?: string | undefined; }[]; startNodeId: string; }[]; }>; export type GetAlfTasksResponse = ProtoBacked, ProtoGetAlfTasksResponse>; export interface AlfTaskExtensionProvider { getAlfTasks(ctx: Context, input: GetAlfTasksInput): GetAlfTasksResponse | Promise; } export declare function createAlfTaskExtensionV1(provider: AlfTaskExtensionProvider): ExtensionDefinition; export {}; //# sourceMappingURL=alftask.d.ts.map