import type { CommandEnvelopeWithInstanceId, CommandSettledSuccessDetail } from "@getuserfeedback/protocol/host"; import { type CoreTranslatablePublicCommandPayload } from "@getuserfeedback/protocol/internal/public-core-command"; import type { NativeCoreCommandSession } from "./native-core-command-session.js"; type NativeFlowAllocationCommand = (Omit, "container"> & { container?: never; }) | Extract; /** Public commands accepted by the direct native provider session. */ type NativeDirectCommandPayload = Exclude | NativeFlowAllocationCommand; /** Public command envelope accepted by the direct native provider session. */ export type NativeDirectCommandEnvelope = Omit & { command: NativeDirectCommandPayload; }; export type NativeDirectCommandSession = { dispatch: (envelope: NativeDirectCommandEnvelope) => Promise; }; export declare function createNativeDirectCommandSession(input: { coreSession: NativeCoreCommandSession; }): NativeDirectCommandSession; export {};