import type { UiObserverRef } from '@farmslot/protocol'; import type { ActionAdapter, ActionExecutionContext, ActionResult, RecipeActionPhase, RecipeObservationResult } from '../core/types.js'; export declare const STANDARD_UI_ACTIONS: readonly ["ui.navigate", "ui.press", "ui.key_press", "ui.set_input", "ui.scroll", "ui.swipe", "ui.pan", "ui.drag", "ui.long_press", "ui.wait_for", "ui.screenshot", "ui.capture_surface", "app.status", "app.lifecycle", "app.hud", "app.trace"]; export type StandardUiAction = (typeof STANDARD_UI_ACTIONS)[number]; export interface UiTransportControl { case?: string; artifacts?: ActionResult['artifacts']; } export interface UiTransportResult { kind: 'ui-transport-result'; output?: unknown; control?: UiTransportControl; phases?: RecipeActionPhase[]; settlementWarning?: string; } export interface UiActionTransport { execute(action: StandardUiAction, node: Record, context: ActionExecutionContext): Promise; observe?(refs: readonly UiObserverRef[], node: Record, context: ActionExecutionContext): Promise; } export interface CreateStandardUiAdaptersOptions { transport: UiActionTransport; actions?: Iterable; } export declare function createStandardUiAdapters(options: CreateStandardUiAdaptersOptions): ActionAdapter[]; export declare function normalizeUiTransportResult(result: unknown): ActionResult; //# sourceMappingURL=ui.d.ts.map