import type { CommandSettledSuccessDetail } from "@getuserfeedback/protocol/host"; import type { NativeDirectCommandEnvelope } from "./native-direct-command-session.js"; type Command = NativeDirectCommandEnvelope["command"]; type CommandOptions = { idempotencyKey?: string; }; type Dispatch = (command: Command) => Promise; type RunOperation = (run: (dispatch: Dispatch) => Promise, options?: CommandOptions) => Promise; export declare function createNativeProviderCommandController(input: { instanceId: string; onError?: (error: Error) => void; }): { directSessionController: import("./native-direct-command-session-controller.js").NativeDirectCommandSessionController; dispose: () => void; reject: (error: unknown) => Promise; runBarrier: (kind: "close" | "reset" | null, onGenerationAdvanced: () => void, options?: CommandOptions) => Promise; runOperation: RunOperation; }; export {};