import type { AutomationEventEnvelope, BasicLogger, ExtensionContext, ITelemetryService } from "@cline/shared"; import type { CronService } from "../cron/service/cron-service"; import type { HubScheduleRuntimeHandlers } from "../cron/service/schedule-service"; import type { RuntimeHost } from "../runtime/host/runtime-host"; import type { ClineAutomationEventIngressResult, ClineAutomationEventLog, ClineAutomationListEventsOptions, ClineAutomationListRunsOptions, ClineAutomationListSpecsOptions, ClineAutomationRun, ClineAutomationSpec, ClineCoreAutomationApi, ClineCoreAutomationOptions } from "./types"; export declare function normalizeAutomationOptions(options: ClineCoreAutomationOptions | boolean | undefined): ClineCoreAutomationOptions | undefined; export declare function normalizeAutomationCronScope(scope: ClineCoreAutomationOptions["cronScope"]): "global" | "workspace" | undefined; export declare class ClineCoreAutomationController implements ClineCoreAutomationApi { private readonly getService; constructor(getService: () => CronService); start(): Promise; stop(): Promise; reconcileNow(): Promise; ingestEvent(event: AutomationEventEnvelope): ClineAutomationEventIngressResult; listEvents(options?: ClineAutomationListEventsOptions): ClineAutomationEventLog[]; getEvent(eventId: string): ClineAutomationEventLog | undefined; listSpecs(options?: ClineAutomationListSpecsOptions): ClineAutomationSpec[]; listRuns(options?: ClineAutomationListRunsOptions): ClineAutomationRun[]; } export interface ClineCoreAutomationRuntimeHandlersInput { host: RuntimeHost; getExtensionContext(): ExtensionContext | undefined; } export declare function createClineCoreAutomationRuntimeHandlers(input: ClineCoreAutomationRuntimeHandlersInput): HubScheduleRuntimeHandlers; export interface ClineCoreAutomationExtensionContextInput { automationService?: CronService; automation: ClineCoreAutomationApi; context?: ExtensionContext; clientName?: string; distinctId?: string; logger?: BasicLogger; telemetry?: ITelemetryService; } export declare function createClineCoreAutomationExtensionContext(input: ClineCoreAutomationExtensionContextInput): ExtensionContext | undefined;