import { type FormField, type FormFieldValues } from "@automate.ax/catalog"; import type { Synchronous } from "./signal-protocol.js"; import type { AutomationDescriptor } from "./automation-descriptor.js"; export type { AutomationDescriptor, AutomationSelector, } from "./automation-descriptor.js"; /** Resolves one field declaration to its author-facing primitive type. */ export type AutomationParameterValues = FormFieldValues; export interface ParameterizedAutomationContext { parameters: AutomationParameterValues; } export interface ParameterizedAutomationOptions { parameters: TFields; } /** * Defines a top-level automation without parameters. * * @param description - Human-readable summary of the automation. * @param fn - Automation body to run in the active runtime phase. */ export declare function automation unknown>(description: AutomationDescriptor["description"], fn: Synchronous extends never ? never : TFunction): AutomationDescriptor; /** * Defines a top-level automation with project-specific parameters. * * @param description - Human-readable summary of the automation. * @param options - Parameter field declarations. * @param fn - Automation body receiving resolved parameter values. */ export declare function automation) => unknown>(description: AutomationDescriptor["description"], options: ParameterizedAutomationOptions, fn: Synchronous extends never ? never : TFunction): AutomationDescriptor; //# sourceMappingURL=automation.d.ts.map