import type { ComputerAction, ComputerActionReceipt, ComputerClipboard, ComputerFrame, ComputerObservation, ComputerSession, ComputerTarget } from "@opengeni/sdk/interaction"; import { type EmbeddedComputerInteractionClientOverride } from "../session-context.js"; import { type OpenGeniText } from "../messages/runtime.js"; export declare function isStaleComputerActionResult(value: unknown): boolean; export declare function computerActionReceiptError(t: OpenGeniText, receipt: ComputerActionReceipt): Error; export type UseComputerSessionOptions = EmbeddedComputerInteractionClientOverride & { computerSessionId: string | null; enabled?: boolean | undefined; pollIntervalMs?: number | undefined; }; export type UseComputerSessionResult = { session: ComputerSession | null; targets: ComputerTarget[]; selectedTarget: ComputerTarget | null; observation: ComputerObservation | null; loading: boolean; mutating: boolean; error: Error | null; /** Control service loss, independent of target accessibility inspection and media. */ controlError: Error | null; refresh: () => Promise; readClipboard: () => Promise; /** Changes only this viewer's target cursor; it never takes ownership or * foregrounds an application. */ selectTarget: (targetId: string) => Promise; act: (action: ComputerAction, operationId?: string) => Promise; /** Dispatch pointer input against the exact displayed frame. */ actFromFrame: (action: Extract, frame: ComputerFrame, operationId?: string) => Promise; }; /** Selected ComputerSession state. Semantic and pixel input share the same * generation-fenced controller operation stream used by agents. */ export declare function useComputerSession(options: UseComputerSessionOptions): UseComputerSessionResult;