import type { LTApiResult, LTApiAuth } from '../../types/sdk';
/**
 * Start a workflow — proxy for `Durable.Client.workflow.start()`.
 *
 * Resolves the task queue, enforces auth/role constraints, builds the
 * LTEnvelope with IAM context, and delegates to the Durable client.
 * Any WorkflowOptions field (workflowId, expire, entity, namespace,
 * search, signalIn, pending, etc.) can be passed via `options` and
 * flows through to the Durable client unchanged.
 *
 * @see https://docs.hotmesh.io/types/types_durable.WorkflowOptions.html
 */
export declare function invokeWorkflow(input: {
    type: string;
    data?: Record<string, any>;
    metadata?: Record<string, any>;
    execute_as?: string;
    /** Passthrough to Durable WorkflowOptions. */
    options?: Record<string, any>;
}, auth: LTApiAuth): Promise<LTApiResult>;
/**
 * Get the execution status of a workflow.
 *
 * Returns the HotMesh status code (0 = completed, 1 = running).
 * Resolves the workflow handle via task record or worker registry.
 *
 * @param input.workflowId — HotMesh workflow ID
 * @returns `{ status: 200, data: { workflowId, status } }` or 404
 */
export declare function getWorkflowStatus(input: {
    workflowId: string;
}): Promise<LTApiResult>;
/**
 * Get the result of a completed workflow.
 *
 * Returns 202 if the workflow is still running, 200 with the result
 * payload when complete. Never blocks — always returns immediately.
 *
 * @param input.workflowId — HotMesh workflow ID
 * @returns `{ status: 200, data: { workflowId, result } }` or 202 if running
 */
export declare function getWorkflowResult(input: {
    workflowId: string;
}): Promise<LTApiResult>;
/**
 * Terminate a running workflow.
 *
 * Interrupts the workflow execution immediately via HotMesh.
 *
 * @param input.workflowId — HotMesh workflow ID
 * @returns `{ status: 200, data: { terminated: true, workflowId } }` or 404
 */
export declare function terminateWorkflow(input: {
    workflowId: string;
}): Promise<LTApiResult>;
/**
 * Export the full state of a workflow.
 *
 * Returns the serialized workflow state including all activity
 * results, signals, and metadata.
 *
 * @param input.workflowId — HotMesh workflow ID
 * @returns `{ status: 200, data: <exported state> }` or 404
 */
export declare function exportWorkflow(input: {
    workflowId: string;
}): Promise<LTApiResult>;
